Re: Errors in session replication and very high server load
Thanks for the reply. I have tried to figure out why the load is high but I couldn't. Any hints? Thanks, Mohamed Mohamedin - Original Message - From: Filip Hanik - Dev Lists devli...@hanik.com To: Tomcat Users List users@tomcat.apache.org Sent: Sunday, December 20, 2009 3:56 PM Subject: Re: Errors in session replication and very high server load Well, the log messages you see, are all based on timeouts. If your system has a load average of 12, unless you have a 12-way machine, that is very high, and could be the cause of your timeouts. You will need to figure out what is causing the high load average. Filip On 12/18/2009 01:30 AM, mohame...@easy-dialog.info wrote: Dear All, I have a strange problem. When I added a new server to my tomcat cluster I have noticed that the load is getting very high on the server. Tomcat log show a lot of these lines 18.12.2009 09:07:14 org.apache.catalina.ha.tcp.SimpleTcpCluster memberAdded INFO: Replication member added:org.apache.catalina.tribes.membership.MemberImpl[tcp://{62, 75, -127, -120}:4000,{62, 75, -127, -120},4000, alive=65087504,id={-64 -42 103 97 8 -7 69 -88 -113 -106 -32 -64 46 76 -117 -58 }, payload={}, command={}, domain={}, ] 18.12.2009 09:07:14 org.apache.catalina.tribes.group.interceptors.TcpFailureDetector memberDisappeared INFO: Verification complete. Member still alive[org.apache.catalina.tribes.membership.MemberImpl[tcp://{62, 75, -127, -122}:4000,{62, 75, -127, -122},4000, alive=64996684,id={-15 62 -53 -50 -43 81 75 18 -112 -43 58 -102 69 72 83 21 }, payload={}, command={}, domain={}, ]] 18.12.2009 09:07:19 org.apache.catalina.tribes.group.interceptors.TcpFailureDetector performBasicCheck WARNUNG: Member added, even though we werent notified:org.apache.catalina.tribes.membership.MemberImpl[tcp://{62, 75, -127, -117}:4000,{62, 75, -127, -117},4000, alive=58229968,id={16 -115 -21 -109 18 -76 79 58 -95 -17 57 -32 -69 -111 -20 28 }, payload={}, command={}, domain={}, ] 18.12.2009 09:07:19 org.apache.catalina.ha.tcp.SimpleTcpCluster memberAdded INFO: Replication member added:org.apache.catalina.tribes.membership.MemberImpl[tcp://{62, 75, -127, -117}:4000,{62, 75, -127, -117},4000, alive=58229968,id={16 -115 -21 -109 18 -76 79 58 -95 -17 57 -32 -69 -111 -20 28 }, payload={}, command={}, domain={}, ] 18.12.2009 09:08:10 org.apache.catalina.ha.tcp.SimpleTcpCluster memberDisappeared INFO: Received member disappeared:org.apache.catalina.tribes.membership.MemberImpl[tcp://{62, 75, -127, -121}:4000,{62, 75, -127, -121},4000, alive=64986581,id={-87 -91 115 -83 80 64 76 -9 -68 -107 -109 52 0 -47 109 98 }, payload={}, command={}, domain={}, ] 18.12.2009 09:08:10 org.apache.catalina.tribes.group.interceptors.TcpFailureDetector performBasicCheck INFO: Suspect member, confirmed dead.[org.apache.catalina.tribes.membership.MemberImpl[tcp://{62, 75, -127, -121}:4000,{62, 75, -127, -121},4000, alive=64986581,id={-87 -91 115 -83 80 64 76 -9 -68 -107 -109 52 0 -47 109 98 }, payload={}, command={}, domain={}, ]] 18.12.2009 09:08:10 org.apache.catalina.tribes.group.interceptors.TcpFailureDetector memberDisappeared INFO: Received memberDisappeared[org.apache.catalina.tribes.membership.MemberImpl[tcp://{62, 75, -127, -121}:4000,{62, 75, -127, -121},4000, alive=65045054,id={-87 -91 115 -83 80 64 76 -9 -68 -107 -109 52 0 -47 109 98 }, payload={}, command={}, domain={}, ]] message. Will verify. 18.12.2009 09:08:10 org.apache.catalina.tribes.group.interceptors.TcpFailureDetector memberDisappeared INFO: Verification complete. Member still alive[org.apache.catalina.tribes.membership.MemberImpl[tcp://{62, 75, -127, -121}:4000,{62, 75, -127, -121},4000, alive=65045054,id={-87 -91 115 -83 80 64 76 -9 -68 -107 -109 52 0 -47 109 98 }, payload={}, command={}, domain={}, ]] 18.12.2009 09:08:10 org.apache.catalina.tribes.group.interceptors.TcpFailureDetector memberDisappeared INFO: Received memberDisappeared[org.apache.catalina.tribes.membership.MemberImpl[tcp://{62, 75, -127, -122}:4000,{62, 75, -127, -122},4000, alive=65054434,id={-15 62 -53 -50 -43 81 75 18 -112 -43 58 -102 69 72 83 21 }, payload={}, command={}, domain={}, ]] message. Will verify. 18.12.2009 09:08:10 org.apache.catalina.tribes.group.interceptors.TcpFailureDetector memberDisappeared INFO: Received memberDisappeared[org.apache.catalina.tribes.membership.MemberImpl[tcp://{62, 75, -127, -118}:4000,{62, 75, -127, -118},4000, alive=58290426,id={101 61 65 84 -59 -114 65 -57 -106 8 -118 -25 -55 56 -82 111 }, payload={}, command={}, domain={}, ]] message. Will verify. 18.12.2009 09:08:10 org.apache.catalina.tribes.group.interceptors.TcpFailureDetector memberDisappeared INFO: Received memberDisappeared[org.apache.catalina.tribes.membership.MemberImpl[tcp://{62, 75, -127, -120}:4000,{62, 75, -127, -120},4000, alive=65141440,id={-64 -42 103 97 8 -7 69 -88 -113 -106 -32 -64 46 76 -117 -58 }, payload={}, command={}, domain={}, ]] message. Will verify. Also the load
Tomcat monitoring
Dear All, Please recommend a monitoring tool for tomcat. I am interested in knowing the response time of each request and finding requests that take a lot of time. In short I need to figure out the bottle nicks in my site. Thanks a lot, Mohamed Mohamedin
Re: JNI problem
Here is one function that always crash. The portion of the code that couse the crash in my opinion is the if which has malloc. I noticed it crash whenever it is called with the same srcFile and dstFile int reduce_quality(const char * srcFile, const char * dstFile, int maxSize){ struct stat info; stat(srcFile, info); if (info.st_size = maxSize){//it is already small enough!! so just copy it return copy_file(srcFile, dstFile); } char * tmpFile = NULL; if (strcmp(srcFile, dstFile)==0){ tmpFile = (char *) malloc(sizeof(srcFile)+1); strcpy(tmpFile, srcFile); strcat(tmpFile,_); copy_file(srcFile, tmpFile); srcFile = tmpFile; } int quality = DEFAULT_QUALITY; long targetSize; long lastTargetSize = 0; int ret = False; do { ret = reduce_quality_to(srcFile, dstFile, quality); if (ret == False) break; stat(dstFile, info); targetSize = info.st_size; if (targetSize == lastTargetSize) { ret = reduce_quality_to(srcFile, dstFile, quality + DECREASE_QUALITY_LEVEL); break; } lastTargetSize = targetSize; quality -= DECREASE_QUALITY_LEVEL; } while (quality 0 targetSize maxSize); if (quality == 0) fprintf(stderr,Couldn't reach desired size %d for %s\n, maxSize, dstFile); if(tmpFile!=NULL){ remove(tmpFile); free(tmpFile); } return ret; } JNIEXPORT jboolean JNICALL Java_com_vehicle_netapp_backend_objects_photo_PhotoOperations_reduceQuality (JNIEnv * env, jobject jobj, jstring src, jstring dst, jint maxSize){ jboolean iscopy; const char *srcFile = (*env)-GetStringUTFChars(env, src, iscopy); const char *dstFile = (*env)-GetStringUTFChars(env, dst, iscopy); int ret = reduce_quality(srcFile, dstFile, maxSize); (*env)-ReleaseStringUTFChars(env, src, srcFile); (*env)-ReleaseStringUTFChars(env, dst, dstFile); return ret; } Thanks, Mohamedin - Original Message - From: Christopher Schultz ch...@christopherschultz.net To: Tomcat Users List users@tomcat.apache.org Sent: Wednesday, October 07, 2009 8:39 PM Subject: Re: JNI problem -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Mohamedin, On 10/7/2009 10:40 AM, Mohamedin wrote: Dear all, I am trying to use a JNI library written by me that uses GraphicsMagick wand. It is working fine as a stand alone java application but when I tried to use it in tomcat it give me this error and tomcat crashed. Technically speaking, the JVM has crashed, not Tomcat. I am running on: AMD64 Tomcat 6.0.20 CATALINA_OPTS = -server -Xms512m -Xmx2048m -Djava.library.path=/usr/lib/apache-tomcat-6.0.20/shared/lib/:/usr/local/lib/ Please help *** glibc detected *** /usr/bin/java: malloc(): memory corruption: 0x7f5614455720 *** === Backtrace: = /lib/libc.so.6[0x7f56b0cc7948] /lib/libc.so.6[0x7f56b0cca17c] /lib/libc.so.6(__libc_malloc+0x98)[0x7f56b0ccba78] /usr/lib/apache-tomcat-6.0.20/shared/lib/libPhotoOperations.so(NewMagickWand+0x13)[0x7f561b7068de] /usr/lib/apache-tomcat-6.0.20/shared/lib/libPhotoOperations.so(reduce_quality_to+0x26)[0x7f561b6f71f6] /usr/lib/apache-tomcat-6.0.20/shared/lib/libPhotoOperations.so(reduce_quality+0x88)[0x7f561b6f74e8] /usr/lib/apache-tomcat-6.0.20/shared/lib/libPhotoOperations.so(Java_com_vehicle_netapp_backend_objects_photo_PhotoOperations_reduceQuality+0x68)[0x7f561b6f7688] [0x7f56a95ca542] Since your code is definitely involved, here (the stack trace above shows 4 layers of your code before glibc is involved), I suspect your code is to blame for this problem. Tomcat does not use any native code directly (except for tcnative if you are using that). Are you using tcnative? If so, disable it and re-try to convince yourself that this is not a Tomcat problem. I'm not saying it is definitely /not/ a Tomcat problem, but chances are that it's your code at fault. My experience with native code from Java is that when memory corruption is found in one instance but not another and the code is the same, then there is probably some bug in your code that is sensitive to re-location of your code within memory. That is, you are making assumptions about your environment that are not valid when running from within a JVM (or they work sometimes, but not other times because more code gets loaded when running under an app server). How much of your JNI code are you willing to post? Typically, one develops a native library that has nothing to do with Java, and then writes a Java wrapper around that code which is little more than the plumbing necessary to convert data between Java-style objects, arrays, etc. and C-style data structures. Have you done that? If so, go ahead and post the JNI-specific layer. If not, I think you're playing with fire by writing a native library that does a great deal of Java interaction. - -chris -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.9 (MingW32) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAkrM4EcACgkQ9CaO5/Lv0PBregCgumcWoLGOm+fOjvV4S79ZHt1P y10AoKqWpMNgMMYKKubd9H+jQPKjIHS2 =rfQZ -END PGP SIGNATURE
Re: JNI problem
); if (status == False) { ThrowAPIException(composite_wand); DestroyMagickWand(magick_wand); return False; } int w,h; if (width 0 height 0){ w=width; h=height; MagickResizeImage(composite_wand,width,height,LanczosFilter,1.0); } else{ h = MagickGetImageHeight(composite_wand); w = MagickGetImageWidth(composite_wand); } int imgH = MagickGetImageHeight(magick_wand); int imgW = MagickGetImageWidth(magick_wand); int x=0,y=0; switch(position){ case 1://North west y=0; x=0; break; case 2://North east y=0; x=imgW-w; break; case 3://South west y=imgH -h; x=0; break; case 4://South east y=imgH-h; x=imgW-w; break; case 5://center y=(imgH-h)/2; x=(imgW-w)/2; break; } switch(shiftDirection){ case 1://North y-=shiftAmount; break; case 2://East x+=shiftAmount; break; case 3://South y+=shiftAmount; break; case 4://West x-=shiftAmount; break; } MagickCompositeImage(magick_wand, composite_wand, OverCompositeOp, x, y); status=MagickWriteImages(magick_wand, imageFile,True); if (status == False){ ThrowAPIException(magick_wand); DestroyMagickWand(composite_wand); return False; } DestroyMagickWand(magick_wand); DestroyMagickWand(composite_wand); return True; } JNIEXPORT jboolean JNICALL Java_com_vehicle_netapp_backend_objects_photo_PhotoOperations_compose (JNIEnv * env, jobject jobj, jstring composeImg, jstring image, jint position, jint width, jint height, jint shiftDirection, jint shiftAmount){ jboolean iscopy; const char *composeImgFile = (*env)-GetStringUTFChars(env, composeImg, iscopy); const char *imageFile = (*env)-GetStringUTFChars(env, image, iscopy); int ret = compose(composeImgFile, imageFile, position, width, height, shiftDirection, shiftAmount); (*env)-ReleaseStringUTFChars(env, composeImg, composeImgFile); (*env)-ReleaseStringUTFChars(env, image, imageFile); return ret; } Mohamedin - Original Message - From: Konstantin Kolinko knst.koli...@gmail.com To: Tomcat Users List users@tomcat.apache.org Sent: Thursday, October 08, 2009 10:37 AM Subject: Re: JNI problem 2009/10/8 Mohamedin mohame...@easy-dialog.info: Here is one function that always crash. The portion of the code that couse the crash in my opinion is the if which has malloc. I noticed it crash whenever it is called with the same srcFile and dstFile int reduce_quality(const char * srcFile, const char * dstFile, int maxSize){ ... tmpFile = (char *) malloc(sizeof(srcFile)+1); You meant string length there? sizeof(pointer) is - what is the size of pointers on your OS? 8 bytes? - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org __ Information from ESET NOD32 Antivirus, version of virus signature database 4488 (20091007) __ The message was checked by ESET NOD32 Antivirus. http://www.eset.com __ Information from ESET NOD32 Antivirus, version of virus signature database 4488 (20091007) __ The message was checked by ESET NOD32 Antivirus. http://www.eset.com - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
JNI problem
-2.0.jar 7f5620ccf000-7f5620cd3000 r-xs 09:07 134504357 /home/java/app/WEB-INF/lib/gdata-health-2.0.jar 7f5620cd3000-7f5620cd4000 r-xs 09:07 134504371 /home/java/app/WEB-INF/lib/gdata-finance-meta-2.0.jar 7f5620cd4000-7f5620cdd000 r-xs 09:07 134466631 /home/java/app/WEB-INF/lib/gdata-finance-2.0.jar 7f5620cdd000-7f5620cde000 r-xs 09:07 134466627 /home/java/app/WEB-INF/lib/gdata-docs-meta-2.0.jar 7f5620cde000-7f5620ce3000 r-xs 09:07 134466620 /home/java/app/WEB-INF/lib/gdata-docs-2.0.jar 7f5620ce3000-7f5620d5d000 r-xs 09:07 134466644 /home/java/app/WEB-INF/lib/gdata-core-1.0.jar 7f5620d5d000-7f5620d5e000 r-xs 09:07 134466593 /home/java/app/WEB-INF/lib/gdata-contacts-meta-2.0.jar 7f5620d5e000-7f5620d64000 r-xs 09:07 134466612 /home/java/app/WEB-INF/lib/gdata-contacts-2.0.jar 7f5620d64000-7f5620d65000 r-xs 09:07 134504362 /home/java/app/WEB-INF/lib/gdata-codesearch-meta-2.0.jar 7f5620d65000-7f5620d69000 r-xs 09:07 134466645 /home/java/app/WEB-INF/lib/gdata-codesearch-2.0.jar 7f5620d69000-7f5620d6a000 r-xs 09:07 134504363 /home/java/app/WEB-INF/lib/gdata-client-meta-1.0.jar 7f5620d6a000-7f5620d81000 r-xs 09:07 134466619 /home/java/app/WEB-INF/lib/gdata-client-1.0.jar 7f5620d81000-7f5620d82000 r-xs 09:07 134466655 /home/java/app/WEB-INF/lib/gdata-calendar-meta-2.0.jar 7f5620d82000-7f5620d8f000 r-xs 09:07 134466615 /home/java/app/WEB-INF/lib/gdata-calendar-2.0.jar 7f5620d8f000-7f5620d9 r-xs 09:07 134466599 /home/java/app/WEB-INF/lib/gdata-books-meta-1.0.jar 7f5620d9-7f5620d96000 r-xs 09:07 134504355 /home/java/app/WEB-INF/lib/gdata-books-1.0.jar 7f5620d96000-7f5620d97000 r-xs 09:07 134466626 /home/java/app/WEB-INF/lib/gdata-blogger-meta-2.0.jar 7f5620d97000-7f5620d9b000 r-xs 09:07 134466606 /home/java/app/WEB-INF/lib/gdata-blogger-2.0.jar 7f5620d9b000-7f5620dac000 r-xs 09:07 134466632 /home/java/app/WEB-INF/lib/gdata-base-1.0.jar 7f5620dac000-7f5620dad000 r-xs 09:07 134466614 /home/java/app/WEB-INF/lib/gdata-appsforyourdomain-meta-1.0.jar 7f5620dad000-7f5620dbc000 r-xs 09:07 134466600 /home/java/app/WEB-INF/lib/gdata-appsforyourdomain-1.0.jar 7f5620dbc000-7f5620dcf000 r-xs 09:07 134466607 /home/java/app/WEB-INF/lib/ezmorph-1.0.2.jar 7f5620dcf000-7f5620dec000 r-xs 09:07 134504360 Thanks, Mohamed Mohamedin __ Information from ESET NOD32 Antivirus, version of virus signature database 4487 (20091007) __ The message was checked by ESET NOD32 Antivirus. http://www.eset.com
APR is not working
Dear everybody, I am trying to install APR for tomcat 6.0.18 on debian I did the following: apt-get install libapr1-dev libssl-dev cd tomcat-native-1.1.16-src/jni/native ./configure --with-apr=/usr/bin/apr-1-config --with-java-home=/usr/lib/jvm/java-1.5.0-sun --prefix=/usr/lib/catalina make make install and created the file $CATALINA_HOME/bin/setenv.sh which has the following lines LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$CATALINA_HOME/lib export LD_LIBRARY_PATH Then when I started tomcat the log shows the following lines and then nothing (It hangs) 05.06.2009 14:15:46 org.apache.catalina.core.AprLifecycleListener init INFO: Loaded APR based Apache Tomcat Native library 1.1.16. 05.06.2009 14:15:46 org.apache.catalina.core.AprLifecycleListener init INFO: APR capabilities: IPv6 [true], sendfile [true], accept filters [false], random [true]. I have tryed to stop and run it again manytimes and the same result. Please help Thanks a lot, Mohamedin - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: APR is not working
Thanks a lot for your fast reply (Both of you) It was the random number generator Setting SSLEngine to off fixed the problem And I don't need the SSL since it is handled by apache using mod_jk Thanks again, Mohamedin - Original Message - From: Mladen Turk mt...@apache.org To: Tomcat Users List users@tomcat.apache.org Sent: Friday, June 05, 2009 4:54 PM Subject: Re: APR is not working Mohamedin wrote: Then when I started tomcat the log shows the following lines and then nothing (It hangs) 05.06.2009 14:15:46 org.apache.catalina.core.AprLifecycleListener init INFO: Loaded APR based Apache Tomcat Native library 1.1.16. 05.06.2009 14:15:46 org.apache.catalina.core.AprLifecycleListener init INFO: APR capabilities: IPv6 [true], sendfile [true], accept filters [false], random [true]. I have tryed to stop and run it again manytimes and the same result. Have you tried to be more patient? On some systems the random number generator if having low entropy can hang for few minutes. Try setting SSLEngine to off in server.xml and see if it'll start faster. Regards -- ^TM - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org __ Information from ESET NOD32 Antivirus, version of virus signature database 4132 (20090604) __ The message was checked by ESET NOD32 Antivirus. http://www.eset.com - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Session Replication problems
) at java.util.concurrent.locks.LockSupport.park(LockSupport.java:118) at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:716) at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:746) at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1076) at java.util.concurrent.locks.ReentrantReadWriteLock$NonfairSync.wlock(ReentrantReadWriteLock.java:342) at java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock.lock(ReentrantReadWriteLock.java:637) at org.apache.catalina.ha.session.DeltaSession.lock(DeltaSession.java:184) at org.apache.catalina.ha.session.DeltaSession.setAttribute(DeltaSession.java:517) at org.apache.catalina.ha.session.DeltaSession.setAttribute(DeltaSession.java:502) at org.apache.catalina.session.StandardSessionFacade.setAttribute(StandardSessionFacade.java:130) at com.lutris.appserver.server.sessionContainerAdapter.ContainerAdapterSession.setHttpSession(ContainerAdapterSession.java:230) at com.lutris.appserver.server.sessionContainerAdapter.ContainerAdapterSessionManager.getSession(ContainerAdapterSessionManager.java:311) at com.lutris.appserver.server.sessionContainerAdapter.ContainerAdapterSessionManager.getSession(ContainerAdapterSessionManager.java:342) at com.lutris.appserver.server.sessionContainerAdapter.TomcatContainerAdapterSessionManager.getSession(TomcatContainerAdapterSessionManager.java:273) at com.lutris.appserver.server.StandardAppUtil.getRequestSession(StandardAppUtil.java:323) at com.lutris.appserver.server.StandardApplication.ensureSession(StandardApplication.java:718) at com.lutris.appserver.server.StandardApplication.requestPreprocessor(StandardApplication.java:900) at com.ours.WebApp.requestPreprocessor(WebApp.java:83) at com.lutris.appserver.server.httpPresentation.HttpPresentationManager.runRequestPreprocessor(HttpPresentationManager.java:400) at com.lutris.appserver.server.httpPresentation.HttpPresentationManager.Run(HttpPresentationManager.java:247) at com.lutris.appserver.server.httpPresentation.servlet.HttpPresentationServlet.serviceDirect(HttpPresentationServlet.java:682) at com.lutris.appserver.server.httpPresentation.servlet.HttpPresentationServlet.service(HttpPresentationServlet.java:807) at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.ha.tcp.ReplicationValve.invoke(ReplicationValve.java:347) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286) at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:190) at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:283) at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:767) at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:697) at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:889) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690) at java.lang.Thread.run(Thread.java:595) Note: The Master server is not in the same network (LAN) with other 3 servers Regards, Mohamedin
Re: Session replication problem
Let me give an example: I have server1 with tomcat8080 tomcat8081 server2 also with tomcat8080 tomcat8081 I need server1.tomcat8080 server2.tomcat8080 to replicate their sessions and server1.tomcat8081 server2.tomcat8081 to replicate their sessions What I see in the log is all see all sessions e.g. server1.tomcat8080, server2.tomcat8080, server1.tomcat8081 server2.tomcat8081 replicate the sessions all together Thanks a lot, Mohamedin - Original Message - From: Filip Hanik - Dev Lists devli...@hanik.com To: Tomcat Users List users@tomcat.apache.org Sent: Tuesday, February 10, 2009 4:10 AM Subject: Re: Session replication problem Mohamedin wrote: I have a problem with Session replication. I am running multible tomcat instance on the same server. And I have 4 servers of the same configuration (Multible tomcat instances). I have enabled the session replication on these 4 servers (In each instance with different port). The problem is that All instances see each other. while I only need similar instances to see each other. I'm not sure I understand what you are trying to achieve, what do you mean by similar Filip The config: Engine name=Catalina defaultHost=localhost jvmRoute=myserver Cluster className=org.apache.catalina.ha.tcp.SimpleTcpCluster channelSendOptions=8 Manager className=org.apache.catalina.ha.session.DeltaManager expireSessionsOnShutdown=false notifyListenersOnReplication=true domainReplication=true / Channel className=org.apache.catalina.tribes.group.GroupChannel Sender className=org.apache.catalina.tribes.transport.ReplicationTransmitter Transport className=org.apache.catalina.tribes.transport.nio.PooledParallelSender / /Sender Receiver className=org.apache.catalina.tribes.transport.nio.NioReceiver address=245.245.245.245 port= autoBind=100 selectorTimeout=5000 maxThreads=6 / Interceptor className=org.apache.catalina.tribes.group.interceptors.TcpFailureDetector / Interceptor className=org.apache.catalina.tribes.group.interceptors.MessageDispatch15Intercepto r / Interceptor className=org.apache.catalina.tribes.group.interceptors.StaticMembershipInterceptor Member className=org.apache.catalina.tribes.membership.StaticMember port= securePort=-1 host=245.245.245.246 domain=245.245.245.246 / Member className=org.apache.catalina.tribes.membership.StaticMember port= securePort=-1 host=245.245.245.247 domain=245.245.245.247 / Member className=org.apache.catalina.tribes.membership.StaticMember port= securePort=-1 host=245.245.245.248 domain=245.245.245.248 / /Interceptor /Channel Valve className=org.apache.catalina.ha.tcp.ReplicationValve filter= / ClusterListener className=org.apache.catalina.ha.session.JvmRouteSessionIDBinderListener / ClusterListener className=org.apache.catalina.ha.session.ClusterSessionListener / /Cluster . . . other instances use the same config (Only different port) In the log I see: 07.02.2009 18:08:19 org.apache.catalina.core.AprLifecycleListener init INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-1.5.0-sun-1.5.0.14/jre/lib/amd64/server:/usr/lib/jvm/java-1.5.0-sun-1.5.0.14/jre/lib/amd64:/usr/lib/jvm/java-1.5.0-sun-1.5.0.14/jre/../lib/amd64 07.02.2009 18:08:20 org.apache.coyote.http11.Http11Protocol init INFO: Initializing Coyote HTTP/1.1 on http-8083 07.02.2009 18:08:20 org.apache.catalina.startup.Catalina load INFO: Initialization processed in 483 ms 07.02.2009 18:08:20 org.apache.catalina.core.StandardService start INFO: Starting service Catalina 07.02.2009 18:08:20 org.apache.catalina.core.StandardEngine start INFO: Starting Servlet Engine: Apache Tomcat/6.0.16 07.02.2009 18:08:20 org.apache.catalina.ha.tcp.SimpleTcpCluster start INFO: Cluster is about to start 07.02.2009 18:08:20 org.apache.catalina.tribes.transport.ReceiverBase bind INFO: Receiver Server Socket bound to:/245.245.245.245: 07.02.2009 18:08:20 org.apache.catalina.tribes.membership.McastServiceImpl setupSocket INFO: Setting cluster mcast soTimeout to 500 07.02.2009 18:08:20 org.apache.catalina.tribes.membership.McastServiceImpl waitForMembers INFO: Sleeping for 1000 milliseconds to establish cluster membership, start level:4
Session replication problem
org.apache.catalina.tribes.membership.McastServiceImpl waitForMembers INFO: Done sleeping, membership established, start level:4 07.02.2009 18:08:21 org.apache.catalina.tribes.membership.McastServiceImpl waitForMembers INFO: Sleeping for 1000 milliseconds to establish cluster membership, start level:8 07.02.2009 18:08:21 org.apache.catalina.tribes.io.BufferPool getBufferPool INFO: Created a buffer pool with max size:104857600 bytes of type:org.apache.catalina.tribes.io.BufferPool15Impl 07.02.2009 18:08:21 org.apache.catalina.ha.session.ClusterSessionListener messageReceived WARNUNG: Context manager doesn't exist:localhost#/shop 07.02.2009 18:08:21 org.apache.catalina.ha.session.ClusterSessionListener messageReceived WARNUNG: Context manager doesn't exist:localhost#/shop 07.02.2009 18:08:22 org.apache.catalina.ha.session.ClusterSessionListener messageReceived WARNUNG: Context manager doesn't exist:localhost#/shop 07.02.2009 18:08:22 org.apache.catalina.tribes.membership.McastServiceImpl waitForMembers INFO: Done sleeping, membership established, start level:8 07.02.2009 18:08:22 org.apache.catalina.ha.session.ClusterSessionListener messageReceived WARNUNG: Context manager doesn't exist:localhost#/shop 07.02.2009 18:08:22 org.apache.catalina.loader.WebappClassLoader validateJarFile 07.02.2009 18:08:22 org.apache.catalina.ha.session.DeltaManager start INFO: Register manager /shop to cluster element Engine with name Catalina 07.02.2009 18:08:22 org.apache.catalina.ha.session.DeltaManager start INFO: Starting clustering manager at /shop 07.02.2009 18:08:22 org.apache.catalina.ha.session.DeltaManager getAllClusterSessions WARNUNG: Manager [localhost#/shop], requesting session state from org.apache.catalina.tribes.membership.MemberImpl[tcp://{245, 245, -127, -122}:8886,{245, 245, -127, -122},8886, alive=2072194104,id={-97 85 125 -85 -14 18 65 -52 -76 -69 -84 -6 -58 -90 -7 -51 }, payload={}, command={}, domain={}, ]. This operation will timeout if no session state has been received within 60 seconds. 07.02.2009 18:08:23 org.apache.catalina.ha.session.DeltaManager waitForSendAllSessions INFO: Manager [localhost#/shop]; session state send at 07.02.09 18:08 received in 421 ms. 07.02.2009 18:08:23 org.apache.catalina.ha.session.DeltaManager getAllClusterSessions WARNUNG: Manager [localhost#/shop]: Drop message SESSION-MODIFIED inside GET_ALL_SESSIONS sync phase start date 07.02.09 18:00 message date 07.02.09 18:00 Thanks a lot, Mohamedin
RE: Why Tomcat hang for a while before starting
Can you please tell me how to detect such symbolic link. Thanks a lot -Original Message- From: Caldarale, Charles R [mailto:[EMAIL PROTECTED] Sent: Wednesday, March 05, 2008 12:42 AM To: Tomcat Users List Subject: RE: Why Tomcat hang for a while before starting From: Mohamed Mohamedin [mailto:[EMAIL PROTECTED] Subject: Why Tomcat hang for a while before starting main prio=1 tid=0x401161f0 nid=0x70ed runnable [0x7fdc1000..0x7fdc35d0] at java.io.UnixFileSystem.list(Native Method) at java.io.File.list(File.java:937) The only difference I can tell is the slow one have a symbolic link in its webapps while the other not. I'd be looking for symbolic links that are forming an infinite loop. - Chuck THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] __ NOD32 2922 (20080305) Information __ This message was checked by NOD32 antivirus system. http://www.eset.com - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Why Tomcat hang for a while before starting
Dear All, I have problems with very slow staring up time of tomcat (about 15 minutes). I have tried many solutions but still the same result. I have took this thread dump using kill -3 tomcatpid while the 15 minutes of no response and here is the dump: Full thread dump Java HotSpot(TM) 64-Bit Server VM (1.5.0_10-b03 mixed mode): Low Memory Detector daemon prio=1 tid=0x2aba1820 nid=0x70f9 runnable [0x..0x] CompilerThread1 daemon prio=1 tid=0x2ab9fbf0 nid=0x70f8 waiting on condition [0x..0x40c5a400] CompilerThread0 daemon prio=1 tid=0x2ab9e640 nid=0x70f7 waiting on condition [0x..0x40b59580] AdapterThread daemon prio=1 tid=0x2ab9cf20 nid=0x70f6 waiting on condition [0x..0x] Signal Dispatcher daemon prio=1 tid=0x2ab9bbc0 nid=0x70f5 waiting on condition [0x..0x] Finalizer daemon prio=1 tid=0x2ab87720 nid=0x70f4 in Object.wait() [0x40857000..0x40857d20] at java.lang.Object.wait(Native Method) - waiting on 0x2aacefbf8c58 (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116) - locked 0x2aacefbf8c58 (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132) at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159) Reference Handler daemon prio=1 tid=0x2ab86ef0 nid=0x70f3 in Object.wait() [0x40756000..0x40756ea0] at java.lang.Object.wait(Native Method) - waiting on 0x2aacefb404d8 (a java.lang.ref.Reference$Lock) at java.lang.Object.wait(Object.java:474) at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116) - locked 0x2aacefb404d8 (a java.lang.ref.Reference$Lock) main prio=1 tid=0x401161f0 nid=0x70ed runnable [0x7fdc1000..0x7fdc35d0] at java.io.UnixFileSystem.list(Native Method) at java.io.File.list(File.java:937) at org.apache.naming.resources.FileDirContext.list(FileDirContext.java:894) at org.apache.naming.resources.FileDirContext.list(FileDirContext.java:311) at org.apache.naming.resources.ProxyDirContext.list(ProxyDirContext.java:482) at org.apache.catalina.startup.TldConfig.tldScanResourcePathsWebInf(TldConfig.j ava:632) at org.apache.catalina.startup.TldConfig.tldScanResourcePathsWebInf(TldConfig.j ava:647) at org.apache.catalina.startup.TldConfig.tldScanResourcePathsWebInf(TldConfig.j ava:647) at org.apache.catalina.startup.TldConfig.tldScanResourcePathsWebInf(TldConfig.j ava:647) at org.apache.catalina.startup.TldConfig.tldScanResourcePathsWebInf(TldConfig.j ava:647) at org.apache.catalina.startup.TldConfig.tldScanResourcePathsWebInf(TldConfig.j ava:647) at org.apache.catalina.startup.TldConfig.tldScanResourcePaths(TldConfig.java:60 1) at org.apache.catalina.startup.TldConfig.execute(TldConfig.java:282) at org.apache.catalina.core.StandardContext.processTlds(StandardContext.java:43 07) at org.apache.catalina.core.StandardContext.start(StandardContext.java:4144) - locked 0x2aacefbf8e48 (a org.apache.catalina.core.StandardContext) at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:7 60) - locked 0x2aacefbf9120 (a java.util.HashMap) at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:740) at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:544) at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883 ) at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSuppor t.java:120) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1022) - locked 0x2aacefbf9160 (a org.apache.catalina.core.StandardHost) at org.apache.catalina.core.StandardHost.start(StandardHost.java:736) - locked 0x2aacefbf9160 (a org.apache.catalina.core.StandardHost) at
RE: Why Tomcat take about 15 minutes to start?
The log is like this in the lines that cause the problem: Feb 18, 2008 10:26:57 PM org.apache.catalina.core.StandardEngine start INFO: Starting Servlet Engine: Apache Tomcat/5.5.25 Feb 18, 2008 10:26:57 PM org.apache.catalina.core.StandardHost start INFO: XML validation disabled log4j:WARN No appenders could be found for logger (org.apache.commons.digester.Digester.sax). log4j:WARN Please initialize the log4j system properly. The delay are between the line INFO: XML validation disabled and the next one log4j:WARN No appenders could be found for logger And then the application starts correctly (Enhydra application) and in about 2 seconds 2008-02-18 22:39:32,036: (first log message from the application) . . . Feb 18, 2008 10:39:33 PM org.apache.catalina.startup.Catalina start INFO: Server startup in 756278 ms (last log message) Also I have no iptables. Thanks -Original Message- From: Christopher Schultz [mailto:[EMAIL PROTECTED] Sent: Monday, February 18, 2008 9:45 PM To: Tomcat Users List Subject: Re: Why Tomcat take about 15 minutes to start? -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Mohamed, Mohamed Mohamedin wrote: | I am using Tomcat 5.5.25 on SUSE Linux 10.1 (X86-64) and Java 1.5.0_10 from | Sun. | When I run Tomcat using catalina.sh start and watching the log it stop at | INFO: XML validation disabled and take about 15 minutes before continuing | next lines and starting. Please help me to know why? After the 15 minute delay, what log messages are in the log file? I'm wondering if the delay is related to repeated failed DNS lookups or even a firewall issue when trying to grab a DTD or XML Schema. Do you have iptables blocking anything in particular? Are you getting anything in your kernel log related to dropped packets? Finally, does the application start up correctly (eventually)? - -chris -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.8 (MingW32) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iEYEARECAAYFAke54D8ACgkQ9CaO5/Lv0PDfUwCgjYJKTQz9n4goNxo4WfrlRcHv 3jMAnjdobEvsNNKEiTINW53G8tCXYqyK =gCg0 -END PGP SIGNATURE- - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] __ NOD32 2883 (20080218) Information __ This message was checked by NOD32 antivirus system. http://www.eset.com - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: Why Tomcat take about 15 minutes to start?
The same delay approx. -Original Message- From: Leon Rosenberg [mailto:[EMAIL PROTECTED] Sent: Monday, February 18, 2008 12:56 AM To: Tomcat Users List Subject: Re: Why Tomcat take about 15 minutes to start? And without the enhydra app? Leon On Feb 17, 2008 9:36 PM, Mohamed Mohamedin [EMAIL PROTECTED] wrote: It has internet connection and can connect to apache.org. Also It has app (Enhydra Application) -Original Message- From: Leon Rosenberg [mailto:[EMAIL PROTECTED] Sent: Sunday, February 17, 2008 4:46 PM To: Tomcat Users List Subject: Re: Why Tomcat take about 15 minutes to start? is your server connected to the internet (e.g. can make requests, specially to apache.org) ? Is it a vanilla tomcat or have you put some app into it? Especially a struts app? regards Leon On Feb 17, 2008 2:43 PM, Mohamed Mohamedin [EMAIL PROTECTED] wrote: This message http://readlist.com/lists/tomcat.apache.org/users/9/46003.html; talked about APR. Which I don't use. But I found in the last these lines Anyway: since you've not configured an HTTPS Connector in Tomcat, I don't really have an explanation for the slow startup. I use the default server.xml and it has only this connector: Connector port=8080 protocol=HTTP/1.1 connectionTimeout=2 redirectPort=8443 / So is really my problem has no explanation? Thanks again for your help -Original Message- From: Markus Schönhaber [mailto:[EMAIL PROTECTED] Sent: Sunday, February 17, 2008 1:15 AM To: users@tomcat.apache.org Subject: Re: Why Tomcat take about 15 minutes to start? Neha Agrawal wrote: but i did not receive it...dont know why? This is what Christopher pointed you to: http://readlist.com/lists/tomcat.apache.org/users/9/46003.html Regards mks - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] __ NOD32 2881 (20080217) Information __ This message was checked by NOD32 antivirus system. http://www.eset.com - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: Why Tomcat take about 15 minutes to start?
This message http://readlist.com/lists/tomcat.apache.org/users/9/46003.html; talked about APR. Which I don't use. But I found in the last these lines Anyway: since you've not configured an HTTPS Connector in Tomcat, I don't really have an explanation for the slow startup. I use the default server.xml and it has only this connector: Connector port=8080 protocol=HTTP/1.1 connectionTimeout=2 redirectPort=8443 / So is really my problem has no explanation? Thanks again for your help -Original Message- From: Markus Schönhaber [mailto:[EMAIL PROTECTED] Sent: Sunday, February 17, 2008 1:15 AM To: users@tomcat.apache.org Subject: Re: Why Tomcat take about 15 minutes to start? Neha Agrawal wrote: but i did not receive it...dont know why? This is what Christopher pointed you to: http://readlist.com/lists/tomcat.apache.org/users/9/46003.html Regards mks - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] __ NOD32 2881 (20080217) Information __ This message was checked by NOD32 antivirus system. http://www.eset.com - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
How to make Tomcat do not use /dev/random?
Dear All, I am facing a problem with tomcat which make it start very slowly. I found while searching that Tomcat reading from /dev/random to get random numbers may be the cause. So I am asking How to prevent that? Or if there is another cause please tell me. Thanks a lot
RE: Why Tomcat take about 15 minutes to start?
It has internet connection and can connect to apache.org. Also It has app (Enhydra Application) -Original Message- From: Leon Rosenberg [mailto:[EMAIL PROTECTED] Sent: Sunday, February 17, 2008 4:46 PM To: Tomcat Users List Subject: Re: Why Tomcat take about 15 minutes to start? is your server connected to the internet (e.g. can make requests, specially to apache.org) ? Is it a vanilla tomcat or have you put some app into it? Especially a struts app? regards Leon On Feb 17, 2008 2:43 PM, Mohamed Mohamedin [EMAIL PROTECTED] wrote: This message http://readlist.com/lists/tomcat.apache.org/users/9/46003.html; talked about APR. Which I don't use. But I found in the last these lines Anyway: since you've not configured an HTTPS Connector in Tomcat, I don't really have an explanation for the slow startup. I use the default server.xml and it has only this connector: Connector port=8080 protocol=HTTP/1.1 connectionTimeout=2 redirectPort=8443 / So is really my problem has no explanation? Thanks again for your help -Original Message- From: Markus Schönhaber [mailto:[EMAIL PROTECTED] Sent: Sunday, February 17, 2008 1:15 AM To: users@tomcat.apache.org Subject: Re: Why Tomcat take about 15 minutes to start? Neha Agrawal wrote: but i did not receive it...dont know why? This is what Christopher pointed you to: http://readlist.com/lists/tomcat.apache.org/users/9/46003.html Regards mks - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] __ NOD32 2881 (20080217) Information __ This message was checked by NOD32 antivirus system. http://www.eset.com - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Why Tomcat take about 15 minutes to start?
Dear All, I am using Tomcat 5.5.25 on SUSE Linux 10.1 (X86-64) and Java 1.5.0_10 from Sun. When I run Tomcat using catalina.sh start and watching the log it stop at INFO: XML validation disabled and take about 15 minutes before continuing next lines and starting. Please help me to know why? Thanks a lot - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]