Page 1 of 1

handling large .czi file in Omero

PostPosted: Thu Dec 08, 2016 12:34 am
by daveko
Hi, I've uploaded a large (~2.7gb) czi image to my remote omero server (currently running 5.1.3)

Within Omero, instead of getting a thumbnail, i get a clock/watch icon instead. When I try to open it in the viewer, a popup with "opening image viewer" just sits there and runs forever without opening the viewer.

I try generating a thumbnail using webgateway, and it just returns a picture of the clock/watch icon matching the dimensions that I specify.

While i'm waiting for the viewer to come up, i check the server and its at 0% CPU utilization, and network traffic is at 0 as well, indicating that it's not processing anything nor sending anything back to the client.

I'm running Omero 5.1.3 server in a Windows 2008R2 cloud VM with 8 cores and 56gb of memory

Would upgrading to a newer version of omero or hosting the omero server on Linux resolve this issue? Do I need a more powerful server (more cores/memory) ?

thanks in advance

Re: handling large .czi file in Omero

PostPosted: Thu Dec 08, 2016 8:23 am
by mtbc
Could you zip up your OMERO.server logs from var/log/ (i.e. Blitz-0.log, PixelData-0.log, etc.) and upload them to https://www.openmicroscopy.org/qa2/qa/upload/ so we can take a look at what might be going wrong?

Cheers,
Mark

Re: handling large .czi file in Omero

PostPosted: Fri Dec 09, 2016 10:57 am
by jmoore
Thanks for uploading the logs (QA 17467). The PixelData process is responsible for handling large (in X & Y) images. You can look in log/PixelData-0.log to see the issue you're running into:

Code: Select all
2016-12-08 00:16:00,745 ERROR [        ome.services.util.ServiceHandler] (2-thread-4) Method interface ome.services.util.Executor$Work.doWork invocation took 128452
2016-12-08 00:16:00,745 ERROR [  ome.services.pixeldata.PixelDataThread] (2-thread-2) ExceptionException!
ome.conditions.InternalException:  Wrapped Exception: (java.lang.OutOfMemoryError):
Java heap space
        at loci.formats.in.ZeissCZIReader$SubBlock.readPixelData(ZeissCZIReader.java:2919) ~[formats-gpl.jar:5.1.3]
        at loci.formats.in.ZeissCZIReader$SubBlock.readPixelData(ZeissCZIReader.java:2912) ~[formats-gpl.jar:5.1.3]


i.e. there's not enough memory available. On startup, the available memory is logged:

Code: Select all
2015-08-05 00:35:25,448 INFO  [      ome.services.util.JvmSettingsCheck] (      main) Max Memory (MB):   =    545
2015-08-05 00:35:25,448 INFO  [      ome.services.util.JvmSettingsCheck] (      main) OS Memory (MB):    =   3583
2015-08-05 00:35:25,448 INFO  [      ome.services.util.JvmSettingsCheck] (      main) Processors:        =      2


i.e. the Java process has 545 MB available, and it assumes that the whole OS only has about 4GB. This doesn't seem to match your expectations, right? If not, then you can try manually increasing the available memory: See https://www.openmicroscopy.org/site/support/omero5.1/sysadmins/server-performance.html#examples for more information.


Also, there have certainly been a number of improvements in the last year not to mention security fixes. I'd also suggest upgrading to to 5.2.6 if possible.

And regarding Windoows, please take a look at http://blog.openmicroscopy.org/tech-issues/future-plans/deployment/2016/03/22/windows-support/ regarding the removal of support beyond 5.2.

Cheers,
~Josh