| 1 | I've made a small modification to t/pmc/freeze_25.pir, that is I added a |
|---|
| 2 | `say $S0` statement on line 12 (between the freeze and thaw statements) and ran |
|---|
| 3 | the following command 30 times consecutively with one second sleep between each |
|---|
| 4 | invocation : |
|---|
| 5 | |
|---|
| 6 | perl -e 'print(time(),"\n")'; ./parrot t/pmc/freeze_25.pir |
|---|
| 7 | |
|---|
| 8 | Standard output: |
|---|
| 9 | |
|---|
| 10 | 1:1231282272 |
|---|
| 11 | 2:1 2 3 6 |
|---|
| 12 | 3:þPBC |
|---|
| 13 | 4: |
|---|
| 14 | 5:1]OPTableparrot;OPTable |
|---|
| 15 | 6: <(ÿÿÿÿÿÿ!barP!foobar!bar"!foobar&((ÿÿÿ,<24(ÿÿÿ:ÿÿÿ<<init@2Finitinitinit!parrotinitDR!OPTableinitHFdinitinitinit!parrotÿÿÿÿinittestNdtesttesttest!parrotÿÿÿÿtestPR!OPTableV!OPTable%!keyX(ÿÿÿ%!klen^ÿÿÿ&!wsbÿÿÿ1namedR!&!ws1namej!%!klen1namen!%!key |
|---|
| 16 | 7:^[[?1;2c^[[?1;2c1 2 3 6 |
|---|
| 17 | |
|---|
| 18 | |
|---|
| 19 | line 1 is the time returned by perl. |
|---|
| 20 | line 6 and line 7 are the only one changing. |
|---|
| 21 | |
|---|
| 22 | I compiled the output of the 30 calls: |
|---|
| 23 | 'GOOD' means the test passed successfully while 'BAD' triggered the NULL PMC error. |
|---|
| 24 | |
|---|
| 25 | |
|---|
| 26 | BAD 1231282271 <(ÿÿÿÿÿÿ!barP!foobar!bar"!foobar&((ÿÿÿ,<24(ÿÿÿ:ÿÿÿ<<init@2Finitinitinit!parrotinitDR!OPTableinitHFdinitinitinit!parrotÿÿÿÿinittestNdtesttesttest!parrotÿÿÿÿtestPR!OPTableV!OPTable&!wsX(ÿÿÿ%!key^ÿÿÿ%!klenbÿÿÿ1namedR!%!klen1namej!%!key1namen!&!ws |
|---|
| 27 | GOOD 1231282272 <(ÿÿÿÿÿÿ!barP!foobar!bar"!foobar&((ÿÿÿ,<24(ÿÿÿ:ÿÿÿ<<init@2Finitinitinit!parrotinitDR!OPTableinitHFdinitinitinit!parrotÿÿÿÿinittestNdtesttesttest!parrotÿÿÿÿtestPR!OPTableV!OPTable%!keyX(ÿÿÿ%!klen^ÿÿÿ&!wsbÿÿÿ1namedR!&!ws1namej!%!klen1namen!%!key |
|---|
| 28 | GOOD 1231282273 <(ÿÿÿÿÿÿ!foobarP!bar!foobar"!bar&((ÿÿÿ,<24(ÿÿÿ:ÿÿÿ<<init@2Finitinitinit!parrotinitDR!OPTabletestHdtesttesttest!parrotÿÿÿÿtestinitNFdinitinitinit!parrotÿÿÿÿinitPR!OPTableV!OPTable%!keyX(ÿÿÿ%!klen^ÿÿÿ&!wsbÿÿÿ1namedR!&!ws1namej!%!klen1namen!%!key |
|---|
| 29 | GOOD 1231282274 <(ÿÿÿÿÿÿ!barP!foobar!bar"!foobar&((ÿÿÿ,<24(ÿÿÿ:ÿÿÿ<<init@2Finitinitinit!parrotinitDR!OPTabletestHdtesttesttest!parrotÿÿÿÿtestinitNFdinitinitinit!parrotÿÿÿÿinitPR!OPTableV!OPTable%!keyX(ÿÿÿ%!klen^ÿÿÿ&!wsbÿÿÿ1namedR!&!ws1namej!%!klen1namen!%!key |
|---|
| 30 | GOOD 1231282275 <(ÿÿÿÿÿÿ!barP!foobar!bar"!foobar&((ÿÿÿ,<24(ÿÿÿ:ÿÿÿ<<init@2Finitinitinit!parrotinitDR!OPTabletestHdtesttesttest!parrotÿÿÿÿtestinitNFdinitinitinit!parrotÿÿÿÿinitPR!OPTableV!OPTable%!keyX(ÿÿÿ%!klen^ÿÿÿ&!wsbÿÿÿ1namedR!&!ws1namej!%!klen1namen!%!key |
|---|
| 31 | GOOD 1231282277 <(ÿÿÿÿÿÿ!barP!foobar!bar"!foobar&((ÿÿÿ,<24(ÿÿÿ:ÿÿÿ<<init@2Finitinitinit!parrotinitDR!OPTableinitHFdinitinitinit!parrotÿÿÿÿinittestNdtesttesttest!parrotÿÿÿÿtestPR!OPTableV!OPTable%!keyX(ÿÿÿ%!klen^ÿÿÿ&!wsbÿÿÿ1namedR!&!ws1namej!%!klen1namen!%!key |
|---|
| 32 | GOOD 1231282278 <(ÿÿÿÿÿÿ!foobarP!bar!foobar"!bar&((ÿÿÿ,<24(ÿÿÿ:ÿÿÿ<<init@2Finitinitinit!parrotinitDR!OPTabletestHdtesttesttest!parrotÿÿÿÿtestinitNFdinitinitinit!parrotÿÿÿÿinitPR!OPTableV!OPTable%!keyX(ÿÿÿ%!klen^ÿÿÿ&!wsbÿÿÿ1namedR!&!ws1namej!%!klen1namen!%!key |
|---|
| 33 | GOOD 1231282279 <(ÿÿÿÿÿÿ!foobarP!bar!foobar"!bar&((ÿÿÿ,<24(ÿÿÿ:ÿÿÿ<<init@2Finitinitinit!parrotinitDR!OPTabletestHdtesttesttest!parrotÿÿÿÿtestinitNFdinitinitinit!parrotÿÿÿÿinitPR!OPTableV!OPTable%!keyX(ÿÿÿ%!klen^ÿÿÿ&!wsbÿÿÿ1namedR!&!ws1namej!%!klen1namen!%!key |
|---|
| 34 | GOOD 1231282280 <(ÿÿÿÿÿÿ!barP!foobar!bar"!foobar&((ÿÿÿ,<24(ÿÿÿ:ÿÿÿ<<init@2Finitinitinit!parrotinitDR!OPTabletestHdtesttesttest!parrotÿÿÿÿtestinitNFdinitinitinit!parrotÿÿÿÿinitPR!OPTableV!OPTable%!keyX(ÿÿÿ%!klen^ÿÿÿ&!wsbÿÿÿ1namedR!&!ws1namej!%!klen1namen!%!key |
|---|
| 35 | GOOD 1231282281 <(ÿÿÿÿÿÿ!barP!foobar!bar"!foobar&((ÿÿÿ,<24(ÿÿÿ:ÿÿÿ<<init@2Finitinitinit!parrotinitDR!OPTabletestHdtesttesttest!parrotÿÿÿÿtestinitNFdinitinitinit!parrotÿÿÿÿinitPR!OPTableV!OPTable%!keyX(ÿÿÿ%!klen^ÿÿÿ&!wsbÿÿÿ1namedR!&!ws1namej!%!klen1namen!%!key |
|---|
| 36 | GOOD 1231282282 <(ÿÿÿÿÿÿ!barP!foobar!bar"!foobar&((ÿÿÿ,<24(ÿÿÿ:ÿÿÿ<<init@2Finitinitinit!parrotinitDR!OPTableinitHFdinitinitinit!parrotÿÿÿÿinittestNdtesttesttest!parrotÿÿÿÿtestPR!OPTableV!OPTable%!keyX(ÿÿÿ%!klen^ÿÿÿ&!wsbÿÿÿ1namedR!&!ws1namej!%!klen1namen!%!key |
|---|
| 37 | GOOD 1231282283 <(ÿÿÿÿÿÿ!barP!foobar!bar"!foobar&((ÿÿÿ,<24(ÿÿÿ:ÿÿÿ<<init@2Finitinitinit!parrotinitDR!OPTabletestHdtesttesttest!parrotÿÿÿÿtestinitNFdinitinitinit!parrotÿÿÿÿinitPR!OPTableV!OPTable%!keyX(ÿÿÿ%!klen^ÿÿÿ&!wsbÿÿÿ1namedR!&!ws1namej!%!klen1namen!%!key |
|---|
| 38 | GOOD 1231282284 <(ÿÿÿÿÿÿ!foobarP!bar!foobar"!bar&((ÿÿÿ,<24(ÿÿÿ:ÿÿÿ<<init@2Finitinitinit!parrotinitDR!OPTabletestHdtesttesttest!parrotÿÿÿÿtestinitNFdinitinitinit!parrotÿÿÿÿinitPR!OPTableV!OPTable%!keyX(ÿÿÿ%!klen^ÿÿÿ&!wsbÿÿÿ1namedR!&!ws1namej!%!klen1namen!%!key |
|---|
| 39 | GOOD 1231282285 <(ÿÿÿÿÿÿ!barP!foobar!bar"!foobar&((ÿÿÿ,<24(ÿÿÿ:ÿÿÿ<<init@2Finitinitinit!parrotinitDR!OPTabletestHdtesttesttest!parrotÿÿÿÿtestinitNFdinitinitinit!parrotÿÿÿÿinitPR!OPTableV!OPTable%!keyX(ÿÿÿ%!klen^ÿÿÿ&!wsbÿÿÿ1namedR!&!ws1namej!%!klen1namen!%!key |
|---|
| 40 | GOOD 1231282286 <(ÿÿÿÿÿÿ!barP!foobar!bar"!foobar&((ÿÿÿ,<24(ÿÿÿ:ÿÿÿ<<init@2Finitinitinit!parrotinitDR!OPTabletestHdtesttesttest!parrotÿÿÿÿtestinitNFdinitinitinit!parrotÿÿÿÿinitPR!OPTableV!OPTable%!keyX(ÿÿÿ%!klen^ÿÿÿ&!wsbÿÿÿ1namedR!&!ws1namej!%!klen1namen!%!key |
|---|
| 41 | BAD 1231282287 <(ÿÿÿÿÿÿ!barP!foobar!bar"!foobar&((ÿÿÿ,<24(ÿÿÿ:ÿÿÿ<<init@2Finitinitinit!parrotinitDR!OPTableinitHFdinitinitinit!parrotÿÿÿÿinittestNdtesttesttest!parrotÿÿÿÿtestPR!OPTableV!OPTable&!wsX(ÿÿÿ%!key^ÿÿÿ%!klenbÿÿÿ1namedR!%!klen1namej!%!key1namen!&!ws |
|---|
| 42 | GOOD 1231282288 <(ÿÿÿÿÿÿ!barP!foobar!bar"!foobar&((ÿÿÿ,<24(ÿÿÿ:ÿÿÿ<<init@2Finitinitinit!parrotinitDR!OPTableinitHFdinitinitinit!parrotÿÿÿÿinittestNdtesttesttest!parrotÿÿÿÿtestPR!OPTableV!OPTable%!keyX(ÿÿÿ%!klen^ÿÿÿ&!wsbÿÿÿ1namedR!&!ws1namej!%!klen1namen!%!key |
|---|
| 43 | GOOD 1231282289 <(ÿÿÿÿÿÿ!foobarP!bar!foobar"!bar&((ÿÿÿ,<24(ÿÿÿ:ÿÿÿ<<init@2Finitinitinit!parrotinitDR!OPTabletestHdtesttesttest!parrotÿÿÿÿtestinitNFdinitinitinit!parrotÿÿÿÿinitPR!OPTableV!OPTable%!keyX(ÿÿÿ%!klen^ÿÿÿ&!wsbÿÿÿ1namedR!&!ws1namej!%!klen1namen!%!key |
|---|
| 44 | GOOD 1231282290 <(ÿÿÿÿÿÿ!barP!foobar!bar"!foobar&((ÿÿÿ,<24(ÿÿÿ:ÿÿÿ<<init@2Finitinitinit!parrotinitDR!OPTabletestHdtesttesttest!parrotÿÿÿÿtestinitNFdinitinitinit!parrotÿÿÿÿinitPR!OPTableV!OPTable%!keyX(ÿÿÿ%!klen^ÿÿÿ&!wsbÿÿÿ1namedR!&!ws1namej!%!klen1namen!%!key |
|---|
| 45 | GOOD 1231282291 <(ÿÿÿÿÿÿ!barP!foobar!bar"!foobar&((ÿÿÿ,<24(ÿÿÿ:ÿÿÿ<<init@2Finitinitinit!parrotinitDR!OPTabletestHdtesttesttest!parrotÿÿÿÿtestinitNFdinitinitinit!parrotÿÿÿÿinitPR!OPTableV!OPTable%!keyX(ÿÿÿ%!klen^ÿÿÿ&!wsbÿÿÿ1namedR!&!ws1namej!%!klen1namen!%!key |
|---|
| 46 | BAD 1231282292 <(ÿÿÿÿÿÿ!barP!foobar!bar"!foobar&((ÿÿÿ,<24(ÿÿÿ:ÿÿÿ<<init@2Finitinitinit!parrotinitDR!OPTabletestHdtesttesttest!parrotÿÿÿÿtestinitNFdinitinitinit!parrotÿÿÿÿinitPR!OPTableV!OPTable%!klenX(ÿÿÿ&!ws^ÿÿÿ%!keybÿÿÿ1namedR!%!key1namej!&!ws1namen!%!klen |
|---|
| 47 | GOOD 1231282293 <(ÿÿÿÿÿÿ!barP!foobar!bar"!foobar&((ÿÿÿ,<24(ÿÿÿ:ÿÿÿ<<init@2Finitinitinit!parrotinitDR!OPTableinitHFdinitinitinit!parrotÿÿÿÿinittestNdtesttesttest!parrotÿÿÿÿtestPR!OPTableV!OPTable%!keyX(ÿÿÿ%!klen^ÿÿÿ&!wsbÿÿÿ1namedR!&!ws1namej!%!klen1namen!%!key |
|---|
| 48 | GOOD 1231282294 <(ÿÿÿÿÿÿ!foobarP!bar!foobar"!bar&((ÿÿÿ,<24(ÿÿÿ:ÿÿÿ<<init@2Finitinitinit!parrotinitDR!OPTabletestHdtesttesttest!parrotÿÿÿÿtestinitNFdinitinitinit!parrotÿÿÿÿinitPR!OPTableV!OPTable%!keyX(ÿÿÿ%!klen^ÿÿÿ&!wsbÿÿÿ1namedR!&!ws1namej!%!klen1namen!%!key |
|---|
| 49 | GOOD 1231282295 <(ÿÿÿÿÿÿ!foobarP!bar!foobar"!bar&((ÿÿÿ,<24(ÿÿÿ:ÿÿÿ<<init@2Finitinitinit!parrotinitDR!OPTabletestHdtesttesttest!parrotÿÿÿÿtestinitNFdinitinitinit!parrotÿÿÿÿinitPR!OPTableV!OPTable%!keyX(ÿÿÿ%!klen^ÿÿÿ&!wsbÿÿÿ1namedR!&!ws1namej!%!klen1namen!%!key |
|---|
| 50 | GOOD 1231282296 <(ÿÿÿÿÿÿ!barP!foobar!bar"!foobar&((ÿÿÿ,<24(ÿÿÿ:ÿÿÿ<<init@2Finitinitinit!parrotinitDR!OPTabletestHdtesttesttest!parrotÿÿÿÿtestinitNFdinitinitinit!parrotÿÿÿÿinitPR!OPTableV!OPTable%!keyX(ÿÿÿ%!klen^ÿÿÿ&!wsbÿÿÿ1namedR!&!ws1namej!%!klen1namen!%!key |
|---|
| 51 | GOOD 1231282297 <(ÿÿÿÿÿÿ!barP!foobar!bar"!foobar&((ÿÿÿ,<24(ÿÿÿ:ÿÿÿ<<init@2Finitinitinit!parrotinitDR!OPTabletestHdtesttesttest!parrotÿÿÿÿtestinitNFdinitinitinit!parrotÿÿÿÿinitPR!OPTableV!OPTable%!keyX(ÿÿÿ%!klen^ÿÿÿ&!wsbÿÿÿ1namedR!&!ws1namej!%!klen1namen!%!key |
|---|
| 52 | GOOD 1231282298 <(ÿÿÿÿÿÿ!barP!foobar!bar"!foobar&((ÿÿÿ,<24(ÿÿÿ:ÿÿÿ<<init@2Finitinitinit!parrotinitDR!OPTableinitHFdinitinitinit!parrotÿÿÿÿinittestNdtesttesttest!parrotÿÿÿÿtestPR!OPTableV!OPTable%!keyX(ÿÿÿ%!klen^ÿÿÿ&!wsbÿÿÿ1namedR!&!ws1namej!%!klen1namen!%!key |
|---|
| 53 | GOOD 1231282299 <(ÿÿÿÿÿÿ!barP!foobar!bar"!foobar&((ÿÿÿ,<24(ÿÿÿ:ÿÿÿ<<init@2Finitinitinit!parrotinitDR!OPTabletestHdtesttesttest!parrotÿÿÿÿtestinitNFdinitinitinit!parrotÿÿÿÿinitPR!OPTableV!OPTable%!keyX(ÿÿÿ%!klen^ÿÿÿ&!wsbÿÿÿ1namedR!&!ws1namej!%!klen1namen!%!key |
|---|
| 54 | GOOD 1231282301 <(ÿÿÿÿÿÿ!barP!foobar!bar"!foobar&((ÿÿÿ,<24(ÿÿÿ:ÿÿÿ<<init@2Finitinitinit!parrotinitDR!OPTabletestHdtesttesttest!parrotÿÿÿÿtestinitNFdinitinitinit!parrotÿÿÿÿinitPR!OPTableV!OPTable%!keyX(ÿÿÿ%!klen^ÿÿÿ&!wsbÿÿÿ1namedR!&!ws1namej!%!klen1namen!%!key |
|---|
| 55 | GOOD 1231282302 <(ÿÿÿÿÿÿ!barP!foobar!bar"!foobar&((ÿÿÿ,<24(ÿÿÿ:ÿÿÿ<<init@2Finitinitinit!parrotinitDR!OPTabletestHdtesttesttest!parrotÿÿÿÿtestinitNFdinitinitinit!parrotÿÿÿÿinitPR!OPTableV!OPTable%!keyX(ÿÿÿ%!klen^ÿÿÿ&!wsbÿÿÿ1namedR!&!ws1namej!%!klen1namen!%!key |
|---|
| 56 | ^----------------------------------------------------------------------------------^ |
|---|
| 57 | For comparison and clarity, here are only the 3 'BAD' lines |
|---|
| 58 | BAD 1231282271 <(ÿÿÿÿÿÿ!barP!foobar!bar"!foobar&((ÿÿÿ,<24(ÿÿÿ:ÿÿÿ<<init@2Finitinitinit!parrotinitDR!OPTableinitHFdinitinitinit!parrotÿÿÿÿinittestNdtesttesttest!parrotÿÿÿÿtestPR!OPTableV!OPTable&!wsX(ÿÿÿ%!key^ÿÿÿ%!klenbÿÿÿ1namedR!%!klen1namej!%!key1namen!&!ws |
|---|
| 59 | BAD 1231282287 <(ÿÿÿÿÿÿ!barP!foobar!bar"!foobar&((ÿÿÿ,<24(ÿÿÿ:ÿÿÿ<<init@2Finitinitinit!parrotinitDR!OPTableinitHFdinitinitinit!parrotÿÿÿÿinittestNdtesttesttest!parrotÿÿÿÿtestPR!OPTableV!OPTable&!wsX(ÿÿÿ%!key^ÿÿÿ%!klenbÿÿÿ1namedR!%!klen1namej!%!key1namen!&!ws |
|---|
| 60 | BAD 1231282292 <(ÿÿÿÿÿÿ!barP!foobar!bar"!foobar&((ÿÿÿ,<24(ÿÿÿ:ÿÿÿ<<init@2Finitinitinit!parrotinitDR!OPTabletestHdtesttesttest!parrotÿÿÿÿtestinitNFdinitinitinit!parrotÿÿÿÿinitPR!OPTableV!OPTable%!klenX(ÿÿÿ&!ws^ÿÿÿ%!keybÿÿÿ1namedR!%!key1namej!&!ws1namen!%!klen |
|---|
| 61 | |
|---|
| 62 | I have no idea whether it is relevant or not, but it seems that all the 'GOOD' |
|---|
| 63 | lines end up in a very similar fashion. I hope this helps. |
|---|
| 64 | |
|---|
| 65 | G. |
|---|