I'm studying concurrency control in DBMS,but I'm confused about Strict 2PL and Rigorous 2PL. They all ensure the schedule of transaction is recoverable and cascadeless.Rigorous 2PL requires all locks to be held until transaction commits or abort,but Strict 2PL only requires exclusive lock to be held until transaction commits or abort.
In my opinion, these two protocols achieve the same result,but Strict 2PL is more efficient because it could release share lock before transaction commits.So why we need Rigorous 2PL since we have a better protocol aka Strict 2PL?
It's been solved . You can found answer in solution