Go to the first, previous, next, last section, table of contents.
Other adminstratively useful tidbits of information about Muq dbfile files:
-
Muq dbfiles are 64-bit throughout on all supported machines, including
Intel/x86.
-
Muq dbfiles are big-endian or little-endian according to the convention
used by the host machine. (This is necessary for rational
memory-mapped file sharing.) Future versions of Muq will automatically
convert between byte orders as needed, but this is not yet implemented.
At present, Muq dbfiles cannot be transported between machines with
different byte sexes.
-
You will eventually be able to mount and dismouht Muq dbfiles in a
server about as freely as you can mount and dismount disk partitions
in unix. This is not yet implemented, however.
-
When the Muq server does backups, all dbfiles are saved at the same
time, and all receive the same generation number.
-
Beyond the above, the Muq server also keeps "logarithmic" backups:
It attempts to as good an approximation as possible to keep the
most recent second, fourth, eighth, sixteenth and so forth backups.
This provides a scattering of older fallback dbs as insurance
against something being clobbered and not missed for weeks, without
filling up the disk with inordinate numbers of backups. If you
don't want logarithmic backups to be kept, set the internal Muq
variable
.muq.logarithmicBackups
to NIL.
-
Once a dbfile receives a numeric
generation number, the Muq server will not touch it again in the course of
normal operations.
(The sole exception being to
delete it when it gets too old, to save disk space.)
You can delete any or all of the numbered backup files at any time
if you like. Just don't clobber the
RUNNING
files if you
care about the current server run, or the CURRENT
files if
you have any ambition to restart from the current point should
the running server crash.
-
The number of consecutive recent backups kept is controlled by the
internal
.muq.consecutiveBackupsToKeep
variable. Six is
a good number; Two or three is risky. If you have effectively
unlimited disk space, feel free to set this value to some
large number like a billion.
-
Muq can work with uncompressed
.db
files, or files compressed
by any of gzip
, lzop
or bzip2
. Muq dbfiles, like
almost all binary database formats, compress very well, typically by a
factor of ten or so -- so keeping inactive dbfiles compressed can save
lots of diskspace.
gzip
is the typical compressio program these days, lzop
is several times faster at the cost of compressing perhaps 30% less,
and bzip2
provides the best compression, but may not work well
with binary files such as Muq uses.
Muq will look for these programs in /bin
, /usr/bin
, and
/usr/local/bin
. If they are elsewhere on your system, you may
setenv
one of the Unix environment variables MUQ_GZIP
,
MUQ_LZOP
or MUQ_BZIP2
to the appropriate path, perhaps
/home/me/bin/gzip
.
To disable use of one (or all) of these programs, setenv
the
corresponding environment variable to the empty string.
-
The interval between backups is controlled by the internal Muq
variable
.muq.millisecsBetweenBackups
. It can be anything from
minutes to years, at your discretion. Once a day (86400000
) is
probably a reasonable choice on a stable production server; Perhaps
once an hour (3600000
) if critical work is being done or
crashes are a problem.
Go to the first, previous, next, last section, table of contents.