#116: intermittent failure of t/pmc/freeze_25.pir
----------------------+-----------------------------------------------------
 Reporter:  Infinoid  |        Owner:        
     Type:  bug       |       Status:  closed
 Priority:  normal    |    Milestone:        
Component:  none      |      Version:        
 Severity:  medium    |   Resolution:  fixed 
 Keywords:            |         Lang:        
    Patch:            |     Platform:        
----------------------+-----------------------------------------------------
Changes (by cotto):

  * status:  new => closed
  * resolution:  => fixed


Comment:

 The problem was that freeze/thaw (and clone) of a Hash resulted in a
 different internal ordering of the entries if sequential keys weren't
 stored in sequential buckets (i.e. they wrapped).  r35109 fixes this by
 changing freeze and clone to copy elements by iterating through hash->bs.
 This means that the in-memory position of entries should always be
 identical in cloned or frozen/thawed Hashes.

 The reason for the test failures was that the different internal ordering
 was messing up Class attribute lookups. I didn't bother finding out
 exactly why this happened. It may be worth looking into.

 I added a couple new tests to t/pmc/hash.t to make sure internal order
 stays consistent across freeze/thaw and clone.

-- 
Ticket URL: <https://trac.parrot.org/parrot/ticket/116#comment:9>
Parrot <https://trac.parrot.org/parrot/>
Parrot Development
_______________________________________________
parrot-tickets mailing list
[email protected]
http://lists.parrot.org/mailman/listinfo/parrot-tickets

Reply via email to