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 #5849 (closed)

Opened 13 years ago

Closed 13 years ago

Bug: detachOnDestroy is not observed

Reported by: jamoore Owned by: jamoore
Priority: blocker Milestone: OMERO-Beta4.3
Component: OmeroPy Version: n.a.
Keywords: n.a. Cc: cneves
Resources: n.a. Referenced By: n.a.
References: n.a. Remaining Time: 0.0d
Sprint: 2011-06-16 (14)

Description (last modified by jmoore)

Python 2.6.6 (r266:84292, Dec 30 2010, 16:35:14) 
[GCC 4.2.1 (Apple Inc. build 5664)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import omero
>>> c = omero.client("localhost")
>>> s = c.createSession("root","omero")
s.g>>> s.getSessionId()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'ServiceFactoryPrx' object has no attribute 'getSessionId'
>>> c.getSessionId()
'4c6fd788-d0a2-4e97-975e-1c07a318fb6d'
>>> import time
>>> time.ctime()
'Thu Jun  9 21:39:32 2011'
>>> time.ctime()
'Thu Jun  9 21:46:48 2011'
>>> time.ctime()
'Thu Jun  9 21:55:06 2011'
>>> s.getAdminService()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/moore/GlencoeSoftware.git/git/omero.git/dist/lib/python/omero_API_ice.py", line 204, in getAdminService
    return _M_omero.api.ServiceFactory._op_getAdminService.invoke(self, ((), _ctx))
Ice.ConnectionLostException: Ice.ConnectionLostException:
recv() returned zero
>>> c.closeSession()
>>> c.joinSession("4c6fd788-d0a2-4e97-975e-1c07a318fb6d")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/moore/GlencoeSoftware.git/git/omero.git/dist/lib/python/omero/clients.py", line 400, in joinSession
    return self.createSession(session, session)
  File "/Users/moore/GlencoeSoftware.git/git/omero.git/dist/lib/python/omero/clients.py", line 454, in createSession
    prx = self.getRouter(self.__ic).createSession(username, password, ctx)
  File "/opt/Ice-3.3.1-64/python/Glacier2_Router_ice.py", line 107, in createSession
    return _M_Glacier2.Router._op_createSession.invoke(self, ((userId, password), _ctx))
Glacier2.PermissionDeniedException: exception ::Glacier2::PermissionDeniedException
{
    reason = Password check failed
}

Change History (2)

comment:1 Changed 13 years ago by jmoore

  • Description modified (diff)
  • Remaining Time set to 0.5
  • Sprint set to 2011-06-16 (14)
  • Status changed from new to accepted

Tested upcoming release with the following script:

~/git/dist $ cat ../dtach.py 
import omero, time
c = omero.client("localhost")
s = c.createSession()
s.detachOnDestroy()
uuid = c.getSessionId()
c.closeSession()
print "Attached to %s" % uuid
print time.ctime()

def login():
    print time.ctime()
    print "Joining %s..." % uuid
    c.joinSession(uuid)

Console output:

~/git/dist $ bin/omero config set omero.sessions.timeout 36000000
b~/git/dist $ bin/omero admin restart
Waiting on shutdown. Use CTRL-C to exit
.No descriptor given. Using etc/grid/default.xml
Waiting on startup. Use CTRL-C to exit
~/git/dist $ PYTHONPATH=$PYTHONPATH:lib/python python -i ../dtach.py 
Attached to beb8dc52-ed72-4ad6-bd8e-de9d7e455cf0
Fri Jun 10 10:52:22 2011
>>> time.ctime()
'Fri Jun 10 10:59:35 2011'
>>> time.ctime()
'Fri Jun 10 11:01:28 2011'
>>> time.ctime()
'Fri Jun 10 11:04:31 2011'
>>> time.ctime()
'Fri Jun 10 11:12:26 2011'
>>> login()
Fri Jun 10 11:34:47 2011
Joining beb8dc52-ed72-4ad6-bd8e-de9d7e455cf0...
>>> 

Log:

~/git/dist $ tail -f var/log/Blitz-0.log | grep beb8dc52-ed72-4ad6-bd8e-de9d7e455cf0
2011-06-10 10:52:22,644 DEBUG [e.services.sessions.SessionContext$Count] (l.Server-1) +Reference count: beb8dc52-ed72-4ad6-bd8e-de9d7e455cf0=1
2011-06-10 10:52:22,644 DEBUG [ome.services.sessions.state.CacheFactory] (l.Server-1) Creating new EHCache cache region 'memory:beb8dc52-ed72-4ad6-bd8e-de9d7e455cf0'
2011-06-10 10:52:22,650 INFO  [ ome.services.blitz.fire.SessionManagerI] (l.Server-1) Created session ServiceFactoryI(session-f60ef632-78b6-4f9b-a155-bfc5b5879908/beb8dc52-ed72-4ad6-bd8e-de9d7e455cf0) for user jmoore (agent=OMERO.py)
2011-06-10 10:52:22,653 DEBUG [ ome.services.blitz.impl.ServiceFactoryI] (l.Server-0) destroy(ServiceFactoryI(session-f60ef632-78b6-4f9b-a155-bfc5b5879908/beb8dc52-ed72-4ad6-bd8e-de9d7e455cf0))
2011-06-10 10:52:22,653 INFO  [e.services.sessions.SessionContext$Count] (l.Server-0) -Reference count: beb8dc52-ed72-4ad6-bd8e-de9d7e455cf0=0
2011-06-10 11:20:51,602 INFO  [        ome.services.util.ServiceHandler] (3-thread-3)  Executor.doWork -- ome.services.sessions.SessionManagerImpl.reload(beb8dc52-ed72-4ad6-bd8e-de9d7e455cf0)
2011-06-10 11:22:51,602 INFO  [        ome.services.util.ServiceHandler] (3-thread-2)  Executor.doWork -- ome.services.sessions.SessionManagerImpl.reload(beb8dc52-ed72-4ad6-bd8e-de9d7e455cf0)
2011-06-10 11:24:51,605 INFO  [        ome.services.util.ServiceHandler] (3-thread-4)  Executor.doWork -- ome.services.sessions.SessionManagerImpl.reload(beb8dc52-ed72-4ad6-bd8e-de9d7e455cf0)
2011-06-10 11:26:51,599 INFO  [        ome.services.util.ServiceHandler] (3-thread-4)  Executor.doWork -- ome.services.sessions.SessionManagerImpl.reload(beb8dc52-ed72-4ad6-bd8e-de9d7e455cf0)
2011-06-10 11:28:51,605 INFO  [        ome.services.util.ServiceHandler] (3-thread-5)  Executor.doWork -- ome.services.sessions.SessionManagerImpl.reload(beb8dc52-ed72-4ad6-bd8e-de9d7e455cf0)
2011-06-10 11:30:51,608 INFO  [        ome.services.util.ServiceHandler] (3-thread-3)  Executor.doWork -- ome.services.sessions.SessionManagerImpl.reload(beb8dc52-ed72-4ad6-bd8e-de9d7e455cf0)
2011-06-10 11:32:51,602 INFO  [        ome.services.util.ServiceHandler] (3-thread-3)  Executor.doWork -- ome.services.sessions.SessionManagerImpl.reload(beb8dc52-ed72-4ad6-bd8e-de9d7e455cf0)
2011-06-10 11:34:47,895 INFO  [ ome.services.blitz.fire.SessionManagerI] (l.Server-3) Found session locally: beb8dc52-ed72-4ad6-bd8e-de9d7e455cf0
2011-06-10 11:34:47,896 DEBUG [e.services.sessions.SessionContext$Count] (l.Server-3) +Reference count: beb8dc52-ed72-4ad6-bd8e-de9d7e455cf0=1
2011-06-10 11:34:47,903 INFO  [ ome.services.blitz.fire.SessionManagerI] (l.Server-3) Rejoining session ServiceFactoryI(session-c6f6ea80-510f-4a70-9b14-4c62455d1a58/beb8dc52-ed72-4ad6-bd8e-de9d7e455cf0) (agent=OMERO.py)
2011-06-10 11:34:49,530 DEBUG [ ome.services.blitz.impl.ServiceFactoryI] (l.Server-4) destroy(ServiceFactoryI(session-c6f6ea80-510f-4a70-9b14-4c62455d1a58/beb8dc52-ed72-4ad6-bd8e-de9d7e455cf0))
2011-06-10 11:34:49,531 INFO  [e.services.sessions.SessionContext$Count] (l.Server-4) -Reference count: beb8dc52-ed72-4ad6-bd8e-de9d7e455cf0=0
2011-06-10 11:34:49,531 INFO  [ ome.services.blitz.impl.ServiceFactoryI] (l.Server-4) doDestroy(ServiceFactoryI(session-c6f6ea80-510f-4a70-9b14-4c62455d1a58/beb8dc52-ed72-4ad6-bd8e-de9d7e455cf0))
2011-06-10 11:34:49,531 INFO  [ome.services.sessions.SessionManagerImpl] (l.Server-4) closeSession called and no more references: beb8dc52-ed72-4ad6-bd8e-de9d7e455cf0
2011-06-10 11:34:49,531 INFO  [ome.services.sessions.state.SessionCache] (l.Server-4) Destroying session beb8dc52-ed72-4ad6-bd8e-de9d7e455cf0 due to : Remove session called
2011-06-10 11:34:49,548 DEBUG [ome.services.sessions.SessionManagerImpl] (l.Server-4) Session.closed set to now() for beb8dc52-ed72-4ad6-bd8e-de9d7e455cf0
2011-06-10 11:34:49,626 INFO  [ ome.services.blitz.fire.SessionManagerI] (l.Server-4) Reaping 2 clients for beb8dc52-ed72-4ad6-bd8e-de9d7e455cf0
2011-06-10 11:34:49,626 DEBUG [ ome.services.blitz.fire.SessionManagerI] (l.Server-4) session-f60ef632-78b6-4f9b-a155-bfc5b5879908/beb8dc52-ed72-4ad6-bd8e-de9d7e455cf0 already removed.
2011-06-10 11:34:49,626 DEBUG [ ome.services.blitz.fire.SessionManagerI] (l.Server-4) session-c6f6ea80-510f-4a70-9b14-4c62455d1a58/beb8dc52-ed72-4ad6-bd8e-de9d7e455cf0 already removed.

comment:2 Changed 13 years ago by jmoore <josh@…>

  • Remaining Time changed from 0.5 to 0
  • Resolution set to fixed
  • Status changed from accepted to closed

(In [573d6e4dc2a7f422ed1211a26f27716b20f4139b/ome.git] on branch develop) Reuse SessionCache code for reloading (Fix #5849)

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.70959 sec.)

We're Hiring!