Emulator stopping during mnesia writes

Klacke <>
Thu May 11 21:08:10 CEST 2000


On Thu, May 11, 2000 at 01:26:33PM -0500, Scott Lystig Fritchie wrote:
> There's another separate-process hack possible ... inspired by Squid
> and the I/O-Lite (?) guys & their speedy Web server(*).  Have an
> external process open() the file, immediately close it, then report
> back to you.  When you get word back, immediately open it again.
> Hopefully the OS will have everything cached for you and you avoid
> blocking.  This could be especially useful if you're opening with
> O_CREAT.
> 
> In off-hours "wouldn't be fun if I hacked on Z" moments, pondering
> what Z might be, I've thought that AIO (asynchronous I/O) would be a
> nifty thing to add to the VM.  Not enough hours in the day, though.
> :-)


Yeah, I think both ideas are good, we've talked and discussed 
them both here, the first one makes the directory changing operations
happen in a different process which is great. It's a bit of a kludge
though.

The second one with some sort of interface to the aio_ routines
is also interesting. I did some fiddling around with the aio_ 
routines a a couple of months ago. The trouble with the aio_
calls is that they send a signal to the caller upon completion.

Some years ago, we had signal support in the vm, where the 
a driver could install a sig handler, the sig handler wrote
a flag, and the driver was the later invoked by the scheduler.
(It's not possible to do anything interesting with the vm inside
the sighandler) This would be pretty easy and straightforward to
reintroduce (The signal code was ripped out of the vm a few years
ago by somebody ??)

There's also a polling interface to the aio_ routines where
it's supposed to be able to call a function and see if the
operation is finished. I couldn't get that to work though so I 
dropped the whole thing

Well well .... so much to do and so little time ... :-(

/klacke


-- 
Claes Wikstrom                          <>
Bluetail AB                             http://www.bluetail.com





More information about the erlang-questions mailing list