Project

Profile

Help

Bug #3780

closed

java.lang.RuntimeException: Internal error when adding a map to the final result tree

Added by Philip Fearon almost 6 years ago. Updated almost 6 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
Serialization
Sprint/Milestone:
-
Start date:
2018-05-11
Due date:
% Done:

100%

Estimated time:
Legacy ID:
Applies to branch:
9.8, trunk
Fix Committed on Branch:
9.8, trunk
Fixed in Maintenance Release:
Platforms:

Description

Using Java build of Saxon 9.8.0.12.

The development XSLT supplied here is incomplete and is flawed in the sense that it is attempting to add a map to the final result tree. I would expect some exception, but not an internal error (repro files attached)

Run from the terminal, here's the terminal output/stack trace:

java -jar SaxonPE9-8-0-12J/saxon9pe.jar -xsl:create-updates.xsl -s:create-milestones-input.xml -o:create-updates-out.xml

No license file found - running with licensable features disabled

a: [1,2]

c: [1]

d: [2]

e: [2,1]

key: a

key: b

key: c

key: d

key: e

java.lang.RuntimeException: Internal error evaluating template rule at line 17 in module file:/create-updates.xsl

at net.sf.saxon.expr.instruct.TemplateRule.applyLeavingTail(TemplateRule.java:360)

at net.sf.saxon.trans.Mode.applyTemplates(Mode.java:505)

at net.sf.saxon.trans.TextOnlyCopyRuleSet.process(TextOnlyCopyRuleSet.java:69)

at net.sf.saxon.trans.Mode.applyTemplates(Mode.java:481)

at net.sf.saxon.Controller.transformDocument(Controller.java:2402)

at net.sf.saxon.Controller.transform(Controller.java:1970)

at net.sf.saxon.s9api.Xslt30Transformer.applyTemplates(Xslt30Transformer.java:593)

at net.sf.saxon.Transform.processFile(Transform.java:1259)

at net.sf.saxon.Transform.doTransform(Transform.java:782)

at net.sf.saxon.Transform.main(Transform.java:81)

Caused by: java.lang.UnsupportedOperationException: A map has no string value

at net.sf.saxon.ma.map.HashTrieMap.getStringValueCS(HashTrieMap.java:682)

at net.sf.saxon.serialize.UncommittedSerializer.append(UncommittedSerializer.java:222)

at net.sf.saxon.event.ProxyReceiver.append(ProxyReceiver.java:230)

at net.sf.saxon.event.ProxyReceiver.append(ProxyReceiver.java:230)

at net.sf.saxon.event.SequenceReceiver.append(SequenceReceiver.java:124)

at net.sf.saxon.event.ComplexContentOutputter.append(ComplexContentOutputter.java:634)

at net.sf.saxon.expr.VariableReference.process(VariableReference.java:575)

at net.sf.saxon.expr.LetExpression.processLeavingTail(LetExpression.java:711)

at net.sf.saxon.expr.instruct.Block.processLeavingTail(Block.java:687)

at net.sf.saxon.expr.LetExpression.processLeavingTail(LetExpression.java:709)

at net.sf.saxon.expr.instruct.Block.processLeavingTail(Block.java:687)

at net.sf.saxon.expr.instruct.NamedTemplate.expand(NamedTemplate.java:263)

at net.sf.saxon.expr.instruct.CallTemplate.process(CallTemplate.java:353)

at net.sf.saxon.expr.instruct.ElementCreator.processLeavingTail(ElementCreator.java:337)

at net.sf.saxon.expr.instruct.ElementCreator.processLeavingTail(ElementCreator.java:284)

at net.sf.saxon.expr.instruct.TemplateRule.applyLeavingTail(TemplateRule.java:347)

... 9 more

Fatal error during transformation: java.lang.RuntimeException: Internal error evaluating template rule at line 17 in module file:/Users/philipf/dev/merge/source/product/xsl/formatting/create-updates.xsl


Files

create-milestones-input.xml (1.09 KB) create-milestones-input.xml Philip Fearon, 2018-05-11 16:24
create-updates.xsl (4.71 KB) create-updates.xsl Philip Fearon, 2018-05-11 16:24
Actions #1

Updated by Michael Kay almost 6 years ago

  • Status changed from New to In Progress

Thanks for reporting it. It's failing in the "Uncommitted serializer" which is a filter on the serialization pipeline created when there's a need to decide dynamically between XML or HTML serialization based on the first start tag encountered.

Actions #2

Updated by Michael Kay almost 6 years ago

  • Category set to Serialization
  • Status changed from In Progress to Resolved
  • Assignee set to Michael Kay
  • Priority changed from Low to Normal
  • Applies to branch trunk added
  • Fix Committed on Branch 9.8, trunk added

Fixed the bug in UncommittedSerializer.append().

Added several new test cases to xslt30 test suite, tests output-07xx

Actions #3

Updated by Debbie Lockett almost 6 years ago

  • Status changed from Resolved to Closed
  • % Done changed from 0 to 100
  • Fixed in Maintenance Release 9.8.0.14 added

Bug fix applied in the Saxon 9.8.0.14 maintenance release.

Please register to edit this issue

Also available in: Atom PDF