1. Summary
  2. Files
  3. Support
  4. Report Spam
  5. Create account
  6. Log in

Ticket #451 (closed defect: fixed)

Opened 16 months ago

Last modified 16 months ago

Serialization error in SIDS mode on cluster for BlobIV

Reported by: thompsonbry Owned by: thompsonbry
Priority: major Milestone:
Component: Bigdata Federation Version: BIGDATA_RELEASE_1_1_0
Keywords: Cc:

Description (last modified by thompsonbry) (diff)

There is an error which shows up one of the NanoSparqlServer? tests when run in SIDS mode on the cluster.

Note: This test is using a BlobIV.

Caused by: java.lang.RuntimeException: java.io.InvalidClassException: com.bigdata.rdf.internal.impl.bnode.SidIV$SidIVState; local class incompatible: stream classdesc serialVersionUID = -6230378355554584567, local class serialVersionUID = 390692495373586518
	at com.bigdata.bop.fed.ThickChunkMessage$DeserializationIterator._hasNext(ThickChunkMessage.java:281)
	at com.bigdata.bop.fed.ThickChunkMessage$DeserializationIterator.hasNext(ThickChunkMessage.java:254)
	at com.bigdata.bop.fed.ThickChunkMessage$DeserializationIterator.isExhausted(ThickChunkMessage.java:322)
	at com.bigdata.relation.accesspath.MultiSourceSequentialAsynchronousIterator.nextSource(MultiSourceSequentialAsynchronousIterator.java:128)
	at com.bigdata.relation.accesspath.MultiSourceSequentialAsynchronousIterator.hasNext(MultiSourceSequentialAsynchronousIterator.java:158)
	at com.bigdata.bop.BOpUtility.copy(BOpUtility.java:1142)
	at com.bigdata.bop.bset.CopyOp$CopyTask.call(CopyOp.java:203)
	at com.bigdata.bop.bset.CopyOp$CopyTask.call(CopyOp.java:1)
	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
	at java.util.concurrent.FutureTask.run(FutureTask.java:138)
	at com.bigdata.bop.engine.ChunkedRunningQuery$ChunkTask.call(ChunkedRunningQuery.java:1196)
	... 9 more
Caused by: java.io.InvalidClassException: com.bigdata.rdf.internal.impl.bnode.SidIV$SidIVState; local class incompatible: stream classdesc serialVersionUID = -6230378355554584567, local class serialVersionUID = 390692495373586518
	at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:562)
	at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1582)
	at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1495)
	at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1731)
	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1328)
	at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1946)
	at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1870)
	at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1752)
	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1328)
	at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1946)
	at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1870)
	at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1752)
	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1328)
	at java.io.ObjectInputStream.readObject(ObjectInputStream.java:350)
	at java.util.LinkedList.readObject(LinkedList.java:964)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:974)
	at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1848)
	at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1752)
	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1328)
	at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1946)
	at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1870)
	at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1752)
	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1328)
	at java.io.ObjectInputStream.readArray(ObjectInputStream.java:1666)
	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1322)
	at java.io.ObjectInputStream.readObject(ObjectInputStream.java:350)
	at com.bigdata.bop.fed.ThickChunkMessage$DeserializationIterator._hasNext(ThickChunkMessage.java:271)
	... 19 more

I have also observed a hang with the following test in SIDS mode.

test_GET_DESCRIBE_RDFXML()

Change History

Changed 16 months ago by thompsonbry

  • status changed from new to accepted
  • description modified (diff)

Changed 16 months ago by thompsonbry

  • status changed from accepted to closed
  • resolution set to fixed

This appears to have been simply the failure to declare the serialVersionId for the inner class. Presumably the problem only showed on up the cluster since the serialVersionId was somehow being generated differently in the deployed services and under eclipse.

Committed Revision r5849.

Note: See TracTickets for help on using tickets.