data = new HiveLockObjectData(new String(curatorFramework.getData().watched().forPath(curChild))); data.setClientIp(clientIp); } catch (Exception e) { LOG.error("Error in getting data for " + curChild, e);
lockData.setClientIp(clientIp); res = createChild(getLockName(lastName, mode), key.getData().toString() .getBytes(), keepAlive ? CreateMode.PERSISTENT_SEQUENTIAL : CreateMode.EPHEMERAL_SEQUENTIAL);
if (lockData != null) { outStream.write(terminator); outStream.writeBytes("LOCK_QUERYID:" + lockData.getQueryId()); outStream.write(terminator); outStream.writeBytes("LOCK_TIME:" + lockData.getLockTime()); outStream.write(terminator); outStream.writeBytes("LOCK_MODE:" + lockData.getLockMode()); outStream.write(terminator); outStream.writeBytes("LOCK_QUERYSTRING:" + lockData.getQueryStr());
new HiveLockObjectData(plan.getQueryId(), String.valueOf(System.currentTimeMillis()), "IMPLICIT");
if (lockData != null) { outStream.write(terminator); outStream.writeBytes("LOCK_QUERYID:" + lockData.getQueryId()); outStream.write(terminator); outStream.writeBytes("LOCK_TIME:" + lockData.getLockTime()); outStream.write(terminator); outStream.writeBytes("LOCK_MODE:" + lockData.getLockMode()); outStream.write(terminator); outStream.writeBytes("LOCK_QUERYSTRING:" + lockData.getQueryStr());
new HiveLockObject.HiveLockObjectData(plan.getQueryId(), String.valueOf(System.currentTimeMillis()), "IMPLICIT",
data = new HiveLockObjectData(new String(zkpClient.getData(curChild, new DummyWatcher(), null))); } catch (Exception e) { LOG.error("Error in getting data for " + curChild + " " + e);
data = new HiveLockObjectData(new String(curatorFramework.getData().watched().forPath(curChild))); data.setClientIp(clientIp); } catch (Exception e) { LOG.error("Error in getting data for " + curChild, e);
HiveLockObjectData lockData = lock.getHiveLockObject().getData(); if (lockData != null) { outStream.writeBytes("LOCK_QUERYID:" + lockData.getQueryId() + " "); outStream.writeBytes("LOCK_TIME:" + lockData.getLockTime() + " "); outStream.writeBytes("LOCK_MODE:" + lockData.getLockMode() + " ");
lockData.setClientIp(clientIp); res = createChild(getLockName(lastName, mode), key.getData().toString() .getBytes(), keepAlive ? CreateMode.PERSISTENT_SEQUENTIAL : CreateMode.EPHEMERAL_SEQUENTIAL);
new HiveLockObjectData(plan.getQueryId(), String.valueOf(System.currentTimeMillis()), "IMPLICIT",
new HiveLockObject.HiveLockObjectData(plan.getQueryId(), String.valueOf(System.currentTimeMillis()), "IMPLICIT",
new HiveLockObjectData(plan.getQueryId(), String.valueOf(System.currentTimeMillis()), "IMPLICIT");
res = createChild(getLockName(lastName, mode), key.getData().toString().getBytes(), keepAlive ? CreateMode.PERSISTENT_SEQUENTIAL : CreateMode.EPHEMERAL_SEQUENTIAL, numRetries, sleepTime);
console.printError("Unable to acquire " + key.getData().getLockMode() + ", " + mode + " lock " + key.getDisplayName() + " after " + tryNum + " attempts."); console.printError("Unable to acquire " + key.getData().getLockMode() + ", " + mode + " lock " + key.getDisplayName() + " after " + tryNum + " attempts.");
new HiveLockObjectData(lockTbl.getQueryId(), String.valueOf(System.currentTimeMillis()), "EXPLICIT",
new HiveLockObjectData(lockTbl.getQueryId(), String.valueOf(System.currentTimeMillis()), "EXPLICIT");
new HiveLockObjectData(lockDb.getQueryId(), String.valueOf(System.currentTimeMillis()), "EXPLICIT", lockDb.getQueryStr());
private boolean unlock(String[] paths, int index, HiveLockObjectData data) { if (!lock.tryLock()) { return false; } try { if (index == paths.length) { if (hasLock()) { datas.remove(data.getQueryId()); } return true; } Node child = children == null ? null : children.get(paths[index]); if (child == null) { return true; // should not happen } if (child.unlock(paths, index + 1, data)) { if (!child.hasLock() && !child.hasChild()) { children.remove(paths[index]); } return true; } return false; } finally { lock.unlock(); } }
private void printConflictingLocks(HiveLockObject key, HiveLockMode mode, Set<String> conflictingLocks) { if (!conflictingLocks.isEmpty()) { HiveLockObjectData requestedLock = new HiveLockObjectData(key.getData().toString()); LOG.debug("Requested lock " + key.getDisplayName() + ":: mode:" + requestedLock.getLockMode() + "," + mode + "; query:" + requestedLock.getQueryStr()); for (String conflictingLock : conflictingLocks) { HiveLockObjectData conflictingLockData = new HiveLockObjectData(conflictingLock); LOG.debug("Conflicting lock to " + key.getDisplayName() + ":: mode:" + conflictingLockData.getLockMode() + ";query:" + conflictingLockData.getQueryStr() + ";queryId:" + conflictingLockData.getQueryId() + ";clientIp:" + conflictingLockData.getClientIp()); } } }