View Issue Details

IDProjectCategoryView StatusLast Update
0000343LDMud 3.3Runtimepublic2005-05-15 13:02
ReporterGnomi Assigned Tolars 
PrioritynormalSeveritymajorReproducibilityalways
Status closedResolutionfixed 
Platformi686OSDebian GNU/LinuxOS Version3.0
Fixed in Version3.3 
Summary0000343: Garbage collection leaks object name
DescriptionHi!

This may be related to 0000099, but this time it is reproducible. Calling garbage_collection leaks the object name of a destructed object, which then will be collected from the next garbage collection. I just logged in and called garbage_collection("filename") twice and this is the result:

2005.01.14 13:18:35 --- Garbage Collection ---
2005.01.14 13:18:35 GC pass 1: Freed 2 objects.
clearing M_REF in chunk 10280180, end 1428018c
clearing M_REF in chunk 08234000, end 0824000c
Freeing destructed object 'secure/obj/login#13'
tabled string 132ec648 'zlpc garbage_collection("/save/GC33-11")' was left unreferenced, freeing now.
scanning chunk 10280180, end 1428018c for unref'd blocks
scanning chunk 08234000, end 0824000c for unref'd blocks
2005.01.14 13:18:36 GC freed 1 destructed objects.

2005.01.14 13:18:38 --- Garbage Collection ---
2005.01.14 13:18:38 GC pass 1: Freed 1 objects.
clearing M_REF in chunk 10280180, end 1428018c
clearing M_REF in chunk 08234000, end 0824000c
scanning chunk 10280180, end 1428018c for unref'd blocks
freeing small block 0x132a44bc (user 0x132a44c4) simulate.c 2087
  By object: secure/master
  By program: secure/master.c (/secure/master/connections.inc) line:31
132a44d8: 00 00 00 00 02 00 00 00 20 7a 2d 13 0a 00 00 60 ........ z-....`
132a44e8: b6 a4 89 bd d4 f4 2f 13 3d 00 00 ¶¤.½Ôô/.=..

freeing small block 0x132d7a04 (user 0x132d7a0c) simulate.c 2087
  By object: secure/master
  By program: secure/master.c (/secure/master/connections.inc) line:31
132d7a20: 13 00 00 00 fd 96 73 65 63 75 72 65 2f 6f 62 6a ....ý.secure/obj
132d7a30: 2f 6c 6f 67 69 6e 23 31 33 00 2d 13 0a 00 00 30 /login#13.-....0
132d7a40: 30 58 2a fc 18 1d 99 08 01 00 00 0X*ü.......

scanning chunk 08234000, end 0824000c for unref'd blocks
2 small blocks freed
2005.01.14 13:18:39 GC freed 0 destructed objects.

Greetings,
Gnomi
TagsNo tags attached.

Relationships

related to 0000099 closedlars Destructed objects leak their program name 

Activities

lars

2005-01-15 01:26

reporter   ~0000301

The GC didn't clear out the string references for the names of the destructed objects (those which survived the cleanup due to lingering references, which is a chapter by itself), which means that when the object was finally deallocated, the string was left hanging.

Corrected in 3.3.656.

Issue History

Date Modified Username Field Change
2005-01-14 06:30 Gnomi New Issue
2005-01-15 01:26 lars Status new => resolved
2005-01-15 01:26 lars Fixed in Version => 3.3
2005-01-15 01:26 lars Resolution open => fixed
2005-01-15 01:26 lars Assigned To => lars
2005-01-15 01:26 lars Note Added: 0000301
2005-01-15 01:29 lars Relationship added related to 0000099
2005-05-15 13:02 lars Status resolved => closed