Task #9063 (closed)
Opened 12 years ago
Closed 12 years ago
Bug: server lockup on "Already logged"
Reported by: | jamoore | Owned by: | jamoore |
---|---|---|---|
Priority: | critical | Milestone: | OMERO-4.4 |
Component: | Services | Version: | n.a. |
Keywords: | n.a. | Cc: | |
Resources: | n.a. | Referenced By: | n.a. |
References: | n.a. | Remaining Time: | 0.0d |
Sprint: | 2012-06-19 (17) |
Description
Some service call is poisoning threads so that following calls are failing such as:
ame as name31_0_, this_.version as version31_0_ from experimentergroup this_ where this_.name=? 2012-06-04 16:50:39,317 WARN [ome.services.sessions.state.SessionCache] (2-thread-2) 1error(s) on reload of 9e2c9943-8594-4285-9fc5-7c942a730308 java.lang.IllegalStateException: Already logged in. Use Executor.submit() and .get(). at ome.services.util.Executor$Impl.execute(Executor.java:391) at ome.services.util.Executor$Impl.execute(Executor.java:350) at ome.services.sessions.SessionManagerImpl.reload(SessionManagerImpl.java:886) at ome.services.sessions.state.SessionCache.reload(SessionCache.java:628) at ome.services.sessions.SessionManagerImpl$5.call(SessionManagerImpl.java:696) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:680)
Change History (2)
comment:1 Changed 12 years ago by jmoore
comment:2 Changed 12 years ago by jmoore
- Remaining Time changed from 0.5 to 0
- Resolution set to fixed
- Status changed from new to closed
Fixed on sprint17-bugfixes.
commit 631898cb3f521e71b4790c65fa44c2cbb8925de8 Author: jmoore <josh@glencoesoftware.com> Date: Tue Jun 5 12:09:54 2012 Cleanup current details on DoAll (Fix #9063) The use of the Push/Pop ContextMessage can leave a login active within CurrentDetails/PrincipalHolder. This corrupts the thread leading to fatal server errors.
Note: See
TracTickets for help on using
tickets.
You may also have a look at Agilo extensions to the ticket.
Output from $ grep -E "(Excp|WARN|ERROR|Already.logged)" var/log/Blitz-0.log | less:
My server was running in the debugger, which may be the ultimate cause, but it would be nice if the threads would correct themselves.