Committed Or Not
An ext3-style file system runs in ordered (metadata) journaling mode. An application appends one 4 KB block to an existing file. Three things change: the inode I[v2] (new size, new pointer to data block 5), the data bitmap B[v2] (block 5 now allocated), and the data block Db itself.
The file system issues:
| step | write | status |
|---|---|---|
| 1 | Db to its final home, block 5 |
completed |
| 2 | TxB, I[v2], B[v2] to the journal |
completed |
| 3 | TxE to the journal |
power lost here, never issued |
| 4 | checkpoint I[v2], B[v2] |
not reached |
The machine reboots and journal recovery runs. What does the file system look like?
Sign in to answer questions and track your progress
Sign In