Details
-
Bug
-
Resolution: Fixed
-
Major
-
None
-
None
-
None
-
1
Description
1. Setup a CB Server, create a bucket scope and collection.
2. Create a user - with following - data_writer[bucket:scope:collection]
3. Write a doc to collection via Administrator user
4. Read the document via user created in 2.
Since the user in step2 is data_writer, there should be an error:
couchbase.exceptions.CouchbaseException: <Key='1', RC=0xD3[LCB_ERR_COLLECTION_NOT_FOUND (211)], Operational Error, Results=1, C Source=(src/multiresult.c,316), Context=
, Tracing Output={"1": {"debug_info":
{"FILE": "src/callbacks.c", "FUNC": "value_callback", "LINE": 852}}}>
While the exception appears, there is another exception in couchbase core:
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "pytests/security/rbacCollectionTest.py", line 279, in check_permission_multiple_roles_negative
result = client.get(str(count), scope=scope, collection=collection)
File "lib/sdk_client3.py", line 640, in get
self.get(key, ttl=0, quiet=True, replica=False, no_format=False, scope=scope, collection=scope)
File "lib/sdk_client3.py", line 640, in get
self.get(key, ttl=0, quiet=True, replica=False, no_format=False, scope=scope, collection=scope)
File "lib/sdk_client3.py", line 640, in get
self.get(key, ttl=0, quiet=True, replica=False, no_format=False, scope=scope, collection=scope)
[Previous line repeated 75 more times]
File "lib/sdk_client3.py", line 635, in get
rv = self.collection.get(key, ttl=ttl, quiet=quiet, replica=replica, no_format=no_format)
File "/usr/local/lib/python3.7/site-packages/couchbase/collection.py", line 258, in wrapped
return func(self, *args, **kwargs)
File "/usr/local/lib/python3.7/site-packages/couchbase/result.py", line 408, in wrapped
x, options = func(*args, **kwargs)
File "/usr/local/lib/python3.7/site-packages/couchbase/collection.py", line 479, in get
return self._get_generic(key, kwargs, options)
File "/usr/local/lib/python3.7/site-packages/couchbase/collection.py", line 443, in _get_generic
x = CoreClient.get(self.bucket, key, **opts)
File "/usr/local/lib/python3.7/site-packages/couchbase_core/client.py", line 406, in get
return super(Client, self).get(args,*kwargs)
File "/usr/local/lib/python3.7/site-packages/couchbase/exceptions.py", line 155, in _init_
self.context = ErrorContext.from_dict(**params.get('error_context', dict()))
File "/usr/local/lib/python3.7/site-packages/couchbase/exceptions.py", line 604, in from_dict
klass = kwargs.get('type', "ErrorContext")
RecursionError: maximum recursion depth exceeded while calling a Python object