[ 
https://issues.apache.org/jira/browse/FELIX-6322?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Amit Mondal updated FELIX-6322:
-------------------------------
    Description: 
The following exception occurs in runtime if we update the configurator from 
v1.0.10 to v1.0.12:
{code:java}
java.io.StreamCorruptedException: unexpected block data
 at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1641)
 at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:2341)
 at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:2221)
 at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2123)
 at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1624)
 at java.io.ObjectInputStream.readObject(ObjectInputStream.java:464)
 at java.io.ObjectInputStream.readObject(ObjectInputStream.java:422)
 at 
org.apache.felix.configurator.impl.model.State.createOrReadState(State.java:87)
 at org.apache.felix.configurator.impl.Configurator.<init>(Configurator.java:91)
 at 
org.apache.felix.configurator.impl.ServicesListener.notifyChange(ServicesListener.java:113)
 at 
org.apache.felix.configurator.impl.ServicesListener$1.addingService(ServicesListener.java:73)
 at 
org.apache.felix.configurator.impl.ServicesListener$1.addingService(ServicesListener.java:65)
 at 
org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:943)
 at 
org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:871)
 at org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:256)
 at org.osgi.util.tracker.AbstractTracked.trackInitial(AbstractTracked.java:183)
 at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:321)
 at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:264)
 at 
org.apache.felix.configurator.impl.ServicesListener.<init>(ServicesListener.java:93)
 at org.apache.felix.configurator.impl.Activator.start(Activator.java:36)
 at 
org.apache.felix.framework.util.SecureAction.startActivator(SecureAction.java:698)
 at org.apache.felix.framework.Felix.activateBundle(Felix.java:2402)
 at org.apache.felix.framework.Felix.startBundle(Felix.java:2308)
 at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:998)
 at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:984){code}
I had looked into it and found that the problem probably lies in the serial 
version number of _*OrderedDictionary*_ which is part of 
_*org.apache.felix.cm.json*_ and was never required for  Configurator v1.0.10. 

I have compared the hexdumps of both the _*state.ser*_ files and the files 
started to differ in _*OrderedDictionary.*_

The exception doesn't harm since if the previous state cannot be read properly, 
a new state gets created.

  was:
The following exception occurs in runtime if we update the configurator from 
v1.0.10 to v1.0.12:
java.io.StreamCorruptedException: unexpected block data
    at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1641)
    at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:2341)
    at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:2221)
    at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2123)
    at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1624)
    at java.io.ObjectInputStream.readObject(ObjectInputStream.java:464)
    at java.io.ObjectInputStream.readObject(ObjectInputStream.java:422)
    at 
org.apache.felix.configurator.impl.model.State.createOrReadState(State.java:87)
    at 
org.apache.felix.configurator.impl.Configurator.<init>(Configurator.java:91)
    at 
org.apache.felix.configurator.impl.ServicesListener.notifyChange(ServicesListener.java:113)
    at 
org.apache.felix.configurator.impl.ServicesListener$1.addingService(ServicesListener.java:73)
    at 
org.apache.felix.configurator.impl.ServicesListener$1.addingService(ServicesListener.java:65)
    at 
org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:943)
    at 
org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:871)
    at 
org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:256)
    at 
org.osgi.util.tracker.AbstractTracked.trackInitial(AbstractTracked.java:183)
    at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:321)
    at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:264)
    at 
org.apache.felix.configurator.impl.ServicesListener.<init>(ServicesListener.java:93)
    at org.apache.felix.configurator.impl.Activator.start(Activator.java:36)
    at 
org.apache.felix.framework.util.SecureAction.startActivator(SecureAction.java:698)
    at org.apache.felix.framework.Felix.activateBundle(Felix.java:2402)
    at org.apache.felix.framework.Felix.startBundle(Felix.java:2308)
    at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:998)
    at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:984)
I had looked into it and found that the problem probably lies in the serial 
version number of _*OrderedDictionary*_ which is part of 
_*org.apache.felix.cm.json*_ and was never required for  Configurator v1.0.10. 

I have compared the hexdumps of both the _*state.ser*_ files and the files 
started to differ in _*OrderedDictionary.*_

The exception doesn't harm since if the previous state cannot be read properly, 
a new state gets created.


> Unable to read persisted state from state.ser
> ---------------------------------------------
>
>                 Key: FELIX-6322
>                 URL: https://issues.apache.org/jira/browse/FELIX-6322
>             Project: Felix
>          Issue Type: Bug
>          Components: Configurator
>    Affects Versions: configurator-1.0.12
>            Reporter: Amit Mondal
>            Priority: Minor
>
> The following exception occurs in runtime if we update the configurator from 
> v1.0.10 to v1.0.12:
> {code:java}
> java.io.StreamCorruptedException: unexpected block data
>  at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1641)
>  at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:2341)
>  at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:2221)
>  at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2123)
>  at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1624)
>  at java.io.ObjectInputStream.readObject(ObjectInputStream.java:464)
>  at java.io.ObjectInputStream.readObject(ObjectInputStream.java:422)
>  at 
> org.apache.felix.configurator.impl.model.State.createOrReadState(State.java:87)
>  at 
> org.apache.felix.configurator.impl.Configurator.<init>(Configurator.java:91)
>  at 
> org.apache.felix.configurator.impl.ServicesListener.notifyChange(ServicesListener.java:113)
>  at 
> org.apache.felix.configurator.impl.ServicesListener$1.addingService(ServicesListener.java:73)
>  at 
> org.apache.felix.configurator.impl.ServicesListener$1.addingService(ServicesListener.java:65)
>  at 
> org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:943)
>  at 
> org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:871)
>  at 
> org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:256)
>  at 
> org.osgi.util.tracker.AbstractTracked.trackInitial(AbstractTracked.java:183)
>  at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:321)
>  at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:264)
>  at 
> org.apache.felix.configurator.impl.ServicesListener.<init>(ServicesListener.java:93)
>  at org.apache.felix.configurator.impl.Activator.start(Activator.java:36)
>  at 
> org.apache.felix.framework.util.SecureAction.startActivator(SecureAction.java:698)
>  at org.apache.felix.framework.Felix.activateBundle(Felix.java:2402)
>  at org.apache.felix.framework.Felix.startBundle(Felix.java:2308)
>  at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:998)
>  at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:984){code}
> I had looked into it and found that the problem probably lies in the serial 
> version number of _*OrderedDictionary*_ which is part of 
> _*org.apache.felix.cm.json*_ and was never required for  Configurator 
> v1.0.10. 
> I have compared the hexdumps of both the _*state.ser*_ files and the files 
> started to differ in _*OrderedDictionary.*_
> The exception doesn't harm since if the previous state cannot be read 
> properly, a new state gets created.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to