org.apache.hadoop.hive.ql.lockmgr
Class EmbeddedLockManager

java.lang.Object
  extended by org.apache.hadoop.hive.ql.lockmgr.EmbeddedLockManager
All Implemented Interfaces:
HiveLockManager

public class EmbeddedLockManager
extends Object
implements HiveLockManager

shared lock manager for dedicated hive server. all locks are managed in memory


Constructor Summary
EmbeddedLockManager()
           
 
Method Summary
 void close()
           
 List<HiveLock> getLocks(boolean verifyTablePartitions, boolean fetchData)
           
 List<HiveLock> getLocks(boolean verifyTablePartitions, boolean fetchData, HiveConf conf)
           
 List<HiveLock> getLocks(HiveLockObject key, boolean verifyTablePartitions, boolean fetchData)
           
 List<HiveLock> getLocks(HiveLockObject key, boolean verifyTablePartitions, boolean fetchData, HiveConf conf)
           
 HiveLock lock(HiveLockObject key, HiveLockMode mode, boolean keepAlive)
           
 HiveLock lock(HiveLockObject key, HiveLockMode mode, int numRetriesForLock, int sleepTime)
           
 List<HiveLock> lock(List<HiveLockObj> objs, boolean keepAlive)
           
 List<HiveLock> lock(List<HiveLockObj> objs, int numRetriesForLock, int sleepTime)
           
 void prepareRetry()
           
 void refresh()
          refresh to enable new configurations.
 void releaseLocks(List<HiveLock> hiveLocks)
           
 void releaseLocks(List<HiveLock> hiveLocks, int numRetriesForUnLock, int sleepTime)
           
 void setContext(HiveLockManagerCtx ctx)
           
 void unlock(HiveLock hiveLock)
           
 void unlock(HiveLock hiveLock, int numRetriesForUnLock, int sleepTime)
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

EmbeddedLockManager

public EmbeddedLockManager()
Method Detail

setContext

public void setContext(HiveLockManagerCtx ctx)
                throws LockException
Specified by:
setContext in interface HiveLockManager
Throws:
LockException

lock

public HiveLock lock(HiveLockObject key,
                     HiveLockMode mode,
                     boolean keepAlive)
              throws LockException
Specified by:
lock in interface HiveLockManager
Parameters:
key - object to be locked
mode - mode of the lock (SHARED/EXCLUSIVE)
keepAlive - if the lock needs to be persisted after the statement
Throws:
LockException

lock

public List<HiveLock> lock(List<HiveLockObj> objs,
                           boolean keepAlive)
                    throws LockException
Specified by:
lock in interface HiveLockManager
Throws:
LockException

unlock

public void unlock(HiveLock hiveLock)
            throws LockException
Specified by:
unlock in interface HiveLockManager
Throws:
LockException

releaseLocks

public void releaseLocks(List<HiveLock> hiveLocks)
Specified by:
releaseLocks in interface HiveLockManager

getLocks

public List<HiveLock> getLocks(boolean verifyTablePartitions,
                               boolean fetchData)
                        throws LockException
Specified by:
getLocks in interface HiveLockManager
Throws:
LockException

getLocks

public List<HiveLock> getLocks(HiveLockObject key,
                               boolean verifyTablePartitions,
                               boolean fetchData)
                        throws LockException
Specified by:
getLocks in interface HiveLockManager
Throws:
LockException

prepareRetry

public void prepareRetry()
Specified by:
prepareRetry in interface HiveLockManager

refresh

public void refresh()
Description copied from interface: HiveLockManager
refresh to enable new configurations.

Specified by:
refresh in interface HiveLockManager

lock

public HiveLock lock(HiveLockObject key,
                     HiveLockMode mode,
                     int numRetriesForLock,
                     int sleepTime)
              throws LockException
Throws:
LockException

lock

public List<HiveLock> lock(List<HiveLockObj> objs,
                           int numRetriesForLock,
                           int sleepTime)
                    throws LockException
Throws:
LockException

unlock

public void unlock(HiveLock hiveLock,
                   int numRetriesForUnLock,
                   int sleepTime)
            throws LockException
Throws:
LockException

releaseLocks

public void releaseLocks(List<HiveLock> hiveLocks,
                         int numRetriesForUnLock,
                         int sleepTime)

getLocks

public List<HiveLock> getLocks(boolean verifyTablePartitions,
                               boolean fetchData,
                               HiveConf conf)
                        throws LockException
Throws:
LockException

getLocks

public List<HiveLock> getLocks(HiveLockObject key,
                               boolean verifyTablePartitions,
                               boolean fetchData,
                               HiveConf conf)
                        throws LockException
Throws:
LockException

close

public void close()
Specified by:
close in interface HiveLockManager


Copyright © 2014 The Apache Software Foundation. All rights reserved.