Hi,

Our application is written in scala (2.10.5 with sbt 0.13.5) against 
orientdb 1.7.8  without problems -  we are using tinkerpop blueprints.
After upgrading to orientdb 2.0.13 (clean database), we experience 
exceptions when trying to insert new records to  the database (where some 
of the properties are not primitives)

The exceptions are thrown during deserialization with 
ClassNotFoundException for classes that exist in the classpath and worked 
 perfectly with orientdb 1.7.x

Looking in Google suggested that there might be class loading issues, 
 where the class loader of the orient libraries is different than the one 
of other libraries.

I saw in the source code that the serialization / deserialization part was 
rewritten  -  which might explain the difference.
Any ideas  how to  solve this issue?

Here is the stacktrace:

com.orientechnologies.orient.enterprise.channel.binary.OResponseProcessingException:
 
Exception during response processing.
at 
com.orientechnologies.orient.enterprise.channel.binary.OChannelBinaryAsynchClient.throwSerializedException(OChannelBinaryAsynchClient.java:441)
 
~[orientdb-enterprise-2.1-rc5.jar:2.1-rc5]
at 
com.orientechnologies.orient.enterprise.channel.binary.OChannelBinaryAsynchClient.handleStatus(OChannelBinaryAsynchClient.java:396)
 
~[orientdb-enterprise-2.1-rc5.jar:2.1-rc5]
at 
com.orientechnologies.orient.enterprise.channel.binary.OChannelBinaryAsynchClient.beginResponse(OChannelBinaryAsynchClient.java:282)
 
~[orientdb-enterprise-2.1-rc5.jar:2.1-rc5]
at 
com.orientechnologies.orient.enterprise.channel.binary.OChannelBinaryAsynchClient.beginResponse(OChannelBinaryAsynchClient.java:171)
 
~[orientdb-enterprise-2.1-rc5.jar:2.1-rc5]
at 
com.orientechnologies.orient.client.remote.OStorageRemote.beginResponse(OStorageRemote.java:2093)
 
~[orientdb-client-2.1-rc5.jar:2.1-rc5]
at 
com.orientechnologies.orient.client.remote.OStorageRemote.commit(OStorageRemote.java:1335)
 
~[orientdb-client-2.1-rc5.jar:2.1-rc5]
at 
com.orientechnologies.orient.client.remote.OStorageRemoteThread.commit(OStorageRemoteThread.java:458)
 
~[orientdb-client-2.1-rc5.jar:2.1-rc5]
at 
com.orientechnologies.orient.core.tx.OTransactionOptimistic.doCommit(OTransactionOptimistic.java:583)
 
~[orientdb-core-2.1-rc5.jar:2.1-rc5]
at 
com.orientechnologies.orient.core.tx.OTransactionOptimistic.commit(OTransactionOptimistic.java:148)
 
~[orientdb-core-2.1-rc5.jar:2.1-rc5]
at 
com.orientechnologies.orient.core.db.document.ODatabaseDocumentTx.commit(ODatabaseDocumentTx.java:2549)
 
~[orientdb-core-2.1-rc5.jar:2.1-rc5]
at 
com.orientechnologies.orient.core.db.document.ODatabaseDocumentTx.commit(ODatabaseDocumentTx.java:2518)
 
~[orientdb-core-2.1-rc5.jar:2.1-rc5]
at 
com.tinkerpop.blueprints.impls.orient.OrientTransactionalGraph.commit(OrientTransactionalGraph.java:161)
 
~[orientdb-graphdb-2.1-rc5.jar:2.1-rc5]
at 
com.mycompany.storage.GraphStorageManagerClass.endTransaction(GraphStorageManager.scala:498)
 
~[classes/:na]
at 
com.mycompany.storage.GraphStorageManager$$anonfun$12$$anonfun$apply$1.apply$mcVI$sp(GraphStorageManager.scala:431)
 
~[classes/:na]
at scala.collection.immutable.Range.foreach$mVc$sp(Range.scala:141) 
~[scala-library-2.10.5.jar:na]
at 
com.mycompany.storage.GraphStorageManager$$anonfun$12.apply(GraphStorageManager.scala:428)
 
~[classes/:na]
at scala.util.Try$.apply(Try.scala:161) ~[scala-library-2.10.5.jar:na]
at 
com.mycompany.storage.GraphStorageManager$class.updateGraph(GraphStorageManager.scala:424)
 
~[classes/:na]
at 
com.mycompany.storage.GraphStorageManagerClass.updateGraph(GraphStorageManager.scala:458)
 
~[classes/:na]
at 
com.mycompany.storage.GraphStorageManager$$anonfun$receive$1.applyOrElse(GraphStorageManager.scala:201)
 
~[classes/:na]
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:498) 
~[akka-actor_2.10-2.2.1.jar:2.2.1]
at akka.actor.ActorCell.invoke(ActorCell.scala:456) 
~[akka-actor_2.10-2.2.1.jar:2.2.1]
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:237) 
~[akka-actor_2.10-2.2.1.jar:2.2.1]
at akka.dispatch.Mailbox.run(Mailbox.scala:219) 
~[akka-actor_2.10-2.2.1.jar:2.2.1]
at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) 
~[na:1.7.0_71]
at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) 
~[na:1.7.0_71]
at java.lang.Thread.run(Thread.java:745) ~[na:1.7.0_71]
Caused by: java.lang.RuntimeException: 
com.orientechnologies.orient.core.exception.ODatabaseException: Error on 
deserialization of Serializable
at 
com.orientechnologies.orient.core.serialization.serializer.record.binary.ORecordSerializerBinaryV0.readSingleValue(ORecordSerializerBinaryV0.java:391)
 
~[orientdb-core-2.1-rc5.jar:2.1-rc5]
at 
com.orientechnologies.orient.core.serialization.serializer.record.binary.ORecordSerializerBinaryV0.deserialize(ORecordSerializerBinaryV0.java:197)
 
~[orientdb-core-2.1-rc5.jar:2.1-rc5]
at 
com.orientechnologies.orient.core.serialization.serializer.record.binary.ORecordSerializerBinary.fromStream(ORecordSerializerBinary.java:74)
 
~[orientdb-core-2.1-rc5.jar:2.1-rc5]
at 
com.orientechnologies.orient.core.record.impl.ODocument.deserializeFields(ODocument.java:1776)
 
~[orientdb-core-2.1-rc5.jar:2.1-rc5]
at 
com.orientechnologies.orient.server.tx.OTransactionOptimisticProxy.unmarshallRecord(OTransactionOptimisticProxy.java:271)
 
~[orientdb-server-2.1-rc5.jar:2.1-rc5]
at 
com.orientechnologies.orient.server.tx.OTransactionOptimisticProxy.begin(OTransactionOptimisticProxy.java:156)
 
~[orientdb-server-2.1-rc5.jar:2.1-rc5]
at 
com.orientechnologies.orient.core.db.document.ODatabaseDocumentTx.begin(ODatabaseDocumentTx.java:1536)
 
~[orientdb-core-2.1-rc5.jar:2.1-rc5]
at 
com.orientechnologies.orient.server.network.protocol.binary.ONetworkProtocolBinary.commit(ONetworkProtocolBinary.java:1089)
 
~[orientdb-server-2.1-rc5.jar:2.1-rc5]
at 
com.orientechnologies.orient.server.network.protocol.binary.ONetworkProtocolBinary.executeRequest(ONetworkProtocolBinary.java:394)
 
~[orientdb-server-2.1-rc5.jar:2.1-rc5]
at 
com.orientechnologies.orient.server.network.protocol.binary.OBinaryNetworkProtocolAbstract.execute(OBinaryNetworkProtocolAbstract.java:217)
 
~[orientdb-server-2.1-rc5.jar:2.1-rc5]
at com.orientechnologies.common.thread.OSoftThread.run(OSoftThread.java:69) 
~[orientdb-core-2.1-rc5.jar:2.1-rc5]
Caused by: com.orientechnologies.orient.core.exception.ODatabaseException: 
Error on deserialization of Serializable
at 
com.orientechnologies.orient.core.serialization.serializer.record.binary.OSerializableWrapper.fromStream(OSerializableWrapper.java:47)
 
~[orientdb-core-2.1-rc5.jar:2.1-rc5]
at 
com.orientechnologies.orient.core.serialization.serializer.record.binary.ORecordSerializerBinaryV0.readSingleValue(ORecordSerializerBinaryV0.java:385)
 
~[orientdb-core-2.1-rc5.jar:2.1-rc5]
... 10 common frames omitted
Caused by: java.lang.ClassNotFoundException: org.joda.time.DateTime
at java.net.URLClassLoader$1.run(Unknown Source) ~[na:1.7.0_71]
at java.net.URLClassLoader$1.run(Unknown Source) ~[na:1.7.0_71]
at java.security.AccessController.doPrivileged(Native Method) ~[na:1.7.0_71]
at java.net.URLClassLoader.findClass(Unknown Source) ~[na:1.7.0_71]
at java.lang.ClassLoader.loadClass(Unknown Source) ~[na:1.7.0_71]
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) ~[na:1.7.0_71]
at java.lang.ClassLoader.loadClass(Unknown Source) ~[na:1.7.0_71]
at java.lang.Class.forName0(Native Method) ~[na:1.7.0_71]
at java.lang.Class.forName(Unknown Source) ~[na:1.7.0_71]
at java.io.ObjectInputStream.resolveClass(Unknown Source) ~[na:1.7.0_71]
at java.io.ObjectInputStream.readNonProxyDesc(Unknown Source) ~[na:1.7.0_71]
at java.io.ObjectInputStream.readClassDesc(Unknown Source) ~[na:1.7.0_71]
at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source) 
~[na:1.7.0_71]
at java.io.ObjectInputStream.readObject0(Unknown Source) ~[na:1.7.0_71]
at java.io.ObjectInputStream.readObject(Unknown Source) ~[na:1.7.0_71]
at 
com.orientechnologies.orient.core.serialization.serializer.record.binary.OSerializableWrapper.fromStream(OSerializableWrapper.java:44)
 
~[orientdb-core-2.1-rc5.jar:2.1-rc5]
... 11 common frames omitted

Thanks,
Moti.

-- 

--- 
You received this message because you are subscribed to the Google Groups 
"OrientDB" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to