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

Allow Incremental Table Alterations

    XMLWordPrintableJSON

Details

    • Wish
    • Status: Closed
    • Major
    • Resolution: Duplicate
    • 0.89.20100621
    • None
    • Client
    • None

    Description

      As per the HBase shell help, the alter command will "Alter column family schema; pass table name and a dictionary specifying new column family schema." The assumption here seems to be that the new column family schema must be completely specified. In other words, if a certain attribute is not specified in the column family schema, then it is effectively defaulted. Is this side-effect by design?

      I for one assumed (wrongly apparently) that I can alter a table in "increments". Case in point, the following commands should've resulted in the final value of the VERSIONS attribute of my table to stay put at 1, but instead it got defaulted to 3. I guess there's no right or wrong answer here, but what should alter do by default? My expectation is that it only changes those attributes that were specified in the "alter" command, leaving the unspecified attributes untouched.

      hbase(main):003:0> create 't1',

      {NAME => 'f1', VERSIONS => 1}

      0 row(s) in 1.7230 seconds
      hbase(main):004:0> describe 't1'
      DESCRIPTION
      {NAME => 't1', FAMILIES => [

      {NAME => 'f1', COMPRESSION => 'NONE', VERSIONS => '1', TTL => '2147483647', BLOCKSIZE => '65536', IN_MEMORY => ' false', BLOCKCACHE => 'true'}

      ]}
      1 row(s) in 0.2030 seconds
      hbase(main):006:0> disable 't1'
      0 row(s) in 0.1140 seconds
      hbase(main):007:0> alter 't1',

      {NAME => 'f1', IN_MEMORY => 'true'}

      0 row(s) in 0.0160 seconds
      hbase(main):009:0> describe 't1'
      DESCRIPTION
      {NAME => 't1', FAMILIES => [

      {NAME => 'f1', VERSIONS => '3', COMPRESSION => 'NONE', TTL => '2147483647', BLOCKSIZE => '65536', IN_MEMORY => ' true', BLOCKCACHE => 'true'}

      ]}
      1 row(s) in 0.1280 seconds

      Attachments

        1. HBASE-2960.patch
          2 kB
          Karthick Sankarachary

        Issue Links

          Activity

            People

              Unassigned Unassigned
              karthick Karthick Sankarachary
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: