[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [Nbd] [PATCH] Only send one reply on oversize writes



On Sat, May 28, 2011 at 11:47:16AM +0100, Alex Bligh wrote:
> Wouter,
> 
> --On 28 May 2011 12:12:14 +0200 Wouter Verhelst <w@...112...> 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



Reply to: