Brandon Sloane created DAFFODIL-2124:
----------------------------------------

             Summary: Error unparsing bigInts
                 Key: DAFFODIL-2124
                 URL: https://issues.apache.org/jira/browse/DAFFODIL-2124
             Project: Daffodil
          Issue Type: Bug
            Reporter: Brandon Sloane
         Attachments: a.bin.xml, a.dfdl.xsd

On unparse, daffodil appears to try parsing numeric strings as a long 
regardless of the bit length, potentiall causing issues when length>64. Example 
attached.

 

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! 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.NumberFormatException: For input string: "7089904312036126320"
 at 
java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
 at java.lang.Integer.parseInt(Integer.java:583)
 at java.lang.Integer.parseInt(Integer.java:615)
 at scala.collection.immutable.StringLike.toInt(StringLike.scala:301)
 at scala.collection.immutable.StringLike.toInt$(StringLike.scala:301)
 at scala.collection.immutable.StringOps.toInt(StringOps.scala:29)
 at 
org.apache.daffodil.dpath.NodeInfo$PrimType$Int$.fromXMLString(NodeInfo.scala:459)
 at 
org.apache.daffodil.dpath.NodeInfo$PrimType$Int$.fromXMLString(NodeInfo.scala:457)
 at 
org.apache.daffodil.infoset.InfosetInputter.createElement(InfosetInputter.scala:347)
 at 
org.apache.daffodil.infoset.InfosetInputter.handleStartElement(InfosetInputter.scala:242)
 at 
org.apache.daffodil.infoset.InfosetInputter.reallyFill(InfosetInputter.scala:226)
 at org.apache.daffodil.infoset.InfosetInputter.fill(InfosetInputter.scala:213)
 at org.apache.daffodil.util.CursorImplMixin.doAdvance(Cursor.scala:174)
 at org.apache.daffodil.util.CursorImplMixin.advance(Cursor.scala:144)
 at org.apache.daffodil.util.CursorImplMixin.advance$(Cursor.scala:141)
 at 
org.apache.daffodil.infoset.InfosetInputter.advance(InfosetInputter.scala:53)
 at 
org.apache.daffodil.processors.unparsers.UStateMain.advance(UState.scala:482)
 at org.apache.daffodil.util.Cursor.advanceMaybe(Cursor.scala:104)
 at org.apache.daffodil.util.Cursor.advanceMaybe$(Cursor.scala:103)
 at 
org.apache.daffodil.processors.unparsers.UState.advanceMaybe(UState.scala:72)
 at 
org.apache.daffodil.processors.unparsers.UStateMain.advanceOrError(UState.scala:499)
 at 
org.apache.daffodil.processors.unparsers.RegularElementUnparserStartEndStrategy.unparseBegin(ElementUnparser.scala:382)
 at 
org.apache.daffodil.processors.unparsers.RegularElementUnparserStartEndStrategy.unparseBegin$(ElementUnparser.scala:377)
 at 
org.apache.daffodil.processors.unparsers.ElementSpecifiedLengthUnparser.unparseBegin(ElementUnparser.scala:264)
 at 
org.apache.daffodil.processors.unparsers.ElementUnparserBase.unparse(ElementUnparser.scala:178)
 at 
org.apache.daffodil.processors.unparsers.Unparser.unparse1(Unparser.scala:72)
 at 
org.apache.daffodil.processors.unparsers.Unparser.unparse1$(Unparser.scala:39)
 at 
org.apache.daffodil.processors.unparsers.CombinatorUnparser.unparse1(Unparser.scala:128)
 at org.apache.daffodil.processors.DataProcessor.doUnparse(Runtime.scala:356)
 at org.apache.daffodil.processors.DataProcessor.unparse(Runtime.scala:304)
 at org.apache.daffodil.Main$.$anonfun$run$14(Main.scala:1133)
 at org.apache.daffodil.util.Timer$.getTimeResult(Timer.scala:76)
 at org.apache.daffodil.util.Timer$.getResult(Timer.scala:35)
 at org.apache.daffodil.Main$.run(Main.scala:1133)
 at org.apache.daffodil.Main$.main(Main.scala:1361)
 at org.apache.daffodil.Main.main(Main.scala)

 

 



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

Reply via email to