Attempting to update or delete using a transaction manager that does not support these operations

When I try to update the data in the Hive table in the Cloudera Quickstart VM, I get this error.

Error compiling the statement: FAILED: SemanticException [Error 10294]: try to update or delete using a transaction manager that does not support these operations.

I added some changes to the hive-site.xml file and also restarted the bush and cloudera. These are the changes I made in Hive-site.xml

hive.support.concurrency – true hive.enforce.bucketing – true hive.exec.dynamic.partition.mode – nonstrict hive.txn.manager –org.apache.hadoop.hive.ql.lockmgr.DbTxnManager hive.compactor.initiator.on – true hive.compactor.worker.threads – 1 
+11
hadoop hive cloudera-quickstart-vm
source share
2 answers

I tried with the configuration that you provided in the hortonworks sandbox, and I was able to perform ACID operations on the table, and I believe that it works in the Cloudera environment as well. Although there are some things that should be mentioned:

  • make sure the hive has the properties you gave it (you can check them in the Hive CLI using the SET command)
  • the table you are working with must be placed as a row, declared as ORC format and has the properties of the table "transactional" = "true" in it (support for ACI merge operations only for ORC format and transactional tables). An example of a valid table is as follows:

    hive>create table testTableNew(id int ,name string ) clustered by (id) into 2 buckets stored as orc TBLPROPERTIES('transactional'='true');

You can follow this example .

+7
source share

please help understand the concept of the bucket here

0
source share

All Articles