[ 
https://issues.apache.org/jira/browse/DERBY-6124?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13609816#comment-13609816
 ] 

Dag H. Wanvik commented on DERBY-6124:
--------------------------------------

Using the program below to extract the generated (default UUID), I see it has 
changed in 10.10.
I don't know this test well enough to say if it is expected that we read a 
price object generated
pre 10.10 with 10.10. 

Price UUID in 10.10: 1827170030595550895
Price UUID in 10.9:  0102726277789621992
Price UUID in 10.8:  0102726277789621992

-------------------------------------------------
package derby6124;

import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.ObjectStreamClass;
import org.apache.derbyTesting.functionTests.tests.lang.Price;

public class Derby6124 {

    public static class PrintUIDs extends ObjectInputStream {
        public PrintUIDs(InputStream in) throws IOException {
            super(in);
        }

        @Override
        protected ObjectStreamClass readClassDescriptor() 
                throws IOException, ClassNotFoundException {
            ObjectStreamClass descriptor = super.readClassDescriptor();
            System.out.println("name=" + descriptor.getName());
            System.out.println("serialVersionUID=" + 
descriptor.getSerialVersionUID());
            return descriptor;
        }
    }
    
    public static void main(String[] args) throws IOException,
            ClassNotFoundException {
        ByteArrayOutputStream baos = new ByteArrayOutputStream();
        ObjectOutputStream oos = new ObjectOutputStream(baos);
        Price p = new Price();
        oos.writeObject(p);
        oos.close();
        InputStream inn = new ByteArrayInputStream(baos.toByteArray());
        ObjectInputStream ois = new PrintUIDs(inn);
        ois.readObject();
    }
}

                
> Marshalling error in JDBCDriverTest as part of CompatibilityTest
> ----------------------------------------------------------------
>
>                 Key: DERBY-6124
>                 URL: https://issues.apache.org/jira/browse/DERBY-6124
>             Project: Derby
>          Issue Type: Bug
>          Components: Test
>    Affects Versions: 10.10.1.1
>         Environment: Java SE 1.7.0-b147, Solaris 11, x86
> --------- Derby Information --------
> [/localhome/tendril4.2/work/run/27358744/jars/sane/derby.jar] 10.10.1.1 - 
> (1458268)
> [/localhome/tendril4.2/work/run/27358744/jars/sane/derbytools.jar] 10.10.1.1 
> - (1458268)
> [/localhome/tendril4.2/work/run/27358744/jars/sane/derbynet.jar] 10.10.1.1 - 
> (1458268)
> [/localhome/tendril4.2/work/run/27358744/jars/sane/derbyclient.jar] 10.10.1.1 
> - (1458268)
>            Reporter: Dag H. Wanvik
>
> Internal Oracle testing of RC 2 testing of 10.10 (Tendril Request 5574239 
> Tendril Task  3614491 ):
> ********* Diff file 
> derbyall/derbynetclientmats/DerbyNetClient/encodingTests/TestEnc.diff
> *** Start: TestEnc jdk1.7.0 DerbyNetClient derbynetclientmats:encodingTests 
> 2013-03-21 14:55:59 ***
> derbyTesting.encoding can only be used with jdk15, skipping test
> *** End:   TestEnc jdk1.7.0 DerbyNetClient derbynetclientmats:encodingTests 
> 2013-03-21 14:55:59 ***
> ********* Diff file 
> derbyall/derbynetclientmats/DerbyNetClient/derbynetclientmats/CompatibilityTest.diff
> *** Start: CompatibilityTest jdk1.7.0 DerbyNetClient 
> derbynetclientmats:derbynetclientmats 2013-03-21 14:55:59 ***
> 0 add
> > .E.
> > There was 1 error:
> > 1) 
> > testJDBCDriver(org.apache.derbyTesting.functionTests.tests.junitTests.compatibility.JDBCDriverTest)java.sql.SQLException:
> >  Error marshalling or unmarshalling a user defined type: 
> > org.apache.derbyTesting.functionTests.tests.lang.Price; local class 
> > incompatible: stream classdesc serialVersionUID = 102726277789621992, local 
> > class serialVersionUID = 1827170030595550895
> > Caused by: org.apache.derby.client.am.SqlException: Error marshalling or 
> > unmarshalling a user defined type: 
> > org.apache.derbyTesting.functionTests.tests.lang.Price; local class 
> > incompatible: stream classdesc serialVersionUID = 102726277789621992, local 
> > class serialVersionUID = 1827170030595550895
> >     ... 22 more
> > Caused by: java.io.InvalidClassException: 
> > org.apache.derbyTesting.functionTests.tests.lang.Price; local class 
> > incompatible: stream classdesc serialVersionUID = 102726277789621992, local 
> > class serialVersionUID = 1827170030595550895
> >     ... 25 more
> > FAILURES!!!
> > Tests run: 2,  Failures: 0,  Errors: 1
> Test Failed.
> *** End:   CompatibilityTest jdk1.7.0 DerbyNetClient 
> derbynetclientmats:derbynetclientmats 2013-03-21
>  14:56:04 ***
> Looking at the Price class I see it doesn't have an explicit 
> serialVersionUID. 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to