I ma trying to understand the contemporaneous and non-blocking parameters with the help of an example. Please let me know if I am correct.
Assume we have transactions T1, T2, T3 occurring at time stamp = 10.
T1, T2, T3 commit at 30, 40, 50 respectively.
If a query transaction comes at 35:
for contemporaneous: The query reads a version with T1 committed, and keeps T2 and T3 waiting till the read is done.
For non-blocking: The query gets to read only after all 3 transaction T1,T2,T3 are committed at 50.