Are DTM IDs ever "recycled"?

"Eric J. Schwarzenbach" <[email protected]> Wed, 2 Dec 2015 13:52:32 -0500
Newsgroups gmane.text.xml.xalan.java.user
Message-ID <[email protected]>
This is a multi-part message in MIME format.
--------------000500000205060702030706
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 7bit

I have a question regarding DTM IDs and the dreaded "No more DTM IDs are 
available" error. (No, not using an old version Xalan, just creating 
lots of temporary nodesets during processing.) Are DTM IDs ever 
"recycled" during a single transform? Does a node set variable going out 
of scope ever free up the DTM IDs that it was using for reuse by a later 
nodeset?

(I'm including Joseph Kesselman's comments about how these work from a 
previous thread, just for reference.)

Thanks,

Eric


On 09/30/2014 04:52 PM, Joseph Kesselman/Watson/IBM wrote:
> A DTM ID is consumed by each document tree Xalan is working with. 
> Temporary result trees, for example, each occupy a DTM.
>
> For reasons having to do with DTM's history and the use cases it was 
> tuned for, there are a fixed number of bits that need to be split 
> between selecting DTMs and selecting nodes within a DTM. If you're 
> using many small trees, reducing the number of bits used for node 
> selection will increase the number of trees available, at the cost of 
> reducing the space in each DTM.
>

--------------000500000205060702030706
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: 7bit

<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=utf-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    I have a question regarding DTM IDs and the dreaded "No more DTM IDs
    are available" error. (No, not using an old version Xalan, just
    creating lots of temporary nodesets during processing.) Are DTM IDs
    ever "recycled" during a single transform? Does a node set variable
    going out of scope ever free up the DTM IDs that it was using for
    reuse by a later nodeset?<br>
    <br>
    (I'm including Joseph Kesselman's comments about how these work from
    a previous thread, just for reference.)<br>
    <br>
    Thanks,<br>
    <br>
    Eric<br>
    <br>
    <br>
    <div class="moz-cite-prefix">On 09/30/2014 04:52 PM, Joseph
      Kesselman/Watson/IBM wrote:<br>
    </div>
    <blockquote
cite="mid:OF16EABD25.EC27DCC5-ON85257D63.00715D7A-85257D63.0072AE09@edc.ibm.com"
      type="cite"><font size="2" face="sans-serif">A DTM ID is consumed
        by each document tree Xalan is working with. Temporary result
        trees, for example, each occupy a DTM.<br>
        <br>
        For reasons having to do with DTM's history and the use cases it
        was tuned for, there are a fixed number of bits that need to be
        split between selecting DTMs and selecting nodes within a DTM.
        If you're using many small trees, reducing the number of bits
        used for node selection will increase the number of trees
        available, at the cost of reducing the space in each DTM.</font><br>
      <br>
    </blockquote>
  </body>
</html>

--------------000500000205060702030706--