couchbase 4.2.8-dev.1 → 4.2.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (317) hide show
  1. package/CMakeLists.txt +1 -1
  2. package/deps/couchbase-cxx-cache/mozilla-ca-bundle.crt +139 -56
  3. package/deps/couchbase-cxx-cache/mozilla-ca-bundle.sha256 +1 -1
  4. package/deps/couchbase-cxx-client/CMakeLists.txt +397 -424
  5. package/deps/couchbase-cxx-client/core/agent_config.hxx +1 -1
  6. package/deps/couchbase-cxx-client/core/agent_group.cxx +0 -1
  7. package/deps/couchbase-cxx-client/core/agent_group.hxx +9 -0
  8. package/deps/couchbase-cxx-client/core/agent_group_config.hxx +1 -1
  9. package/deps/couchbase-cxx-client/core/bucket.cxx +22 -8
  10. package/deps/couchbase-cxx-client/core/bucket.hxx +3 -1
  11. package/deps/couchbase-cxx-client/core/cluster.cxx +1453 -108
  12. package/deps/couchbase-cxx-client/core/cluster.hxx +183 -473
  13. package/deps/couchbase-cxx-client/core/cluster_agent_config.hxx +1 -1
  14. package/deps/couchbase-cxx-client/core/cluster_options.cxx +12 -2
  15. package/deps/couchbase-cxx-client/core/cluster_options.hxx +9 -8
  16. package/deps/couchbase-cxx-client/core/config_profiles.cxx +2 -2
  17. package/deps/couchbase-cxx-client/core/config_profiles.hxx +1 -1
  18. package/deps/couchbase-cxx-client/core/core_sdk_shim.cxx +1 -2
  19. package/deps/couchbase-cxx-client/core/core_sdk_shim.hxx +3 -2
  20. package/deps/couchbase-cxx-client/core/diagnostics.hxx +0 -1
  21. package/deps/couchbase-cxx-client/core/dispatcher.cxx +2 -2
  22. package/deps/couchbase-cxx-client/core/impl/analytics.cxx +38 -76
  23. package/deps/couchbase-cxx-client/core/impl/analytics.hxx +40 -0
  24. package/deps/couchbase-cxx-client/core/impl/analytics_index_manager.cxx +820 -0
  25. package/deps/couchbase-cxx-client/core/impl/binary_collection.cxx +403 -0
  26. package/deps/couchbase-cxx-client/core/impl/bucket.cxx +78 -0
  27. package/deps/couchbase-cxx-client/core/impl/bucket_manager.cxx +433 -0
  28. package/deps/couchbase-cxx-client/core/impl/cluster.cxx +226 -44
  29. package/deps/couchbase-cxx-client/core/impl/collection.cxx +1384 -0
  30. package/deps/couchbase-cxx-client/core/impl/collection_manager.cxx +306 -0
  31. package/deps/couchbase-cxx-client/core/impl/configuration_profiles_registry.cxx +3 -1
  32. package/deps/couchbase-cxx-client/core/impl/dns_srv_tracker.cxx +2 -0
  33. package/deps/couchbase-cxx-client/core/{operations/mcbp_noop.cxx → impl/doc_id_query.cxx} +19 -15
  34. package/deps/couchbase-cxx-client/core/impl/key_value_error_category.cxx +4 -2
  35. package/deps/couchbase-cxx-client/core/impl/lookup_in_all_replicas.hxx +0 -10
  36. package/deps/couchbase-cxx-client/core/impl/lookup_in_any_replica.hxx +0 -10
  37. package/deps/couchbase-cxx-client/core/impl/observe_poll.cxx +24 -17
  38. package/deps/couchbase-cxx-client/core/impl/observe_poll.hxx +1 -1
  39. package/deps/couchbase-cxx-client/core/impl/query.cxx +45 -68
  40. package/deps/couchbase-cxx-client/core/impl/query.hxx +34 -0
  41. package/deps/couchbase-cxx-client/core/impl/query_index_manager.cxx +628 -0
  42. package/deps/couchbase-cxx-client/core/impl/scope.cxx +172 -0
  43. package/deps/couchbase-cxx-client/core/impl/search.cxx +12 -61
  44. package/deps/couchbase-cxx-client/core/impl/search.hxx +37 -0
  45. package/deps/couchbase-cxx-client/core/impl/search_index_manager.cxx +469 -0
  46. package/deps/couchbase-cxx-client/core/impl/search_row_location.cxx +12 -0
  47. package/deps/couchbase-cxx-client/core/impl/search_sort_geo_distance.cxx +87 -0
  48. package/deps/couchbase-cxx-client/core/impl/with_legacy_durability.hxx +23 -25
  49. package/deps/couchbase-cxx-client/core/io/dns_config.cxx +28 -0
  50. package/deps/couchbase-cxx-client/core/io/dns_config.hxx +6 -25
  51. package/deps/couchbase-cxx-client/core/io/http_session_manager.hxx +9 -1
  52. package/deps/couchbase-cxx-client/core/io/mcbp_command.hxx +1 -1
  53. package/deps/couchbase-cxx-client/core/io/mcbp_message.hxx +3 -2
  54. package/deps/couchbase-cxx-client/core/io/mcbp_session.cxx +51 -21
  55. package/deps/couchbase-cxx-client/core/io/mcbp_session.hxx +2 -1
  56. package/deps/couchbase-cxx-client/core/logger/logger.hxx +4 -4
  57. package/deps/couchbase-cxx-client/core/management/bucket_settings.hxx +1 -1
  58. package/deps/couchbase-cxx-client/core/mcbp/packet.cxx +1 -1
  59. package/deps/couchbase-cxx-client/core/mcbp/queue_callback.hxx +1 -1
  60. package/deps/couchbase-cxx-client/core/meta/features.hxx +28 -0
  61. package/deps/couchbase-cxx-client/core/operations/document_query.cxx +17 -1
  62. package/deps/couchbase-cxx-client/core/operations/document_query.hxx +1 -1
  63. package/deps/couchbase-cxx-client/core/operations/management/analytics_dataset_create.cxx +2 -0
  64. package/deps/couchbase-cxx-client/core/operations/management/analytics_dataset_drop.cxx +2 -0
  65. package/deps/couchbase-cxx-client/core/operations/management/analytics_dataverse_create.cxx +2 -0
  66. package/deps/couchbase-cxx-client/core/operations/management/analytics_dataverse_drop.cxx +2 -0
  67. package/deps/couchbase-cxx-client/core/operations/management/analytics_get_pending_mutations.cxx +2 -0
  68. package/deps/couchbase-cxx-client/core/operations/management/analytics_index_drop.cxx +2 -0
  69. package/deps/couchbase-cxx-client/core/operations/management/analytics_link_connect.cxx +2 -0
  70. package/deps/couchbase-cxx-client/core/operations/management/analytics_link_disconnect.cxx +2 -0
  71. package/deps/couchbase-cxx-client/core/operations/management/analytics_link_drop.cxx +2 -0
  72. package/deps/couchbase-cxx-client/core/operations/management/analytics_link_get_all.cxx +2 -0
  73. package/deps/couchbase-cxx-client/core/operations/management/bucket_create.cxx +1 -1
  74. package/deps/couchbase-cxx-client/core/operations/management/bucket_describe.cxx +2 -0
  75. package/deps/couchbase-cxx-client/core/operations/management/bucket_drop.cxx +2 -0
  76. package/deps/couchbase-cxx-client/core/operations/management/bucket_flush.cxx +2 -0
  77. package/deps/couchbase-cxx-client/core/operations/management/bucket_get.cxx +2 -0
  78. package/deps/couchbase-cxx-client/core/operations/management/change_password.cxx +3 -1
  79. package/deps/couchbase-cxx-client/core/operations/management/collection_create.cxx +2 -0
  80. package/deps/couchbase-cxx-client/core/operations/management/collection_drop.cxx +2 -0
  81. package/deps/couchbase-cxx-client/core/operations/management/collection_update.cxx +2 -0
  82. package/deps/couchbase-cxx-client/core/operations/management/error_utils.cxx +6 -5
  83. package/deps/couchbase-cxx-client/core/operations/management/eventing_deploy_function.cxx +2 -0
  84. package/deps/couchbase-cxx-client/core/operations/management/eventing_drop_function.cxx +2 -0
  85. package/deps/couchbase-cxx-client/core/operations/management/eventing_get_function.cxx +2 -0
  86. package/deps/couchbase-cxx-client/core/operations/management/eventing_pause_function.cxx +2 -0
  87. package/deps/couchbase-cxx-client/core/operations/management/eventing_resume_function.cxx +2 -0
  88. package/deps/couchbase-cxx-client/core/operations/management/eventing_undeploy_function.cxx +2 -0
  89. package/deps/couchbase-cxx-client/core/operations/management/eventing_upsert_function.cxx +2 -0
  90. package/deps/couchbase-cxx-client/core/operations/management/group_drop.cxx +2 -0
  91. package/deps/couchbase-cxx-client/core/operations/management/group_get.cxx +2 -0
  92. package/deps/couchbase-cxx-client/core/operations/management/group_get_all.cxx +1 -1
  93. package/deps/couchbase-cxx-client/core/operations/management/query_index_build_deferred.hxx +2 -2
  94. package/deps/couchbase-cxx-client/core/operations/management/query_index_create.cxx +4 -1
  95. package/deps/couchbase-cxx-client/core/operations/management/query_index_drop.cxx +4 -1
  96. package/deps/couchbase-cxx-client/core/operations/management/query_index_get_all.cxx +1 -1
  97. package/deps/couchbase-cxx-client/core/operations/management/query_index_get_all.hxx +1 -1
  98. package/deps/couchbase-cxx-client/core/operations/management/scope_create.cxx +2 -0
  99. package/deps/couchbase-cxx-client/core/operations/management/scope_drop.cxx +2 -0
  100. package/deps/couchbase-cxx-client/core/operations/management/scope_get_all.cxx +2 -0
  101. package/deps/couchbase-cxx-client/core/operations/management/search_get_stats.cxx +4 -4
  102. package/deps/couchbase-cxx-client/core/operations/management/search_get_stats.hxx +4 -4
  103. package/deps/couchbase-cxx-client/core/operations/management/search_index_analyze_document.cxx +2 -0
  104. package/deps/couchbase-cxx-client/core/operations/management/search_index_control_ingest.cxx +2 -0
  105. package/deps/couchbase-cxx-client/core/operations/management/search_index_control_plan_freeze.cxx +2 -0
  106. package/deps/couchbase-cxx-client/core/operations/management/search_index_control_query.cxx +2 -0
  107. package/deps/couchbase-cxx-client/core/operations/management/search_index_drop.cxx +2 -0
  108. package/deps/couchbase-cxx-client/core/operations/management/search_index_get.cxx +2 -0
  109. package/deps/couchbase-cxx-client/core/operations/management/search_index_get_all.cxx +1 -1
  110. package/deps/couchbase-cxx-client/core/operations/management/search_index_get_documents_count.cxx +2 -0
  111. package/deps/couchbase-cxx-client/core/operations/management/search_index_get_stats.cxx +2 -0
  112. package/deps/couchbase-cxx-client/core/operations/management/search_index_upsert.cxx +2 -0
  113. package/deps/couchbase-cxx-client/core/operations/management/view_index_drop.cxx +2 -0
  114. package/deps/couchbase-cxx-client/core/operations/management/view_index_get.cxx +2 -0
  115. package/deps/couchbase-cxx-client/core/operations/management/view_index_get_all.cxx +2 -0
  116. package/deps/couchbase-cxx-client/core/operations/management/view_index_upsert.cxx +2 -0
  117. package/deps/couchbase-cxx-client/core/operations.hxx +0 -1
  118. package/deps/couchbase-cxx-client/core/operations_fwd.hxx +260 -0
  119. package/deps/couchbase-cxx-client/core/origin.cxx +146 -5
  120. package/deps/couchbase-cxx-client/core/origin.hxx +30 -140
  121. package/deps/couchbase-cxx-client/core/protocol/cmd_cluster_map_change_notification.hxx +3 -3
  122. package/deps/couchbase-cxx-client/core/protocol/cmd_hello.hxx +5 -0
  123. package/deps/couchbase-cxx-client/core/protocol/cmd_observe_seqno.hxx +4 -4
  124. package/deps/couchbase-cxx-client/core/protocol/hello_feature.hxx +6 -0
  125. package/deps/couchbase-cxx-client/core/protocol/hello_feature_fmt.hxx +3 -0
  126. package/deps/couchbase-cxx-client/core/protocol/status.cxx +6 -0
  127. package/deps/couchbase-cxx-client/core/protocol/status.hxx +1 -0
  128. package/deps/couchbase-cxx-client/core/query_context.hxx +11 -7
  129. package/deps/couchbase-cxx-client/core/range_scan_orchestrator.cxx +1 -1
  130. package/deps/couchbase-cxx-client/core/topology/configuration.cxx +23 -0
  131. package/deps/couchbase-cxx-client/core/topology/configuration.hxx +8 -12
  132. package/deps/couchbase-cxx-client/core/topology/configuration_fmt.hxx +3 -3
  133. package/deps/couchbase-cxx-client/core/topology/configuration_json.hxx +2 -0
  134. package/deps/couchbase-cxx-client/core/topology/error_map.hxx +2 -2
  135. package/deps/couchbase-cxx-client/core/topology/error_map_json.hxx +4 -0
  136. package/deps/couchbase-cxx-client/core/transactions/active_transaction_record.cxx +58 -0
  137. package/deps/couchbase-cxx-client/core/transactions/active_transaction_record.hxx +5 -40
  138. package/deps/couchbase-cxx-client/core/transactions/async_attempt_context.cxx +30 -0
  139. package/deps/couchbase-cxx-client/core/transactions/atr_cleanup_entry.cxx +18 -18
  140. package/deps/couchbase-cxx-client/core/transactions/attempt_context.cxx +36 -0
  141. package/deps/couchbase-cxx-client/core/transactions/attempt_context_impl.cxx +39 -41
  142. package/deps/couchbase-cxx-client/core/transactions/attempt_context_impl.hxx +2 -2
  143. package/deps/couchbase-cxx-client/core/transactions/internal/atr_cleanup_entry.hxx +3 -1
  144. package/deps/couchbase-cxx-client/core/transactions/internal/atr_entry.hxx +2 -0
  145. package/deps/couchbase-cxx-client/core/transactions/internal/doc_record.cxx +32 -0
  146. package/deps/couchbase-cxx-client/core/transactions/internal/doc_record.hxx +4 -30
  147. package/deps/couchbase-cxx-client/core/transactions/internal/doc_record_fmt.hxx +41 -0
  148. package/deps/couchbase-cxx-client/core/transactions/internal/logging.hxx +17 -15
  149. package/deps/couchbase-cxx-client/core/transactions/internal/transaction_context.hxx +1 -1
  150. package/deps/couchbase-cxx-client/core/transactions/internal/transactions_cleanup.hxx +4 -4
  151. package/deps/couchbase-cxx-client/core/transactions/internal/utils.hxx +1 -13
  152. package/deps/couchbase-cxx-client/core/transactions/result.hxx +0 -26
  153. package/deps/couchbase-cxx-client/core/transactions/result_fmt.hxx +46 -0
  154. package/deps/couchbase-cxx-client/core/transactions/staged_mutation.cxx +16 -14
  155. package/deps/couchbase-cxx-client/core/transactions/transaction_context.cxx +6 -6
  156. package/deps/couchbase-cxx-client/core/transactions/transaction_keyspace.cxx +48 -0
  157. package/deps/couchbase-cxx-client/core/transactions/transaction_links.hxx +1 -0
  158. package/deps/couchbase-cxx-client/core/transactions/transaction_options.cxx +61 -4
  159. package/deps/couchbase-cxx-client/core/transactions/transactions.cxx +9 -8
  160. package/deps/couchbase-cxx-client/core/transactions/transactions_cleanup.cxx +9 -16
  161. package/deps/couchbase-cxx-client/core/transactions/transactions_config.cxx +7 -6
  162. package/deps/couchbase-cxx-client/core/transactions.hxx +6 -5
  163. package/deps/couchbase-cxx-client/core/utils/join_strings.hxx +4 -3
  164. package/deps/couchbase-cxx-client/core/utils/keyspace.hxx +4 -4
  165. package/deps/couchbase-cxx-client/couchbase/allow_querying_search_index_options.hxx +44 -0
  166. package/deps/couchbase-cxx-client/couchbase/analytics_index_manager.hxx +463 -0
  167. package/deps/couchbase-cxx-client/couchbase/analyze_document_options.hxx +44 -0
  168. package/deps/couchbase-cxx-client/couchbase/append_options.hxx +0 -24
  169. package/deps/couchbase-cxx-client/couchbase/behavior_options.hxx +1 -1
  170. package/deps/couchbase-cxx-client/couchbase/binary_collection.hxx +19 -115
  171. package/deps/couchbase-cxx-client/couchbase/bucket.hxx +13 -30
  172. package/deps/couchbase-cxx-client/couchbase/bucket_manager.hxx +8 -7
  173. package/deps/couchbase-cxx-client/couchbase/build_query_index_options.hxx +0 -1
  174. package/deps/couchbase-cxx-client/couchbase/cluster.hxx +41 -73
  175. package/deps/couchbase-cxx-client/couchbase/cluster_options.hxx +1 -27
  176. package/deps/couchbase-cxx-client/couchbase/collection.hxx +176 -386
  177. package/deps/couchbase-cxx-client/couchbase/collection_manager.hxx +8 -9
  178. package/deps/couchbase-cxx-client/couchbase/collection_query_index_manager.hxx +21 -24
  179. package/deps/couchbase-cxx-client/couchbase/connect_link_analytics_options.hxx +116 -0
  180. package/deps/couchbase-cxx-client/couchbase/create_bucket_options.hxx +3 -3
  181. package/deps/couchbase-cxx-client/couchbase/create_collection_options.hxx +3 -2
  182. package/deps/couchbase-cxx-client/couchbase/create_dataset_analytics_options.hxx +120 -0
  183. package/deps/couchbase-cxx-client/couchbase/create_dataverse_analytics_options.hxx +85 -0
  184. package/deps/couchbase-cxx-client/couchbase/create_index_analytics_options.hxx +103 -0
  185. package/deps/couchbase-cxx-client/couchbase/create_link_analytics_options.hxx +63 -0
  186. package/deps/couchbase-cxx-client/couchbase/decrement_options.hxx +0 -23
  187. package/deps/couchbase-cxx-client/couchbase/disallow_querying_search_index_options.hxx +43 -0
  188. package/deps/couchbase-cxx-client/couchbase/disconnect_link_analytics_options.hxx +105 -0
  189. package/deps/couchbase-cxx-client/couchbase/drop_dataset_analytics_options.hxx +103 -0
  190. package/deps/couchbase-cxx-client/couchbase/drop_dataverse_analytics_options.hxx +84 -0
  191. package/deps/couchbase-cxx-client/couchbase/drop_index_analytics_options.hxx +103 -0
  192. package/deps/couchbase-cxx-client/couchbase/drop_link_analytics_options.hxx +63 -0
  193. package/deps/couchbase-cxx-client/couchbase/drop_search_index_options.hxx +43 -0
  194. package/deps/couchbase-cxx-client/couchbase/error_codes.hxx +22 -1
  195. package/deps/couchbase-cxx-client/couchbase/exists_options.hxx +0 -23
  196. package/deps/couchbase-cxx-client/couchbase/fmt/key_value_error_map_attribute.hxx +6 -0
  197. package/deps/couchbase-cxx-client/couchbase/fmt/key_value_status_code.hxx +3 -0
  198. package/deps/couchbase-cxx-client/couchbase/fmt/transaction_keyspace.hxx +37 -0
  199. package/deps/couchbase-cxx-client/couchbase/freeze_plan_search_index_options.hxx +43 -0
  200. package/deps/couchbase-cxx-client/couchbase/get_all_datasets_analytics_options.hxx +66 -0
  201. package/deps/couchbase-cxx-client/couchbase/get_all_indexes_analytics_options.hxx +65 -0
  202. package/deps/couchbase-cxx-client/couchbase/get_all_query_indexes_options.hxx +1 -4
  203. package/deps/couchbase-cxx-client/couchbase/get_all_replicas_options.hxx +0 -23
  204. package/deps/couchbase-cxx-client/couchbase/get_all_search_indexes_options.hxx +45 -0
  205. package/deps/couchbase-cxx-client/couchbase/get_and_lock_options.hxx +0 -24
  206. package/deps/couchbase-cxx-client/couchbase/get_and_touch_options.hxx +0 -24
  207. package/deps/couchbase-cxx-client/couchbase/get_any_replica_options.hxx +0 -23
  208. package/deps/couchbase-cxx-client/couchbase/get_indexed_search_index_options.hxx +43 -0
  209. package/deps/couchbase-cxx-client/couchbase/get_links_analytics_options.hxx +121 -0
  210. package/deps/couchbase-cxx-client/couchbase/get_options.hxx +0 -23
  211. package/deps/couchbase-cxx-client/couchbase/get_pending_mutations_analytics_options.hxx +67 -0
  212. package/deps/couchbase-cxx-client/couchbase/get_search_index_options.hxx +44 -0
  213. package/deps/couchbase-cxx-client/couchbase/increment_options.hxx +0 -23
  214. package/deps/couchbase-cxx-client/couchbase/insert_options.hxx +0 -24
  215. package/deps/couchbase-cxx-client/couchbase/key_value_error_map_attribute.hxx +12 -0
  216. package/deps/couchbase-cxx-client/couchbase/key_value_status_code.hxx +1 -0
  217. package/deps/couchbase-cxx-client/couchbase/lookup_in_options.hxx +0 -24
  218. package/deps/couchbase-cxx-client/couchbase/management/analytics_dataset.hxx +48 -0
  219. package/deps/couchbase-cxx-client/couchbase/management/analytics_index.hxx +48 -0
  220. package/deps/couchbase-cxx-client/couchbase/management/analytics_link.hxx +239 -0
  221. package/deps/couchbase-cxx-client/couchbase/management/query_index.hxx +3 -3
  222. package/deps/couchbase-cxx-client/couchbase/management/search_index.hxx +40 -0
  223. package/deps/couchbase-cxx-client/couchbase/manager_error_context.hxx +0 -1
  224. package/deps/couchbase-cxx-client/couchbase/mutate_in_options.hxx +0 -24
  225. package/deps/couchbase-cxx-client/couchbase/network_options.hxx +1 -1
  226. package/deps/couchbase-cxx-client/couchbase/pause_ingest_search_index_options.hxx +43 -0
  227. package/deps/couchbase-cxx-client/couchbase/phrase_query.hxx +19 -0
  228. package/deps/couchbase-cxx-client/couchbase/prepend_options.hxx +0 -24
  229. package/deps/couchbase-cxx-client/couchbase/query_index_manager.hxx +99 -20
  230. package/deps/couchbase-cxx-client/couchbase/query_options.hxx +0 -21
  231. package/deps/couchbase-cxx-client/couchbase/remove_options.hxx +0 -23
  232. package/deps/couchbase-cxx-client/couchbase/replace_link_analytics_options.hxx +63 -0
  233. package/deps/couchbase-cxx-client/couchbase/replace_options.hxx +0 -24
  234. package/deps/couchbase-cxx-client/couchbase/resume_ingest_search_index_options.hxx +43 -0
  235. package/deps/couchbase-cxx-client/couchbase/scope.hxx +13 -45
  236. package/deps/couchbase-cxx-client/couchbase/search_facet_result.hxx +1 -7
  237. package/deps/couchbase-cxx-client/couchbase/search_geo_distance_units.hxx +26 -0
  238. package/deps/couchbase-cxx-client/couchbase/search_index_manager.hxx +292 -0
  239. package/deps/couchbase-cxx-client/couchbase/search_row_location.hxx +10 -0
  240. package/deps/couchbase-cxx-client/couchbase/search_sort_geo_distance.hxx +84 -0
  241. package/deps/couchbase-cxx-client/couchbase/security_options.hxx +1 -1
  242. package/deps/couchbase-cxx-client/couchbase/touch_options.hxx +0 -24
  243. package/deps/couchbase-cxx-client/couchbase/tracing/request_tracer.hxx +1 -1
  244. package/deps/couchbase-cxx-client/couchbase/transactions/async_attempt_context.hxx +10 -7
  245. package/deps/couchbase-cxx-client/couchbase/transactions/attempt_context.hxx +10 -10
  246. package/deps/couchbase-cxx-client/couchbase/transactions/transaction_keyspace.hxx +8 -58
  247. package/deps/couchbase-cxx-client/couchbase/transactions/transaction_options.hxx +28 -70
  248. package/deps/couchbase-cxx-client/couchbase/transactions/transaction_query_options.hxx +7 -2
  249. package/deps/couchbase-cxx-client/couchbase/transactions/transactions_cleanup_config.hxx +2 -1
  250. package/deps/couchbase-cxx-client/couchbase/transactions/transactions_config.hxx +11 -38
  251. package/deps/couchbase-cxx-client/couchbase/unfreeze_plan_search_index_options.hxx +43 -0
  252. package/deps/couchbase-cxx-client/couchbase/unlock_options.hxx +0 -24
  253. package/deps/couchbase-cxx-client/couchbase/upsert_options.hxx +0 -24
  254. package/deps/couchbase-cxx-client/couchbase/upsert_search_index_options.hxx +41 -0
  255. package/dist/binding.d.ts +7 -9
  256. package/dist/bindingutilities.js +2 -0
  257. package/dist/collection.js +3 -3
  258. package/dist/errors.d.ts +9 -0
  259. package/dist/errors.js +14 -2
  260. package/dist/transactions.d.ts +2 -0
  261. package/dist/transactions.js +2 -3
  262. package/dist/usermanager.js +1 -1
  263. package/package.json +7 -7
  264. package/src/binding.cpp +1 -0
  265. package/src/connection.cpp +12 -9
  266. package/src/connection.hpp +3 -3
  267. package/src/connection_autogen.cpp +7 -5
  268. package/src/constants.cpp +3 -0
  269. package/src/instance.cpp +2 -2
  270. package/src/instance.hpp +1 -1
  271. package/src/jstocbpp_autogen.hpp +21 -38
  272. package/src/jstocbpp_basic.hpp +2 -0
  273. package/src/jstocbpp_errors.hpp +1 -0
  274. package/src/jstocbpp_transactions.hpp +6 -22
  275. package/src/mutationtoken.hpp +1 -0
  276. package/tools/gen-bindings-json.py +39 -16
  277. package/deps/couchbase-cxx-cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/example/CMakeLists.txt +0 -23
  278. package/deps/couchbase-cxx-cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/example/example.cpp +0 -398
  279. package/deps/couchbase-cxx-client/core/impl/append.cxx +0 -87
  280. package/deps/couchbase-cxx-client/core/impl/build_deferred_query_indexes.cxx +0 -157
  281. package/deps/couchbase-cxx-client/core/impl/create_bucket.cxx +0 -158
  282. package/deps/couchbase-cxx-client/core/impl/create_collection.cxx +0 -83
  283. package/deps/couchbase-cxx-client/core/impl/create_query_index.cxx +0 -232
  284. package/deps/couchbase-cxx-client/core/impl/create_scope.cxx +0 -69
  285. package/deps/couchbase-cxx-client/core/impl/decrement.cxx +0 -96
  286. package/deps/couchbase-cxx-client/core/impl/drop_bucket.cxx +0 -66
  287. package/deps/couchbase-cxx-client/core/impl/drop_collection.cxx +0 -76
  288. package/deps/couchbase-cxx-client/core/impl/drop_query_index.cxx +0 -187
  289. package/deps/couchbase-cxx-client/core/impl/drop_scope.cxx +0 -68
  290. package/deps/couchbase-cxx-client/core/impl/exists.cxx +0 -47
  291. package/deps/couchbase-cxx-client/core/impl/flush_bucket.cxx +0 -66
  292. package/deps/couchbase-cxx-client/core/impl/get.cxx +0 -68
  293. package/deps/couchbase-cxx-client/core/impl/get_all_buckets.cxx +0 -178
  294. package/deps/couchbase-cxx-client/core/impl/get_all_query_indexes.cxx +0 -106
  295. package/deps/couchbase-cxx-client/core/impl/get_all_replicas.cxx +0 -145
  296. package/deps/couchbase-cxx-client/core/impl/get_all_scopes.cxx +0 -94
  297. package/deps/couchbase-cxx-client/core/impl/get_and_lock.cxx +0 -49
  298. package/deps/couchbase-cxx-client/core/impl/get_and_touch.cxx +0 -49
  299. package/deps/couchbase-cxx-client/core/impl/get_any_replica.cxx +0 -134
  300. package/deps/couchbase-cxx-client/core/impl/get_bucket.cxx +0 -168
  301. package/deps/couchbase-cxx-client/core/impl/increment.cxx +0 -96
  302. package/deps/couchbase-cxx-client/core/impl/insert.cxx +0 -90
  303. package/deps/couchbase-cxx-client/core/impl/lookup_in.cxx +0 -69
  304. package/deps/couchbase-cxx-client/core/impl/lookup_in_all_replicas.cxx +0 -178
  305. package/deps/couchbase-cxx-client/core/impl/lookup_in_any_replica.cxx +0 -169
  306. package/deps/couchbase-cxx-client/core/impl/mutate_in.cxx +0 -125
  307. package/deps/couchbase-cxx-client/core/impl/prepend.cxx +0 -87
  308. package/deps/couchbase-cxx-client/core/impl/remove.cxx +0 -86
  309. package/deps/couchbase-cxx-client/core/impl/replace.cxx +0 -102
  310. package/deps/couchbase-cxx-client/core/impl/touch.cxx +0 -49
  311. package/deps/couchbase-cxx-client/core/impl/unlock.cxx +0 -47
  312. package/deps/couchbase-cxx-client/core/impl/update_bucket.cxx +0 -133
  313. package/deps/couchbase-cxx-client/core/impl/update_collection.cxx +0 -83
  314. package/deps/couchbase-cxx-client/core/impl/upsert.cxx +0 -100
  315. package/deps/couchbase-cxx-client/core/impl/watch_query_indexes.cxx +0 -196
  316. package/deps/couchbase-cxx-client/core/operations/mcbp_noop.hxx +0 -49
  317. /package/deps/couchbase-cxx-client/core/impl/{streaming_json_lexter_error_category.cxx → streaming_json_lexer_error_category.cxx} +0 -0
@@ -30,7 +30,7 @@ class retry_strategy;
30
30
  namespace couchbase::core
31
31
  {
32
32
  struct cluster_agent_config {
33
- core_sdk_shim shim{}; // TODO: remove once refactoring will be finished.
33
+ core_sdk_shim shim; // TODO: remove once refactoring will be finished.
34
34
 
35
35
  std::string user_agent{};
36
36
  std::shared_ptr<retry_strategy> default_retry_strategy{};
@@ -16,12 +16,17 @@
16
16
  */
17
17
 
18
18
  #include "cluster_options.hxx"
19
+
19
20
  #include "config_profiles.hxx"
21
+ #include "core/transactions/attempt_context_testing_hooks.hxx"
22
+ #include "core/transactions/cleanup_testing_hooks.hxx"
23
+
24
+ #include <couchbase/best_effort_retry_strategy.hxx>
25
+
20
26
  #include <stdexcept>
21
27
 
22
28
  namespace couchbase::core
23
29
  {
24
-
25
30
  std::chrono::milliseconds
26
31
  cluster_options::default_timeout_for(service_type type) const
27
32
  {
@@ -43,8 +48,13 @@ cluster_options::default_timeout_for(service_type type) const
43
48
  throw std::runtime_error("unexpected service type");
44
49
  }
45
50
  void
46
- cluster_options::apply_profile(std::string profile_name)
51
+ cluster_options::apply_profile(std::string_view profile_name)
47
52
  {
48
53
  known_profiles().apply(profile_name, *this);
49
54
  }
55
+
56
+ cluster_options::cluster_options()
57
+ : default_retry_strategy_{ make_best_effort_retry_strategy() }
58
+ {
59
+ }
50
60
  } // namespace couchbase::core
@@ -21,14 +21,12 @@
21
21
  #include "core/io/ip_protocol.hxx"
22
22
  #include "core/metrics/logging_meter_options.hxx"
23
23
  #include "core/tracing/threshold_logging_options.hxx"
24
- #include "core/transactions/attempt_context_testing_hooks.hxx"
25
- #include "core/transactions/cleanup_testing_hooks.hxx"
26
24
  #include "service_type.hxx"
27
25
  #include "timeout_defaults.hxx"
28
26
  #include "tls_verify_mode.hxx"
29
27
 
30
- #include <couchbase/best_effort_retry_strategy.hxx>
31
28
  #include <couchbase/metrics/meter.hxx>
29
+ #include <couchbase/retry_strategy.hxx>
32
30
  #include <couchbase/tracing/request_tracer.hxx>
33
31
  #include <couchbase/transactions/transactions_config.hxx>
34
32
 
@@ -38,6 +36,12 @@
38
36
  namespace couchbase::core
39
37
  {
40
38
  struct cluster_options {
39
+ public:
40
+ cluster_options();
41
+
42
+ void apply_profile(std::string_view profile_name);
43
+ [[nodiscard]] std::chrono::milliseconds default_timeout_for(service_type type) const;
44
+
41
45
  std::chrono::milliseconds bootstrap_timeout = timeout_defaults::bootstrap_timeout;
42
46
  std::chrono::milliseconds resolve_timeout = timeout_defaults::resolve_timeout;
43
47
  std::chrono::milliseconds connect_timeout = timeout_defaults::connect_timeout;
@@ -61,7 +65,7 @@ struct cluster_options {
61
65
  io::dns::dns_config dns_config{ io::dns::dns_config::system_config() };
62
66
  bool show_queries{ false };
63
67
  bool enable_unordered_execution{ true };
64
- bool enable_clustermap_notification{ false };
68
+ bool enable_clustermap_notification{ true };
65
69
  bool enable_compression{ true };
66
70
  bool enable_tracing{ true };
67
71
  bool enable_metrics{ true };
@@ -71,7 +75,7 @@ struct cluster_options {
71
75
  tls_verify_mode tls_verify{ tls_verify_mode::peer };
72
76
  std::shared_ptr<couchbase::tracing::request_tracer> tracer{ nullptr };
73
77
  std::shared_ptr<couchbase::metrics::meter> meter{ nullptr };
74
- std::shared_ptr<retry_strategy> default_retry_strategy_{ make_best_effort_retry_strategy() };
78
+ std::shared_ptr<retry_strategy> default_retry_strategy_;
75
79
 
76
80
  std::chrono::milliseconds tcp_keep_alive_interval = timeout_defaults::tcp_keep_alive_interval;
77
81
  std::chrono::milliseconds config_poll_interval = timeout_defaults::config_poll_interval;
@@ -83,11 +87,8 @@ struct cluster_options {
83
87
  std::string user_agent_extra{};
84
88
  couchbase::transactions::transactions_config::built transactions{};
85
89
 
86
- [[nodiscard]] std::chrono::milliseconds default_timeout_for(service_type type) const;
87
-
88
90
  bool dump_configuration{ false };
89
91
  bool disable_mozilla_ca_certificates{ false };
90
- void apply_profile(std::string profile_name);
91
92
  };
92
93
 
93
94
  } // namespace couchbase::core
@@ -58,9 +58,9 @@ config_profiles::config_profiles() noexcept
58
58
  }
59
59
 
60
60
  void
61
- config_profiles::apply(const std::string& profile_name, couchbase::core::cluster_options& opts)
61
+ config_profiles::apply(std::string_view profile_name, couchbase::core::cluster_options& opts)
62
62
  {
63
- std::lock_guard<std::mutex> lock(mut_);
63
+ const std::lock_guard<std::mutex> lock(mut_);
64
64
  auto it = profiles_.find(profile_name);
65
65
  if (it != profiles_.end()) {
66
66
  it->second->apply(opts);
@@ -36,7 +36,7 @@ class config_profiles
36
36
  public:
37
37
  config_profiles() noexcept;
38
38
 
39
- void apply(const std::string& profile_name, couchbase::core::cluster_options& opts);
39
+ void apply(std::string_view profile_name, couchbase::core::cluster_options& opts);
40
40
 
41
41
  template<typename T, typename... Args>
42
42
  void register_profile(const std::string& name, Args... args)
@@ -22,7 +22,6 @@ namespace couchbase::core
22
22
  auto
23
23
  core_sdk_shim::to_string() const -> std::string
24
24
  {
25
- return fmt::format(
26
- R"(#<core_sdk_shim:{} cluster={}>)", static_cast<const void*>(this), cluster ? static_cast<const void*>(cluster.get()) : "(none)");
25
+ return fmt::format(R"(#<core_sdk_shim:{} cluster={}>)", static_cast<const void*>(this), cluster.to_string());
27
26
  }
28
27
  } // namespace couchbase::core
@@ -15,7 +15,8 @@
15
15
 
16
16
  #pragma once
17
17
 
18
- #include <memory>
18
+ #include "cluster.hxx"
19
+
19
20
  #include <string>
20
21
 
21
22
  namespace couchbase::core
@@ -23,7 +24,7 @@ namespace couchbase::core
23
24
  class cluster;
24
25
 
25
26
  struct core_sdk_shim {
26
- std::shared_ptr<core::cluster> cluster;
27
+ core::cluster cluster;
27
28
 
28
29
  [[nodiscard]] auto to_string() const -> std::string;
29
30
  };
@@ -19,7 +19,6 @@
19
19
 
20
20
  #include "service_type.hxx"
21
21
 
22
- #include <array>
23
22
  #include <chrono>
24
23
  #include <map>
25
24
  #include <optional>
@@ -27,11 +27,11 @@ dispatcher::dispatcher(std::string bucket_name, core_sdk_shim shim)
27
27
  auto
28
28
  dispatcher::direct_dispatch(std::shared_ptr<mcbp::queue_request> req) const -> std::error_code
29
29
  {
30
- return shim_.cluster->direct_dispatch(bucket_name_, std::move(req));
30
+ return shim_.cluster.direct_dispatch(bucket_name_, std::move(req));
31
31
  }
32
32
  auto
33
33
  dispatcher::direct_re_queue(std::shared_ptr<mcbp::queue_request> req, bool is_retry) const -> std::error_code
34
34
  {
35
- return shim_.cluster->direct_re_queue(bucket_name_, std::move(req), is_retry);
35
+ return shim_.cluster.direct_re_queue(bucket_name_, std::move(req), is_retry);
36
36
  }
37
37
  } // namespace couchbase::core
@@ -15,37 +15,20 @@
15
15
  * limitations under the License.
16
16
  */
17
17
 
18
- #include <couchbase/cluster.hxx>
19
- #include <couchbase/error_codes.hxx>
20
- #include <couchbase/scope.hxx>
18
+ #include "analytics.hxx"
21
19
 
22
20
  #include "core/cluster.hxx"
23
21
  #include "core/operations/document_analytics.hxx"
22
+ #include "core/utils/binary.hxx"
23
+
24
+ #include <couchbase/cluster.hxx>
25
+ #include <couchbase/error_codes.hxx>
26
+ #include <couchbase/scope.hxx>
24
27
 
25
- namespace couchbase
28
+ namespace couchbase::core::impl
26
29
  {
27
- static analytics_error_context
28
- build_context(core::operations::analytics_response& resp)
30
+ namespace
29
31
  {
30
- return {
31
- resp.ctx.ec,
32
- resp.ctx.last_dispatched_to,
33
- resp.ctx.last_dispatched_from,
34
- resp.ctx.retry_attempts,
35
- std::move(resp.ctx.retry_reasons),
36
- resp.ctx.first_error_code,
37
- std::move(resp.ctx.first_error_message),
38
- std::move(resp.ctx.client_context_id),
39
- std::move(resp.ctx.statement),
40
- std::move(resp.ctx.parameters),
41
- std::move(resp.ctx.method),
42
- std::move(resp.ctx.path),
43
- resp.ctx.http_status,
44
- std::move(resp.ctx.http_body),
45
- std::move(resp.ctx.hostname),
46
- resp.ctx.port,
47
- };
48
- }
49
32
 
50
33
  static analytics_status
51
34
  map_status(core::operations::analytics_response::analytics_status status)
@@ -80,9 +63,9 @@ map_scan_consistency(std::optional<couchbase::analytics_scan_consistency> consis
80
63
  {
81
64
  if (consistency.has_value()) {
82
65
  switch (consistency.value()) {
83
- case analytics_scan_consistency::not_bounded:
66
+ case couchbase::analytics_scan_consistency::not_bounded:
84
67
  return couchbase::core::analytics_scan_consistency::not_bounded;
85
- case analytics_scan_consistency::request_plus:
68
+ case couchbase::analytics_scan_consistency::request_plus:
86
69
  return couchbase::core::analytics_scan_consistency::request_plus;
87
70
  }
88
71
  }
@@ -133,7 +116,32 @@ map_signature(core::operations::analytics_response& resp)
133
116
  return core::utils::to_binary(resp.meta.signature.value());
134
117
  }
135
118
 
136
- static analytics_result
119
+ } // namespace
120
+
121
+ analytics_error_context
122
+ build_context(core::operations::analytics_response& resp)
123
+ {
124
+ return {
125
+ resp.ctx.ec,
126
+ resp.ctx.last_dispatched_to,
127
+ resp.ctx.last_dispatched_from,
128
+ resp.ctx.retry_attempts,
129
+ std::move(resp.ctx.retry_reasons),
130
+ resp.ctx.first_error_code,
131
+ std::move(resp.ctx.first_error_message),
132
+ std::move(resp.ctx.client_context_id),
133
+ std::move(resp.ctx.statement),
134
+ std::move(resp.ctx.parameters),
135
+ std::move(resp.ctx.method),
136
+ std::move(resp.ctx.path),
137
+ resp.ctx.http_status,
138
+ std::move(resp.ctx.http_body),
139
+ std::move(resp.ctx.hostname),
140
+ resp.ctx.port,
141
+ };
142
+ }
143
+
144
+ analytics_result
137
145
  build_result(core::operations::analytics_response& resp)
138
146
  {
139
147
  return {
@@ -149,7 +157,7 @@ build_result(core::operations::analytics_response& resp)
149
157
  };
150
158
  }
151
159
 
152
- static core::operations::analytics_request
160
+ core::operations::analytics_request
153
161
  build_analytics_request(std::string statement,
154
162
  analytics_options::built options,
155
163
  std::optional<std::string> bucket_name,
@@ -188,50 +196,4 @@ build_analytics_request(std::string statement,
188
196
  return request;
189
197
  }
190
198
 
191
- void
192
- cluster::analytics_query(std::string statement, const analytics_options& options, analytics_handler&& handler) const
193
- {
194
- auto request = build_analytics_request(std::move(statement), options.build(), {}, {});
195
-
196
- core_->execute(std::move(request), [handler = std::move(handler)](core::operations::analytics_response resp) mutable {
197
- auto r = std::move(resp);
198
- return handler(build_context(r), build_result(r));
199
- });
200
- }
201
-
202
- auto
203
- cluster::analytics_query(std::string statement, const analytics_options& options) const
204
- -> std::future<std::pair<analytics_error_context, analytics_result>>
205
- {
206
- auto barrier = std::make_shared<std::promise<std::pair<analytics_error_context, analytics_result>>>();
207
- auto future = barrier->get_future();
208
- analytics_query(std::move(statement), options, [barrier](auto ctx, auto result) {
209
- barrier->set_value({ std::move(ctx), std::move(result) });
210
- });
211
- return future;
212
- }
213
-
214
- void
215
- scope::analytics_query(std::string statement, const analytics_options& options, analytics_handler&& handler) const
216
- {
217
- auto request = build_analytics_request(std::move(statement), options.build(), bucket_name_, name_);
218
-
219
- core_->execute(std::move(request), [handler = std::move(handler)](core::operations::analytics_response resp) mutable {
220
- auto r = std::move(resp);
221
- return handler(build_context(r), build_result(r));
222
- });
223
- }
224
-
225
- auto
226
- scope::analytics_query(std::string statement, const analytics_options& options) const
227
- -> std::future<std::pair<analytics_error_context, analytics_result>>
228
- {
229
- auto barrier = std::make_shared<std::promise<std::pair<analytics_error_context, analytics_result>>>();
230
- auto future = barrier->get_future();
231
- analytics_query(std::move(statement), options, [barrier](auto ctx, auto result) {
232
- barrier->set_value({ std::move(ctx), std::move(result) });
233
- });
234
- return future;
235
- }
236
-
237
- } // namespace couchbase
199
+ } // namespace couchbase::core::impl
@@ -0,0 +1,40 @@
1
+ /* -*- Mode: C++; tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- */
2
+ /*
3
+ * Copyright 2020-Present Couchbase, Inc.
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+
18
+ #pragma once
19
+
20
+ #include "core/operations/document_analytics.hxx"
21
+
22
+ #include <couchbase/analytics_options.hxx>
23
+
24
+ #include <optional>
25
+ #include <string>
26
+
27
+ namespace couchbase::core::impl
28
+ {
29
+ analytics_error_context
30
+ build_context(core::operations::analytics_response& resp);
31
+
32
+ analytics_result
33
+ build_result(core::operations::analytics_response& resp);
34
+
35
+ core::operations::analytics_request
36
+ build_analytics_request(std::string statement,
37
+ analytics_options::built options,
38
+ std::optional<std::string> bucket_name,
39
+ std::optional<std::string> scope_name);
40
+ } // namespace couchbase::core::impl