Page 1 of 1

web viewers with 70 or more channels fail

PostPosted: Fri Feb 23, 2018 11:08 pm
by dsudar
Hi team,

In our highly multiplex imaging based on cyclic immunofluorescence, we are now generating images with 40-80 channels. When importing an image with up to 70 channels, the web viewers (original web viewer and OMERO.iviewer) work fine. But when I have 70 or more channels, both viewers fail with either a broken image icon (original viewer) or a blank display area (iviewer).

The Insight viewer is fine with those images (and PathViewer behaves strangely - I'll report to Glencoe).

Cheers,
- Damir

Re: web viewers with 70 or more channels fail

PostPosted: Sat Feb 24, 2018 7:02 am
by jburel
Dear Damir
We have made some adjustments recently in iviewer to improve support for images with a large number of channels. This will be available in the next release. We did not come across the problem you are describing.
Will it possible to submit one of your images with 70+ channels so we can investigate?

Cheers
Jmarie

Re: web viewers with 70 or more channels fail

PostPosted: Sat Feb 24, 2018 8:21 am
by waxenegger
Hi Damir,

could you do me a favor and see if there is a an error message in the console of the browser dev tools for iviewer?

If you are using Chrome or Firefox you can hit F12 to open them up. Even if the page is blank you can then force a reload of the page and with a bit of luck we might get a, hopefully, not too cryptic error.

Thank you,

Harald

Re: web viewers with 70 or more channels fail

PostPosted: Sat Feb 24, 2018 5:46 pm
by dsudar
Hi Jean-Marie and Harald,

I've just uploaded 2 files, one with 69 channels (out1.ome.tif) and one with 76 channels (out2.ome.tif). QA# 20528.
The 69-channel one renders fine while the 76-channel one does not. Both were generated from a stack of individual tiffs into an ome.tif using bfconvert (with the .pattern trick). I'm currently trying to figure out a good way to add all kinds of metadata into the OME-XML header such as channel names, spatial resolution info, etc.

I forgot to mention that this is on OMERO 5.4.3 and iViewer 0.4.1. Using Chrome.

I tried to capture the output from the browser dev tools but not sure what I can grab that helps. I'm attaching a screenshot to show what does/does not show in the browser window and what is in the dev tools.

Cheers,
- Damir

Re: web viewers with 70 or more channels fail

PostPosted: Mon Feb 26, 2018 10:36 am
by wmoore
Hi Damir,

The problem is that we encode a lot of rendering info for each channel in the render_image url query string and this ends up exceeding the default limit for gunicorn of 4094.
See https://trello.com/c/tdXT9mti/32-70-cha ... 37d402c03b

If you look at the "Network" tab of the devtools and check the Images requests, you'll see a request failure (in red) and opening that in a new tab will show you something like "Request Line is too large (4487 > 4094)".

This can be configured (see http://docs.gunicorn.org/en/stable/sett ... quest-line - NB: it's a security setting) and setting it to 5000 is enough for your 76 channel image.

You can do this via OMERO.web with:

Code: Select all
# Check you've not got anything set there already...
$ bin/omero config get omero.web.wsgi_args
# Then...
$ bin/omero config set -- omero.web.wsgi_args "--limit-request-line=5000"

And then restart OMERO.web.

I tried this locally and it enabled me to view that image in both web viewers.

We'll look into options for making the query string more concise, but it might be a while before anything changes since this is the core render_image 'API'.

Hope that helps,

Regards,

Will.

Re: web viewers with 70 or more channels fail

PostPosted: Mon Feb 26, 2018 10:50 pm
by dsudar
Hi Will and team,

Yes, that indeed fixes the display issue with my 76-channel image. I'll try on a few other high-channel-count images and I guess I can always crank up that 5000 value a little higher if I still run into the same with higher channel counts.

Thanks, this is a workable fix for what I need.
- Damir

PS. it did not fix the PathViewer issue so I'll let Glencoe know.