Task #11567 (closed)
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)
Change History (6)
Changed 10 years ago by jamoore
comment:1 Changed 10 years ago by khgillen
comment:2 Changed 10 years ago by mlinkert
- Resolution set to fixed
- Status changed from new to closed
I'd expect this to be fixed with: https://github.com/openmicroscopy/bioformats/pull/775
comment:3 Changed 10 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 10 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.
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.