Uploaded image for project: 'Derby'
  1. Derby
  2. DERBY-6136

Create a custom/optional tool for dumping the data in a corrupted database.

Attach filesAttach ScreenshotVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 10.11.1.1
    • 10.13.1.0
    • Tools
    • None
    • Normal

    Description

      It would be useful to have a tool for dumping the data in a corrupted database. This could start out as a custom tool. After we debug the tool and get some experience with it, we can consider promoting it to be a (possibly undocumented) optional tool which we ship with the product. I think the tool should have the following behavior:

      1) The tool should not subvert the security of the corrupted database. If the corrupted database is password-protected, then you would need to present its DBO's credentials in order to use the tool. Naturally, an encryption key would have to be presented in order to decode an encrypted database.

      2) The tool should not stop reading a table when it hits a corrupt record. Instead, the tool should soldier on and collect a list of warnings on bad records.

      Such a tool would be useful in situations where some part of a heap table is corrupt but the following heap conglomerates are intact:

      i) SYSSCHEMAS
      ii) SYSTABLES
      iii) SYSCONGLOMERATES
      iv) SYSCOLUMNS
      v) property conglomerate

      Such a tool would be useful for some situations where data can't be dumped even after you delete the log files in order to short-circuit recovery.

      Attachments

        1. DataFileVTI.java
          59 kB
          Richard N. Hillegas
        2. DataFileVTI.java
          59 kB
          Richard N. Hillegas
        3. DataFileVTI.java
          63 kB
          Richard N. Hillegas
        4. DataFileVTI.java
          58 kB
          Richard N. Hillegas
        5. DataFileVTI.java
          57 kB
          Richard N. Hillegas
        6. dataFileVTI.sql
          4 kB
          Richard N. Hillegas
        7. derby-6136-01-aa-productize.diff
          104 kB
          Richard N. Hillegas
        8. derby-6136-01-ab-teardownCorruptDB.diff
          105 kB
          Richard N. Hillegas
        9. derby-6136-02-aa-cleanup.diff
          22 kB
          Richard N. Hillegas
        10. DerbyRecovery-0.0.1-SNAPSHOT.jar
          29 kB
          José Arcángel Salazar Delgado
        11. log[1].ctrl
          0.0 kB
          John Judd
        12. log2[1].dat
          1.14 MB
          John Judd
        13. log3[1].dat
          1.00 MB
          John Judd
        14. log4[1].dat
          1.00 MB
          John Judd
        15. log5[1].dat
          1024 kB
          John Judd
        16. logmirror[1].ctrl
          0.0 kB
          John Judd
        17. RawDBReader.java
          25 kB
          Richard N. Hillegas
        18. RawDBReader.java
          22 kB
          Richard N. Hillegas
        19. RawDBReader.java
          22 kB
          Richard N. Hillegas

        Issue Links

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            rhillegas Richard N. Hillegas
            rhillegas Richard N. Hillegas
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment