Steve Lawrence created DAFFODIL-2059:
----------------------------------------

             Summary: Computing the diff of large XML results in a stack 
overflow
                 Key: DAFFODIL-2059
                 URL: https://issues.apache.org/jira/browse/DAFFODIL-2059
             Project: Daffodil
          Issue Type: Bug
            Reporter: Steve Lawrence
            Assignee: Steve Lawrence
             Fix For: 2.3.0


We changed how we compare expected and actual infosets to always use 
computeDiffOne. However, for very large XML it results in the following stack 
overflow:
{code}
[error]     at java.lang.String.valueOf(String.java:2994)
[error]     at 
scala.collection.mutable.StringBuilder.append(StringBuilder.scala:200)
[error]     at 
scala.collection.TraversableOnce.$anonfun$addString$1(TraversableOnce.scala:359)
[error]     at scala.collection.immutable.List.foreach(List.scala:389)
[error]     at 
scala.collection.TraversableOnce.addString(TraversableOnce.scala:357)
[error]     at 
scala.collection.TraversableOnce.addString$(TraversableOnce.scala:353)
[error]     at 
scala.collection.AbstractTraversable.addString(Traversable.scala:104)
[error]     at 
scala.collection.TraversableOnce.mkString(TraversableOnce.scala:323)
[error]     at 
scala.collection.TraversableOnce.mkString$(TraversableOnce.scala:322)
[error]     at 
scala.collection.AbstractTraversable.mkString(Traversable.scala:104)
[error]     at 
scala.collection.TraversableOnce.mkString(TraversableOnce.scala:325)
[error]     at 
scala.collection.TraversableOnce.mkString$(TraversableOnce.scala:325)
[error]     at 
scala.collection.AbstractTraversable.mkString(Traversable.scala:104)
[error]     at 
org.apache.daffodil.xml.XMLUtils$.zPath$lzycompute$1(XMLUtils.scala:784)
[error]     at org.apache.daffodil.xml.XMLUtils$.zPath$1(XMLUtils.scala:784)
[error]     at 
org.apache.daffodil.xml.XMLUtils$.computeDiffOne(XMLUtils.scala:833)
[error]     at 
org.apache.daffodil.xml.XMLUtils$.computeDiffOne(XMLUtils.scala:825)
[error]     at 
org.apache.daffodil.xml.XMLUtils$.computeDiffOne(XMLUtils.scala:826)
[error]     at 
org.apache.daffodil.xml.XMLUtils$.computeDiffOne(XMLUtils.scala:826)
...
{code}
This causes tests on existing real world schemas to fail during TDML testing.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to