Alan M. Carroll created TS-4630:
-----------------------------------

             Summary: Semantics of IPHashTable iterators can be  non-obvious
                 Key: TS-4630
                 URL: https://issues.apache.org/jira/browse/TS-4630
             Project: Traffic Server
          Issue Type: Bug
          Components: Core
            Reporter: Alan M. Carroll


The root of the problem in TS-4629 is that elements in the container can 
self-destruct which de facto removes them from the container and thereby 
invalidate an iterator unexpectedly. This stems from the combination of 
intrusive links (so that some container state is in the object) and 
self-destructing objects (which destroys that state unexpectedly).

In TS-4629, simply mapping a method call to the objects in the container is 
unsafe even though no explicit container methods are called. Safe use requires 
knowing that a particular method can cause self-destruction.

Some additional thought needs to be put in to this to attempt to prevent 
situations like TS-4629 from occurring repeatedly in hard to track down 
situations.




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to