Using the transaction log you created in Step 1 above, trace its use in a database recovery. Do this in a similar table format (see Table 10.16 in book) by backing out each transaction and resetting the BEFORE and AFTER values accordingly. Begin with the last id for the transaction and work backward using the prev_ptr to identify the next step to undo moving from the end of the transaction back to the beginning.
-
Write the transaction log using Table 10.1 from the textbook as your guide. Assume that product ‘ABCD’ has a PROD_QOH = 1,214 at the start of the transaction and that the transaction is representing the addition of 1 new product. Also assume that PART components “AAAA”, “BBBB”, “CCCC” and “DDDD” have a PROD_QOH equal to 547, 108, 249, and 89 respectively.
-
Using the transaction log you created in Step 1 above, trace its use in a
database recovery. Do this in a similar table format (see Table 10.16 in book) by backing out each transaction and resetting the BEFORE and AFTER values accordingly. Begin with the last id for the transaction and work backward using the prev_ptr to identify the next step to undo moving from the end of the transaction back to the beginning.
PLEASE answer question 2! Transanction log from question one provided as image
![TABLE 10.1
A TRANSACTION LOG
TRL_ TRX_
PREV
NEXT
OPERATION TABLE
ROW ID
ATTRIBUTE BEFORE AFTER
ID
NUM
PTR
PTR
VALUE
VALUE
341
101
Null
352
START
****Start
Transaction
352
101
341
363
UPDATE
PRODUCT
1558-QW1 PROD_QOH
25
23
363
101
352
365
UPDATE
CUSTOMER
10011
CUST_
525.75
615.73
BALANCE
365
101
363
Null
COMMIT
**** End of
Transaction
TRL_ID = Transaction log record ID
TRX_NUM =Transaction number
PTR = Pointer to a transaction log record ID
(Note: The transaction number is automatically assigned by the DBMS.)
%3D](/v2/_next/image?url=https%3A%2F%2Fcontent.bartleby.com%2Fqna-images%2Fquestion%2F1bf6faa4-d089-44c8-838a-aff339a2b3ce%2F05ae1804-b9ec-47d3-a370-91243e344ade%2Fb73asro_processed.png&w=3840&q=75)
![TRL_ID TRX_NUM PREV PTR NEXT PTR OPERATION TABLE
ROW ID ATTRIBUTE BEFORE VALUE AFTER VALUE
1001
502 START
503 UPDATE
504 UPDATE
505 UPDATE
501
NULL
****Start Transaction
1001
1214
АBCD
AAAA
BBBB
PROD QOH
PART QOH
PART_QOH
PART QOH
502
501
PRODUCT
1215
503
1001
502
PART
547
546
504
1001
503
PART
108
107
506 UPDATE
507 UPDATE
505
1001
504
PART
ccCC
249
248
506
1001
505
PART
DDDD
PART_QOH
89
88
507
1001
506
NULL COMMIT
****End of Transaction](/v2/_next/image?url=https%3A%2F%2Fcontent.bartleby.com%2Fqna-images%2Fquestion%2F1bf6faa4-d089-44c8-838a-aff339a2b3ce%2F05ae1804-b9ec-47d3-a370-91243e344ade%2F7t7xzvl_processed.png&w=3840&q=75)
![](/static/compass_v2/shared-icons/check-mark.png)
Trending now
This is a popular solution!
Step by step
Solved in 2 steps
![Blurred answer](/static/compass_v2/solution-images/blurred-answer.jpg)
![Database System Concepts](https://www.bartleby.com/isbn_cover_images/9780078022159/9780078022159_smallCoverImage.jpg)
![Starting Out with Python (4th Edition)](https://www.bartleby.com/isbn_cover_images/9780134444321/9780134444321_smallCoverImage.gif)
![Digital Fundamentals (11th Edition)](https://www.bartleby.com/isbn_cover_images/9780132737968/9780132737968_smallCoverImage.gif)
![Database System Concepts](https://www.bartleby.com/isbn_cover_images/9780078022159/9780078022159_smallCoverImage.jpg)
![Starting Out with Python (4th Edition)](https://www.bartleby.com/isbn_cover_images/9780134444321/9780134444321_smallCoverImage.gif)
![Digital Fundamentals (11th Edition)](https://www.bartleby.com/isbn_cover_images/9780132737968/9780132737968_smallCoverImage.gif)
![C How to Program (8th Edition)](https://www.bartleby.com/isbn_cover_images/9780133976892/9780133976892_smallCoverImage.gif)
![Database Systems: Design, Implementation, & Manag…](https://www.bartleby.com/isbn_cover_images/9781337627900/9781337627900_smallCoverImage.gif)
![Programmable Logic Controllers](https://www.bartleby.com/isbn_cover_images/9780073373843/9780073373843_smallCoverImage.gif)