[elephant-devel] BDB Replication

Yarek Kowalik yarek.kowalik at gmail.com
Tue Jan 6 00:14:42 UTC 2009


I will be investigating this at some point in the next few months, but it's
not on the top of my priority list at the moment.

Yarek

On Mon, Jan 5, 2009 at 1:52 PM, Ian Eslick <eslick at media.mit.edu> wrote:

> What confused me is that the documentation FAQ says that it doesn't
> forward updates to the master and that this is the responsibility of
> the application.  However, it doesn't indicate where update message
> are produced...
>
> If it is simply a matter of forwarding low level messages, then this
> is actually somewhat reasonable to implement.  The communications
> consists of registering a callback function in lisp from the BDB
> library that sends and receives packets to/from the master.
> Alternatively, we could have C functions implement the callbacks and
> socket IO that BDB needs a callback into and thus avoid the chain of
> conversions foreign bytes->lisp bytes->lisp stream->foreign bytes-
>  >network.
>
> The steps would be:
> - Change the way DBs are opened
> - Add some code to start or respond to election events
> - Add the communications support
>   - Socket IO
>   - BDB API callbacks and configuration
>
> I won't be doing this anytime soon, but if someone wants to figure out
> the BDB side of this and particularly the callbacks/comm layer I can
> help integrate it into elephant.
>
> Ian
>
> On Jan 5, 2009, at 4:05 PM, Yarek Kowalik wrote:
>
> > Ian,
> >
> > I think the later is what's supported/implemented by BDB:
> >
> > "Berkeley DB supports replication over multiple systems, enabling
> > applications to scale massively with low latency and provide fault
> > tolerance for high availability solutions. This technique works by
> > having all updates go to a designated master, which distributes
> > changes automatically to a set of replicas ..."
> >
> > http://www.oracle.com/technology/products/berkeley-db/db/index.html
> >
> > I'm not sure at this stage if there are any changes required within
> > Elephant itself as this may just be an "off-the-shelf" capability of
> > the BDB backend.
> >
> > Yarek
> >
> >
> > On Mon, Jan 5, 2009 at 6:19 AM, Ian Eslick <eslick at media.mit.edu>
> > wrote:
> > For kicks I spent a little bit of time thinking about what it would
> > take to make Elephant work with BDB replication.  There is one thing I
> > don't understand, if a client wants to initiate a write transaction on
> > the master, does it have to be a completely application level process
> > (for example, you have the execute-transaction function call run
> > remotely) or can you do this at a lower level where you somehow
> > forward the low level read/write log information from client to server
> > to be committed?
> >
> > Ian
> >
> > _______________________________________________
> > elephant-devel site list
> > elephant-devel at common-lisp.net
> > http://common-lisp.net/mailman/listinfo/elephant-devel
> >
> > _______________________________________________
> > elephant-devel site list
> > elephant-devel at common-lisp.net
> > http://common-lisp.net/mailman/listinfo/elephant-devel
>
>
> _______________________________________________
> elephant-devel site list
> elephant-devel at common-lisp.net
> http://common-lisp.net/mailman/listinfo/elephant-devel
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/elephant-devel/attachments/20090105/bba0cc5e/attachment.html>


More information about the elephant-devel mailing list