hast vs ggate+gmirror sychrnoisation speed

Pete French petefrench at ticketswitch.com
Thu Oct 28 15:24:53 UTC 2010


> In hast_proto_send() we send header and then data. Couldn't it be that
> remote_send and sync threads interfere and their packets are mixed? May be
> some synchronization is needed here?

Interesting - I haven't looked very closely at the code, but I didn't
realise that more than one thread was in communication with the
remote end. If that's true then theres always a possibility for mixed
data if you are sending it in chunks surely ?

> I set sleep(1) in hast_proto_send() between proto_send(header) and
> proto_send(data). The error started to occur frequently.

Where is the potential other write occuring ? I might try wrapping some
locking round the calls to see what happens.

-pete.


More information about the freebsd-stable mailing list