memcached.py 文件源码

python
阅读 30 收藏 0 点赞 0 评论 0

项目:django-couchbase 作者: aswinkp 项目源码 文件源码
def clear(self):
        '''
         couchbase-cli
           To clear all data in bucket. use command couchbase-cli on Couchbase Server, 
           /opt/couchbase/bin/couchbase-cli bucket-flush -u admin -p password -c 127.0.0.1:8091 -b bucket --force

         Couchbase Command Line tools 
           folder  /opt/couchbase/lib/python could be copied to other host
           or get from GitHub
             > git clone https://github.com/couchbase/couchbase-cli.git 
           execute:
             > python couchbase-cli bucket-flush -u admin -p password -c 192.168.12.13:8091 -b bucket --force

        import os,os.path
        #if self._couchbase_cli == '':
        if True:
            log.error( 'CouchbaseError: please using couchbase-cli instead\n'
                    'couchbase-cli on GitHub\n'
                    'https://github.com/couchbase/couchbase-cli.git' )
            return False
        else:
            # Always 'Permission denied' ?
            return os.system( 'python %s bucket-flush -u %s -p %s -c %s -b %s --force'%
                        ( path.normpath( self._couchbase_cli + '/couchbaase-cli' ),
                        self._options.get( 'admin','' ),
                        self._options.get( 'admin-pwd', '' ),
                        self._server[0], self._bucket ) )== 0
        '''
        import urllib3
        conn = urllib3.connection_from_url(self._server[0], block=True, maxsize=100)
        endpoint = '/pools/default/buckets/%s/controller/doFlush' % self._bucket
        res = conn.urlopen(url=endpoint, method='POST', headers=urllib3.make_headers(basic_auth = self._options.get( 'admin:pwd', '' ),))

        if len(res.data) == 0:
            return True
        else:
            # '{"_":"Flush is disabled for the bucket"}'
            # 'Requested resource not found.\r\n'  REST error
            try:
                j = json.loads( res.data )
                msg = j.get( '-' )
            except Exception as e:
                msg = res.data

            log.error( "CouchbaseError: clear fail..: %s" % ( msg ) )
            return False
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号