skip to main content
10.1145/1142473.1142512acmconferencesArticle/Chapter ViewAbstractPublication PagesmodConference Proceedingsconference-collections
Article

Recovery from "bad" user transactions

Published:27 June 2006Publication History

ABSTRACT

User written transaction code is responsible for the "C" in ACID transactions, i.e., taking the database from one consistent state to the next. However, user transactions can be flawed and lead to inconsistent (or invalid) states. Database systems usually correct invalid data using "point in time" recovery, a costly process that installs a backup and rolls it forward. The result is long outages and the "de-commit" of many valid transactions, which must then be re-submitted, frequently manually. We have implemented in our transaction-time database system a technique in which only data tainted by a flawed transaction and transactions dependent upon its updates are "removed". This process identifies and quarantines tainted data despite the complication of determining transactions dependent on data written by the flawed transaction. A further property of our implementation is that no backup needs to be installed for this because the prior transaction-time states provide an online backup.

References

  1. Philip Bohannon, Rajeev Rastogi, S. Seshadri, Abraham Silberschatz, and S. Sudarshan: Using Codewords to Protect Database Data from a Class of Software Errors. ICDE 1999: 276--285 Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Philip A. Bernstein, Vassos Hadzilacos, Nathan Goodman: Concurrency Control and Recovery in Database Systems. Addison-Wesley 1987, ISBN 0-201-10715-5 Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. David Lomet and Betty Salzberg: Access methods for Multiversion Data. SIGMOD Conference, Portland, OR (May 1989) 315--324 Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. David Lomet and Betty Salzberg: Exploiting a History Database for Backup. VLDB 1993: 380--390 Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. David Lomet, Roger Barga, Mohamed Mokbel, German Shegalov, Rui Wang, and Yunyue Zhu: Transaction Time Support Inside a Database Engine. ICDE 2006: (to appear). Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. C. Mohan, Donald J. Haderle, Bruce G. Lindsay, Hamid Pirahesh, and Peter M. Schwarz: ARIES: A Transaction Recovery Method Supporting Fine-Granularity Locking and Partial Rollbacks Using Write-Ahead Logging. ACM Trans. Database Syst. 17 (1): 94--162 (1992) Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Oracle: Oracle Database 10g Release 2 High Availability. http://www.oracle.com/technology/deploy/availability/pdf/TWP_HA_10gR2_HA_Overview.pdf, May 2005.Google ScholarGoogle Scholar
  8. Michael Stonebraker: The Design of the POSTGRES Storage System. VLDB, 289--300, 1987. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Michael Stonebraker, Lawrence A. Rowe, and M. Hirohama. The Implementation of Postgres. IEEE TKDE 2(1):125--142, 1990. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Abdullah Uz Tansel, James Clifford, Shashi K. Gadia, Sushil Jajodia, Arie Segev, Richard T. Snodgrass: Temporal Databases: Theory, Design, and Implementation Benjamin/Cummings 1993 Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Recovery from "bad" user transactions

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in
        • Published in

          cover image ACM Conferences
          SIGMOD '06: Proceedings of the 2006 ACM SIGMOD international conference on Management of data
          June 2006
          830 pages
          ISBN:1595934340
          DOI:10.1145/1142473

          Copyright © 2006 ACM

          Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

          Publisher

          Association for Computing Machinery

          New York, NY, United States

          Publication History

          • Published: 27 June 2006

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • Article

          Acceptance Rates

          Overall Acceptance Rate785of4,003submissions,20%

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader