Re: VatTP and Waterken protocols compared
Kevin Reid <[email protected]>
| Newsgroups | gmane.comp.lang.e.general |
|---|---|
| Message-ID | <[email protected]> |
On Sep 19, 2008, at 20:54, Bill Frantz wrote: > Tyler described some of the Waterken protocol in this Friday's > morning meeting. Here are some notes from his description. > > Both the VatTP protocol part of E on Java > <http://www.erights.org/elib/distrib/vattp/index.html>, and the > Waterken protocol <http://waterken.sourceforge.net/> allow vats to > send messages to other vats. There are some significant differences > in their implementation which affect their behavior during > checkpoints and during message flood conditions. > > In VatTP, messages are sent as soon as they are generated. It may fall out of future implementations that messages are sent only after the turn which generates them; in particular, this means that messages from an infinite or crashing turn will never be seen. > Both systems only save persistent state between vat "turns". It is > not clear from the (non)documentation if the vat queue is included > in what is saved by the persistence mechanism. (And I can't > remember that detail.) Persistence is of objects; the vat queue is not exposed as an object; therefore it is not persistent. More specifically than that's-the-way-it-isn't: E has a general object serialization module, and a module for using it for vat persistence (timeMachine). The root of persistence is the table of incoming SturdyRefs; that is, any non-ephemeral SturdyRef created causes its referent to be persisted. (Note that it is possible to abuse this mechanism to add persistence roots and therefore on- revival actions, by simply not publishing the SturdyRef after it's created.) -- Kevin Reid <http://homepage.mac.com/kpreid/>