What is the difference between Strict 2Phase Locking and 2Phase Locking?
There are mainly two reasons for adopting Strict 2PL rather than Basic 2PL, explained in [1].


The first reason is about the time when a 2PL scheduler can release some (read/write) lock owned by some transaction on some data item. 
A second reason for the scheduler to keep a transaction’s locks until it
ends, and specifically until after the DM processes the transaction’s Commit or
Abort, is to guarantee a strict execution. Strict executions are recoverable and avoid cascading aborts (ACA).




[1] Chapter 3 "Two Phase Locking" in the Book "Concurrency Control and Recovery in Database Systems"; Page 59. By Bernstein et al., 1987.