On Thu, Sep 07, 2000 at 05:13:25PM -0000, jimb@tigris.org wrote:
> User: jimb
> Date: 00/09/07 10:13:25
>
> Modified: subversion/include svn_fs.h
> Log:
> Reasonably complete first cut at filesystem interface. Includes
> reading and writing, with transactions. Not included yet: delta
> computation, non-historical properties.
I don't see a mechanism in there where I can save a transaction off to the
side, to be picked up later by a different process or thread.
Hmm. And I recall you posted a question about "how long is 'long'?". Not
gonna go find it. Basically, I'd like to open a transaction, process some
operations (that occur over multiple HTTP requests; therefore, over multiple
processes/threads), and then commit/abort the transaction.
The operations would look something like:
svn_fs_new
svn_fs_open
svn_fs_begin_txn
persistable_id = svn_fs_persist_txn
svn_fs_close
{
svn_fs_new
svn_fs_open
svn_fs_restore_txn(persistable_id)
... ops ...
svn_fs_close
} repeat
svn_fs_new
svn_fs_open
svn_fs_restore_txn(persistable_id)
svn_fs_commit_txn
svn_fs_close
The sequence will be serialized, but will occur across multiple
threads/processes. As a result, the transaction ID needs to be an "int" oor
some kind, or a blob of bytes, either of which I can persist to a file.
Cheers,
-g
--
Greg Stein, http://www.lyra.org/
Received on Sat Oct 21 14:36:07 2006