Details
-
Bug
-
Resolution: Fixed
-
Major
-
1.0.0-dp.1
-
None
-
None
-
1
-
SDK02
Description
The public api for things like, say collection.get will open the bucket if necessary before doing the get. However, the core api expects a core::cluster::open_bucket to have been called first. So the new public transactions api just passes the collection info (bucket/scope/collection) down to the core transactions. You could have not used the collection before using it in the transaction, and thus the bucket may not be open.
This is a surprise to the user of the public api. At some point we may want to change to using the public api in the transactions implementation, but for now we probably should workaround this by checking and opening buckets as needed in transactions. Honestly this was an issue in the core transactions api already, but it was more obvious as there was an `open_bucket` call in core sdk api. Still, this seems to me to be more bug than feature.