This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


RE: [Xen-devel] xs transaction

>From: Vincent Hanquez [mailto:vincent@xxxxxxxxxxxxx]
>Sent: 2007年9月11日 19:45
>xenstored is single threaded and the libxs accesses are serialed through
>a mutex which prevent two threads to access the ring at the same time.
>if it was not, you'ld have much more problems than having two
>transactions at the same time.
>xenstored will always complete a process_message function until it try
>to read a new packet. at this point the conn->transaction is back to

Thanks, and I see the point now.

>> Since we're sure that current implementation doesn't handle parallel
>> transactions (though API level allows), I think do_transaction_start
>> should check conn->transaction_list instead of conn->transaction to
>> ensure it.
>how are you sure it doesn't handle parallel transactions ?

My fault actually and it does handle. If multiple transactions are in 
parallel, 1st end will update its changes into global tdb with the rest 
failed (EAGAIN) to caller for retry. :-)


Xen-devel mailing list

<Prev in Thread] Current Thread [Next in Thread>