Hive ACID таблицы блокирует тупик никогда не истекает - PullRequest
0 голосов
/ 08 июля 2019

Думаю, включение ACID в улье - это одинокий маршрут. Мне трудно найти решение.

Этот запрос также похож на приведенный ниже.

Таблица кустов не отвечает на запрос выбора. ACID включен

Ошибка: FAILED: Error in acquiring locks: Lock acquisition for LockRequest(component:[ LockComponent(type:SHARED_READ, level:TABLE, dbname:db1, tablename:table1, operationType:INSERT, isAcid:true), LockComponent(type:SHARED_READ, level:TABLE, dbname:db1, tablename:table2, operationType:SELECT), LockComponent(type:SHARED_READ, level:TABLE, dbname:db1, tablename:table3, operationType:SELECT)], txnid:10140, user:userid, hostname:host.xyz.com, agentInfo:userid_20190707082237_ff87ff1b-bcc2-466d-b5db-e5781ff1f2ef) timed out after 5503292ms. LockResponse(lockid:22084, state:WAITING)

В течение нескольких месяцев присутствуют некоторые замки. Даже после повторного создания таблиц эти блокировки все еще присутствуют. что может быть причиной ошибки. Но я не уверен. Потому что иногда одни и те же ошибочные запросы тоже работают. Это сбивает с толку.

Я использую системную команду из R для запуска запросов улья, как показано ниже. Поэтому для каждого запроса ниже также выполняются настройки

acid <- "set hive.support.concurrency=true;
    set hive.txn.manager=org.apache.hadoop.hive.ql.lockmgr.DbTxnManager;
    set hive.enforce.bucketing=true;
    set hive.exec.dynamic.partition.mode=nostrict;
    set hive.compactor.initiator.on=true;
    set hive.compactor.worker.threads=1;"

hql <- paste(acid,hql)
response <- system(paste0("hive -S -e ","\"", hql,"\""," 2>&1"), wait = TRUE,intern=TRUE)

Для нескольких запросов, таких как select count(*), я использую tez, потому что запрос выполняется без проблем и намного быстрее. Не все запросы могут использовать tez, потому что это дает некоторые другие ошибки.

Некоторые Drop table запросы дают время ожидания блокировки. Но тот же Drop table отлично работает без включения ACID свойств.

Полагаю, я мог бы объяснить это правильно. И я знаю, что это несколько вопросов. Но главная проблема - Невозможно выполнить запросы из-за блокировок. И не может убить замки.

Улей версия

Hive 2.1.1-mapr-1803 Subversion git://9281ba475c39/root/opensource/mapr-hive-2.1/dl/mapr-hive-2.1 -r ef09bc4b4286a3f53947196a79949620b006344e Compiled by root on Mon Apr 2 15:49:32 UTC 2018 From source with checksum e47dbe8554cd78b7254c1856508175bd

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...