in Unknown Category
6,813 views
6 votes
6 votes
Consider the following schedule:

$S: r_1(A), w_2(A), Commit_2, w_1(A),w_3(A), Commit_3, Commit_1$

Which of the following is true?
a. Schedule is view serializable schedule and strict recoverable schedule
b. Schedule is non serializable schedule and strict recoverable schedule
c. Schedule is non serializable schedule and not strict recoverable schedule
d. Schedule is serializable schedule and not strict recoverable schedule

What is the answer? Also I know what is "strict schedule" and "recoverable schedule", But then what it means by "strict recoverable"?
in Unknown Category
6.8k views

1 comment

strict recoverable means if their is two transaction let t1,t2....let t1 perform write operation w1(a)

after t2 perform write operation before t1 commit it not be strict recoverable ..
0
0

2 Answers

10 votes
10 votes
Best answer

First of all it is a view serialisable schedule as it  has view equal serial schedule T1 : T2 : T3 which satisfies the initial and updated reads and final write on variable A which is required for view serialisability.

So now coming to strict recoverability.A schedule is said to be strict recoverable iff :

If   say Ti   writes before Tj  writes or reads, then Tj must read or write after Ti  commits or aborts then only the schedule will be strict recoverable.

Now we  can see there is write - write pair done by transactions T1  followed by T3  which is violating the above mentioned condition as T3  is supposed to do write operation only after T1 commits which is not happening in the given schedule..

Hence the given schedule is serialisable but not strict recoverable.Hence the correct option is D) 

selected by

11 Comments

good. Though I guessed the same definition of strict recoverability, am just curious from which book this definition came? Korth? Navathe? or Gherke? Didnt came across it earlier!!!
0
0
edited by

well....this definition of strict recoverable sounds similar to that of cascadeless:

A cascadeless schedule is one where, for each pair of transactions Ti and Tj such that Tj reads a data item previously written by Ti , the commit operation of Ti appears before the read operation of Tj .

The only difference is that above we deal with only commit of Ti and read of Tj while your definition of Strict Recoverable deals with commit and abort of Ti and read and write of Tj. However if we take recoverability and cascadeless into consideration and after giving some thought I felt both:

  • abort of Ti sounds obvious, that is even if above definition of cascadelessness does not explicitly specifies that abort of Ti should appear before read of Tj, it is assumed so when it says commit (or abort) of Ti should appear before read of Tj 
  • write of Tj does not makes much sense in this context (as if it is write after write, its blind write and recoverability makes sense only when there is a read after write)

So, is strict receverable just another name of cascadeless?

0
0
Any comment friend?
0
0
Strict recoverable is just an extension to cascadeless schedule. Where both read and write of a variable by a later transaction is performed only after commit of earlier transaction which has done write
2
2
edited by
Still some doubt.
0
0
edited by
This definition of "strict recoverable" schedule sounds exactly same as definition of "strict" schdeuld as given in Korth or Elmasri. Is it supposed to be so? Or is it just that it is recoverable which is also strict thats why "strict recoverable" as definition of "recoverable" is less constraining than "strict", and above definition of "strict recoverable" is exacly same as "strict". And again "strict" schedule is always "recoverable".
0
0

unable to understand :- "view equal serial schedule T1 : T2 : T3" need more explanation. As final write is done by T1 commit. so View view equivalent serial schedule :T1 only. ???

0
0

As final write is done by T1 commit.

final write on A is by T$_3$,  but not T$_1$ ( note that commit operation is not deleing with the resource A )

0
0

@Shaik Masthan  Is this correct? As initial read is 100 (done by T1) and final write is 400 (done by T3)

T1:T2:T3

0
0
YES,it is correct !
0
0

Source: https://en.wikipedia.org/wiki/Schedule_(computer_science)#Strict

A schedule is strict - has the strictness property - if for any two transactions T1, T2, if a write operation of T1 precedes a conflicting operation of T2 (either read or write), then the commit or abort event of T1 also precedes that conflicting operation of T2.

Any strict schedule is cascade-less, but not the converse. Strictness allows efficient recovery of databases from failure.

0
0
7 votes
7 votes

Strict recoverable means when write to read /write sequence present in two different transaction then first transaction which write is commit then only another transaction read/ write it .

Here it is not strict recoverable since Transaction1 write(A) is not commit and Transaction3 write(A) is done so not strict recoverable.

Schedule is not conflict serializable and thier is blind write so yes view seriablizable ( Serializable).

D is answer.

3 Comments

if it's not CSS & if blind write is present then it's view serializable?? this is any rule??
1
1
^ not necessarily.

But if It is not CSS and there is no BLIND WRITE, then definitely it is not view-serializable.
1
1
Hii, can you please tell me how it different from strict schedule
0
0