Warning: Can't synchronize with repository "(default)" (/home/git/ome.git does not appear to be a Git repository.). Look in the Trac log for more information.
Notice: In order to edit this ticket you need to be either: a Product Owner, The owner or the reporter of the ticket, or, in case of a Task not yet assigned, a team_member"

Task #2897 (new)

Opened 14 years ago

Last modified 14 years ago

ISession could destroy sessions

Reported by: atarkowska Owned by: jamoore
Priority: major Milestone: Unscheduled
Component: Services Version: n.a.
Keywords: n.a. Cc:
Resources: n.a. Referenced By: n.a.
References: n.a. Remaining Time: 0.5d
Sprint: n.a.

Description

closeSession is reducing reference counter only. It means user must call it many times. It would be good to have destroySession which kill every workers at once.

Change History (8)

comment:1 Changed 14 years ago by jmoore

see killSession.

comment:2 Changed 14 years ago by atarkowska

(In [8092]) to be sure session is completely destroyed, see #2897

comment:3 Changed 14 years ago by atarkowska

calling killSession for 'root' breaks server, require restart.

2010-09-17 20:38:51,528 ERROR [services.blitz.fire.PermissionsVerifierI] (l.Server-0) Exception thrown while checking password for:root
ome.conditions.RemovedSessionException: No context for 0e73374a-63a6-4497-a3c6-d5847fee89b9
	at ome.services.sessions.state.SessionCache.getElementNullOrThrowOnTimeout(SessionCache.java:269)
	at ome.services.sessions.state.SessionCache.getSessionContext(SessionCache.java:235)
	at ome.security.basic.CurrentDetails.login(CurrentDetails.java:158)
	at ome.services.util.Executor$Impl.execute(Executor.java:334)
	at ome.services.sessions.SessionManagerImpl.executeCheckPasswordRO(SessionManagerImpl.java:926)
	at ome.services.sessions.SessionManagerImpl.executeCheckPassword(SessionManagerImpl.java:913)
	at ome.services.sessions.SessionManagerImpl.executePasswordCheck(SessionManagerImpl.java:889)
	at ome.services.blitz.fire.PermissionsVerifierI.checkPermissions(PermissionsVerifierI.java:72)
	at Glacier2._PermissionsVerifierDisp.___checkPermissions(_PermissionsVerifierDisp.java:90)
	at Glacier2._PermissionsVerifierDisp.__dispatch(_PermissionsVerifierDisp.java:118)
	at IceInternal.Incoming.invoke(Incoming.java:159)
	at Ice.ConnectionI.invokeAll(ConnectionI.java:2037)
	at Ice.ConnectionI.message(ConnectionI.java:972)
	at IceInternal.ThreadPool.run(ThreadPool.java:577)
	at IceInternal.ThreadPool.access$100(ThreadPool.java:12)
	at IceInternal.ThreadPool$EventHandlerThread.run(ThreadPool.java:971)

comment:4 Changed 14 years ago by jmoore

I'm assuming you got a list of all the sessions and killed them? That would indeed kill the server. Can you check whether something is an "internal" service or not? (See Session.defaultEventType)

comment:5 Changed 14 years ago by atarkowska

If I kill sessions: 'Internal' and 'Sessions' it will break the server. There is no way to log in anymore. I think would be good to protect server against it.

comment:6 Changed 14 years ago by jmoore

  • Remaining Time set to 0.5

comment:7 Changed 14 years ago by cxallan

  • Milestone changed from OMERO-Beta4.2.1 to Unscheduled
  • Sprint 2010-09-09 (16) deleted

comment:8 Changed 14 years ago by cxallan

  • Summary changed from ISession could detroy sessions to ISession could destroy sessions
Note: See TracTickets for help on using tickets. You may also have a look at Agilo extensions to the ticket.

1.3.13-PRO © 2008-2011 Agilo Software all rights reserved (this page was served in: 0.67705 sec.)

We're Hiring!