[DGD]statedumping

Felix A. Croes felix at dworkin.nl
Wed May 10 23:28:00 CEST 2000


Stephen Schmidt <schmidsj at union.edu> wrote:

>[...]
> Ah, a slightly different question then: What does DGD do if the
> swap file exceeds the maximum size? I don't know. I imagine it
> does something that raises a problem for true perpetuality, but
> what is it?

It stops running, notifying you of the problem.  Of course, you
should have noticed it some time before, and rebooted the mud with
a larger swapfile size limit.


> > Good point altogether.  I was of course making the assumption that the
> > mudlib itself has been written in a decent way to not leave garbage around.
>
> In principle, of course, that should be true; in practice, proving
> that any mudlib complex enough to be interesting actually satisfied
> that assumption is non-trivial. I don't know for sure but I would
> imagine the large majority of publically available mudlibs probably
> have at least some small leaks in them. If you're going to reboot
> the mud every so often anyway, then they wouldn't be noticed; but
> if you went to true perpetuality they'd eventually rear their
> heads and bite.

But that is not the end of it.  In a persistent mud, there will be
ample opportunity to track down these garbage objects, even if
they're not cleaned up automatically.

The strategy followed by many MOOs, as well as the kernel lib for DGD,
is that wizards are responsible for their own objects, with some
(flexible) limit on the amount of objects they can have.  If wizards
have to recycle their garbage before they can create new objects, or
even have to write areas that do such recycling automatically because
they just won't work otherwise, muds will have much less of a garbage
problem.  Quotas also avoid the problem of someone other than the
wizard in question having to decide what is or is not garbage.

On LambdaMOO, quotas have been used successfully to <reduce> the
overall size of the mud.

Regards,
Dworkin

List config page:  http://list.imaginary.com/mailman/listinfo/dgd



More information about the DGD mailing list