DO NOT REPLY [Bug 46329] Tomcat6.exe crash in ntdll.dll
https://issues.apache.org/bugzilla/show_bug.cgi?id=46329 Mark Thomas <[EMAIL PROTECTED]> changed: What|Removed |Added Status|NEW |RESOLVED Resolution||INVALID --- Comment #1 from Mark Thomas <[EMAIL PROTECTED]> 2008-12-03 00:26:41 PST --- There is insufficient information in this bug report to investigate. Best guess would be that the JVM crashed. -- Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email --- You are receiving this mail because: --- You are the assignee for the bug. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
tomcat 6.0 - jar validate error - weblogic.jar
Hi I am using weblogic.jar and api.jar in my project and when i try to run it from the tomcat 6.0.14, I am getting this error in console ile INFO: validateJarFile(C:\apache-tomcat-6.0.14\webapps\DinahGui\WEB-INF\lib\api.j ar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: java x/servlet/Servlet.class Dec 3, 2008 4:20:59 PM org.apache.catalina.loader.WebappClassLoader validateJarF ile INFO: validateJarFile(C:\apache-tomcat-6.0.14\webapps\DinahGui\WEB-INF\lib\weblo gic.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class I tried running my project - i got class not found exception(weblogic.jar) is not loaded can any one has faced similar problem. can you please suggest me Thanks harish -- View this message in context: http://www.nabble.com/tomcat-6.0---jar-validate-error---weblogic.jar-tp20810737p20810737.html Sent from the Tomcat - Dev mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
DO NOT REPLY [Bug 46173] Small patch for manager app: Setting an optional context path on war file
https://issues.apache.org/bugzilla/show_bug.cgi?id=46173 --- Comment #2 from ricqr <[EMAIL PROTECTED]> 2008-12-03 03:35:32 PST --- +1 This would prove very useful for any occasion where the WAR filename differs from the target context path -- Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email --- You are receiving this mail because: --- You are the assignee for the bug. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
DO NOT REPLY [Bug 46221] Leak WebappClassLoader with commons-logging and log4j
https://issues.apache.org/bugzilla/show_bug.cgi?id=46221 Peter Rossbach <[EMAIL PROTECTED]> changed: What|Removed |Added Status|NEW |NEEDINFO --- Comment #3 from Peter Rossbach <[EMAIL PROTECTED]> 2008-12-03 03:35:39 PST --- I am not sure that your patch fix the bug really. I have test it with deploy/undeploy via Manager API. The result is after a while I got a OutOfMemory Exception a perm heap is full. One thing that I change is deregister containerLog at all Context Valves at StandardPipeline. StandardPipeline.java L 273 while (current != null) { if (current instanceof Lifecycle) ((Lifecycle) current).stop(); unregisterValve(current); if(current instanceof ValveBase) ((ValveBase)current).releaseContainerLog(); current = current.getNext(); } More hints? Peter -- Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email --- You are receiving this mail because: --- You are the assignee for the bug. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: tomcat 6.0 - jar validate error - weblogic.jar
pharish2 wrote: > Hi > I am using weblogic.jar and api.jar in my project and when i try to run it > from the tomcat 6.0.14, I am getting this error in console This is a question for the users list. Mark - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
DO NOT REPLY [Bug 46221] Leak WebappClassLoader with commons-logging and log4j
https://issues.apache.org/bugzilla/show_bug.cgi?id=46221 --- Comment #4 from Arnaud de Bossoreille <[EMAIL PROTECTED]> 2008-12-03 06:27:36 PST --- I am also using the manager via the web interface but with the start/stop links of the webapp. I am a little bit confused by the plumbing of tomcat's objects, that is why I do not always see what is involved. However it seems that your patch in StandardPipeline.java is better than what I did in StandardContext.java for the same purpose, because it handles more instances than those created by the StandardContext. My test showed that 3 valves are concerned by the releaseContainerLog calls. But maybe not all of them have a reference on the WebappClassLoader (I did not check). The valves I see (System.err.println(current);) are: - org.apache.catalina.core.StandardWrapperValve[jsp] - org.apache.catalina.core.StandardWrapperValve[default] - org.apache.catalina.core.StandardContextValve[/logging-leak] I suppose my patch handled only the last one. Moreover, you may have more valves than I have. This would explain why my patch did not work for you (I guess). I created the patch I last used so that you can review it (I will add it as a new attachement). -- Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email --- You are receiving this mail because: --- You are the assignee for the bug. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
DO NOT REPLY [Bug 46221] Leak WebappClassLoader with commons-logging and log4j
https://issues.apache.org/bugzilla/show_bug.cgi?id=46221 Arnaud de Bossoreille <[EMAIL PROTECTED]> changed: What|Removed |Added Attachment #22881|0 |1 is obsolete|| --- Comment #5 from Arnaud de Bossoreille <[EMAIL PROTECTED]> 2008-12-03 06:30:03 PST --- Created an attachment (id=22985) --> (https://issues.apache.org/bugzilla/attachment.cgi?id=22985) Second version of the patch -- Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email --- You are receiving this mail because: --- You are the assignee for the bug. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
[ANN] Apache Tomcat 4.1.39 stable is released
The Apache Tomcat team is proud to announce the immediate availability of Tomcat 4.1.39 stable. This build contains a small number of bug fixes and two important, one moderate and one low severity security fixes. Apache Tomcat is an implementation of the Java Server Pages 1.2 and Java Servlet 2.3 specifications. Please refer to the release notes for a complete list of changes. Downloads: http://tomcat.apache.org/download-41.cgi Security information: http://tomcat.apache.org/security-4.html The Apache Tomcat Team - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
DO NOT REPLY [Bug 46221] Leak WebappClassLoader with commons-logging and log4j
https://issues.apache.org/bugzilla/show_bug.cgi?id=46221 --- Comment #6 from Mark Thomas <[EMAIL PROTECTED]> 2008-12-03 10:44:20 PST --- Using the provided test case I don't see any memory leaks. I do see various references retained after the web application has been stopped but before it is restarted / undeployed. A leak would be when reloads lead to an increase in the number of instances of a class, typically the webappclassloader, and I don't see that. Yes, we could do a better job of cleaning up the logger references when the web application stops but that is more an enhancement than a bug. I'll set up a separate test for multiple deploy/undeploy to see if I can create the issue Peter saw. -- Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email --- You are receiving this mail because: --- You are the assignee for the bug. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
DO NOT REPLY [Bug 46221] Leak WebappClassLoader with commons-logging and log4j
https://issues.apache.org/bugzilla/show_bug.cgi?id=46221 Mark Thomas <[EMAIL PROTECTED]> changed: What|Removed |Added Severity|normal |enhancement Status|NEEDINFO|NEW --- Comment #7 from Mark Thomas <[EMAIL PROTECTED]> 2008-12-03 14:05:24 PST --- I've done some more testing with several hundred undeploy/deploy cycles and several hundred reload cycles of the test application provided in this report and I do not see any memory leak. I am changing the status of this issue to enhancement to reflect that clean-up could occur early when a web app is stopped. -- Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email --- You are receiving this mail because: --- You are the assignee for the bug. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
svn commit: r723226 - /tomcat/trunk/test/org/apache/catalina/tribes/demos/MapDemo.java
Author: fhanik Date: Wed Dec 3 23:06:19 2008 New Revision: 723226 URL: http://svn.apache.org/viewvc?rev=723226&view=rev Log: Add comment and cleanup Modified: tomcat/trunk/test/org/apache/catalina/tribes/demos/MapDemo.java Modified: tomcat/trunk/test/org/apache/catalina/tribes/demos/MapDemo.java URL: http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/catalina/tribes/demos/MapDemo.java?rev=723226&r1=723225&r2=723226&view=diff == --- tomcat/trunk/test/org/apache/catalina/tribes/demos/MapDemo.java (original) +++ tomcat/trunk/test/org/apache/catalina/tribes/demos/MapDemo.java Wed Dec 3 23:06:19 2008 @@ -46,46 +46,78 @@ import java.util.Random; /** - * Title: - * - * Description: - * - * Company: - * - * @author not attributable - * @version 1.0 + * Example of how the lazy replicated map works, also shows how the BackupManager + * works in a Tomcat cluster + * @author fhanik + * @version 1.1 */ public class MapDemo implements ChannelListener, MembershipListener{ +/** + * The Map containing the replicated data + */ protected LazyReplicatedMap map; + +/** + * Table to be displayed in Swing + */ protected SimpleTableDemo table; +/** + * Constructs a map demo object. + * @param channel - the Tribes channel object to be used for communication + * @param mapName - the name of this map + */ public MapDemo(Channel channel, String mapName ) { +//instantiate the replicated map map = new LazyReplicatedMap(null,channel,5000, mapName,null); +//create a gui, name it with the member name of this JVM table = SimpleTableDemo.createAndShowGUI(map,channel.getLocalMember(false).getName()); +//add ourself as a listener for messages channel.addChannelListener(this); +//add ourself as a listener for memberships channel.addMembershipListener(this); -//for ( int i=0; i<1000; i++ ) { -//map.put("MyKey-"+i,"My String Value-"+i); -//} +//initialize the map by receiving a fake message this.messageReceived(null,null); } +/** + * Decides if the messageReceived should be invoked + * will always return false since we rely on the + * lazy map to do all the messaging for us + */ public boolean accept(Serializable msg, Member source) { +//simple refresh the table model table.dataModel.getValueAt(-1,-1); return false; } +/** + * Invoked if accept returns true. + * No of for now + * @param msg - the message received + * @param source - the sending member + */ public void messageReceived(Serializable msg, Member source) { - } +/** + * Invoked when a member is added to the group + */ public void memberAdded(Member member) { } + +/** + * Invoked when a member leaves the group + */ public void memberDisappeared(Member member) { +//just refresh the table model table.dataModel.getValueAt(-1,-1); } +/** + * Prints usage + */ public static void usage() { System.out.println("Tribes MapDemo."); System.out.println("Usage:\n\t" + @@ -94,36 +126,53 @@ ChannelCreator.usage()); } +/** + * Main method + * @param args + * @throws Exception + */ public static void main(String[] args) throws Exception { long start = System.currentTimeMillis(); +//create a channel object ManagedChannel channel = (ManagedChannel) ChannelCreator.createChannel(args); +//define a map name, unless one is defined as a paramters String mapName = "MapDemo"; if ( args.length > 0 && (!args[args.length-1].startsWith("-"))) { mapName = args[args.length-1]; } +//start the channel channel.start(Channel.DEFAULT); +//listen for shutdown Runtime.getRuntime().addShutdownHook(new Shutdown(channel)); +//create a map demo object new MapDemo(channel,mapName); +//put the main thread to sleep until we are done System.out.println("System test complete, time to start="+(System.currentTimeMillis()-start)+" ms. Sleeping to let threads finish."); Thread.sleep(60 * 1000 * 60); } -public static class Shutdown -extends Thread { +/** + * Listens for shutdown events, and stops this instance + */ +public static class Shutdown extends Thread { +//the channel running in this demo ManagedChannel channel = null; + public Shutdown(ManagedChannel channel) { this.channel = channel; } + public void run() { System.out.println("Shutting down..."); +//create an ex
svn commit: r723228 - /tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/SlowQueryReport.java
Author: fhanik Date: Wed Dec 3 23:07:23 2008 New Revision: 723228 URL: http://svn.apache.org/viewvc?rev=723228&view=rev Log: start working on the interceptor for query stats Modified: tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/SlowQueryReport.java Modified: tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/SlowQueryReport.java URL: http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/SlowQueryReport.java?rev=723228&r1=723227&r2=723228&view=diff == --- tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/SlowQueryReport.java (original) +++ tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/SlowQueryReport.java Wed Dec 3 23:07:23 2008 @@ -21,6 +21,10 @@ import java.lang.reflect.Proxy; import java.sql.CallableStatement; import java.sql.SQLException; +import java.util.HashMap; +import java.util.IdentityHashMap; +import java.util.LinkedHashMap; +import java.util.Map.Entry; import org.apache.tomcat.jdbc.pool.ConnectionPool; import org.apache.tomcat.jdbc.pool.JdbcInterceptor; @@ -30,78 +34,173 @@ * @author Filip Hanik * @version 1.0 */ -public class SlowQueryReport extends JdbcInterceptor { +public class SlowQueryReport extends AbstractCreateStatementInterceptor { protected final String[] statements = {"createStatement","prepareStatement","prepareCall"}; protected final String[] executes = {"execute","executeQuery","executeUpdate","executeBatch"}; +protected static IdentityHashMap> perPoolStats = +new IdentityHashMap>(); + +protected HashMap queries = null; + +protected long threshold = 100; //don't report queries less than this +protected int maxQueries= 1000; //don't store more than this amount of queries + + + public SlowQueryReport() { super(); } -public Object invoke(Object proxy, Method method, Object[] args) throws Throwable { -boolean process = false; -process = process(statements, method, process); -if (process) { -Object statement = super.invoke(proxy,method,args); -CallableStatement measuredStatement = - (CallableStatement)Proxy.newProxyInstance(SlowQueryReport.class.getClassLoader(), -new Class[] {java.sql.CallableStatement.class, - java.sql.PreparedStatement.class, - java.sql.Statement.class}, -new StatementProxy(statement, args)); - -return measuredStatement; -} else { -return super.invoke(proxy,method,args); +public long getThreshold() { +return threshold; +} + +public void setThreshold(long threshold) { +this.threshold = threshold; +} + +@Override +public void closeInvoked() { +// TODO Auto-generated method stub + +} + +@Override +public Object createStatement(Object proxy, Method method, Object[] args, Object statement) { +// TODO Auto-generated method stub +String sql = null; +if (method.getName().startsWith("prepare")) { +sql = (args.length>0 && (args[0] instanceof String))?(String)args[0]:null; } +return new StatementProxy(statement,sql); } -protected boolean process(String[] names, Method method, boolean process) { +protected boolean process(final String[] names, Method method, boolean process) { for (int i=0; (!process) && i10) { -StringBuffer out = new StringBuffer("\n\tType:"); -out.append(parent.getClass().getName()); -out.append("\n\tCreate/Prepare args:"); -for (int i=0; this.args!=null && ithreshold) { +String sql = null;//TODO +QueryStats qs = SlowQueryReport.this.queries.get(sql); +if (qs == null) { +qs = new QueryStats(sql); +SlowQueryReport.this.queries.put((String)sql,qs); } -out.append("\n\tExecute args:"); -for (int i=0; args!=null && i() { +@Override +protected boolean removeEldestEntry(Entry eldest) { +return size()>maxQueries; +} +}; +} } } - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
svn commit: r723227 - /tomcat/trunk/modules/bayeux/build.xml
Author: fhanik Date: Wed Dec 3 23:07:01 2008 New Revision: 723227 URL: http://svn.apache.org/viewvc?rev=723227&view=rev Log: fix build script Modified: tomcat/trunk/modules/bayeux/build.xml Modified: tomcat/trunk/modules/bayeux/build.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/modules/bayeux/build.xml?rev=723227&r1=723226&r2=723227&view=diff == --- tomcat/trunk/modules/bayeux/build.xml (original) +++ tomcat/trunk/modules/bayeux/build.xml Wed Dec 3 23:07:01 2008 @@ -93,7 +93,7 @@ - - - + - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]