本文整理汇总了Python中zookeeper.close函数的典型用法代码示例。如果您正苦于以下问题:Python close函数的具体用法?Python close怎么用?Python close使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了close函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: watch_session
def watch_session(handle, event_type, state, path):
assert event_type == zookeeper.SESSION_EVENT
assert not path
if state == zookeeper.CONNECTED_STATE:
if self.handle is None:
self.handle = handle
for watch in self.watches.clear():
self._watch(watch)
for path, data in list(self.ephemeral.items()):
zookeeper.create(self.handle, path, data['data'],
data['acl'], data['flags'])
else:
assert handle == self.handle
connected.set()
logger.info('connected %s', handle)
elif state == zookeeper.CONNECTING_STATE:
connected.clear()
elif state == zookeeper.EXPIRED_SESSION_STATE:
connected.clear()
if self.handle is not None:
zookeeper.close(self.handle)
self.handle = None
init()
else:
logger.critical('unexpected session event %s %s', handle, state)
开发者ID:jmkacz,项目名称:zc.zk,代码行数:25,代码来源:__init__.py
示例2: testhandlereuse
def testhandlereuse(self):
"""
Test a) multiple concurrent connections b) reuse of closed handles
"""
cv = threading.Condition()
self.connected = False
def connection_watcher(handle, type, state, path):
cv.acquire()
self.connected = True
self.assertEqual(zookeeper.CONNECTED_STATE, state)
self.handle = handle
cv.notify()
cv.release()
cv.acquire()
handles = [ zookeeper.init(self.host) for i in xrange(10) ]
ret = zookeeper.init(self.host, connection_watcher)
cv.wait(15.0)
cv.release()
self.assertEqual(self.connected, True, "Connection timed out to " + self.host)
self.assertEqual(True, all( [ zookeeper.state(handle) == zookeeper.CONNECTED_STATE for handle in handles ] ),
"Not all connections succeeded")
oldhandle = handles[3]
zookeeper.close(oldhandle)
newhandle = zookeeper.init(self.host)
# This assertion tests *internal* behaviour; i.e. that the module
# correctly reuses closed handles. This is therefore implementation
# dependent.
self.assertEqual(newhandle, oldhandle, "Didn't get reused handle")
开发者ID:gerritjvv,项目名称:bigstreams,代码行数:30,代码来源:connection_test.py
示例3: connection_handler
def connection_handler(handle, type, state, path):
if self._zh != handle:
try:
# latent handle callback from previous connection
zookeeper.close(handle)
except:
pass
return
if self._stopped.is_set():
return
if self._watch:
self._watch(self, type, state, path)
if state == zookeeper.CONNECTED_STATE:
self._logger('Connection started, setting live.')
self._live.set()
self._clear_completions()
elif state == zookeeper.EXPIRED_SESSION_STATE:
self._logger('Session lost, clearing live state.')
self._live.clear()
self._zh = None
self._init_count = 0
self.reconnect()
else:
self._logger('Connection lost, clearing live state.')
self._live.clear()
开发者ID:JoeEnnever,项目名称:commons,代码行数:25,代码来源:client.py
示例4: post
def post(self):
request_dict = self.request.arguments
node_key = (request_dict['node_tree'])[0]
cluster_name = (request_dict['cluster_name'])[0]
zk=zookeeper.init(self.zk_connect(cluster_name))
def get_node(node_key):
"""获取子节点生成快照存到MySQL"""
if node_key == "/":
for node in zookeeper.get_children(zk,node_key):
key = "/" + node
if (zookeeper.get(zk,key)[1])['numChildren'] > 0:
get_node(key)
else:
value = (zookeeper.get(zk,key))[0]
create_time = time.time()
table = ZdSnapshot(cluster_name= cluster_name ,path=key , data=value ,create_time=self.GetNowTime())
table.save()
else:
for node in zookeeper.get_children(zk,node_key):
key = node_key + "/" + node
if (zookeeper.get(zk,key)[1])['numChildren'] > 0:
get_node(key)
else:
value = (zookeeper.get(zk,key))[0]
create_time = time.time()
table = ZdSnapshot(cluster_name= cluster_name,path=key , data=value ,create_time=self.GetNowTime())
table.save()
get_node(node_key)
self.write("生成快照成功!!!!!")
zookeeper.close(zk)
开发者ID:xiaoyang2008mmm,项目名称:zkdash,代码行数:32,代码来源:views.py
示例5: connect
def connect(self, timeout = None):
'''Connects to the zookeeper server'''
# if no timeout provided, thake the configured one
if timeout is None:
timeout = self._timeout
# check, if we're already connected
if self._handle is not None and not self.is_connected():
raise RuntimeError('Already connected')
return
condition = threading.Condition()
def connection_watch(handle, type, state, path):
condition.acquire()
condition.notify()
condition.release()
# try to connect
condition.acquire()
self._handle = zookeeper.init(
','.join(self._servers),
connection_watch,
self._timeout * 1000)
condition.wait(self._timeout)
condition.release()
if zookeeper.state(self._handle) != zookeeper.CONNECTED_STATE:
zookeeper.close(self._handle)
raise RuntimeError(
'unable to connect to %s ' % (' or '.join(self._servers)))
zookeeper.set_watcher(self._handle, self.__global_watch)
开发者ID:JeremiahDJordan,项目名称:zkpy,代码行数:31,代码来源:connection.py
示例6: main
def main():
from optparse import OptionParser as OptionParser
parser = OptionParser()
parser.add_option('-v', '--verbose', action="store_true", dest="flag_verbose",
help='Triggers debugging traces')
(options, args) = parser.parse_args(sys.argv)
# Logging configuration
if options.flag_verbose:
logging.basicConfig(
format='%(asctime)s %(message)s',
datefmt='%m/%d/%Y %I:%M:%S',
level=logging.DEBUG)
else:
logging.basicConfig(
format='%(asctime)s %(message)s',
datefmt='%m/%d/%Y %I:%M:%S',
level=logging.INFO)
if len(args) < 2:
raise ValueError("not enough CLI arguments")
ns = args[1]
cnxstr = load_config().get(ns, 'zookeeper')
zookeeper.set_debug_level(zookeeper.LOG_LEVEL_INFO)
zh = zookeeper.init(cnxstr)
zookeeper.create(zh, PREFIX, '', acl_openbar, 0)
create_tree(zh, boot_tree())
init_namespace(zh, ns)
zookeeper.close(zh)
开发者ID:amogrid,项目名称:redcurrant,代码行数:33,代码来源:zk-bootstrap.py
示例7: reestablish_connection
def reestablish_connection(self):
""" Checks the connection and resets it as needed. """
try:
zookeeper.close(self.handle)
except zookeeper.ZooKeeperException, close_exception:
logging.error("Exception when closing ZK connection {0}".\
format(close_exception))
开发者ID:deepy,项目名称:appscale-debian,代码行数:7,代码来源:zktransaction.py
示例8: close
def close(self):
""" Stops the thread that cleans up failed transactions and closes its
connection to Zookeeper.
"""
logging.info("Closing ZK connection")
self.stop_gc()
zookeeper.close(self.handle)
开发者ID:deepy,项目名称:appscale-debian,代码行数:7,代码来源:zktransaction.py
示例9: test_logging
def test_logging(self):
handler = zope.testing.loggingsupport.InstalledHandler(
'ZooKeeper')
try:
handle = zookeeper.init('zookeeper.example.com:2181')
zookeeper.close(handle)
except:
pass
wait(lambda : [r for r in handler.records
if 'environment' in r.getMessage()]
)
handler.clear()
# Test that the filter for the "Exceeded deadline by" noise works.
# cheat and bypass zk by writing to the pipe directly.
os.write(zc.zk._logging_pipe[1],
'2012-01-06 16:45:44,572:43673(0x1004f6000):[email protected]'
'[email protected]: Exceeded deadline by 27747ms\n')
wait(lambda : [r for r in handler.records
if ('Exceeded deadline by' in r.getMessage()
and r.levelno == logging.DEBUG)
]
)
self.assert_(not [r for r in handler.records
if ('Exceeded deadline by' in r.getMessage()
and r.levelno == logging.WARNING)
])
handler.uninstall()
开发者ID:jmkacz,项目名称:zc.zk,代码行数:31,代码来源:tests.py
示例10: close
def close(self):
"""Close underlying zookeeper connections."""
zookeeper.close(self.handle)
self.handle = None
self.session_id = -1
self.session_password = ""
self.connected = False
开发者ID:jmullins,项目名称:trpycore,代码行数:7,代码来源:client.py
示例11: connect
def connect(self, first=False):
try:
if self._handler:
zookeeper.close(self._handler)
except:
pass
self._handler = Connection(self._name, self.register_watch_cb, first, self.register_node_cb, *self._args, **self._kwargs).handler
开发者ID:fifar,项目名称:mysql_proxy,代码行数:7,代码来源:zk_helper.py
示例12: close
def close(self):
"""
close the handle. potentially a blocking call?
"""
if self._zhandle is not None:
zookeeper.close(self._zhandle)
# if closed successfully
self._zhandle = None
开发者ID:devcamcar,项目名称:python-evzookeeper,代码行数:8,代码来源:__init__.py
示例13: close
def close(self):
if self.connected:
try:
zookeeper.close(self.handle)
except:
self.log.exception('close')
self.connected = False
self.handle = None
开发者ID:F-Secure,项目名称:distci,代码行数:8,代码来源:sync.py
示例14: close
def close():
global handle
global init_flag
global connected
if not init_flag: return
zookeeper.close(handle)
init_flag = False
connected = False
开发者ID:snlei,项目名称:jafka,代码行数:8,代码来源:jafka-watcher.py
示例15: _safe_close
def _safe_close(self):
if self._zh is not None:
zh, self._zh = self._zh, None
try:
zookeeper.close(zh)
except zookeeper.ZooKeeperException:
# the session has been corrupted or otherwise disconnected
pass
self._live.clear()
开发者ID:BabyDuncan,项目名称:commons,代码行数:9,代码来源:client.py
示例16: _check_timeout
def _check_timeout():
# Close the handle
try:
if self.handle is not None:
zookeeper.close(self.handle)
except zookeeper.ZooKeeperException:
pass
d.errback(
ConnectionTimeoutException("could not connect before timeout"))
开发者ID:kapilt,项目名称:txzookeeper,代码行数:9,代码来源:client.py
示例17: close
def close(self):
"""
Close the connection to our ZooKeeper instance
Return: None
Exceptions: None
"""
if self._zk:
zookeeper.close(self._zk)
开发者ID:davidmiller,项目名称:zoop,代码行数:9,代码来源:client.py
示例18: __watcher
def __watcher(self, zh, evtype, state, path):
"""connection/session watcher"""
logging.debug('event%s', str((evtype, state, path)))
if evtype == zk.SESSION_EVENT:
if state == zk.CONNECTED_STATE:
self.publish_alive()
elif state == zk.EXPIRED_SESSION_STATE:
# unrecoverable state - close and reconnect
zk.close(self.zh)
self.zh = zk.init(self.zkhosts, self.__watcher)
开发者ID:travisfw,项目名称:crawlhq,代码行数:10,代码来源:zkcoord.py
示例19: main
def main():
zookeeper.set_debug_level(zookeeper.LOG_LEVEL_WARN)
zh = zookeeper.init('127.0.0.1:2181')
ensure_basedirs(zh)
for f in sys.argv[1:]:
try:
manage_type(zh, f)
print "OK", f
except Exception as e:
print "KO", f, e
zookeeper.close(zh)
开发者ID:biswapanda,项目名称:zeroflows,代码行数:11,代码来源:zk-bootstrap.py
示例20: close
def close(self):
self.cond.acquire()
# Forget current watches, otherwise it's easy for
# circular references to keep this object around.
self.watches = {}
try:
if self.handle:
zookeeper.close(self.handle)
self.handle = None
except:
logging.warn("Error closing Zookeeper handle.")
finally:
self.cond.release()
开发者ID:rmahmood,项目名称:reactor-core,代码行数:13,代码来源:connection.py
注:本文中的zookeeper.close函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论