Skip to content

Instantly share code, notes, and snippets.

@sublee
Last active December 17, 2015 21:49
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save sublee/5677124 to your computer and use it in GitHub Desktop.
Save sublee/5677124 to your computer and use it in GitHub Desktop.
Python couchbase>=0.9 doesn't work with gevent.
version=0.8.0
27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80
81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 0 1 2 3 4 5 6 7 8 9 10
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
version=0.9
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83
84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99
version=0.10
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83
84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99
import pkg_resources
import gevent
import gevent.monkey; gevent.monkey.patch_all()
from couchbase import Couchbase
couchbase_version = pkg_resources.get_distribution('couchbase').version
if couchbase_version.startswith('0.10'):
def connect():
couchbase = Couchbase()
return couchbase.connect('default', 'localhost', 8091,
'couchbase', 'couchbase')
def set_args(key, val):
return (key, val)
elif couchbase_version.startswith('0.9'):
def connect():
couchbase = Couchbase()
return couchbase.connect('localhost', 8091, 'couchbase', 'couchbase',
'default')
def set_args(key, val):
return (key, 0, 0, val)
elif couchbase_version.startswith('0.8'):
def connect():
couchbase = Couchbase('localhost:8091', 'couchbase', 'couchbase')
return couchbase['default']
def set_args(key, val):
return (key, 0, 0, val)
def test(x, connection):
connection.set(*set_args('tmp-%d' % x, 1))
print x,
if __name__ == '__main__':
print 'version=%s' % couchbase_version
connection = connect()
gevent.joinall([gevent.spawn(test, x, connection) for x in xrange(100)])
print
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment