[
https://issues.apache.org/jira/browse/HIVE-20906?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Rajesh KSV updated HIVE-20906:
--
Description:
I am using Hive 2.3.3.
According to docs
([https://cwiki.apache.org/confluence/display/Hive/Locking]), they are
ephemeral. But in the Zookeeper and Hive source Code, they seemed to be
non-ephemeral.
I ran the following query in Hive.
*lock table discovery.defaultns*
When I see the lock in zookeeper, it doesn't look like ephemeral node.
[zk: localhost:2181(CONNECTED) 55] get
/hive_zookeeper_namespace/discovery/defaultns/LOCK-EXCLUSIVE-00
hive_20181112191555_d6640955-2806-4fa7-9e52-30d04c377a04:1542030355565:EXPLICIT:lock
table discovery.defaultns exclusive:10.33.222.139
cZxid = 0x2400296808
ctime = Mon Nov 12 19:15:55 IST 2018
mZxid = 0x2400296808
mtime = Mon Nov 12 19:15:55 IST 2018
pZxid = 0x2400296808
cversion = 0
dataVersion = 0
aclVersion = 0
*ephemeralOwner = 0x0*
dataLength = 134
numChildren = 0
Also in the code -
[https://github.com/apache/hive/blob/master/ql/src/java/org/apache/hadoop/hive/ql/lockmgr/HiveTxnManagerImpl.java],
the lock is KeepAlive/PERSISTENT and not EPHIMERAL .
*HiveLock lck = lockMgr.lock(new HiveLockObject(tbl, lockData), mode, true);*
Instead it should be
*HiveLock lck = lockMgr.lock(new HiveLockObject(tbl, lockData), mode, false);*
Is it a bug or am I missing something? Thanks!
was:
I am using Hive 2.3.3.
According to docs ([https://cwiki.apache.org/confluence/display/Hive/Locking]),
they are ephemeral. But in the Zookeeper and Hive source Code, they seemed to
be non-ephemeral.
I ran the following query in Hive.
*lock table discovery.defaultns*
When I see the lock in zookeeper, it doesn't look like ephemeral node.
[zk: localhost:2181(CONNECTED) 55] get
/hive_zookeeper_namespace/discovery/defaultns/LOCK-EXCLUSIVE-00
hive_20181112191555_d6640955-2806-4fa7-9e52-30d04c377a04:1542030355565:EXPLICIT:lock
table discovery.defaultns exclusive:10.33.222.139
cZxid = 0x2400296808
ctime = Mon Nov 12 19:15:55 IST 2018
mZxid = 0x2400296808
mtime = Mon Nov 12 19:15:55 IST 2018
pZxid = 0x2400296808
cversion = 0
dataVersion = 0
aclVersion = 0
*ephemeralOwner = 0x0*
dataLength = 134
numChildren = 0
Also in the code -
[https://github.com/apache/hive/blob/master/ql/src/java/org/apache/hadoop/hive/ql/lockmgr/HiveTxnManagerImpl.java],
the lock is KeepAlive/PERSISTENT and not EPHIMERAL .
*HiveLock lck = lockMgr.lock(new HiveLockObject(tbl, lockData), mode, true);*
Is it a bug or am I missing something? Thanks!
> Are Hive locks really ephemeral ?
> -
>
> Key: HIVE-20906
> URL: https://issues.apache.org/jira/browse/HIVE-20906
> Project: Hive
> Issue Type: Bug
>Reporter: Rajesh KSV
>Priority: Major
>
> I am using Hive 2.3.3.
>
> According to docs
> ([https://cwiki.apache.org/confluence/display/Hive/Locking]), they are
> ephemeral. But in the Zookeeper and Hive source Code, they seemed to be
> non-ephemeral.
>
> I ran the following query in Hive.
>
> *lock table discovery.defaultns*
>
> When I see the lock in zookeeper, it doesn't look like ephemeral node.
>
> [zk: localhost:2181(CONNECTED) 55] get
> /hive_zookeeper_namespace/discovery/defaultns/LOCK-EXCLUSIVE-00
>
> hive_20181112191555_d6640955-2806-4fa7-9e52-30d04c377a04:1542030355565:EXPLICIT:lock
> table discovery.defaultns exclusive:10.33.222.139
> cZxid = 0x2400296808
> ctime = Mon Nov 12 19:15:55 IST 2018
> mZxid = 0x2400296808
> mtime = Mon Nov 12 19:15:55 IST 2018
> pZxid = 0x2400296808
> cversion = 0
> dataVersion = 0
> aclVersion = 0
> *ephemeralOwner = 0x0*
> dataLength = 134
> numChildren = 0
>
> Also in the code -
> [https://github.com/apache/hive/blob/master/ql/src/java/org/apache/hadoop/hive/ql/lockmgr/HiveTxnManagerImpl.java],
> the lock is KeepAlive/PERSISTENT and not EPHIMERAL .
>
> *HiveLock lck = lockMgr.lock(new HiveLockObject(tbl, lockData), mode,
> true);*
> Instead it should be
> *HiveLock lck = lockMgr.lock(new HiveLockObject(tbl, lockData), mode,
> false);*
> Is it a bug or am I missing something? Thanks!
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)