Uploaded image for project: 'HBase'
  1. HBase
  2. HBASE-10571

TTL of zero should be rejected

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Duplicate
    • 0.94.16, 0.96.1.1
    • None
    • Admin
    • None

    Description

      If a table schema has been modified to provide a default TTL, or a TTL on a column of 0, then HBase basically becomes a very costly way to send your data to /dev/null.

      I'm proposing that we reject outright any attempt to set a TTL on a default table schema, or column of a value of zero. I cannot think of a use case where individuals would want to delete their keys as soon as they are written to the memstore. In addition, this will protect against any bugs in code, or documentation errors which would result in irrecoverable data loss.

      Example:
      hbase(main):001:0> create 'test_table',

      { NAME => 'd', TTL => 0 }

      0 row(s) in 1.7880 seconds

      hbase(main):003:0> put 'test_table', 'row1', 'd', '1'
      0 row(s) in 0.1300 seconds

      hbase(main):004:0> scan 'test_table'
      ROW COLUMN+CELL
      0 row(s) in 0.0320 seconds

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              phobos182 Jeremy Carroll
              Votes:
              0 Vote for this issue
              Watchers:
              7 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: