You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@daffodil.apache.org by "Mike McGann (Jira)" <ji...@apache.org> on 2023/02/10 16:49:00 UTC

[jira] [Resolved] (DAFFODIL-2728) Missing layer plugin causes abort "this is a bug"

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

Mike McGann resolved DAFFODIL-2728.
-----------------------------------
    Resolution: Cannot Reproduce

> Missing layer plugin causes abort "this is a bug"
> -------------------------------------------------
>
>                 Key: DAFFODIL-2728
>                 URL: https://issues.apache.org/jira/browse/DAFFODIL-2728
>             Project: Daffodil
>          Issue Type: Bug
>          Components: Back End
>    Affects Versions: 3.4.0
>            Reporter: Mike Beckerle
>            Assignee: Mike McGann
>            Priority: Major
>             Fix For: 3.5.0
>
>
> If you pre-compile a schema to a binary file, then try to parse data with it, without setting up the DAFFODIL_CLASSPATH to provide access to a layer plugin, you get an abort during deserialization (i.e., reload) of the stored parser. 
> The workaround is of course just setup the DAFFODIL_CLASSPATH for running the CLI the same as when the parser was compiled and saved. 
> {code:java}
> !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
> !!   An unexpected exception occurred. This is a bug!   !!
> !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Please report this bug and help us fix it:  https://daffodil.apache.org/community/#issue-tracker Please include the following exception, the command you
>  ran, and any input, schema, or tdml files used that led
>  to this bug.
> java.lang.ClassCastException: cannot assign instance of scala.collection.immutable.HashMap$SerializationProxy to field org.apache.daffodil.processors.parsers.ChoiceDispatchCombinatorParserBase.dispatchBranchKeyMap of type scala.collection.immutable.Map in instance of org.apache.daffodil.processors.parsers.ChoiceDispatchCombinatorParser
>         at java.base/java.io.ObjectStreamClass$FieldReflector.setObjFieldValues(ObjectStreamClass.java:2227)
>         at java.base/java.io.ObjectStreamClass$FieldReflector.checkObjectFieldValueTypes(ObjectStreamClass.java:2191)
>         at java.base/java.io.ObjectStreamClass.checkObjFieldValueTypes(ObjectStreamClass.java:1478)
>         at java.base/java.io.ObjectInputStream$FieldValues.defaultCheckFieldValues(ObjectInputStream.java:2657)
>         at java.base/java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:2471)
>         at java.base/java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2242)
>         at java.base/java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1742)
>         at java.base/java.io.ObjectInputStream$FieldValues.<init>(ObjectInputStream.java:2584)
>         at java.base/java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:2442)
>         at java.base/java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2242)
>         at java.base/java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1742)
>  {code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)