long checkpoints

1 view
Skip to first unread message

Nathan Smith

unread,
Aug 14, 2016, 8:59:00 PM8/14/16
to MOO Talk
hi folks
So I got my crashing problem fixed, turned out to be memory, heh.
Anyway, now I have a rather interesting challenge for you brilliant folks.
Checkpoints. When I first started my moo, they were running at 0, to 1 second max.
Now though they're taking 8 or 9 seconds.
Now I understand db size means its taking longer, but is that actually natural?
8 or 9 seconds seems a bit long to me and it seems to increase by a second once every day or so. ARguably, you could say well, new objects, new players, bigger db, there's your problem.
Still it doesn't ring right with me. I simply wondered if there was some kind of check, task or code I could put in to speed this process up a bit and whether regularity of checkpoints increases time.
For instants:
if a databse checkpoints once every 15 minutes, in the long run would it build up time verses one that checkpoints once an hour.
Thank you for your replies. I am really looking forward to them.

Tim van Dijen

unread,
Aug 15, 2016, 4:37:28 AM8/15/16
to MOO-...@googlegroups.com

Hi Nathan,

There's really nothing you can do about this, I think.

MOO loads your complete database in memory and when a checkpoint is started it dumps everything currently in memory to a .db file.. Faster storage is probably the only thing you can try..

But exactly what is your concern with checkpoints? Does is freeze up your MOO, because that is a setting "UNFORKED_CHECKPOINTS" that can be set in options.h

Tim

Op 15-8-2016 om 02:58 schreef Nathan Smith:
--
You received this message because you are subscribed to the Google Groups "MOO Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to MOO-talk+u...@googlegroups.com.
To post to this group, send email to MOO-...@googlegroups.com.
Visit this group at https://groups.google.com/group/MOO-talk.
For more options, visit https://groups.google.com/d/optout.

Tristan Bussiere

unread,
Aug 15, 2016, 8:43:53 AM8/15/16
to MOO Talk
Hello!

Firstly, it's definitely worth noting that frequency of checkpoints
will not make a difference. Remember, the only thing a checkpoint is
essentially doing (in simplified terms) is writing a copy of the
running database from RAM to a file on the disk.

Some more information is in order before any of us can provide you
with assistance:

1.)  What is your database size? How does it compare to previous sizes
when checkpoint times were shorter?
2.)  Have you attempted to gather metrics before or after a database
dump, possibly with code inserted into #0:checkpoint_started and
#0:checkpoint_finished? It's unlikely this will yield much useful
information, but it doesn't hurt to try.
3.)  Are database checkpoint times consistent? (e.g. you should be
slowly traversing up to a large amount, rather than immediatly jumping
from 0 seconds to 10 or 11, unless, of course, your database is
growing by dozens of megabytes in the span of a few days, which might
be indicative of something requiring attention inside the MOO
anyways.)
4.)  What modifications have you made to your server, if any? (MySQL
extensions, floating point suspends/forks, File I/O, FUP, etc)

If your database is startlingly small and checkpoints are taking that
long, this may be a disk I/O problem. Or I might be reading too much
into the whole thing. Either way, checkpoint times from 10 to 30
seconds aren't abnormal for large MOOs (~300-1024+ MB databases).

Good luck.

Littlefield, Tyler

unread,
Aug 15, 2016, 8:43:53 AM8/15/16
to Tim van Dijen, MOO-...@googlegroups.com
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hello,
I'm replying to Tim's message because I'm not locating the initial in
deleted, but the server should be forking as was already said. Which
means that the server should be creating a separate process, same
exact memory and dumping that database. You should not be seeing that
much of a lag.
Where are you hosted? Are they running on floppy drives or something
and exactly how big is your DB?
I just created 15000 objects, unforked and dumped and while laggy it
wasn't awful. Maybe a second or two? I can't imagine your mud being
more than a hundred thousand objects if you're just getting started;
if so, perhaps you need to rethink some things, because it only gets
worse from here.
>> <mailto:MOO-talk+u...@googlegroups.com>. To post to this
>> group, send email to MOO-...@googlegroups.com
>> <mailto:MOO-...@googlegroups.com>. Visit this group at
> -- You received this message because you are subscribed to the
> Google Groups "MOO Talk" group. To unsubscribe from this group and
> stop receiving emails from it, send an email to
> MOO-talk+u...@googlegroups.com
> <mailto:MOO-talk+u...@googlegroups.com>. To post to this
> group, send email to MOO-...@googlegroups.com
> <mailto:MOO-...@googlegroups.com>. Visit this group at
- --
Take care,
Ty
Twitter: @sorressean
Web: https://tysdomain.com
Pubkey: https://tysdomain.com/files/pubkey.asc
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iQEcBAEBAgAGBQJXsbCJAAoJEAdP60+BYxejN8wH/2CRE2b7ezJmBgtq1FdXm94k
SeI5Ah2twd9M8Bl6csh8U5OFKkGYyQo+uYtBqJcsUdUtloFaBulFU7LA7OX7zQJF
1KI+l1EtLGHAoGLtht/aYZlheynPB0mGZu8Mem3hzCeRVNoJSuE2kS3evYRGA/ce
z+0Zp1gq1AA8XvZiJ68LpFU5KKaqH7rWKOXnmMUVTof1TWJHQR1SI0embNGVPQBI
fAGH5RFJphRh8uzY8td71IquJKUTxEq6TzZVgqZA8iiz743nEifex/r8KXeVYSPS
GuRIik2OT1BnljiWK1ieBrvQjdHfrJYtRKbMHy8ns1dG1yV0/LHIPK18SvauCVw=
=vr3F
-----END PGP SIGNATURE-----
Reply all
Reply to author
Forward
0 new messages