sometimes login issue using ldap users
Posted: Thu Jun 08, 2017 9:40 am
Hi All,
Regrading the issue which i raise in meeting user 2017. it is blocking issue for us and i will paste here some log maybe this will help us to find the problem.
issue: sometime in Random ldap users trying to log in either from web or Omero.insight it waiting endless
in web after a timeout (nginx 405 Not Allowed)
nginx error log is
jstack log is
hope this will help, last thing i think the issue realted with java-ldap timeout stuff or seem connection is cashed
cheers
Saleh
Regrading the issue which i raise in meeting user 2017. it is blocking issue for us and i will paste here some log maybe this will help us to find the problem.
issue: sometime in Random ldap users trying to log in either from web or Omero.insight it waiting endless
in web after a timeout (nginx 405 Not Allowed)
nginx error log is
- Code: Select all
2017/06/08 10:52:30 [error] 13952#0: *3148 upstream prematurely closed connection while reading response header from upstream, client: 134.99.190.4, server: , request: "POST /webclient/login/?url=%2Fwebclient%2F HTTP/1.1", upstream: "http://127.0.0.1:4080/webclient/login/?url=%2Fwebclient%2F", host: "omero-cai.hhu.de", referrer: "https://omero-cai.hhu.de/webclient/login/?url=%2Fwebclient%2F"
2017/06/08 10:57:23 [error] 13952#0: OCSP_basic_verify() failed (SSL: error:27069065:OCSP routines:OCSP_basic_verify:certificate verify error:Verify error:unable to get issuer certificate) while requesting certificate status, responder: ocsp.pca.dfn.de
2017/06/08 10:58:27 [error] 13952#0: *3150 upstream prematurely closed connection while reading response header from upstream, client: 134.99.190.4, server: , request: "POST /webclient/login/?url=%2Fwebclient%2F HTTP/1.1", upstream: "http://127.0.0.1:4080/webclient/login/?url=%2Fwebclient%2F", host: "omero-cai.hhu.de", referrer: "https://omero-cai.hhu.de/webclient/login/?url=%2Fwebclient%2F"
jstack log is
2017-06-08 10:50:20
Full thread dump OpenJDK 64-Bit Server VM (25.131-b12 mixed mode):
"Attach Listener" #25 daemon prio=9 os_prio=0 tid=0x00007fd540001000 nid=0x3868 waiting on condition [0x0000000000000000]
java.lang.Thread.State: RUNNABLE
"pool-2-thread-5" #24 prio=5 os_prio=0 tid=0x00007fd51400b800 nid=0x24ec waiting on condition [0x00007fd5443cc000]
java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00000000cf78f0c0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1067)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:748)
"pool-2-thread-4" #23 prio=5 os_prio=0 tid=0x00007fd514009800 nid=0x24e1 waiting on condition [0x00007fd5444cd000]
java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00000000cf78f0c0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1067)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:748)
"pool-2-thread-3" #22 prio=5 os_prio=0 tid=0x00007fd514007800 nid=0x24db waiting on condition [0x00007fd5445ce000]
java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00000000cf78f0c0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1067)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:748)
"Indexer-0-Ice.Timer" #21 prio=5 os_prio=0 tid=0x00007fd57dadf800 nid=0x24d9 waiting on condition [0x00007fd5448cf000]
java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00000000d0324620> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1081)
at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809)
at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1067)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:748)
"Indexer-0-Ice.ThreadPool.Server-0" #20 prio=5 os_prio=0 tid=0x00007fd57dacf800 nid=0x24d8 runnable [0x00007fd5449d0000]
java.lang.Thread.State: RUNNABLE
at sun.nio.ch.EPollArrayWrapper.epollWait(Native Method)
at sun.nio.ch.EPollArrayWrapper.poll(EPollArrayWrapper.java:269)
at sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java:93)
at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:86)
- locked <0x00000000d0393248> (a sun.nio.ch.Util$3)
- locked <0x00000000d0393238> (a java.util.Collections$UnmodifiableSet)
- locked <0x00000000d0392940> (a sun.nio.ch.EPollSelectorImpl)
at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:97)
at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:101)
at IceInternal.Selector.select(Selector.java:201)
at IceInternal.ThreadPool.run(ThreadPool.java:414)
at IceInternal.ThreadPool.access$300(ThreadPool.java:12)
at IceInternal.ThreadPool$EventHandlerThread.run(ThreadPool.java:832)
at java.lang.Thread.run(Thread.java:748)
"pool-2-thread-2" #19 prio=5 os_prio=0 tid=0x00007fd514006800 nid=0x24d7 waiting on condition [0x00007fd544ad1000]
java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00000000cf78f0c0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1067)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:748)
"pool-2-thread-1" #18 prio=5 os_prio=0 tid=0x00007fd514001800 nid=0x24d6 waiting on condition [0x00007fd544bd2000]
java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00000000cf78f0c0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1067)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:748)
"Indexer-0-Ice.ThreadPool.Client-0" #17 prio=5 os_prio=0 tid=0x00007fd57daa0800 nid=0x24d5 runnable [0x00007fd544cd3000]
java.lang.Thread.State: RUNNABLE
at sun.nio.ch.EPollArrayWrapper.epollWait(Native Method)
at sun.nio.ch.EPollArrayWrapper.poll(EPollArrayWrapper.java:269)
at sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java:93)
at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:86)
- locked <0x00000000d03954f8> (a sun.nio.ch.Util$3)
- locked <0x00000000d03954e8> (a java.util.Collections$UnmodifiableSet)
- locked <0x00000000d03952b0> (a sun.nio.ch.EPollSelectorImpl)
at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:97)
at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:101)
at IceInternal.Selector.select(Selector.java:201)
at IceInternal.ThreadPool.run(ThreadPool.java:414)
at IceInternal.ThreadPool.access$300(ThreadPool.java:12)
at IceInternal.ThreadPool$EventHandlerThread.run(ThreadPool.java:832)
at java.lang.Thread.run(Thread.java:748)
"OMERO.scheduler_QuartzSchedulerThread" #16 prio=5 os_prio=0 tid=0x00007fd57d435800 nid=0x24d3 waiting on condition [0x00007fd5451d4000]
java.lang.Thread.State: TIMED_WAITING (sleeping)
at java.lang.Thread.sleep(Native Method)
at org.quartz.core.QuartzSchedulerThread.run(QuartzSchedulerThread.java:272)
"metrics-logger-reporter-thread-1" #15 daemon prio=5 os_prio=0 tid=0x00007fd57cf01800 nid=0x24d2 waiting on condition [0x00007fd5452d5000]
java.lang.Thread.State: TIMED_WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00000000cf823d48> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078)
at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093)
at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809)
at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1067)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:748)
"Ice.ThreadPool.Client-0" #14 prio=5 os_prio=0 tid=0x00007fd57ccd4000 nid=0x24c6 runnable [0x00007fd568fc8000]
java.lang.Thread.State: RUNNABLE
at sun.nio.ch.EPollArrayWrapper.epollWait(Native Method)
at sun.nio.ch.EPollArrayWrapper.poll(EPollArrayWrapper.java:269)
at sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java:93)
at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:86)
- locked <0x00000000cbbf7e50> (a sun.nio.ch.Util$3)
- locked <0x00000000cbbf7e60> (a java.util.Collections$UnmodifiableSet)
- locked <0x00000000cbbf7e08> (a sun.nio.ch.EPollSelectorImpl)
at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:97)
at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:101)
at IceInternal.Selector.select(Selector.java:201)
at IceInternal.ThreadPool.run(ThreadPool.java:414)
at IceInternal.ThreadPool.access$300(ThreadPool.java:12)
at IceInternal.ThreadPool$EventHandlerThread.run(ThreadPool.java:832)
at java.lang.Thread.run(Thread.java:748)
"net.sf.ehcache.CacheManager@33308786" #13 daemon prio=5 os_prio=0 tid=0x00007fd57cc5c800 nid=0x24c4 in Object.wait() [0x00007fd5690c9000]
java.lang.Thread.State: TIMED_WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00000000cbb66088> (a java.util.TaskQueue)
at java.util.TimerThread.mainLoop(Timer.java:552)
- locked <0x00000000cbb66088> (a java.util.TaskQueue)
at java.util.TimerThread.run(Timer.java:505)
"PostgreSQL-JDBC-SharedTimer-1" #12 daemon prio=5 os_prio=0 tid=0x00007fd57cc0c800 nid=0x24c0 in Object.wait() [0x00007fd5693ca000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00000000cbba92f8> (a java.util.TaskQueue)
at java.lang.Object.wait(Object.java:502)
at java.util.TimerThread.mainLoop(Timer.java:526)
- locked <0x00000000cbba92f8> (a java.util.TaskQueue)
at java.util.TimerThread.run(Timer.java:505)
"bitronix-task-scheduler" #11 daemon prio=5 os_prio=0 tid=0x00007fd57cbbb000 nid=0x24be waiting on condition [0x00007fd5694cb000]
java.lang.Thread.State: TIMED_WAITING (sleeping)
at java.lang.Thread.sleep(Native Method)
at bitronix.tm.timer.TaskScheduler.run(TaskScheduler.java:245)
"perf4j-async-stats-appender-sink-CoalescingStatistics" #10 daemon prio=5 os_prio=0 tid=0x00007fd57c8d2000 nid=0x2478 waiting on condition [0x00007fd569de3000]
java.lang.Thread.State: TIMED_WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00000000cbb28cc8> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078)
at java.util.concurrent.ArrayBlockingQueue.poll(ArrayBlockingQueue.java:418)
at org.perf4j.helpers.GenericAsyncCoalescingStatisticsAppender$StopWatchesFromQueueIterator.getNext(GenericAsyncCoalescingStatisticsAppender.java:388)
at org.perf4j.helpers.GenericAsyncCoalescingStatisticsAppender$StopWatchesFromQueueIterator.hasNext(GenericAsyncCoalescingStatisticsAppender.java:349)
at org.perf4j.helpers.GroupingStatisticsIterator.getNext(GroupingStatisticsIterator.java:149)
at org.perf4j.helpers.GroupingStatisticsIterator.hasNext(GroupingStatisticsIterator.java:102)
at org.perf4j.helpers.GenericAsyncCoalescingStatisticsAppender$Dispatcher.run(GenericAsyncCoalescingStatisticsAppender.java:314)
at java.lang.Thread.run(Thread.java:748)
"Service Thread" #8 daemon prio=9 os_prio=0 tid=0x00007fd57c19a800 nid=0x2406 runnable [0x0000000000000000]
java.lang.Thread.State: RUNNABLE
"C1 CompilerThread2" #7 daemon prio=9 os_prio=0 tid=0x00007fd57c195800 nid=0x2405 waiting on condition [0x0000000000000000]
java.lang.Thread.State: RUNNABLE
"C2 CompilerThread1" #6 daemon prio=9 os_prio=0 tid=0x00007fd57c194000 nid=0x2404 waiting on condition [0x0000000000000000]
java.lang.Thread.State: RUNNABLE
"C2 CompilerThread0" #5 daemon prio=9 os_prio=0 tid=0x00007fd57c186800 nid=0x23fd waiting on condition [0x0000000000000000]
java.lang.Thread.State: RUNNABLE
"Signal Dispatcher" #4 daemon prio=9 os_prio=0 tid=0x00007fd57c184800 nid=0x23fb runnable [0x0000000000000000]
java.lang.Thread.State: RUNNABLE
"Finalizer" #3 daemon prio=8 os_prio=0 tid=0x00007fd57c15a800 nid=0x23f3 in Object.wait() [0x00007fd56afc8000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00000000cbbf9ab0> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:143)
- locked <0x00000000cbbf9ab0> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:164)
at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:209)
"Reference Handler" #2 daemon prio=10 os_prio=0 tid=0x00007fd57c155800 nid=0x23f1 in Object.wait() [0x00007fd56b0c9000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00000000cbbf9d38> (a java.lang.ref.Reference$Lock)
at java.lang.Object.wait(Object.java:502)
at java.lang.ref.Reference.tryHandlePending(Reference.java:191)
- locked <0x00000000cbbf9d38> (a java.lang.ref.Reference$Lock)
at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:153)
"main" #1 prio=5 os_prio=0 tid=0x00007fd57c009000 nid=0x23e6 in Object.wait() [0x00007fd585129000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00000000d0391fd8> (a IceInternal.ObjectAdapterFactory)
at java.lang.Object.wait(Object.java:502)
at IceInternal.ObjectAdapterFactory.waitForShutdown(ObjectAdapterFactory.java:63)
- locked <0x00000000d0391fd8> (a IceInternal.ObjectAdapterFactory)
at Ice.CommunicatorI.waitForShutdown(CommunicatorI.java:32)
at ome.services.blitz.Entry.start(Entry.java:202)
at ome.services.blitz.Entry.main(Entry.java:146)
"VM Thread" os_prio=0 tid=0x00007fd57c14c000 nid=0x23f0 runnable
"GC task thread#0 (ParallelGC)" os_prio=0 tid=0x00007fd57c01e000 nid=0x23e8 runnable
"GC task thread#1 (ParallelGC)" os_prio=0 tid=0x00007fd57c020000 nid=0x23e9 runnable
"GC task thread#2 (ParallelGC)" os_prio=0 tid=0x00007fd57c022000 nid=0x23ea runnable
"GC task thread#3 (ParallelGC)" os_prio=0 tid=0x00007fd57c023800 nid=0x23eb runnable
"VM Periodic Task Thread" os_prio=0 tid=0x00007fd57c19d000 nid=0x2407 waiting on condition
JNI global references: 234
hope this will help, last thing i think the issue realted with java-ldap timeout stuff or seem connection is cashed
cheers
Saleh