<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">this is what the source code of Beaker says:<div><br class="webkit-block-placeholder"></div><div><div> # datastore does its own locking (or does it? who knows). override our</div><div> # own stuff</div><div> def do_acquire_read_lock(self): pass</div><div> def do_release_read_lock(self): pass</div><div> def do_acquire_write_lock(self, wait = True): return True</div><div> def do_release_write_lock(self): pass</div><div><br class="webkit-block-placeholder"></div><div>I believe the datastore does not do its own locking. So Beaker does not lock sessions.</div><div><br class="webkit-block-placeholder"></div><div>Massimo</div><div><br class="webkit-block-placeholder"></div><div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: 12.0px Helvetica">Cookie-only sessions to remove the need for a db or file backend (ideal for clustered systems)</font></div></div><div><br><div><div>On May 12, 2008, at 12:30 PM, Kumar McMillan wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">On Mon, May 12, 2008 at 12:17 PM, Massimo Di Pierro</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><<a href="mailto:mdipierro@cs.depaul.edu">mdipierro@cs.depaul.edu</a>> wrote:</div> <blockquote type="cite"><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">Does anybody have experience with session locking on appengine?</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><span class="Apple-converted-space"> </span>The appengine does not have an update....where command so how do people</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">lock sessions stored in bigtables?</div> </blockquote><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><br></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">you could poke around the trunk of Beaker:</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><a href="https://www.knowledgetap.com/hg/beaker/archive/tip.tar.gz">https://www.knowledgetap.com/hg/beaker/archive/tip.tar.gz</a> (beaker.ext.google)</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><a href="http://wiki.pylonshq.com/display/beaker/Home">http://wiki.pylonshq.com/display/beaker/Home</a></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><br></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">Beaker is a session/cache lib for Pylons and support for appengine was</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">added recently.</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">_______________________________________________</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">Chicago mailing list</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><a href="mailto:Chicago@python.org">Chicago@python.org</a></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><a href="http://mail.python.org/mailman/listinfo/chicago">http://mail.python.org/mailman/listinfo/chicago</a></div> </blockquote></div><br></div></div></body></html>