Menu

#12 Union on nodes in temporary trees

v6.4
closed
5
2012-10-08
2001-07-13
Michael Kay
No

Nodes in temporary trees do not have an identity that
is unique within the entire transformation. This means
that two nodes in different temporary trees may be
regarded as the same node for the purposes of the
union operator "|" (i.e. node may be regarded as
duplicates when they are not, leading to missing nodes
in the result).

Also, the result of generate-id() may not be unique.

Raised by Paul Boocock [paulb@ashridgetech.com]

Cause: Temporary trees are not registered in the
Controller's DocumentPool, which is used to decide
whether two documents are distinct.

Present since 6.4.

Discussion

  • Michael Kay

    Michael Kay - 2001-07-13

    Logged In: YES
    user_id=251681

    Fixed in 6.4.3

     
  • Michael Kay

    Michael Kay - 2001-10-16

    Logged In: YES
    user_id=251681

    Re-opened. There are reports that memory usage at 6.4.4 is
    higher than earlier releases. I suspect the fix for this
    bug is causing temporary trees not to be garbage collected.
    Evidence raised by Janning Vygen [vygen@planwerk6.de] on
    xsl-list, 16/10/2001.

     
  • Michael Kay

    Michael Kay - 2001-11-12

    Logged In: YES
    user_id=251681

    Revised fix: the DocumentPool has been rewritten so it no
    longer keeps a pointer to the DocumentInfo object, but only
    its hashcode. This will not prevent the DocumentInfo being
    removed from memory by the garbage collecter. - MHK

     
  • Michael Kay

    Michael Kay - 2001-11-15

    Logged In: YES
    user_id=251681

    Fixed in 6.5