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

Opened 6 years ago

Closed 6 years ago

Last modified 6 years ago

Bug: memo fails on Wlz

Reported by: jamoore Owned by: mlinkert
Priority: critical Milestone: 5.0.0-rc1
Component: Bio-Formats Version: 4.4.9
Keywords: n.a. Cc: khgillen
Resources: n.a. Referenced By: n.a.
References: n.a. Remaining Time: n.a.
Sprint: n.a.

Description

This leads to slow thumbnail times and dead thumbnails.See attached log.

com.esotericsoftware.kryo.KryoException: java.lang.IllegalArgumentException: Unable to create serializer "com.esotericsoftware.kryo.serializers.FieldSerializer" for class: loci.formats.services.WlzServiceImpl
Serialization trace:
services (loci.common.services.ServiceFactory)
factory (loci.formats.in.BDReader)
readers (loci.formats.ImageReader)
reader (loci.formats.ChannelFiller)
reader (loci.formats.ChannelSeparator)
        at com.esotericsoftware.kryo.serializers.FieldSerializer$ObjectField.write(FieldSerializer.java:585) ~[kryo.jar:na]
        at com.esotericsoftware.kryo.serializers.FieldSerializer.write(FieldSerializer.java:213) ~[kryo.jar:na]
        at com.esotericsoftware.kryo.Kryo.writeObject(Kryo.java:501) ~[kryo.jar:na]
        at com.esotericsoftware.kryo.serializers.FieldSerializer$ObjectField.write(FieldSerializer.java:564) ~[kryo.jar:na]
        at com.esotericsoftware.kryo.serializers.FieldSerializer.write(FieldSerializer.java:213) ~[kryo.jar:na]
        at com.esotericsoftware.kryo.Kryo.writeClassAndObject(Kryo.java:568) ~[kryo.jar:na]
        at com.esotericsoftware.kryo.serializers.DefaultArraySerializers$ObjectArraySerializer.write(DefaultArraySerializers.java:318) ~
...
Caused by: java.lang.reflect.InvocationTargetException: null
        at sun.reflect.GeneratedConstructorAccessor294.newInstance(Unknown Source) ~[na:na]
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) ~[na:1.6.0_20]
        at java.lang.reflect.Constructor.newInstance(Constructor.java:513) ~[na:1.6.0_20]
        at com.esotericsoftware.kryo.Kryo.newSerializer(Kryo.java:322) ~[kryo.jar:na]
        ... 89 common frames omitted
Caused by: java.lang.NoClassDefFoundError: uk/ac/mrc/hgu/Wlz/WlzException
        at java.lang.Class.getDeclaredFields0(Native Method) ~[na:1.6.0_20]
        at java.lang.Class.privateGetDeclaredFields(Class.java:2291) ~[na:1.6.0_20]
        at java.lang.Class.getDeclaredFields(Class.java:1743) ~[na:1.6.0_20]
        at com.esotericsoftware.kryo.serializers.FieldSerializer.rebuildCachedFields(FieldSerializer.java:66) ~[kryo.jar:na]
        at com.esotericsoftware.kryo.serializers.FieldSerializer.<init>(FieldSerializer.java:50) ~[kryo.jar:na]
        ... 93 common frames omitted
Caused by: java.lang.ClassNotFoundException: uk.ac.mrc.hgu.Wlz.WlzException
        at java.net.URLClassLoader$1.run(URLClassLoader.java:202) ~[na:1.6.0_20]
        at java.security.AccessController.doPrivileged(Native Method) ~[na:1.6.0_20]
        at java.net.URLClassLoader.findClass(URLClassLoader.java:190) ~[na:1.6.0_20]
        at java.lang.ClassLoader.loadClass(ClassLoader.java:307) ~[na:1.6.0_20]
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) ~[na:1.6.0_20]
        at java.lang.ClassLoader.loadClass(ClassLoader.java:248) ~[na:1.6.0_20]

Attachments (2)

wlz-memo.log (145.2 KB) - added by jamoore 6 years ago.
Screen Shot 2013-10-23 at 14.34.10.png (150.2 KB) - added by khgillen 6 years ago.
screenshot of OMERO.web with thumbnail missing

Download all attachments as: .zip

Change History (6)

Changed 6 years ago by jamoore

comment:1 Changed 6 years ago by khgillen

Possibly triggered by a search phrase 'test' with only images checked from OMERO.web on Gretzky under IE8, user-6 user-6.

Thumbnails for images

4401 /Users/petr/Volumes/ome/data_repo/test_images_good/cellsens/brian/BZ cfos1-2_05.vsi [BZ cfos1-2_05.vsi]

4404 /Users/petr/Volumes/ome/data_repo/test_images_good/cellsens/brian/_BZ cfos1-2_05_/stack1/frame_t_0.ets [frame_t_0.ets]

were not returned in time for the browser to render them.

Behaviour reproduced by re-running the search - both image thumbnails didn't render and ERROR: ome.api.ThumbnailStore?.getThumbnailByLongestSideDirect invocation took 35835 appeared again.

Changed 6 years ago by khgillen

screenshot of OMERO.web with thumbnail missing

comment:2 Changed 6 years ago by mlinkert

  • Resolution set to fixed
  • Status changed from new to closed

comment:3 Changed 6 years ago by rleigh

http://qa.openmicroscopy.org.uk/qa/feedback/7691/ (Linux)
http://qa.openmicroscopy.org.uk/qa/feedback/7689/ (Mac)

Both are AFAICT client-side exceptions, though I would imagine that both client and server need to be amd64-linux-gnu. Linux was Ubuntu 13.10 64-bit with 64-bit java (openjdk7), so I expected it to read the file. Testing by hand with showinf results in the same exception:

$ CLASSPATH=./artifacts/loci_tools.jar SCIFIO_DEVEL=1 ./tools/showinf ~/Desktop/EMA53.wlz 
Checking file format [Woolz]
Initializing reader
WlzReader initializing /home/rleigh/Desktop/EMA53.wlz
Exception in thread "main" loci.formats.FormatException: 
Woolz is required to read and write Woolz objects.
Please obtain the necessary JAR and native library files from:
http://www.emouseatlas.org/emap/analysis_tools_resources/software/woolz.html.
The source code for these is also available from:
https://github.com/ma-tech/Woolz.
	at loci.formats.in.WlzReader.initFile(WlzReader.java:116)
	at loci.formats.FormatReader.setId(FormatReader.java:1360)
	at loci.formats.ImageReader.setId(ImageReader.java:781)
	at loci.formats.ReaderWrapper.setId(ReaderWrapper.java:576)
	at loci.formats.tools.ImageInfo.testRead(ImageInfo.java:993)
	at loci.formats.tools.ImageInfo.main(ImageInfo.java:1075)
Caused by: Unable to instantiate service for interface loci.formats.services.WlzService
	at loci.common.services.ServiceFactory.getInstance(ServiceFactory.java:173)
	at loci.formats.in.WlzReader.initFile(WlzReader.java:113)
	... 5 more
Caused by: java.lang.reflect.InvocationTargetException
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
	at loci.common.services.ServiceFactory.getInstance(ServiceFactory.java:171)
	... 6 more
Caused by: java.lang.UnsatisfiedLinkError: no JWlz in java.library.path
	at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1874)
	at java.lang.Runtime.loadLibrary0(Runtime.java:849)
	at java.lang.System.loadLibrary(System.java:1087)
	at uk.ac.mrc.hgu.Wlz.WlzBase.<clinit>(WlzBase.java:46)
	at loci.formats.services.WlzServiceImpl.checkClassDependency(WlzServiceImpl.java:113)
	at loci.formats.services.WlzServiceImpl.<init>(WlzServiceImpl.java:108)
	... 11 more

Is some additional setup needed to enable the Woolz library?

comment:4 Changed 6 years ago by mlinkert

You'll need to have an appropriate JWlz.so file in your java.library.path to import Woolz files, but as far as I understand the problem described in this ticket is that memo files could not be created for non-Woolz files.

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

We're Hiring!