**Preliminaries**

a. If you haven’t picked a project (C# or Java) and partner,
p*now*.

b. Visit www.tpc.org and
spend 10 minutes browsing the site to get a fee

c. Think about applying shadowing to the course project. Read Section 6 of Chapter 7.

d. Since this week’s homework is not very time-consuming, this a great time to start working on your project. If you want to get a head start on next week’s reading, read Sections 1-3 of Chapter 6.

**Problems**

For each of the following histories, answer the following:

- List all serial histories that are equivalent to it
- Is it
recoverable? Does it avoid cascading aborts? Is it strict?

For each, if not, why?

1. w_{0}[x,y,z]
c_{0} r_{1}[x] r_{2}[y,z] r_{3}[x,y] w_{2}[z]
c_{2} r_{3}[z] w_{3}[y,z] c_{3} w_{1}[x]
c_{1}

2. w_{0}[x,y,z]
c_{0} r_{1}[x] r_{2}[y,z] r_{3}[y] w_{2}[z]
r_{3}[z] c_{2} w_{3}[y,z] c_{3} w_{1}[x]
c_{1}

(same as (1), except that x is omitted from the first r_{3 }and c_{2}
moved after r_{3}[z])

3. w_{0}[x,y,z]
c_{0} r_{1}[x] r_{2}[y,z] r_{3}[z] w_{2}[z]
r_{3}[y] w_{3}[y] c_{2 }c_{3} w_{1}[x] c_{1
}(same as (2), except that r_{3}[z] and r_{3}[y] are
swapped, z is omitted from w_{3}[y,z], and

c_{2} is moved after w_{3}[y])

4. w_{0}[x,y,z]
c_{0} r_{1}[x] r_{2}[y,z] r_{3}[y] w_{2}[z]
c_{2} w_{3}[y,z] c_{3} w_{1}[x] r_{3}[z]
c_{1
}(same as (2), except that r_{3}[z] follows w_{1}[x])

5. w_{0}[x,y,z]
c_{0} r_{1}[x] r_{2}[y,z] r_{3}[y] w_{2}[z]
r_{3}[z] w_{3}[x,y] c_{3 }c_{2} w_{1}[x]
c_{1}

(same as (1), except that x is omitted from r_{3}, z is replaced by x
in w_{3}, and c_{2 }moved after c_{3})