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

PITA having to set WAL provider in two places

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Resolved
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: 3.0.0
    • Fix Version/s: 3.0.0, 2.2.0, 2.1.1, 2.0.2
    • Component/s: Operability, wal
    • Labels:
      None
    • Release Note:
      Hide
      With this change if a WAL's meta provider (hbase.wal.meta_provider) is not explicitly set, it now defaults to whatever hbase.wal.provider is set to. Previous, the two settings operated independently, each with its own default.

      This change is operationally incompatible with previous HBase versions because the default WAL meta provider no longer defaults to AsyncFSWALProvider but to hbase.wal.provider.

      The thought is that this is more in line with an operator's expectation, that a change in hbase.wal.provider is sufficient to change how WALs are written, especially given hbase.wal.meta_provider is an obscure configuration and that the very idea that meta regions would have their own wal provider would likely come as a surprise.
      Show
      With this change if a WAL's meta provider (hbase.wal.meta_provider) is not explicitly set, it now defaults to whatever hbase.wal.provider is set to. Previous, the two settings operated independently, each with its own default. This change is operationally incompatible with previous HBase versions because the default WAL meta provider no longer defaults to AsyncFSWALProvider but to hbase.wal.provider. The thought is that this is more in line with an operator's expectation, that a change in hbase.wal.provider is sufficient to change how WALs are written, especially given hbase.wal.meta_provider is an obscure configuration and that the very idea that meta regions would have their own wal provider would likely come as a surprise.

      Description

      Courtesy of Josh Elser, I learn that changing WAL we need to set two places... both hbase.wal.meta_provider and hbase.wal.provider. Operator should only have to set it in one place; hbase.wal.meta_provider should pick up general setting unless hbase.wal.meta_provider is explicitly set.

        Attachments

        1. HBASE-20856.master.001.patch
          9 kB
          Tak-Lon (Stephen) Wu
        2. HBASE-20856.master.002.patch
          9 kB
          Tak-Lon (Stephen) Wu
        3. HBASE-20856.master.003.patch
          9 kB
          Tak-Lon (Stephen) Wu
        4. HBASE-20856.branch-2.001.patch
          9 kB
          Tak-Lon (Stephen) Wu
        5. HBASE-20856.branch-2.002.patch
          8 kB
          Tak-Lon (Stephen) Wu

          Issue Links

            Activity

              People

              • Assignee:
                taklwu Tak-Lon (Stephen) Wu
                Reporter:
                stack Michael Stack
              • Votes:
                0 Vote for this issue
                Watchers:
                12 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: