Cannot evolve PersistentProxy?
795271Nov 8 2010 — edited Dec 9 2010Hi All,
I made changes to my PersistentProxy class, so I need a class converter to provide backwards compatibility.
But I got the following exception when running my class converter:
Exception in thread "main" java.lang.ClassCastException: com.sleepycat.persist.raw.RawObject cannot be cast to com.sleepycat.persist.model.PersistentProxy
at com.sleepycat.persist.impl.ProxiedFormat.newInstance(ProxiedFormat.java:91)
at com.sleepycat.persist.impl.RecordInput.readObject(RecordInput.java:174)
at com.sleepycat.persist.impl.ReflectionAccessor$ObjectAccess.read(ReflectionAccessor.java:406)
at com.sleepycat.persist.impl.ReflectionAccessor.readNonKeyFields(ReflectionAccessor.java:285)
at com.sleepycat.persist.impl.ReflectionAccessor.readNonKeyFields(ReflectionAccessor.java:273)
at com.sleepycat.persist.impl.ComplexFormat.readObject(ComplexFormat.java:520)
at com.sleepycat.persist.impl.RecordInput.readObject(RecordInput.java:187)
at com.sleepycat.persist.impl.ReflectionAccessor$ObjectAccess.read(ReflectionAccessor.java:406)
at com.sleepycat.persist.impl.ReflectionAccessor.readNonKeyFields(ReflectionAccessor.java:285)
at com.sleepycat.persist.impl.ComplexFormat.readObject(ComplexFormat.java:520)
at com.sleepycat.persist.impl.ProxiedFormat.newInstance(ProxiedFormat.java:93)
at com.sleepycat.persist.impl.RecordInput.readObject(RecordInput.java:174)
at com.sleepycat.persist.impl.ReflectionAccessor$ObjectAccess.read(ReflectionAccessor.java:406)
at com.sleepycat.persist.impl.ReflectionAccessor.readNonKeyFields(ReflectionAccessor.java:285)
at com.sleepycat.persist.impl.ComplexFormat.readObject(ComplexFormat.java:520)
at com.sleepycat.persist.impl.PersistEntityBinding.readEntity(PersistEntityBinding.java:101)
at com.sleepycat.persist.impl.PersistEntityBinding.entryToObjectInternal(PersistEntityBinding.java:71)
at com.sleepycat.persist.impl.PersistEntityBinding.entryToObject(PersistEntityBinding.java:58)
at com.sleepycat.persist.PrimaryIndex.get(PrimaryIndex.java:591)
So does that mean BDB cannot support evolution of PersistentProxy?
I appreciate your help.