Thanks for the great video. One clarification, at 26.12 you mentioned strict 2pl which is kind of a lesser version of strong strict pl...you said "exclusive" locks can be released but not read lock before transaction commit. Shouldn't it be the other way around? The other transaction should not be allowed to see dirty read and if that can be achieved db does not need to worry about cascading abort.
I think you are right. In wikipedia of 2PL it says "To comply with the S2PL protocol, a transaction needs to comply with 2PL, and release its write (exclusive) locks only after it has ended, i.e., being either committed or aborted. On the other hand, read (shared) locks are released regularly during phase 2."
best db courses ever
Thanks for the great video. One clarification, at 26.12 you mentioned strict 2pl which is kind of a lesser version of strong strict pl...you said "exclusive" locks can be released but not read lock before transaction commit. Shouldn't it be the other way around? The other transaction should not be allowed to see dirty read and if that can be achieved db does not need to worry about cascading abort.
I think you are right. In wikipedia of 2PL it says "To comply with the S2PL protocol, a transaction needs to comply with 2PL, and release its write (exclusive) locks only after it has ended, i.e., being either committed or aborted. On the other hand, read (shared) locks are released regularly during phase 2."
Are there several papers( or books ) dealing with this subject ? Which ones ? Is it that specific DBs invent these ?
A good reference is DDIA. You can also read the original PDF of 2PL