[Asterisk-Users] "Defragmenting" mailboxes

Ulexus ulexus at mail.lifelabs.net
Sun Oct 26 12:53:58 MST 2003


Don't forget the equally important "host" stamp on the file.  That allows you 
to write two different files at precisely the same time on a shared 
filesystem (e.g., NFS) with no race conditions.

On Tuesday, 21 October, 2003 13:37, Andrew Kohlsmith wrote:
> > There is a C Library function that will return a unique
> > file name. (see man mkstemp)
> > That's the best way to go.  It is generally a
> > bad design to encode any information in a file name.  Better to
> > simply use the file's date/time stamp to order the messages.
>
> I was speaking with tclark on IRC about this this past weekend.
>
> What is wrong with using Maildir/ type interfaces for voicemail?
>
> Maildir is a very straightforward, scalable and distributable way of
> storing things like email (and voicemail).  Each mailbox has this format:
>
> ./
> tmp/
> cur/
> new/
>
> When a new voicemail is created, you mkstemp in tmp/ and create the file.
> Once it's done, you mv it to /new.  When it's listened to or otherwise
> accessed, it's mv'd to cur where it stays until deletion.
>
> So to recap:  create and manipulate in tmp/, move to new/ once done.  When
> no longer new, move to cur/ and leave there.  No funky locking, totally NFS
> safe and very fast, since each voicemail is just a file.
>
> There's no patents or any kind of software encumberances to this technique,
> either.
>
> Regards,
> Andrew
> _______________________________________________
> Asterisk-Users mailing list
> Asterisk-Users at lists.digium.com
> http://lists.digium.com/mailman/listinfo/asterisk-users




More information about the asterisk-users mailing list