[sldev] Certified HTTP (and Escrow!) Project Update Jan 16

Ryan Williams (Which) rdw at lindenlab.com
Wed Jan 16 15:45:33 PST 2008


The escrow project rolls along with new (well, revitalized and
completed) group membership transaction tests thanks to Chet.

We refactored the oplog.persist method to be more readable (IMO, of
course).  Previously the persist method would insert a DBMaker object as
the first argument of the called method.  This was problematic because
it required wrappers around builtins to discard the DBMaker.  E.g.:

op.persist(lambda _db: random.random())

The refactored code leaves the method arguments untouched, and provides
the inner_handle method as an alternative.  If the caller wants to pass
in a db handle, it uses inner_handle property, which the callee can use
to get a db handle on demand:

def foo(handle, arg):
  handle().cursor().execute(arg)
op.persist(foo, op.inner_handle, "select * from sample")

I gave a Linden U about the Escrow to a bunch of engineers this morning,
and got lots of great questions and feedback.  An additional use case
that arose is user-initiated cancellation of a transaction (while still
in the gather phase).  This may not be a "first-gen" feature, though,
since you'd really only be able to do that if a transaction was taking a
really long time to gather, something that should hopefully be a rare
occurrence.

For more information, check out our project page:

https://wiki.secondlife.com/wiki/Certified_HTTP_Project

Or sign up for the mailing list (or just read the archives):

https://lists.secondlife.com/cgi-bin/mailman/listinfo/chttpdev

-RYaN



More information about the SLDev mailing list