[PYCBC-105] Provide simple 'raw' view API Created: 10/May/13 Updated: 17/May/13 Resolved: 17/May/13 |
|
| Status: | Resolved |
| Project: | Couchbase Python Client Library |
| Component/s: | library |
| Affects Version/s: | None |
| Fix Version/s: | 0.11 |
| Security Level: | Public |
| Type: | New Feature | Priority: | Blocker |
| Reporter: | Mark Nunberg | Assignee: | Mark Nunberg |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Description |
|
This API will just provide a means by which a user can get a view results. Paths will be passed verbatim to LCB, and the view payload may be handled as a subclass of the Result object
|
| Comments |
| Comment by Rami Chowdhury [ 11/May/13 ] |
| A simple implementation of this with the existing pylibcouchbase Cython code is in progress, based on: https://github.com/couchbase/couchbase-python-client/pull/21 -- we're starting to use this branch of the client at Esplorio and would be happy to work on it. |
| Comment by Mark Nunberg [ 12/May/13 ] |
| We're in the process of moving away from the Cython version and using something in the Python C API (for several reasons). |
| Comment by Rami Chowdhury [ 12/May/13 ] |
| Is there a publicly-visible branch where that work is going on? At the very least I'd like to see how work is going and how ready it is, and will probably want to contribute some work if possible. |
| Comment by Mark Nunberg [ 12/May/13 ] |
|
https://github.com/mnunberg/couchbase-python-client/tree/pylibcouchbase It'll be merged into our actual repository shortly. If you wish to partake in the review process, you may comment here: http://review.couchbase.org/#/c/26234/ |
| Comment by Rami Chowdhury [ 12/May/13 ] |
| Great, thanks for the links. How soon is it expected to be merged, out of curiosity? It'll take me a little bit to get up to speed with the C code, anyway. |
| Comment by Mark Nunberg [ 12/May/13 ] |
| sometime next week it will be pushed, though makor changes from that link are not expected |
| Comment by Mark Nunberg [ 17/May/13 ] |
| https://github.com/couchbase/couchbase-python-client/commit/676a6806cec6b3df0c0653d05c15dba5d6a332bb |
[PYCBC-112] Add test to ensure objects can be pretty-printed Created: 14/May/13 Updated: 16/May/13 Resolved: 16/May/13 |
|
| Status: | Resolved |
| Project: | Couchbase Python Client Library |
| Component/s: | library |
| Affects Version/s: | 0.10.0 |
| Fix Version/s: | 0.11 |
| Security Level: | Public |
| Type: | Task | Priority: | Critical |
| Reporter: | Mark Nunberg | Assignee: | Mark Nunberg |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Description |
|
Write tests to ensure Result objects can be repr'd and stringified without errors.
|
[PYCBC-90] Allow FMT_PLAIN for 'normal' python strings. Created: 26/Apr/13 Updated: 17/May/13 Resolved: 17/May/13 |
|
| Status: | Resolved |
| Project: | Couchbase Python Client Library |
| Component/s: | library |
| Affects Version/s: | 0.9.0 |
| Fix Version/s: | 0.10.0 |
| Security Level: | Public |
| Type: | Task | Priority: | Critical |
| Reporter: | Mark Nunberg | Assignee: | Mark Nunberg |
| Resolution: | Won't Fix | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Description |
|
Currently simple strings, i.e. "str" will not properly be set in "plain" mode. The library should apply some heuristics to determine if the string is a simple "byte" string, or whether it needs some special encoding.
|
| Comments |
| Comment by Mark Nunberg [ 30/Apr/13 ] |
| http://review.couchbase.org/#/c/25948/ |
| Comment by Mark Nunberg [ 11/May/13 ] |
| We're using FMT_BYTES and FMT_UTF8 to disambiguate between the two now |
| Comment by Mark Nunberg [ 17/May/13 ] |
|
|
[PYCBC-53] improve bucket creation defaults Created: 07/Aug/12 Updated: 07/Aug/12 Resolved: 07/Aug/12 |
|
| Status: | Resolved |
| Project: | Couchbase Python Client Library |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | 0.7.2 |
| Security Level: | Public |
| Type: | Improvement | Priority: | Major |
| Reporter: | Benjamin Young | Assignee: | Benjamin Young |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Comments |
| Comment by Benjamin Young [ 07/Aug/12 ] |
|
http://review.couchbase.org/#change,19287 ramQuotaMB is now set to 100 by default authType is set to sasl by default Several asserts were added for better error catching and reporting on invalid combinations or values. Additionally, server-side validation is now being done to check for port duplicates, name taken, and similar checks. |
[PYCBC-51] install fails owing to missing version Created: 07/Aug/12 Updated: 07/Aug/12 Resolved: 07/Aug/12 |
|
| Status: | Resolved |
| Project: | Couchbase Python Client Library |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | 0.7.2 |
| Security Level: | Public |
| Type: | Bug | Priority: | Major |
| Reporter: | Matt Ingenthron | Assignee: | Benjamin Young |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Description |
|
Trying to install via PyPi with 0.7.1, ran into this issue:
(pyenv)ingenthr-mbp:~ ingenthr$ pip install couchbase Downloading/unpacking couchbase Downloading couchbase-0.7.1.post1.tar.gz Running setup.py egg_info for package couchbase Traceback (most recent call last): File "<string>", line 14, in <module> File "/Users/ingenthr/opt/pyenv/build/couchbase/setup.py", line 25, in <module> from version import get_git_version ImportError: No module named version Complete output from command python setup.py egg_info: Traceback (most recent call last): File "<string>", line 14, in <module> File "/Users/ingenthr/opt/pyenv/build/couchbase/setup.py", line 25, in <module> from version import get_git_version ImportError: No module named version ---------------------------------------- Command python setup.py egg_info failed with error code 1 in /Users/ingenthr/opt/pyenv/build/couchbase Storing complete log in /Users/ingenthr/.pip/pip.log |
[PYCBC-48] Fatal warning during client installation Created: 31/Jul/12 Updated: 07/Aug/12 Resolved: 07/Aug/12 |
|
| Status: | Resolved |
| Project: | Couchbase Python Client Library |
| Component/s: | library |
| Affects Version/s: | 0.7 |
| Fix Version/s: | 0.7.1 |
| Security Level: | Public |
| Type: | Bug | Priority: | Major |
| Reporter: | Pavel Paulau | Assignee: | Benjamin Young |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Environment: |
virtualenv --no-site-packages -p python2.7 test_install_2.7
virtualenv --no-site-packages -p python2.6 test_install_2.6 |
||
| Description |
|
> Steps to reproduce:
pip install couchbase > Expected output: Downloading/unpacking couchbase Downloading couchbase-0.7.0.tar.gz Running setup.py egg_info for package couchbase > Actual output: Downloading/unpacking couchbase Downloading couchbase-0.7.0.tar.gz Running setup.py egg_info for package couchbase fatal: Not a git repository (or any of the parent directories): .git > Tip: def get_version(): try: p = subprocess.Popen('git describe', stdout=subprocess.PIPE, shell=True) version = p.communicate()[0].strip() except: version = '' return version |
| Comments |
| Comment by Pavel Paulau [ 31/Jul/12 ] |
| Raising to major because it may fail completely if end user does't have git (not sure about this, though). |
[PYCBC-46] Unittests covering > 50% of the code Created: 25/Jul/12 Updated: 25/Jul/12 Resolved: 25/Jul/12 |
|
| Status: | Resolved |
| Project: | Couchbase Python Client Library |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | 0.7 |
| Security Level: | Public |
| Type: | New Feature | Priority: | Major |
| Reporter: | Benjamin Young | Assignee: | Benjamin Young |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Comments |
| Comment by Benjamin Young [ 25/Jul/12 ] |
|
python setup.py nosetests generates HTML coverage reports in the 'cover' folder of the source folder. 0.7 will be 59% "covered" at the time of release. |
[PYCBC-45] Remove Couchbase.save({'_id':'key', 'json':'doc'}) in favor of .set() doing key name detection Created: 24/Jul/12 Updated: 30/Aug/12 Resolved: 30/Aug/12 |
|
| Status: | Resolved |
| Project: | Couchbase Python Client Library |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | 0.8.0 |
| Security Level: | Public |
| Type: | Improvement | Priority: | Major |
| Reporter: | Benjamin Young | Assignee: | Benjamin Young |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Flagged: |
Release Note
|
| Description |
|
It seems .save() was added to do some special handling (_design/doc PUTing). It leans on doc._id which is going away in 2.0, so it "smells" if nothing else.
Additionally, leaning on .set() and cb['bucket']['key'] = 'value' for the API will give us great consistency and less confusion. .save() should be deprecated .set() should use JSON by default .set() should handle keys named '_design/(*)' via the HTTP API |
| Comments |
| Comment by Benjamin Young [ 30/Aug/12 ] |
| http://review.couchbase.org/#/c/20165/ |
[PYCBC-39] Add Design document management, including error handling Created: 12/Jul/12 Updated: 30/Aug/12 Resolved: 30/Aug/12 |
|
| Status: | Resolved |
| Project: | Couchbase Python Client Library |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | 0.8.0 |
| Security Level: | Public |
| Type: | Improvement | Priority: | Major |
| Reporter: | Matt Ingenthron | Assignee: | Benjamin Young |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Description |
|
Add the additional functionality needed to create and replace design documents. This will likely be an extension on the Bucket class.
|
| Comments |
| Comment by Matt Ingenthron [ 24/Aug/12 ] |
| Since this is mostly done, please either complete error handling or file specific bugs on the types that need to be handled and close this. |
| Comment by Benjamin Young [ 30/Aug/12 ] |
|
Needs further exploration, so throwing to 0.9.0: http://www.couchbase.com/issues/browse/PYCBC-64 |
[PYCBC-40] RESTful Bucket Flushing Created: 12/Jul/12 Updated: 30/Aug/12 Resolved: 30/Aug/12 |
|
| Status: | Resolved |
| Project: | Couchbase Python Client Library |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | 0.8.0 |
| Security Level: | Public |
| Type: | Improvement | Priority: | Major |
| Reporter: | Matt Ingenthron | Assignee: | Benjamin Young |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Description |
|
Add the ability to call the RESTful bucket flush.
|
| Comments |
| Comment by Benjamin Young [ 30/Aug/12 ] |
| http://review.couchbase.org/#/c/20389/ |
[PYCBC-35] Invalid reference made to create_view Created: 02/Jul/12 Updated: 24/Aug/12 Resolved: 24/Aug/12 |
|
| Status: | Resolved |
| Project: | Couchbase Python Client Library |
| Component/s: | library |
| Affects Version/s: | None |
| Fix Version/s: | 0.7 |
| Security Level: | Public |
| Type: | Bug | Priority: | Major |
| Reporter: | Mike Wiederhold | Assignee: | Benjamin Young |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Description |
|
See this forum post for details.
http://www.couchbase.com/forums/thread/python-client-library-import-bug-and-fix |
| Comments |
| Comment by Benjamin Young [ 24/Aug/12 ] |
| Done some time ago. |
[PYCBC-31] python SDK disables all logging Created: 21/May/12 Updated: 03/Aug/12 Resolved: 03/Aug/12 |
|
| Status: | Resolved |
| Project: | Couchbase Python Client Library |
| Component/s: | library |
| Affects Version/s: | 1.0 |
| Fix Version/s: | 0.7 |
| Security Level: | Public |
| Type: | Bug | Priority: | Major |
| Reporter: | Steve Yen | Assignee: | Benjamin Young |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Description |
|
took a few hours to find why logging in my python app stopped working, and it's because I started using the couchbase python SDK which strangely disables logging...
logging.disable(logging.ERROR) here... https://github.com/couchbase/couchbase-python-client/blob/master/couchbase/client.py#L33 the temporary workaround in my app was to call... logging.disable(logging.NOTSET) but, that's just a hack workaround against a socially awkward (read: rude) implementation. |
| Comments |
| Comment by Benjamin Young [ 03/Aug/12 ] |
| Fixed here: http://review.couchbase.org/17039 |
[PYCBC-20] couchbase client doesn't work against a bucket with dedicated port and no password Created: 26/Dec/11 Updated: 31/Aug/12 Resolved: 31/Aug/12 |
|
| Status: | Resolved |
| Project: | Couchbase Python Client Library |
| Component/s: | library |
| Affects Version/s: | 0.5 |
| Fix Version/s: | None |
| Security Level: | Public |
| Type: | Bug | Priority: | Major |
| Reporter: | Farshid Ghods | Assignee: | Farshid Ghods |
| Resolution: | Incomplete | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Description |
|
this impacts cbworkloadgen
|
| Comments |
| Comment by Farshid Ghods [ 26/Dec/11 ] |
| this type of bucket is an ascii bucket so python client does not need to support this client |
| Comment by Matt Ingenthron [ 17/Feb/12 ] |
|
There is no such thing as an ascii bucket, really. Moxi must be talking to it over binary. So what's the auth?
Farshid, you were the reporter here too. Should this be closed? |
| Comment by Bin Cui [ 13/Aug/12 ] |
| Reassign back to farshid |
[PYCBC-19] use zlib.crc32 in couchbaseclient.py Created: 26/Nov/11 Updated: 07/Dec/11 Resolved: 07/Dec/11 |
|
| Status: | Resolved |
| Project: | Couchbase Python Client Library |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Security Level: | Public |
| Type: | Bug | Priority: | Major |
| Reporter: | Farshid Ghods | Assignee: | Matt Ingenthron |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Comments |
| Comment by Farshid Ghods [ 07/Dec/11 ] |
| https://github.com/couchbase/couchbase-python-client/commit/a9a0d666835fcde8465e4b78a4561b3c38f78c7a |
[PYCBC-16] increment from two clients seems to not work Created: 07/Sep/11 Updated: 30/Aug/12 Resolved: 30/Aug/12 |
|
| Status: | Resolved |
| Project: | Couchbase Python Client Library |
| Component/s: | library |
| Affects Version/s: | 0.5 |
| Fix Version/s: | 0.8.0 |
| Security Level: | Public |
| Type: | Bug | Priority: | Major |
| Reporter: | Matt Ingenthron | Assignee: | Benjamin Young |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Description |
|
This was originally observed with an older version, and in trying to reproduce it the latest change seems to show incr/decr is further broken. Still, this should be an easy test to add since it's been verified to fail.
from pymembase.membaseclient import VBucketAwareMembaseClient client_one = VBucketAwareMembaseClient('http://host/pools/default','default','') client_two = VBucketAwareMembaseClient('http://host/pools/default','default','') # Client one sets a numeric key client_one.set('jacob',0,0,'20') client_one.get('jacob') # Client two tries to increment this numeric key client_two.incr('jacob') # This returns (0, cas) - it should be 21! # Client two can keep incrementing this weird key client_two.incr('jacob') # Returns (1, cas) # However - if client two gets the key... client_two.get('jacob') client_two.incr('jacob') # (21, cas) # !!! p.s.: want to thank oliland from IRC on reporting this |
| Comments |
| Comment by Matt Ingenthron [ 07/Sep/11 ] |
| Could not reproduce this with another client. |
| Comment by Oli Kingshott [ 08/Sep/11 ] |
| Analyzing the binary protocol in Wireshark shows that the VBucketID is not set for the second client when it calls incr() without doing a get() first. Will try and see how this relates to the source code. |
| Comment by Benjamin Young [ 01/Jun/12 ] |
|
I've added the above code (nearly) as a test case here:
https://github.com/BigBlueHat/couchbase-python-client/commit/e3e31cdf7950abb35012fa06195ffea4c6710019 I'd love to get a few others to test it. It was failing, now it isn't. I've only tested it against 1.8.0 thus far. |
| Comment by Matt Ingenthron [ 24/Aug/12 ] |
| @benjamin to run this test again with current codebase and current server, then close if it can't be duplicated. |
| Comment by Benjamin Young [ 30/Aug/12 ] |
| http://review.couchbase.org/#/c/20369/ |
[PYCBC-17] client does not exit cleanly on interpreter exit Created: 08/Sep/11 Updated: 06/Apr/12 Resolved: 06/Apr/12 |
|
| Status: | Resolved |
| Project: | Couchbase Python Client Library |
| Component/s: | library |
| Affects Version/s: | 0.5 |
| Fix Version/s: | None |
| Security Level: | Public |
| Type: | Bug | Priority: | Major |
| Reporter: | Oli Kingshott | Assignee: | Farshid Ghods |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Environment: | all | ||
| Description |
|
The couchbase client does not exit cleanly when the interpreter exits - i.e. does not disconnect unless you call client.done()
This can be fixed by daemonizing the CommandDispatcher threads. See http://docs.python.org/library/threading.html#threading.Thread.daemon |
| Comments |
| Comment by Benjamin Young [ 06/Apr/12 ] |
|
Looks like this patch date 8/11/11 (merged on the 25th) does the "daemonization": http://review.couchbase.org/#change,8889 |
[PYCBC-14] incr() and decr() not working with VBucketAwareMembaseClient / Membase 1.7 Created: 06/Sep/11 Updated: 31/May/12 Resolved: 31/May/12 |
|
| Status: | Resolved |
| Project: | Couchbase Python Client Library |
| Component/s: | library |
| Affects Version/s: | 0.5 |
| Fix Version/s: | 0.7 |
| Security Level: | Public |
| Type: | Bug | Priority: | Major |
| Reporter: | Oli Kingshott | Assignee: | Farshid Ghods |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Environment: |
Client platform: Linux / Windows
Server platform: Membase Server 1.7.1 with 1 active server with a Membase VBucket - any authentication |
||
| Attachments: |
|
| Description |
|
See reproduction code attached. When executed it spits out a lot of errors ('amount') and eventually times out while still erroring in the background.
|
| Comments |
| Comment by Matt Ingenthron [ 06/Sep/11 ] |
|
Oli described what he'd found on investigation to me, and I've now posted a change for review:
http://review.couchbase.org/#change,9404 |
| Comment by Matt Ingenthron [ 07/Sep/11 ] |
|
Fix went through, but seems to have been incorrect (testing 0.5-19-g0680cfe):
>>> client_one.incr('jacob') Exception in thread dispatcher-thread: Traceback (most recent call last): File "/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/threading.py", line 522, in __bootstrap_inner self.run() File "/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/threading.py", line 477, in run self.__target(*self.__args, **self.__kwargs) File "couchbaseclient.py", line 651, in _start_dispatcher self.dispatcher.dispatch() File "couchbaseclient.py", line 954, in dispatch self.do(item) File "couchbaseclient.py", line 1089, in do amount = item["amt"] KeyError: 'amt' Traceback (most recent call last): File "<stdin>", line 1, in <module> File "couchbaseclient.py", line 908, in incr return self._respond(item, event) File "couchbaseclient.py", line 820, in _respond raise MemcachedTimeoutException(item, timeout) exception.MemcachedTimeoutException: timeout - memcached did not return in 30 second during incr operation for key jacob |
| Comment by Oli Kingshott [ 08/Sep/11 ] |
| This must be for a later build as I can confirm the patch works for release 0.5. |
| Comment by Benjamin Young [ 31/May/12 ] |
| The patch Matt mentioned does seem to have fixed the issue. Current incr() tests pass just fine. |
[PYCBC-3] decr() function fails gracelessly Created: 11/Aug/11 Updated: 12/Aug/11 Resolved: 12/Aug/11 |
|
| Status: | Resolved |
| Project: | Couchbase Python Client Library |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Security Level: | Public |
| Type: | Bug | Priority: | Major |
| Reporter: | Tyler Mitchell | Assignee: | Keith Batten |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Environment: | OSX 10.6, Python 2.6 | ||
| Flagged: |
Impediment
|
| Description |
|
While learning more about the functions in the vbucketawareclient I tried .decr() with minimal parameters. I lost control of my Python session as it didn't really fail gracefully. I wasn't really trying to make it work, but think this is broken :) and really hard to test further because of this tie-up.
Test script: from couchbase.couchbaseclient import VBucketAwareCouchbaseClient as client server = "http://localhost:8091/pools/default" v = client(server,"default","") # returns 11210 v.set("TESTKEY",0,0,"TESTVALUE") # returns (4020540899, 602, '') v.decr("TESTKEY",1) #[2011-08-11 16:51:52,415] - [couchbaseclient] [4320661504] - ERROR - 'amount' #[2011-08-11 16:51:52,627] - [couchbaseclient] [4320661504] - ERROR - 'amount' #[2011-08-11 16:51:52,827] - [couchbaseclient] [4320661504] - ERROR - 'amount' #.. never ends |
| Comments |
| Comment by Farshid Ghods [ 12/Aug/11 ] |
| Assigning to Keith. |
| Comment by Tyler Mitchell [ 12/Aug/11 ] |
| Latest fix did the trick. http://review.couchbase.org/#change,8915 |
[PYCBC-88] Add support for increment/decrement Created: 26/Apr/13 Updated: 30/Apr/13 Resolved: 30/Apr/13 |
|
| Status: | Resolved |
| Project: | Couchbase Python Client Library |
| Component/s: | library |
| Affects Version/s: | None |
| Fix Version/s: | 0.9.0 |
| Security Level: | Public |
| Type: | New Feature | Priority: | Major |
| Reporter: | Matt Ingenthron | Assignee: | Mark Nunberg |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Description |
|
Add support for increment and decrement.
|
[PYCBC-89] Implement add/replace Created: 26/Apr/13 Updated: 30/Apr/13 Resolved: 30/Apr/13 |
|
| Status: | Resolved |
| Project: | Couchbase Python Client Library |
| Component/s: | library |
| Affects Version/s: | 0.9.0 |
| Fix Version/s: | 0.9.0 |
| Security Level: | Public |
| Type: | Task | Priority: | Major |
| Reporter: | Mark Nunberg | Assignee: | Mark Nunberg |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
[PYCBC-70] shutdown in client takes over 2 seconds Created: 08/Nov/12 Updated: 04/May/13 Resolved: 04/May/13 |
|
| Status: | Resolved |
| Project: | Couchbase Python Client Library |
| Component/s: | None |
| Affects Version/s: | 0.8.0 |
| Fix Version/s: | 0.9.0 |
| Security Level: | Public |
| Type: | Bug | Priority: | Major |
| Reporter: | Matt Ingenthron | Assignee: | Mark Nunberg |
| Resolution: | Incomplete | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Description |
|
The shutdown function in the Couchbase object seems to take over 2 seconds.
From the discussion with the bug reporter: @ingenthr it looks like the mc_client.done() is the culprit. the bucket is being deleted every request, calling mc_client.done() which is taking 2.3 sec to finish asa @ 2:00 oh? thanks for tracing that down! I'll get an issue filed ingenthr @ 2:00 perezd [~derek@23-24-210-193-static.hfc.comcastbusiness.net] entered the room. 2:00 client.Bucket asa @ 2:01 perezd left the room (quit: Client Quit). 2:01 that's interesting ingenthr @ 2:03 I wonder what it's doing there 2:03 is it bad to not properly shutdown? asa @ 2:08 looks like there is self._dispatcher_stopped_event.wait(2) 2:08 well, I think there's a configuration thread. it may leak something? I'm not certain to be honest ingenthr @ 2:08 comment it out and suddenly it iis very fast. asa @ 2:08 line 66 in couchbaseclient.py 2:09 heh ingenthr @ 2:09 well, this has been the area we need to fix I beleive 2:09 asa @ 2:10 |
[PYCBC-44] Updated screencast for /develop pages Created: 12/Jul/12 Updated: 10/May/13 Resolved: 10/May/13 |
|
| Status: | Resolved |
| Project: | Couchbase Python Client Library |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | 1.0 |
| Security Level: | Public |
| Type: | Improvement | Priority: | Major |
| Reporter: | Matt Ingenthron | Assignee: | Mark Nunberg |
| Resolution: | Won't Fix | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Description |
|
Create an updated screencast to ship with the new 2.0 developer SDKs
|
| Comments |
| Comment by Matt Ingenthron [ 10/May/13 ] |
| We've decided to defer this. |
[PYCBC-107] Support py3's 'dict_keys' for multi methods Created: 12/May/13 Updated: 15/May/13 Resolved: 15/May/13 |
|
| Status: | Resolved |
| Project: | Couchbase Python Client Library |
| Component/s: | library |
| Affects Version/s: | None |
| Fix Version/s: | 0.11 |
| Security Level: | Public |
| Type: | Task | Priority: | Major |
| Reporter: | Mark Nunberg | Assignee: | Mark Nunberg |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Description |
|
'dict_keys' should be supported, rather than forcing users to do list(d.keys()).
|
| Comments |
| Comment by Mark Nunberg [ 13/May/13 ] |
| http://review.couchbase.org/#/c/26276/ |
| Comment by Mark Nunberg [ 15/May/13 ] |
| https://github.com/couchbase/couchbase-python-client/commit/8ecbc8ec9f84d20f05046063e027083384906f42 |
[PYCBC-61] Provide Get and Lock Created: 24/Aug/12 Updated: 15/May/13 Resolved: 15/May/13 |
|
| Status: | Resolved |
| Project: | Couchbase Python Client Library |
| Component/s: | library |
| Affects Version/s: | None |
| Fix Version/s: | 0.11 |
| Security Level: | Public |
| Type: | Improvement | Priority: | Major |
| Reporter: | Karen Zeller | Assignee: | Mark Nunberg |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Description |
|
Provide get and lock as an API method.
|
| Comments |
| Comment by Mark Nunberg [ 13/May/13 ] |
| http://review.couchbase.org/#/c/26277/ |
| Comment by Mark Nunberg [ 15/May/13 ] |
| https://github.com/couchbase/couchbase-python-client/commit/9152cfabe257ccc4199f0ab13b298eb84cff840d |
[PYCBC-100] add apache 2.0 copyright headers to repo, appropriate files Created: 01/May/13 Updated: 16/May/13 Resolved: 16/May/13 |
|
| Status: | Resolved |
| Project: | Couchbase Python Client Library |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | 0.11 |
| Security Level: | Public |
| Type: | Improvement | Priority: | Major |
| Reporter: | Matt Ingenthron | Assignee: | Mark Nunberg |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Description |
|
See summary.
|
[PYCBC-114] Internal base management implementation Created: 15/May/13 Updated: 16/May/13 Resolved: 16/May/13 |
|
| Status: | Resolved |
| Project: | Couchbase Python Client Library |
| Component/s: | library |
| Affects Version/s: | 0.11 |
| Fix Version/s: | 0.11 |
| Security Level: | Public |
| Type: | Task | Priority: | Major |
| Reporter: | Mark Nunberg | Assignee: | Mark Nunberg |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Description |
|
This is a 'basic' HTTP implementation. This will be the basis for views as well. As it stands now, this is an unstable API (i.e. the interface may (and probably *will*)) change. This task is just to get the code bits in order so that we're able to do less work when adjusting APIs
|
[PYCBC-108] Pass ascii=False to json.dumps Created: 12/May/13 Updated: 16/May/13 Resolved: 16/May/13 |
|
| Status: | Resolved |
| Project: | Couchbase Python Client Library |
| Component/s: | library |
| Affects Version/s: | None |
| Fix Version/s: | 0.11 |
| Security Level: | Public |
| Type: | Task | Priority: | Major |
| Reporter: | Mark Nunberg | Assignee: | Mark Nunberg |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Description |
|
This will decrease the data size for UTF-8 strings. However this will store JSON as non-ascii. Is this supported? (it should be, as JSON says it's utf-8 by definition).
|
[PYCBC-111] Memory leak on bad arguments Created: 14/May/13 Updated: 16/May/13 Resolved: 16/May/13 |
|
| Status: | Resolved |
| Project: | Couchbase Python Client Library |
| Component/s: | library |
| Affects Version/s: | 0.10.0 |
| Fix Version/s: | 0.11 |
| Security Level: | Public |
| Type: | Task | Priority: | Major |
| Reporter: | Mark Nunberg | Assignee: | Mark Nunberg |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Description |
|
There may be a memory leak in the MultiResult object if an error is thrown after the MultiResult object is allocated.
|
| Comments |
| Comment by Mark Nunberg [ 14/May/13 ] |
| http://review.couchbase.org/26289 |
[PYCBC-115] Add touch command Created: 15/May/13 Updated: 16/May/13 Resolved: 16/May/13 |
|
| Status: | Resolved |
| Project: | Couchbase Python Client Library |
| Component/s: | library |
| Affects Version/s: | 0.10.0 |
| Fix Version/s: | 0.11 |
| Security Level: | Public |
| Type: | Task | Priority: | Major |
| Reporter: | Mark Nunberg | Assignee: | Mark Nunberg |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
[PYCBC-116] Review error messages to ensure they're concise, informative, actionable Created: 16/May/13 Updated: 19/May/13 Resolved: 19/May/13 |
|
| Status: | Resolved |
| Project: | Couchbase Python Client Library |
| Component/s: | None |
| Affects Version/s: | 0.11 |
| Fix Version/s: | 1.0 Beta |
| Security Level: | Public |
| Type: | Improvement | Priority: | Major |
| Reporter: | Matt Ingenthron | Assignee: | Mark Nunberg |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Description |
|
There are some like "Couldn't connect", which should be more from a user perspective.
|
[PYCBC-59] Provide Standardized Logging Created: 24/Aug/12 Updated: 19/May/13 Resolved: 19/May/13 |
|
| Status: | Resolved |
| Project: | Couchbase Python Client Library |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Security Level: | Public |
| Type: | Improvement | Priority: | Major |
| Reporter: | Karen Zeller | Assignee: | Mark Nunberg |
| Resolution: | Won't Fix | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Description |
|
Provides the consistent level of logging provided by other SDKs. Provide more information on configuring logging for developers.
|
| Comments |
| Comment by Mark Nunberg [ 19/May/13 ] |
| logging at the sdk level is a task which will be delegated to lcb |
[PYCBC-92] Provide 'codec' options for keys and values Created: 26/Apr/13 Updated: 21/May/13 Resolved: 21/May/13 |
|
| Status: | Resolved |
| Project: | Couchbase Python Client Library |
| Component/s: | library |
| Affects Version/s: | 0.9.0 |
| Fix Version/s: | 0.11 |
| Security Level: | Public |
| Type: | Task | Priority: | Major |
| Reporter: | Mark Nunberg | Assignee: | Mark Nunberg |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Description |
|
This will be a preliminary interface, and would allow users to circumvent (either for interoperability or for bugs in the client) "hard coded" encoding rules (pun intended)
The constructor for the Connection class should accept a 'codec' which is an object providing the following functions: To encode: encode_key(self, key) => key_as_bytearray To decode: decode_key(self, bytearray) => whatever To encode a value; should return the bytearray and flags to use encode_value(self, value) => (bytearray, flags) To decode a value, function should look at flags and return a bytearray possibly examining flags. decode_value(self, value, flags) => bytearray |
| Comments |
| Comment by Mark Nunberg [ 30/Apr/13 ] |
| http://review.couchbase.org/#/c/25948/ |
[PYCBC-119] Add bucket attribute to see currently connected-to bucket Created: 17/May/13 Updated: 21/May/13 Resolved: 21/May/13 |
|
| Status: | Resolved |
| Project: | Couchbase Python Client Library |
| Component/s: | library |
| Affects Version/s: | None |
| Fix Version/s: | 0.11 |
| Security Level: | Public |
| Type: | Task | Priority: | Major |
| Reporter: | Mark Nunberg | Assignee: | Mark Nunberg |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
[PYCBC-118] Provide nicer __str__/__repr__ for connection object Created: 17/May/13 Updated: 21/May/13 Resolved: 21/May/13 |
|
| Status: | Resolved |
| Project: | Couchbase Python Client Library |
| Component/s: | library |
| Affects Version/s: | 0.10.0 |
| Fix Version/s: | 0.11 |
| Security Level: | Public |
| Type: | Task | Priority: | Major |
| Reporter: | Mark Nunberg | Assignee: | Mark Nunberg |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
[PYCBC-52] Install dependencies via setup.py rather than including them in the source distribution Created: 07/Aug/12 Updated: 07/Aug/12 Resolved: 07/Aug/12 |
|
| Status: | Resolved |
| Project: | Couchbase Python Client Library |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | 0.7.2 |
| Security Level: | Public |
| Type: | Improvement | Priority: | Minor |
| Reporter: | Benjamin Young | Assignee: | Benjamin Young |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Description |
|
Get all the dependencies from PyPi
|
[PYCBC-50] remove dependencies on pre-Python 2.6 "shims" (uuid, simplejson) Created: 03/Aug/12 Updated: 24/Aug/12 Resolved: 24/Aug/12 |
|
| Status: | Resolved |
| Project: | Couchbase Python Client Library |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | 0.7.2 |
| Security Level: | Public |
| Type: | Improvement | Priority: | Minor |
| Reporter: | Benjamin Young | Assignee: | Benjamin Young |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Comments |
| Comment by Benjamin Young [ 24/Aug/12 ] |
|
http://review.couchbase.org/#/c/19286/ - simplejson http://review.couchbase.org/#/c/19285/ - uuid |
[PYCBC-2] Update README file with simple example for quickstart Created: 05/Aug/11 Updated: 22/Aug/11 Resolved: 22/Aug/11 |
|
| Status: | Resolved |
| Project: | Couchbase Python Client Library |
| Component/s: | docs |
| Affects Version/s: | None |
| Fix Version/s: | 0.7 |
| Security Level: | Public |
| Type: | Task | Priority: | Minor |
| Reporter: | Tyler Mitchell | Assignee: | Keith Batten |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | documentation | ||
| Remaining Estimate: | 2h | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | 2h | ||
| Description |
|
Current README needs some lovin'
|
[PYCBC-106] Expose server list Created: 10/May/13 Updated: 15/May/13 Resolved: 15/May/13 |
|
| Status: | Resolved |
| Project: | Couchbase Python Client Library |
| Component/s: | library |
| Affects Version/s: | None |
| Fix Version/s: | 0.11 |
| Security Level: | Public |
| Type: | New Feature | Priority: | Minor |
| Reporter: | Mark Nunberg | Assignee: | Mark Nunberg |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Description |
|
This might be needed for more advanced handling of views, or integration of views into a more efficient, "native" HTTP client.
|
| Comments |
| Comment by Mark Nunberg [ 13/May/13 ] |
| http://review.couchbase.org/26281 |
| Comment by Mark Nunberg [ 15/May/13 ] |
| https://github.com/couchbase/couchbase-python-client/commit/369a03f6f78d7a0ba5e0e847fa5284c5df0ccc25 |
[PYCBC-15] client can't set() integer values Created: 06/Sep/11 Updated: 24/Jul/12 Resolved: 24/Jul/12 |
|
| Status: | Resolved |
| Project: | Couchbase Python Client Library |
| Component/s: | library |
| Affects Version/s: | 0.5 |
| Fix Version/s: | 0.7 |
| Security Level: | Public |
| Type: | Bug | Priority: | Trivial |
| Reporter: | Oli Kingshott | Assignee: | Benjamin Young |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Environment: | any | ||
| Attachments: |
|
| Description |
|
Attempting to set an integer value with the python client will produce:
TypeError: object of type 'int' has no len() We should be getting the object length from the string (unicode?) representation of the object passed into set(). |
| Comments |
| Comment by Benjamin Young [ 06/Apr/12 ] |
| Failing test submitted to Gerrit: http://review.couchbase.org/#change,14631 |
| Comment by Benjamin Young [ 06/Apr/12 ] |
| Someone with a deeper understanding of the Memcached protocol should handle this one. Thanks. |
| Comment by Benjamin Young [ 09/Apr/12 ] |
| Formalized simpletest.py addition as a patch for this case. |
| Comment by Benjamin Young [ 01/Jun/12 ] |
|
Failing test case also added here:
https://github.com/BigBlueHat/couchbase-python-client/commit/668c8a85d74005a3780573ab4685b5c4df49381e |
| Comment by Benjamin Young [ 24/Jul/12 ] |
| http://review.couchbase.org/#change,18357 |