Community Articles

Find and share helpful community-sourced technical articles.
Labels (1)
avatar

The following parameters decide if ACID is enabled or disabled in your cluster.

ACID Enable:

hive.support.concurrency=true;
hive.txn.manager=org.apache.hadoop.hive.ql.lockmgr.DbTxnManager;
hive.enforce.bucketing=true;
hive.exec.dynamic.partition.mode=nostrict;
*** The following parameters are required for standalone hive metastore ***
hive.compactor.initiator.on=true;
hive.compactor.worker.threads=1

NOTE:

Even though HiveServer2 runs with an embedded metastore, a standalone Hive metastore is required for ACID support to function properly. If you are not using ACID support with HiveServer2, you do not need a standalone metastore.

ACID Disable:

If not using ACID, then make sure the value of the parameters are set as below to avoid any hive locking issues

hive.support.concurrency=false;
hive.txn.manager=org.apache.hadoop.hive.ql.lockmgr.DummyTxnManager;
hive.enforce.bucketing=false;
hive.exec.dynamic.partition.mode=strict;
hive.compactor.initiator.on=false;
hive.compactor.worker.threads=0;
9,166 Views
Comments
avatar
Rising Star

Then, if I turn on ACID Transactions option, do I need to install Hive Standalone Metastore additionally?

avatar
New Contributor

Hi @knarendran,

is this guide also working for HDP 3.0?

Because i would like to disable ACID transactions and after i've changed all this parameters i'm getting this error (when trying to create an internal table test😞

Error: Error while compiling statement: FAILED: SemanticException [Error 10265]: This command is not allowed on an ACID table default.test with a non-ACID transaction manager. Failed command: create table test (a string) (state=42000,code=10265)

Thanks in advance,

Davide