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

Steve Lawrence updated DAFFODIL-3067:
-------------------------------------
    Description: 
There is a rare CI failure where TDML tests have different diagnostics between 
the SAX and non-SAX implementations.
{code:java}
[error] Test 
org.apache.daffodil.section15.choice_groups.TestChoiceBranches.choiceBranch_e5 
failed: org.apache.daffodil.tdml.TDMLExceptionImpl: SAX parse/unparse 
diagnostics do not match DataProcessor diagnostics
[error] DataProcessor Parse diagnostics: List(Unparse Error: Found next element 
ex:{http://example.com}after, but expected one of ex:{http://example.com}req_1, 
ex:{http://example.com}req_2.
[error] Schema context: choice[1] Location line 155 column 12 in 
/org/apache/daffodil/section15/choice_groups/ChoiceBranches.tdml
[error] Data location was preceding byte 0)
[error] SAX Parse diagnostics: List(Unparse Error: Found next element 
{http://example.com}after, but expected one of ex:{http://example.com}req_1, 
ex:{http://example.com}req_2.
[error] Schema context: choice[1] Location line 155 column 12 in 
/org/apache/daffodil/section15/choice_groups/ChoiceBranches.tdml
[error] Data location was preceding byte 0), took 0.084 sec
[error]     at 
org.apache.daffodil.tdml.TDMLException$.apply(TDMLException.scala:34)
[error]     at 
org.apache.daffodil.processor.tdml.DaffodilTDMLDFDLProcessor.verifySameDiagnostics(DaffodilTDMLDFDLProcessor.scala:426)
[error]     at 
org.apache.daffodil.processor.tdml.DaffodilTDMLDFDLProcessor.doUnparse(DaffodilTDMLDFDLProcessor.scala:375)
[error]     at 
org.apache.daffodil.processor.tdml.DaffodilTDMLDFDLProcessor.unparse(DaffodilTDMLDFDLProcessor.scala:261)
[error]     at 
org.apache.daffodil.processor.tdml.DaffodilTDMLDFDLProcessor.unparse(DaffodilTDMLDFDLProcessor.scala:232)
[error]     at 
org.apache.daffodil.tdml.UnparserTestCase.runUnparserExpectErrors(TDMLRunner.scala:1730)
[error]     at 
org.apache.daffodil.tdml.UnparserTestCase.runProcessor(TDMLRunner.scala:1581)
[error]     at org.apache.daffodil.tdml.TestCase.run(TDMLRunner.scala:969)
[error]     at 
org.apache.daffodil.tdml.DFDLTestSuite.runOneTest(TDMLRunner.scala:491)
[error]     at 
org.apache.daffodil.tdml.Runner.runOneTest(RunnerFactory.scala:235)
[error]     at 
org.apache.daffodil.tdml.Runner.runOneTest(RunnerFactory.scala:241)
[error]     at org.apache.daffodil.junit.tdml.TdmlTests.test(TdmlSuite.scala:91)
[error]     at 
org.apache.daffodil.junit.tdml.TdmlTests.test$(TdmlSuite.scala:75)
[error]     at 
org.apache.daffodil.section15.choice_groups.TestChoiceBranches.test(TestChoiceBranches.scala:30)
[error]     at 
org.apache.daffodil.section15.choice_groups.TestChoiceBranches.choiceBranch_e5(TestChoiceBranches.scala:47)
[error]     at 
jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
[error]     at java.lang.reflect.Method.invoke(Method.java:580)
{code}
Specifically the differences are:

DataProcessor: Found next element ex:\{http://example.com}after

SAX: Found next element \{http://example.com}after

So the only difference is SAX is missing the "ex" prefix. This is very 
difficult to reproduce. Note that you must set DAFFODIL_TDML_API_INFOSETS=all 
in order to test both the SAX and non-SAX APIS and compare their diagnostics.

  was:
There is a rare CI failure where TDML tests have different diagnostics between 
the SAX and non-SAX implementations.

{code}
[error] Test 
org.apache.daffodil.section15.choice_groups.TestChoiceBranches.choiceBranch_e5 
failed: org.apache.daffodil.tdml.TDMLExceptionImpl: SAX parse/unparse 
diagnostics do not match DataProcessor diagnostics
[error] DataProcessor Parse diagnostics: List(Unparse Error: Found next element 
ex:{http://example.com}after, but expected one of ex:{http://example.com}req_1, 
ex:{http://example.com}req_2.
[error] Schema context: choice[1] Location line 155 column 12 in 
/org/apache/daffodil/section15/choice_groups/ChoiceBranches.tdml
[error] Data location was preceding byte 0)
[error] SAX Parse diagnostics: List(Unparse Error: Found next element 
{http://example.com}after, but expected one of ex:{http://example.com}req_1, 
ex:{http://example.com}req_2.
[error] Schema context: choice[1] Location line 155 column 12 in 
/org/apache/daffodil/section15/choice_groups/ChoiceBranches.tdml
[error] Data location was preceding byte 0), took 0.084 sec
[error]     at 
org.apache.daffodil.tdml.TDMLException$.apply(TDMLException.scala:34)
[error]     at 
org.apache.daffodil.processor.tdml.DaffodilTDMLDFDLProcessor.verifySameDiagnostics(DaffodilTDMLDFDLProcessor.scala:426)
[error]     at 
org.apache.daffodil.processor.tdml.DaffodilTDMLDFDLProcessor.doUnparse(DaffodilTDMLDFDLProcessor.scala:375)
[error]     at 
org.apache.daffodil.processor.tdml.DaffodilTDMLDFDLProcessor.unparse(DaffodilTDMLDFDLProcessor.scala:261)
[error]     at 
org.apache.daffodil.processor.tdml.DaffodilTDMLDFDLProcessor.unparse(DaffodilTDMLDFDLProcessor.scala:232)
[error]     at 
org.apache.daffodil.tdml.UnparserTestCase.runUnparserExpectErrors(TDMLRunner.scala:1730)
[error]     at 
org.apache.daffodil.tdml.UnparserTestCase.runProcessor(TDMLRunner.scala:1581)
[error]     at org.apache.daffodil.tdml.TestCase.run(TDMLRunner.scala:969)
[error]     at 
org.apache.daffodil.tdml.DFDLTestSuite.runOneTest(TDMLRunner.scala:491)
[error]     at 
org.apache.daffodil.tdml.Runner.runOneTest(RunnerFactory.scala:235)
[error]     at 
org.apache.daffodil.tdml.Runner.runOneTest(RunnerFactory.scala:241)
[error]     at org.apache.daffodil.junit.tdml.TdmlTests.test(TdmlSuite.scala:91)
[error]     at 
org.apache.daffodil.junit.tdml.TdmlTests.test$(TdmlSuite.scala:75)
[error]     at 
org.apache.daffodil.section15.choice_groups.TestChoiceBranches.test(TestChoiceBranches.scala:30)
[error]     at 
org.apache.daffodil.section15.choice_groups.TestChoiceBranches.choiceBranch_e5(TestChoiceBranches.scala:47)
[error]     at 
jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
[error]     at java.lang.reflect.Method.invoke(Method.java:580)
{code} 

Specifically the differences are:

DataProcessor: Found next element ex:{http://example.com}after
SAX: Found next element {http://example.com}after

So the only difference is SAX is missing the "ex" prefix. This is very 
difficult to reproduce. Note that you must set DAFFODIL_TDML_API_INFOSETS=all 
in order to test both the SAX and non-SAX APIS and compare their diagnostics.



> Intermittent CI failure:  SAX diagnostics do not match DataProcessor 
> diagnostics
> --------------------------------------------------------------------------------
>
>                 Key: DAFFODIL-3067
>                 URL: https://issues.apache.org/jira/browse/DAFFODIL-3067
>             Project: Daffodil
>          Issue Type: Bug
>          Components: SAX
>    Affects Versions: 4.1.0
>            Reporter: Steve Lawrence
>            Priority: Major
>
> There is a rare CI failure where TDML tests have different diagnostics 
> between the SAX and non-SAX implementations.
> {code:java}
> [error] Test 
> org.apache.daffodil.section15.choice_groups.TestChoiceBranches.choiceBranch_e5
>  failed: org.apache.daffodil.tdml.TDMLExceptionImpl: SAX parse/unparse 
> diagnostics do not match DataProcessor diagnostics
> [error] DataProcessor Parse diagnostics: List(Unparse Error: Found next 
> element ex:{http://example.com}after, but expected one of 
> ex:{http://example.com}req_1, ex:{http://example.com}req_2.
> [error] Schema context: choice[1] Location line 155 column 12 in 
> /org/apache/daffodil/section15/choice_groups/ChoiceBranches.tdml
> [error] Data location was preceding byte 0)
> [error] SAX Parse diagnostics: List(Unparse Error: Found next element 
> {http://example.com}after, but expected one of ex:{http://example.com}req_1, 
> ex:{http://example.com}req_2.
> [error] Schema context: choice[1] Location line 155 column 12 in 
> /org/apache/daffodil/section15/choice_groups/ChoiceBranches.tdml
> [error] Data location was preceding byte 0), took 0.084 sec
> [error]     at 
> org.apache.daffodil.tdml.TDMLException$.apply(TDMLException.scala:34)
> [error]     at 
> org.apache.daffodil.processor.tdml.DaffodilTDMLDFDLProcessor.verifySameDiagnostics(DaffodilTDMLDFDLProcessor.scala:426)
> [error]     at 
> org.apache.daffodil.processor.tdml.DaffodilTDMLDFDLProcessor.doUnparse(DaffodilTDMLDFDLProcessor.scala:375)
> [error]     at 
> org.apache.daffodil.processor.tdml.DaffodilTDMLDFDLProcessor.unparse(DaffodilTDMLDFDLProcessor.scala:261)
> [error]     at 
> org.apache.daffodil.processor.tdml.DaffodilTDMLDFDLProcessor.unparse(DaffodilTDMLDFDLProcessor.scala:232)
> [error]     at 
> org.apache.daffodil.tdml.UnparserTestCase.runUnparserExpectErrors(TDMLRunner.scala:1730)
> [error]     at 
> org.apache.daffodil.tdml.UnparserTestCase.runProcessor(TDMLRunner.scala:1581)
> [error]     at org.apache.daffodil.tdml.TestCase.run(TDMLRunner.scala:969)
> [error]     at 
> org.apache.daffodil.tdml.DFDLTestSuite.runOneTest(TDMLRunner.scala:491)
> [error]     at 
> org.apache.daffodil.tdml.Runner.runOneTest(RunnerFactory.scala:235)
> [error]     at 
> org.apache.daffodil.tdml.Runner.runOneTest(RunnerFactory.scala:241)
> [error]     at 
> org.apache.daffodil.junit.tdml.TdmlTests.test(TdmlSuite.scala:91)
> [error]     at 
> org.apache.daffodil.junit.tdml.TdmlTests.test$(TdmlSuite.scala:75)
> [error]     at 
> org.apache.daffodil.section15.choice_groups.TestChoiceBranches.test(TestChoiceBranches.scala:30)
> [error]     at 
> org.apache.daffodil.section15.choice_groups.TestChoiceBranches.choiceBranch_e5(TestChoiceBranches.scala:47)
> [error]     at 
> jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
> [error]     at java.lang.reflect.Method.invoke(Method.java:580)
> {code}
> Specifically the differences are:
> DataProcessor: Found next element ex:\{http://example.com}after
> SAX: Found next element \{http://example.com}after
> So the only difference is SAX is missing the "ex" prefix. This is very 
> difficult to reproduce. Note that you must set DAFFODIL_TDML_API_INFOSETS=all 
> in order to test both the SAX and non-SAX APIS and compare their diagnostics.



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

Reply via email to