C. Michael Pilato wrote on Wed, Sep 21, 2011 at 12:13:17 -0400: > On 09/21/2011 11:50 AM, C. Michael Pilato wrote: > > Well, BDB being a real database, we can do this sort of backfill operation > > without attending to any higher-level Subversion concepts such as revisions > > at all. A cursor walk through the `nodes' table should suffice: > > > > for key, value in nodes_table.rows() > > successor_id = key > > node_rev = parse_node_revision_skel(value) > > successors_table.add_row(node_rev.predecessor_id, successor_id) > > I should point out, though, that this approach is definitely *not* to be > used on a live repository. >
... because new entries might be inserted to NODES by concurrent writers, and preventing that requires an exclusive lock that would block concurrent readers and writers for too long? > -- > C. Michael Pilato <cmpil...@collab.net> > CollabNet <> www.collab.net <> Distributed Development On Demand >