Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Transaction log
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==Types of database log records== {{refimprove section|date=July 2016}} All log records include the general log attributes above, and also other attributes depending on their type (which is recorded in the ''Type'' attribute, as above). *'''Update Log Record''' notes an update (change) to the database. It includes this extra information: **''PageID'': A reference to the Page ID of the modified page. **''Length and Offset'': Length in bytes and offset of the page are usually included. **''Before and After Images'': Includes the value of the bytes of page before and after the page change. Some databases may have logs which include one or both images. *'''Compensation Log Record''' (CLR) notes the rollback of a particular change to the database. Each corresponds with exactly one other Update Log Record (although the corresponding update log record is not typically stored in the Compensation Log Record). It includes this extra information: **''undoNextLSN'': This field contains the LSN of the next log record that is to be undone for transaction that wrote the last Update Log. *'''Commit Record''' notes a decision to commit a transaction. *'''Abort Record''' notes a decision to abort and hence roll back a transaction. *'''Checkpoint Record''' notes that a checkpoint has been made. These are used to speed up recovery. They record information that eliminates the need to read a long way into the log's past. This varies according to checkpoint algorithm. If all dirty pages are flushed while creating the checkpoint (as in [[PostgreSQL]]), it might contain: **''redoLSN'': This is a reference to the first log record that corresponds to a dirty page. i.e. the first update that wasn't flushed at checkpoint time. This is where redo must begin on recovery. **''undoLSN'': This is a reference to the oldest log record of the oldest in-progress transaction. This is the oldest log record needed to undo all in-progress transactions. *'''Completion Record''' notes that all work has been done for this particular transaction. (It has been fully committed or aborted)
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)