On Sat, May 28, 2011 at 11:47:16AM +0100, Alex Bligh wrote: > Wouter, > > --On 28 May 2011 12:12:14 +0200 Wouter Verhelst <[email protected]> wrote: > > > What about a hash table instead? There's a GHashTable in libglib-2.0, > > which we're already using. > > That looks promising. > > > That would also allow reusing the original > > handle number, which would make it slightly easier to match against > > what's in the transaction log. > > That won't work. Consider the original sequence > Request Reply > H1 > H2 > H2 > H1 > H1 > H1 > > where H1 gets reused. I could (in fact probably would) replay this as > Request Reply > H1 > H2 > H1 > H2 > H1 > H1
Point; hadn't thought of that. > in which case there are 2 H1s in flight, and I won't be able to match > up the replies. > > I could however use (e.g.) the seek offset as the handle, and store > the original handle. There's nothing to say that the seek offset won't be duplicated, either. Probably best to create our own handles, indeed. -- The volume of a pizza of thickness a and radius z can be described by the following formula: pi zz a ------------------------------------------------------------------------------ vRanger cuts backup time in half-while increasing security. With the market-leading solution for virtual backup and recovery, you get blazing-fast, flexible, and affordable data protection. Download your free trial now. http://p.sf.net/sfu/quest-d2dcopy1 _______________________________________________ Nbd-general mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/nbd-general
