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

Opened 13 years ago

Closed 13 years ago

Last modified 13 years ago

Bug: assert_re and rendering engine preparation

Reported by: cxallan Owned by: cxallan
Priority: blocker Milestone: OMERO-Beta4.3.2
Component: OmeroPy Version: n.a.
Keywords: n.a. Cc: python-team@…
Resources: n.a. Referenced By: n.a.
References: n.a. Remaining Time: 0.0d
Sprint: 2011-08-04 (2)

Description

Since the closure of #4642 by [476842836e8047ae81f0375f30814198c79a6ad3/ome.git] it is possible that the exceptions thrown during the preparation of the rendering engine by ImageWrapper._prepareRenderingEngine() will be caught and None returned. In addition there were changes to ensure that ImageWrapper.getChannels() works for big images that have not had their pyramid created yet in #5539 by [6efc0cd9ed00317e7ae5438a7115463462390077/ome.git]

With this being the case we have severe problems when callers of functions that have an @assert_re decorator are expecting a non-None return value.

Potential changes that may have to happen are:

Resolution of the above issues is required to have the work that is being done on #6365 functional.

Change History (8)

comment:1 Changed 13 years ago by cxallan

Example exception that can currently be raised if an Ice.ObjectNotExistException is thrown when preparing the rendering engine:

Traceback:
File "/Users/callan/code/ome.git/dist/lib/python/django/core/handlers/base.py" in get_response
  92.                 response = callback(request, *callback_args, **callback_kwargs)
File "/Users/callan/code/ome.git/components/tools/OmeroWeb/omeroweb/webclient/views.py" in wrapped
  168.         return f(request, *args, **kwargs)
File "/Users/callan/code/ome.git/components/tools/OmeroWeb/omeroweb/webclient/views.py" in render_image
  2806.     return webgateway_views.render_image(request, iid, z, t, _conn=conn, **kwargs)
File "/Users/callan/code/ome.git/components/tools/OmeroWeb/omeroweb/webgateway/views.py" in handler
  478.         return func(request, *args, **kwargs)
File "/Users/callan/code/ome.git/components/tools/OmeroWeb/omeroweb/webgateway/views.py" in render_image
  718.     pi = _get_prepared_image(request, iid, server_id=server_id, _conn=_conn, with_session=USE_SESSION)
File "/Users/callan/code/ome.git/components/tools/OmeroWeb/omeroweb/webgateway/views.py" in handler
  478.         return func(request, *args, **kwargs)
File "/Users/callan/code/ome.git/components/tools/OmeroWeb/omeroweb/webgateway/views.py" in _get_prepared_image
  598.         if not img.setActiveChannels(channels, windows, colors):
File "/Users/callan/code/ome.git/dist/lib/python/omero/gateway/__init__.py" in setActiveChannels
  5380.         for c in range(len(self.getChannels())):

Exception Type: TypeError at /webclient/render_image/6701/11/0/
Exception Value: object of type 'NoneType' has no len()

comment:2 Changed 13 years ago by cxallan

  • Status changed from new to accepted

comment:3 Changed 13 years ago by cxallan

BlitzGateway methods protected by assert_re:

 * _getProjectedThumbnail
 * getChannels
 * getRenderingModels
 * getRenderingModel
 * renderJpegRegion
 * renderJpeg
 * createMovie
 * renderRowLinePlotGif
 * renderColLinePlotGif
 * getZ
 * getT
 * getDefaultZ
 * getDefaultT
 * saveDefaults

Prospective changes on team/feature/6387.

comment:4 Changed 13 years ago by cxallan

  • Remaining Time changed from 0.5 to 0.1

comment:5 Changed 13 years ago by atarkowska

Once we test new implementation and make a decision about general strategy for decorators new tasks should be put in the Story #6342

comment:6 Changed 13 years ago by Chris Allan <callan@…>

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

(In [b24b0cfa078e659f828ad0ac9779e17eb453df44/ome.git] on branch develop) Merge branch 'feature/6387' into develop

Closes #6387.

comment:7 Changed 13 years ago by Aleksandra Tarkowska <atarkowska@…>

(In [c7c92b6bb618f6db68cc992efe0d74e8b7079367/ome.git] on branch develop) this override the getChannels in webclient gateway, see #6387

comment:8 Changed 13 years ago by Aleksandra Tarkowska <atarkowska@…>

(In [5a4e00b9ea8ab58cdb059c54781fadb165e99403/ome.git] on branch develop) this override the getChannels in webclient gateway, see #6387

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

We're Hiring!