[644] in Coldmud discussion meeting
lost objects
daemon@ATHENA.MIT.EDU (Sat Jan 21 12:12:42 1995
)
From: crag@serial.io.com (Crag@JHM)
To: coldstuff@MIT.EDU
Date: Sat, 21 Jan 1995 10:43:05 -0600 (CST)
I didn't finish reading the message this is a reply to because I know what it
is. In the textdump (and maybe binary) reading code object's dirty bit isn't
set so that the cache never writes out more than it can hold on startup.
The best fix is to change object_new to set the dirty bit. This also fixes
the following:
@program $sys.test_create_bug
var o_list, i, n;
for i in [1..1000]
o_list = [create()];
for i in (o_list) {
if (!valid(i)) {
o_list = listdelete(o_list, i);
n = n + 1;
} else {
destroy(i);
}
}
return n;
.
n should be 0 on a working system but is in the hundereds on a 0.12.0 system.
The offending code is in object.c I believe.
My oppologies for not mentioning or posting a fix for this when I knew about it
and the fix (last November I think).
Crag / Robert