On Tue, Sep 26, 2017 at 9:04 AM, Vaishnavi Prabakaran <vaishnaviprabakaran@gmail.com> wrote: > Yes, I did realize on further reading the patch and what led to the > confusion is that in the 3rd patch , updated documentation(copied below) > still says that reading from a descriptor opened with INV_WRITE is possible. > I think we need some correction here to reflect the modified code behavior. > > + or other transactions. Reading from a descriptor opened with > + <symbol>INV_WRITE</symbol> or <symbol>INV_READ</> <literal>|</> > + <symbol>INV_WRITE</symbol> returns data that reflects all writes of > + other committed transactions as well as writes of the current > + transaction.
Indeed, you are right. There is an error here. This should read as "INV_READ | INV_WRITE" only. Using "INV_WRITE" implies that reads cannot happen.
Thanks for correcting.
I moved the cf entry to "ready for committer", and though my vote is for keeping the existing API behavior with write implying read, I let the committer decide whether the following behavior change is Ok or not.
"Reading from a large-object descriptor opened with INV_WRITE is NOT possible"