couchbase 3.7.0 → 3.8.1

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 (349) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +3 -3
  3. data/ext/CMakeLists.txt +4 -1
  4. data/ext/cache/extconf_include.rb +4 -3
  5. data/ext/cache/mozilla-ca-bundle.crt +66 -665
  6. data/ext/cache/mozilla-ca-bundle.sha256 +1 -1
  7. data/ext/couchbase/CMakeLists.txt +26 -11
  8. data/ext/couchbase/cmake/APKBUILD.in +17 -1
  9. data/ext/couchbase/cmake/Bundler.cmake +9 -1
  10. data/ext/couchbase/cmake/Cache.cmake +48 -19
  11. data/ext/couchbase/cmake/CompilerOptions.cmake +3 -1
  12. data/ext/couchbase/cmake/OpenSSL.cmake +10 -2
  13. data/ext/couchbase/cmake/Packaging.cmake +48 -8
  14. data/ext/couchbase/cmake/ThirdPartyDependencies.cmake +43 -1
  15. data/ext/couchbase/cmake/build_config.hxx.in +2 -0
  16. data/ext/couchbase/cmake/couchbase-cxx-client.spec.in +18 -0
  17. data/ext/couchbase/cmake/tarball_glob.txt +10 -0
  18. data/ext/couchbase/core/app_telemetry_meter.cxx +1 -0
  19. data/ext/couchbase/core/app_telemetry_reporter.cxx +45 -43
  20. data/ext/couchbase/core/app_telemetry_reporter.hxx +4 -3
  21. data/ext/couchbase/core/bucket.cxx +128 -13
  22. data/ext/couchbase/core/bucket.hxx +12 -2
  23. data/ext/couchbase/core/cluster.cxx +304 -152
  24. data/ext/couchbase/core/cluster.hxx +32 -0
  25. data/ext/couchbase/core/cluster_credentials.cxx +25 -0
  26. data/ext/couchbase/core/cluster_credentials.hxx +5 -0
  27. data/ext/couchbase/core/cluster_label_listener.cxx +72 -0
  28. data/ext/couchbase/core/cluster_label_listener.hxx +46 -0
  29. data/ext/couchbase/core/cluster_options.hxx +4 -0
  30. data/ext/couchbase/core/deprecation_utils.hxx +26 -0
  31. data/ext/couchbase/core/error.hxx +27 -0
  32. data/ext/couchbase/core/error_context/base_error_context.hxx +32 -0
  33. data/ext/couchbase/core/error_context/key_value.cxx +1 -0
  34. data/ext/couchbase/core/error_context/key_value.hxx +23 -0
  35. data/ext/couchbase/core/error_context/key_value_error_context.hxx +35 -0
  36. data/ext/couchbase/core/error_context/subdocument_error_context.hxx +41 -0
  37. data/ext/couchbase/core/free_form_http_request.hxx +0 -2
  38. data/ext/couchbase/core/http_component.cxx +12 -48
  39. data/ext/couchbase/core/impl/analytics.cxx +3 -2
  40. data/ext/couchbase/core/impl/analytics.hxx +2 -1
  41. data/ext/couchbase/core/impl/analytics_index_manager.cxx +249 -137
  42. data/ext/couchbase/core/impl/binary_collection.cxx +239 -128
  43. data/ext/couchbase/core/impl/bucket_manager.cxx +87 -35
  44. data/ext/couchbase/core/impl/collection.cxx +914 -372
  45. data/ext/couchbase/core/impl/collection_manager.cxx +89 -49
  46. data/ext/couchbase/core/impl/dns_srv_tracker.cxx +4 -4
  47. data/ext/couchbase/core/impl/error.cxx +49 -17
  48. data/ext/couchbase/core/impl/error.hxx +15 -10
  49. data/ext/couchbase/core/impl/get_all_replicas.hxx +1 -1
  50. data/ext/couchbase/core/impl/get_any_replica.hxx +2 -1
  51. data/ext/couchbase/core/impl/get_replica.hxx +2 -0
  52. data/ext/couchbase/core/impl/invoke_with_node_id.hxx +44 -0
  53. data/ext/couchbase/core/impl/lookup_in_replica.hxx +1 -1
  54. data/ext/couchbase/core/impl/node_id.cxx +110 -0
  55. data/ext/couchbase/core/impl/node_id.hxx +40 -0
  56. data/ext/couchbase/core/impl/observability_recorder.cxx +161 -0
  57. data/ext/couchbase/core/impl/observability_recorder.hxx +77 -0
  58. data/ext/couchbase/core/impl/observe_seqno.hxx +2 -0
  59. data/ext/couchbase/core/impl/public_bucket.cxx +31 -7
  60. data/ext/couchbase/core/impl/public_cluster.cxx +107 -19
  61. data/ext/couchbase/core/impl/query.cxx +6 -3
  62. data/ext/couchbase/core/impl/query.hxx +3 -1
  63. data/ext/couchbase/core/impl/query_index_manager.cxx +267 -102
  64. data/ext/couchbase/core/impl/scope.cxx +53 -11
  65. data/ext/couchbase/core/impl/search.cxx +8 -4
  66. data/ext/couchbase/core/impl/search.hxx +6 -2
  67. data/ext/couchbase/core/impl/search_index_manager.cxx +131 -41
  68. data/ext/couchbase/core/impl/with_cancellation.hxx +75 -0
  69. data/ext/couchbase/core/io/config_tracker.cxx +9 -9
  70. data/ext/couchbase/core/io/config_tracker.hxx +2 -1
  71. data/ext/couchbase/core/io/http_command.hxx +98 -49
  72. data/ext/couchbase/core/io/http_context.hxx +2 -0
  73. data/ext/couchbase/core/io/http_session.cxx +23 -10
  74. data/ext/couchbase/core/io/http_session.hxx +17 -9
  75. data/ext/couchbase/core/io/http_session_manager.hxx +245 -270
  76. data/ext/couchbase/core/io/http_traits.hxx +0 -7
  77. data/ext/couchbase/core/io/mcbp_command.hxx +123 -44
  78. data/ext/couchbase/core/io/mcbp_session.cxx +251 -26
  79. data/ext/couchbase/core/io/mcbp_session.hxx +9 -1
  80. data/ext/couchbase/core/io/mcbp_traits.hxx +0 -8
  81. data/ext/couchbase/core/io/streams.cxx +3 -3
  82. data/ext/couchbase/core/io/streams.hxx +3 -2
  83. data/ext/couchbase/core/meta/features.hxx +15 -0
  84. data/ext/couchbase/core/meta/version.cxx +13 -0
  85. data/ext/couchbase/core/meta/version.hxx +3 -0
  86. data/ext/couchbase/core/metrics/constants.hxx +23 -0
  87. data/ext/couchbase/core/metrics/logging_meter.cxx +5 -5
  88. data/ext/couchbase/core/metrics/meter_wrapper.cxx +65 -63
  89. data/ext/couchbase/core/metrics/meter_wrapper.hxx +12 -10
  90. data/ext/couchbase/core/operations/document_analytics.hxx +0 -5
  91. data/ext/couchbase/core/operations/document_append.hxx +0 -4
  92. data/ext/couchbase/core/operations/document_decrement.hxx +0 -5
  93. data/ext/couchbase/core/operations/document_exists.hxx +0 -7
  94. data/ext/couchbase/core/operations/document_get.hxx +0 -7
  95. data/ext/couchbase/core/operations/document_get_all_replicas.hxx +89 -29
  96. data/ext/couchbase/core/operations/document_get_and_lock.hxx +0 -9
  97. data/ext/couchbase/core/operations/document_get_and_touch.hxx +0 -9
  98. data/ext/couchbase/core/operations/document_get_any_replica.hxx +83 -2
  99. data/ext/couchbase/core/operations/document_get_projected.cxx +3 -4
  100. data/ext/couchbase/core/operations/document_get_projected.hxx +0 -9
  101. data/ext/couchbase/core/operations/document_increment.hxx +0 -5
  102. data/ext/couchbase/core/operations/document_insert.hxx +0 -4
  103. data/ext/couchbase/core/operations/document_lookup_in.hxx +0 -9
  104. data/ext/couchbase/core/operations/document_lookup_in_all_replicas.hxx +50 -4
  105. data/ext/couchbase/core/operations/document_lookup_in_any_replica.hxx +121 -43
  106. data/ext/couchbase/core/operations/document_mutate_in.hxx +0 -5
  107. data/ext/couchbase/core/operations/document_prepend.hxx +0 -4
  108. data/ext/couchbase/core/operations/document_query.cxx +12 -12
  109. data/ext/couchbase/core/operations/document_query.hxx +0 -4
  110. data/ext/couchbase/core/operations/document_remove.hxx +0 -4
  111. data/ext/couchbase/core/operations/document_replace.hxx +0 -4
  112. data/ext/couchbase/core/operations/document_search.hxx +0 -7
  113. data/ext/couchbase/core/operations/document_touch.hxx +0 -7
  114. data/ext/couchbase/core/operations/document_unlock.hxx +0 -6
  115. data/ext/couchbase/core/operations/document_upsert.hxx +0 -4
  116. data/ext/couchbase/core/operations/document_view.cxx +2 -0
  117. data/ext/couchbase/core/operations/document_view.hxx +10 -13
  118. data/ext/couchbase/core/operations/http_noop.hxx +2 -0
  119. data/ext/couchbase/core/operations/management/analytics_dataset_create.hxx +2 -0
  120. data/ext/couchbase/core/operations/management/analytics_dataset_drop.hxx +2 -0
  121. data/ext/couchbase/core/operations/management/analytics_dataset_get_all.hxx +2 -0
  122. data/ext/couchbase/core/operations/management/analytics_dataverse_create.hxx +2 -0
  123. data/ext/couchbase/core/operations/management/analytics_dataverse_drop.hxx +2 -0
  124. data/ext/couchbase/core/operations/management/analytics_get_pending_mutations.hxx +2 -0
  125. data/ext/couchbase/core/operations/management/analytics_index_create.hxx +2 -0
  126. data/ext/couchbase/core/operations/management/analytics_index_drop.hxx +2 -0
  127. data/ext/couchbase/core/operations/management/analytics_index_get_all.hxx +2 -0
  128. data/ext/couchbase/core/operations/management/analytics_link_connect.hxx +2 -0
  129. data/ext/couchbase/core/operations/management/analytics_link_create.hxx +2 -0
  130. data/ext/couchbase/core/operations/management/analytics_link_disconnect.hxx +2 -0
  131. data/ext/couchbase/core/operations/management/analytics_link_drop.hxx +2 -0
  132. data/ext/couchbase/core/operations/management/analytics_link_get_all.hxx +2 -0
  133. data/ext/couchbase/core/operations/management/analytics_link_replace.hxx +2 -0
  134. data/ext/couchbase/core/operations/management/bucket_create.hxx +2 -0
  135. data/ext/couchbase/core/operations/management/bucket_describe.hxx +2 -0
  136. data/ext/couchbase/core/operations/management/bucket_drop.hxx +2 -0
  137. data/ext/couchbase/core/operations/management/bucket_flush.hxx +2 -0
  138. data/ext/couchbase/core/operations/management/bucket_get.hxx +2 -0
  139. data/ext/couchbase/core/operations/management/bucket_get_all.hxx +2 -0
  140. data/ext/couchbase/core/operations/management/bucket_update.hxx +2 -0
  141. data/ext/couchbase/core/operations/management/change_password.hxx +2 -0
  142. data/ext/couchbase/core/operations/management/cluster_describe.hxx +2 -0
  143. data/ext/couchbase/core/operations/management/cluster_developer_preview_enable.hxx +2 -0
  144. data/ext/couchbase/core/operations/management/collection_create.cxx +11 -11
  145. data/ext/couchbase/core/operations/management/collection_create.hxx +2 -0
  146. data/ext/couchbase/core/operations/management/collection_drop.cxx +11 -11
  147. data/ext/couchbase/core/operations/management/collection_drop.hxx +2 -0
  148. data/ext/couchbase/core/operations/management/collection_update.cxx +11 -11
  149. data/ext/couchbase/core/operations/management/collection_update.hxx +2 -0
  150. data/ext/couchbase/core/operations/management/collections_manifest_get.hxx +2 -0
  151. data/ext/couchbase/core/operations/management/error_utils.cxx +13 -7
  152. data/ext/couchbase/core/operations/management/eventing_deploy_function.hxx +2 -0
  153. data/ext/couchbase/core/operations/management/eventing_drop_function.hxx +2 -0
  154. data/ext/couchbase/core/operations/management/eventing_get_all_functions.hxx +2 -0
  155. data/ext/couchbase/core/operations/management/eventing_get_function.hxx +2 -0
  156. data/ext/couchbase/core/operations/management/eventing_get_status.hxx +2 -0
  157. data/ext/couchbase/core/operations/management/eventing_pause_function.hxx +2 -0
  158. data/ext/couchbase/core/operations/management/eventing_resume_function.hxx +2 -0
  159. data/ext/couchbase/core/operations/management/eventing_undeploy_function.hxx +2 -0
  160. data/ext/couchbase/core/operations/management/eventing_upsert_function.hxx +2 -0
  161. data/ext/couchbase/core/operations/management/freeform.hxx +2 -0
  162. data/ext/couchbase/core/operations/management/group_drop.hxx +2 -0
  163. data/ext/couchbase/core/operations/management/group_get.hxx +2 -0
  164. data/ext/couchbase/core/operations/management/group_get_all.hxx +2 -0
  165. data/ext/couchbase/core/operations/management/group_upsert.hxx +2 -0
  166. data/ext/couchbase/core/operations/management/query_index_build.hxx +2 -0
  167. data/ext/couchbase/core/operations/management/query_index_build_deferred.hxx +68 -30
  168. data/ext/couchbase/core/operations/management/query_index_create.cxx +5 -4
  169. data/ext/couchbase/core/operations/management/query_index_create.hxx +2 -0
  170. data/ext/couchbase/core/operations/management/query_index_drop.cxx +7 -6
  171. data/ext/couchbase/core/operations/management/query_index_drop.hxx +2 -0
  172. data/ext/couchbase/core/operations/management/query_index_get_all.hxx +4 -3
  173. data/ext/couchbase/core/operations/management/query_index_get_all_deferred.hxx +2 -1
  174. data/ext/couchbase/core/operations/management/role_get_all.hxx +2 -0
  175. data/ext/couchbase/core/operations/management/scope_create.cxx +12 -13
  176. data/ext/couchbase/core/operations/management/scope_create.hxx +2 -0
  177. data/ext/couchbase/core/operations/management/scope_drop.cxx +8 -9
  178. data/ext/couchbase/core/operations/management/scope_drop.hxx +2 -0
  179. data/ext/couchbase/core/operations/management/scope_get_all.hxx +2 -0
  180. data/ext/couchbase/core/operations/management/search_get_stats.hxx +2 -0
  181. data/ext/couchbase/core/operations/management/search_index_analyze_document.hxx +2 -0
  182. data/ext/couchbase/core/operations/management/search_index_control_ingest.hxx +2 -0
  183. data/ext/couchbase/core/operations/management/search_index_control_plan_freeze.hxx +2 -0
  184. data/ext/couchbase/core/operations/management/search_index_control_query.hxx +2 -0
  185. data/ext/couchbase/core/operations/management/search_index_drop.hxx +2 -0
  186. data/ext/couchbase/core/operations/management/search_index_get.hxx +2 -0
  187. data/ext/couchbase/core/operations/management/search_index_get_all.hxx +2 -0
  188. data/ext/couchbase/core/operations/management/search_index_get_documents_count.hxx +2 -0
  189. data/ext/couchbase/core/operations/management/search_index_get_stats.hxx +2 -0
  190. data/ext/couchbase/core/operations/management/search_index_upsert.hxx +2 -0
  191. data/ext/couchbase/core/operations/management/user_drop.hxx +2 -0
  192. data/ext/couchbase/core/operations/management/user_get.hxx +2 -0
  193. data/ext/couchbase/core/operations/management/user_get_all.hxx +2 -0
  194. data/ext/couchbase/core/operations/management/user_upsert.hxx +2 -0
  195. data/ext/couchbase/core/operations/management/view_index_drop.hxx +2 -0
  196. data/ext/couchbase/core/operations/management/view_index_get.hxx +2 -0
  197. data/ext/couchbase/core/operations/management/view_index_get_all.hxx +2 -0
  198. data/ext/couchbase/core/operations/management/view_index_upsert.hxx +2 -0
  199. data/ext/couchbase/core/operations/operation_traits.hxx +6 -0
  200. data/ext/couchbase/core/operations.hxx +0 -1
  201. data/ext/couchbase/core/operations_fwd.hxx +8 -0
  202. data/ext/couchbase/core/origin.cxx +67 -12
  203. data/ext/couchbase/core/origin.hxx +13 -8
  204. data/ext/couchbase/core/orphan_reporter.cxx +164 -0
  205. data/ext/couchbase/core/orphan_reporter.hxx +65 -0
  206. data/ext/couchbase/core/sasl/CMakeLists.txt +1 -0
  207. data/ext/couchbase/core/sasl/client.cc +6 -0
  208. data/ext/couchbase/core/sasl/mechanism.cc +2 -1
  209. data/ext/couchbase/core/sasl/mechanism.h +2 -1
  210. data/ext/couchbase/core/sasl/oauthbearer/oauthbearer.cc +41 -0
  211. data/ext/couchbase/core/sasl/oauthbearer/oauthbearer.h +47 -0
  212. data/ext/couchbase/core/tls_context_provider.cxx +44 -0
  213. data/ext/couchbase/core/tls_context_provider.hxx +44 -0
  214. data/ext/couchbase/core/topology/configuration.cxx +21 -0
  215. data/ext/couchbase/core/topology/configuration.hxx +28 -0
  216. data/ext/couchbase/core/tracing/attribute_helpers.hxx +45 -0
  217. data/ext/couchbase/core/tracing/constants.hxx +148 -68
  218. data/ext/couchbase/core/tracing/threshold_logging_options.hxx +0 -3
  219. data/ext/couchbase/core/tracing/threshold_logging_tracer.cxx +122 -170
  220. data/ext/couchbase/core/tracing/tracer_wrapper.cxx +17 -24
  221. data/ext/couchbase/core/tracing/tracer_wrapper.hxx +8 -10
  222. data/ext/couchbase/core/tracing/wrapper_sdk_tracer.cxx +114 -0
  223. data/ext/couchbase/core/tracing/wrapper_sdk_tracer.hxx +85 -0
  224. data/ext/couchbase/core/transactions/attempt_context_impl.cxx +16 -14
  225. data/ext/couchbase/core/transactions/attempt_context_impl.hxx +4 -4
  226. data/ext/couchbase/core/transactions/transactions.cxx +1 -1
  227. data/ext/couchbase/core/transactions/transactions_cleanup.cxx +1 -2
  228. data/ext/couchbase/core/utils/byteswap.hxx +12 -0
  229. data/ext/couchbase/core/utils/concurrent_fixed_priority_queue.hxx +102 -0
  230. data/ext/couchbase/core/utils/connection_string.cxx +2 -0
  231. data/ext/couchbase/core/utils/contains_string.cxx +61 -0
  232. data/ext/couchbase/core/utils/contains_string.hxx +26 -0
  233. data/ext/couchbase/couchbase/certificate_authenticator.hxx +1 -0
  234. data/ext/couchbase/couchbase/cluster.hxx +47 -0
  235. data/ext/couchbase/couchbase/cluster_options.hxx +16 -0
  236. data/ext/couchbase/couchbase/collection.hxx +133 -15
  237. data/ext/couchbase/couchbase/error.hxx +16 -0
  238. data/ext/couchbase/couchbase/error_codes.hxx +48 -48
  239. data/ext/couchbase/couchbase/jwt_authenticator.hxx +52 -0
  240. data/ext/couchbase/couchbase/metrics/meter.hxx +2 -1
  241. data/ext/couchbase/couchbase/metrics/otel_meter.hxx +75 -80
  242. data/ext/couchbase/couchbase/network_options.hxx +19 -0
  243. data/ext/couchbase/couchbase/node_id.hxx +123 -0
  244. data/ext/couchbase/couchbase/node_id_for_options.hxx +61 -0
  245. data/ext/couchbase/couchbase/node_ids_options.hxx +62 -0
  246. data/ext/couchbase/couchbase/password_authenticator.hxx +1 -0
  247. data/ext/couchbase/couchbase/result.hxx +42 -0
  248. data/ext/couchbase/couchbase/tracing/otel_tracer.hxx +15 -17
  249. data/ext/couchbase/couchbase/tracing/request_span.hxx +2 -2
  250. data/ext/couchbase.cxx +4 -0
  251. data/ext/extconf.rb +1 -0
  252. data/ext/rcb_analytics.cxx +157 -47
  253. data/ext/rcb_backend.cxx +118 -71
  254. data/ext/rcb_buckets.cxx +39 -16
  255. data/ext/rcb_collections.cxx +36 -12
  256. data/ext/rcb_crud.cxx +589 -294
  257. data/ext/rcb_hdr_histogram.cxx +219 -0
  258. data/ext/rcb_hdr_histogram.hxx +28 -0
  259. data/ext/rcb_logger.cxx +15 -17
  260. data/ext/rcb_multi.cxx +142 -59
  261. data/ext/rcb_observability.cxx +132 -0
  262. data/ext/rcb_observability.hxx +49 -0
  263. data/ext/rcb_query.cxx +77 -27
  264. data/ext/rcb_search.cxx +92 -31
  265. data/ext/rcb_users.cxx +69 -26
  266. data/ext/rcb_utils.cxx +91 -0
  267. data/ext/rcb_utils.hxx +141 -168
  268. data/ext/rcb_views.cxx +36 -12
  269. data/lib/active_support/cache/couchbase_store.rb +6 -6
  270. data/lib/couchbase/authenticator.rb +14 -0
  271. data/lib/couchbase/binary_collection.rb +37 -22
  272. data/lib/couchbase/bucket.rb +46 -31
  273. data/lib/couchbase/cluster.rb +146 -61
  274. data/lib/couchbase/collection.rb +257 -186
  275. data/lib/couchbase/datastructures/couchbase_list.rb +82 -50
  276. data/lib/couchbase/datastructures/couchbase_map.rb +87 -50
  277. data/lib/couchbase/datastructures/couchbase_queue.rb +65 -38
  278. data/lib/couchbase/datastructures/couchbase_set.rb +58 -41
  279. data/lib/couchbase/deprecations.rb +1 -1
  280. data/lib/couchbase/diagnostics.rb +8 -8
  281. data/lib/couchbase/errors.rb +7 -1
  282. data/lib/couchbase/json_transcoder.rb +1 -1
  283. data/lib/couchbase/management/analytics_index_manager.rb +90 -59
  284. data/lib/couchbase/management/bucket_manager.rb +73 -45
  285. data/lib/couchbase/management/collection_manager.rb +86 -43
  286. data/lib/couchbase/management/collection_query_index_manager.rb +56 -33
  287. data/lib/couchbase/management/query_index_manager.rb +88 -36
  288. data/lib/couchbase/management/scope_search_index_manager.rb +119 -52
  289. data/lib/couchbase/management/search_index_manager.rb +401 -178
  290. data/lib/couchbase/management/user_manager.rb +343 -174
  291. data/lib/couchbase/management/view_index_manager.rb +166 -73
  292. data/lib/couchbase/metrics/logging_meter.rb +108 -0
  293. data/lib/couchbase/metrics/logging_value_recorder.rb +50 -0
  294. data/lib/couchbase/metrics/meter.rb +27 -0
  295. data/lib/couchbase/metrics/noop_meter.rb +30 -0
  296. data/lib/couchbase/metrics/noop_value_recorder.rb +27 -0
  297. data/lib/couchbase/metrics/value_recorder.rb +25 -0
  298. data/lib/couchbase/options.rb +71 -5
  299. data/lib/couchbase/protostellar/client.rb +0 -2
  300. data/lib/couchbase/protostellar/cluster.rb +7 -0
  301. data/lib/couchbase/protostellar/generated/admin/analytics/v1/analytics_pb.rb +54 -0
  302. data/lib/couchbase/protostellar/generated/admin/analytics/v1/analytics_services_pb.rb +51 -0
  303. data/lib/couchbase/protostellar/generated/admin/bucket/v1/bucket_pb.rb +5 -24
  304. data/lib/couchbase/protostellar/generated/admin/bucket/v1/bucket_services_pb.rb +16 -0
  305. data/lib/couchbase/protostellar/generated/admin/collection/v1/collection_pb.rb +5 -24
  306. data/lib/couchbase/protostellar/generated/admin/collection/v1/collection_services_pb.rb +16 -0
  307. data/lib/couchbase/protostellar/generated/admin/query/v1/query_pb.rb +5 -24
  308. data/lib/couchbase/protostellar/generated/admin/query/v1/query_services_pb.rb +18 -0
  309. data/lib/couchbase/protostellar/generated/admin/search/v1/search_pb.rb +2 -23
  310. data/lib/couchbase/protostellar/generated/admin/search/v1/search_services_pb.rb +23 -0
  311. data/lib/couchbase/protostellar/generated/analytics/v1/analytics_pb.rb +4 -25
  312. data/lib/couchbase/protostellar/generated/analytics/v1/analytics_services_pb.rb +10 -0
  313. data/lib/couchbase/protostellar/generated/internal/hooks/v1/hooks_pb.rb +6 -25
  314. data/lib/couchbase/protostellar/generated/internal/hooks/v1/hooks_services_pb.rb +18 -0
  315. data/lib/couchbase/protostellar/generated/internal/xdcr/v1/xdcr_pb.rb +46 -0
  316. data/lib/couchbase/protostellar/generated/internal/xdcr/v1/xdcr_services_pb.rb +56 -0
  317. data/lib/couchbase/protostellar/generated/kv/v1/kv_pb.rb +3 -26
  318. data/lib/couchbase/protostellar/generated/kv/v1/kv_services_pb.rb +47 -0
  319. data/lib/couchbase/protostellar/generated/query/v1/query_pb.rb +4 -26
  320. data/lib/couchbase/protostellar/generated/query/v1/query_services_pb.rb +10 -0
  321. data/lib/couchbase/protostellar/generated/routing/v2/routing_pb.rb +26 -0
  322. data/lib/couchbase/protostellar/generated/routing/v2/routing_services_pb.rb +43 -0
  323. data/lib/couchbase/protostellar/generated/search/v1/search_pb.rb +5 -26
  324. data/lib/couchbase/protostellar/generated/search/v1/search_services_pb.rb +11 -0
  325. data/lib/couchbase/protostellar/generated/transactions/v1/transactions_pb.rb +2 -23
  326. data/lib/couchbase/protostellar/generated/transactions/v1/transactions_services_pb.rb +30 -0
  327. data/lib/couchbase/protostellar/generated/view/v1/view_pb.rb +2 -23
  328. data/lib/couchbase/protostellar/generated/view/v1/view_services_pb.rb +9 -0
  329. data/lib/couchbase/protostellar/request_generator/admin/collection.rb +4 -2
  330. data/lib/couchbase/protostellar/request_generator/admin/query.rb +2 -0
  331. data/lib/couchbase/protostellar/request_generator/kv.rb +1 -1
  332. data/lib/couchbase/protostellar/scope.rb +4 -0
  333. data/lib/couchbase/scope.rb +62 -48
  334. data/lib/couchbase/search_options.rb +18 -18
  335. data/lib/couchbase/tracing/noop_span.rb +29 -0
  336. data/lib/couchbase/tracing/noop_tracer.rb +29 -0
  337. data/lib/couchbase/tracing/request_span.rb +34 -0
  338. data/lib/couchbase/tracing/request_tracer.rb +28 -0
  339. data/lib/couchbase/tracing/threshold_logging_span.rb +112 -0
  340. data/lib/couchbase/tracing/threshold_logging_tracer.rb +231 -0
  341. data/lib/couchbase/utils/hdr_histogram.rb +55 -0
  342. data/lib/couchbase/utils/observability.rb +263 -0
  343. data/lib/couchbase/utils/observability_constants.rb +200 -0
  344. data/lib/couchbase/utils/stdlib_logger_adapter.rb +1 -3
  345. data/lib/couchbase/version.rb +1 -1
  346. data/lib/couchbase.rb +2 -2
  347. metadata +72 -8
  348. data/lib/couchbase/protostellar/generated/routing/v1/routing_pb.rb +0 -52
  349. data/lib/couchbase/protostellar/generated/routing/v1/routing_services_pb.rb +0 -30
@@ -0,0 +1,200 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2025-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
+ module Couchbase
18
+ module Observability # rubocop:disable Metrics/ModuleLength
19
+ OP_GET = "get"
20
+ OP_GET_MULTI = "get_multi"
21
+ OP_GET_AND_LOCK = "get_and_lock"
22
+ OP_GET_AND_TOUCH = "get_and_touch"
23
+ OP_GET_ALL_REPLICAS = "get_all_replicas"
24
+ OP_GET_ANY_REPLICA = "get_any_replica"
25
+ OP_GET_REPLICA = "get_replica"
26
+ OP_EXISTS = "exists"
27
+ OP_REPLACE = "replace"
28
+ OP_UPSERT = "upsert"
29
+ OP_UPSERT_MULTI = "upsert_multi"
30
+ OP_REMOVE = "remove"
31
+ OP_REMOVE_MULTI = "remove_multi"
32
+ OP_INSERT = "insert"
33
+ OP_TOUCH = "touch"
34
+ OP_UNLOCK = "unlock"
35
+ OP_LOOKUP_IN = "lookup_in"
36
+ OP_LOOKUP_IN_ALL_REPLICAS = "lookup_in_all_replicas"
37
+ OP_LOOKUP_IN_ANY_REPLICA = "lookup_in_any_replica"
38
+ OP_LOOKUP_IN_REPLICA = "lookup_in_replica"
39
+ OP_MUTATE_IN = "mutate_in"
40
+ OP_SCAN = "scan"
41
+ OP_INCREMENT = "increment"
42
+ OP_DECREMENT = "decrement"
43
+ OP_APPEND = "append"
44
+ OP_PREPEND = "prepend"
45
+
46
+ OP_QUERY = "query"
47
+ OP_SEARCH_QUERY = "search"
48
+ OP_ANALYTICS_QUERY = "analytics"
49
+ OP_VIEW_QUERY = "views"
50
+
51
+ OP_PING = "ping"
52
+ OP_DIAGNOSTICS = "diagnostics"
53
+
54
+ OP_BM_CREATE_BUCKET = "manager_buckets_create_bucket"
55
+ OP_BM_DROP_BUCKET = "manager_buckets_drop_bucket"
56
+ OP_BM_FLUSH_BUCKET = "manager_buckets_flush_bucket"
57
+ OP_BM_GET_ALL_BUCKETS = "manager_buckets_get_all_buckets"
58
+ OP_BM_GET_BUCKET = "manager_buckets_get_bucket"
59
+ OP_BM_UPDATE_BUCKET = "manager_buckets_update_bucket"
60
+
61
+ OP_CM_CREATE_COLLECTION = "manager_collections_create_collection"
62
+ OP_CM_UPDATE_COLLECTION = "manager_collections_update_collection"
63
+ OP_CM_DROP_COLLECTION = "manager_collections_drop_collection"
64
+ OP_CM_CREATE_SCOPE = "manager_collections_create_scope"
65
+ OP_CM_DROP_SCOPE = "manager_collections_drop_scope"
66
+ OP_CM_GET_ALL_SCOPES = "manager_collections_get_all_scopes"
67
+ OP_CM_GET_SCOPE = "manager_collections_get_scope"
68
+
69
+ OP_QM_BUILD_DEFERRED_INDEXES = "manager_query_build_deferred_indexes"
70
+ OP_QM_CREATE_INDEX = "manager_query_create_index"
71
+ OP_QM_CREATE_PRIMARY_INDEX = "manager_query_create_primary_index"
72
+ OP_QM_DROP_INDEX = "manager_query_drop_index"
73
+ OP_QM_DROP_PRIMARY_INDEX = "manager_query_drop_primary_index"
74
+ OP_QM_GET_ALL_INDEXES = "manager_query_get_all_indexes"
75
+ OP_QM_WATCH_INDEXES = "manager_query_watch_indexes"
76
+
77
+ OP_AM_CREATE_DATAVERSE = "manager_analytics_create_dataverse"
78
+ OP_AM_DROP_DATAVERSE = "manager_analytics_drop_dataverse"
79
+ OP_AM_CREATE_DATASET = "manager_analytics_create_dataset"
80
+ OP_AM_DROP_DATASET = "manager_analytics_drop_dataset"
81
+ OP_AM_GET_ALL_DATASETS = "manager_analytics_get_all_datasets"
82
+ OP_AM_CREATE_INDEX = "manager_analytics_create_index"
83
+ OP_AM_DROP_INDEX = "manager_analytics_drop_index"
84
+ OP_AM_GET_ALL_INDEXES = "manager_analytics_get_all_indexes"
85
+ OP_AM_CONNECT_LINK = "manager_analytics_connect_link"
86
+ OP_AM_DISCONNECT_LINK = "manager_analytics_disconnect_link"
87
+ OP_AM_GET_PENDING_MUTATIONS = "manager_analytics_get_pending_mutations"
88
+ OP_AM_CREATE_LINK = "manager_analytics_create_link"
89
+ OP_AM_REPLACE_LINK = "manager_analytics_replace_link"
90
+ OP_AM_DROP_LINK = "manager_analytics_drop_link"
91
+ OP_AM_GET_LINKS = "manager_analytics_get_links"
92
+
93
+ OP_SM_GET_INDEX = "manager_search_get_index"
94
+ OP_SM_GET_ALL_INDEXES = "manager_search_get_all_indexes"
95
+ OP_SM_UPSERT_INDEX = "manager_search_upsert_index"
96
+ OP_SM_DROP_INDEX = "manager_search_drop_index"
97
+ OP_SM_GET_INDEXED_DOCUMENTS_COUNT = "manager_search_get_indexed_documents_count"
98
+ OP_SM_GET_INDEX_STATS = "manager_search_get_index_stats"
99
+ OP_SM_GET_STATS = "manager_search_get_stats"
100
+ OP_SM_PAUSE_INGEST = "manager_search_pause_index"
101
+ OP_SM_RESUME_INGEST = "manager_search_resume_index"
102
+ OP_SM_ALLOW_QUERYING = "manager_search_allow_querying"
103
+ OP_SM_DISALLOW_QUERYING = "manager_search_disallow_querying"
104
+ OP_SM_FREEZE_PLAN = "manager_search_freeze_plan"
105
+ OP_SM_UNFREEZE_PLAN = "manager_search_unfreeze_plan"
106
+ OP_SM_ANALYZE_DOCUMENT = "manager_search_analyze_document"
107
+
108
+ OP_UM_DROP_GROUP = "manager_users_drop_group"
109
+ OP_UM_DROP_USER = "manager_users_drop_user"
110
+ OP_UM_GET_ALL_GROUPS = "manager_users_get_all_groups"
111
+ OP_UM_GET_ALL_USERS = "manager_users_get_all_users"
112
+ OP_UM_GET_GROUP = "manager_users_get_group"
113
+ OP_UM_GET_ROLES = "manager_users_get_roles"
114
+ OP_UM_GET_USER = "manager_users_get_user"
115
+ OP_UM_UPSERT_GROUP = "manager_users_upsert_group"
116
+ OP_UM_UPSERT_USER = "manager_users_upsert_user"
117
+ OP_UM_CHANGE_PASSWORD = "manager_users_change_password"
118
+
119
+ OP_VM_GET_DESIGN_DOCUMENT = "manager_views_get_design_document"
120
+ OP_VM_GET_ALL_DESIGN_DOCUMENTS = "manager_views_get_all_design_documents"
121
+ OP_VM_UPSERT_DESIGN_DOCUMENT = "manager_views_upsert_design_document"
122
+ OP_VM_DROP_DESIGN_DOCUMENT = "manager_views_drop_design_document"
123
+ OP_VM_PUBLISH_DESIGN_DOCUMENT = "manager_views_publish_design_document"
124
+
125
+ OP_LIST_EACH = "list_each"
126
+ OP_LIST_LENGTH = "list_length"
127
+ OP_LIST_PUSH = "list_push"
128
+ OP_LIST_UNSHIFT = "list_unshift"
129
+ OP_LIST_INSERT = "list_insert"
130
+ OP_LIST_AT = "list_at"
131
+ OP_LIST_DELETE_AT = "list_delete_at"
132
+ OP_LIST_CLEAR = "list_clear"
133
+
134
+ OP_MAP_EACH = "map_each"
135
+ OP_MAP_LENGTH = "map_length"
136
+ OP_MAP_CLEAR = "map_clear"
137
+ OP_MAP_FETCH = "map_fetch"
138
+ OP_MAP_DELETE = "map_delete"
139
+ OP_MAP_KEY_EXISTS = "map_key"
140
+ OP_MAP_STORE = "map_store"
141
+
142
+ OP_QUEUE_EACH = "queue_each"
143
+ OP_QUEUE_LENGTH = "queue_length"
144
+ OP_QUEUE_CLEAR = "queue_clear"
145
+ OP_QUEUE_PUSH = "queue_push"
146
+ OP_QUEUE_POP = "queue_pop"
147
+
148
+ OP_SET_EACH = "set_each"
149
+ OP_SET_LENGTH = "set_length"
150
+ OP_SET_ADD = "set_add"
151
+ OP_SET_CLEAR = "set_clear"
152
+ OP_SET_DELETE = "set_delete"
153
+
154
+ STEP_REQUEST_ENCODING = "request_encoding"
155
+ STEP_DISPATCH_TO_SERVER = "dispatch_to_server"
156
+
157
+ # Common attributes
158
+ ATTR_SYSTEM_NAME = "db.system.name"
159
+ ATTR_CLUSTER_NAME = "couchbase.cluster.name"
160
+ ATTR_CLUSTER_UUID = "couchbase.cluster.uuid"
161
+
162
+ # Operation-level attributes
163
+ ATTR_OPERATION_NAME = "db.operation.name"
164
+ ATTR_SERVICE = "couchbase.service"
165
+ ATTR_BUCKET_NAME = "db.namespace"
166
+ ATTR_SCOPE_NAME = "couchbase.scope.name"
167
+ ATTR_COLLECTION_NAME = "couchbase.collection.name"
168
+ ATTR_RETRIES = "couchbase.retries"
169
+ ATTR_DURABILITY = "couchbase.durability"
170
+ ATTR_QUERY_STATEMENT = "db.query.text"
171
+ ATTR_ERROR_TYPE = "error.type"
172
+
173
+ # Dispatch-level attributes
174
+ ATTR_LOCAL_ID = "couchbase.local_id"
175
+ ATTR_OPERATION_ID = "couchbase.operation_id"
176
+ ATTR_PEER_ADDRESS = "network.peer.address"
177
+ ATTR_PEER_PORT = "network.peer.port"
178
+ ATTR_SERVER_DURATION = "couchbase.server_duration"
179
+
180
+ # Reserved attributes
181
+ ATTR_RESERVED_UNIT = "__unit"
182
+
183
+ ATTR_VALUE_SYSTEM_NAME = "couchbase"
184
+
185
+ ATTR_VALUE_DURABILITY_MAJORITY = "majority"
186
+ ATTR_VALUE_DURABILITY_MAJORITY_AND_PERSIST_TO_ACTIVE = "majority_and_persist_active"
187
+ ATTR_VALUE_DURABILITY_PERSIST_TO_MAJORITY = "persist_majority"
188
+
189
+ ATTR_VALUE_SERVICE_KV = "kv"
190
+ ATTR_VALUE_SERVICE_QUERY = "query"
191
+ ATTR_VALUE_SERVICE_SEARCH = "search"
192
+ ATTR_VALUE_SERVICE_VIEWS = "views"
193
+ ATTR_VALUE_SERVICE_ANALYTICS = "analytics"
194
+ ATTR_VALUE_SERVICE_MANAGEMENT = "management"
195
+
196
+ ATTR_VALUE_RESERVED_UNIT_SECONDS = "s"
197
+
198
+ METER_NAME_OPERATION_DURATION = "db.client.operation.duration"
199
+ end
200
+ end
@@ -43,9 +43,7 @@ module Couchbase
43
43
  )
44
44
  end
45
45
 
46
- private
47
-
48
- def map_spdlog_level(level)
46
+ def self.map_spdlog_level(level)
49
47
  case level
50
48
  when :trace, :debug
51
49
  ::Logger::Severity::DEBUG
@@ -21,5 +21,5 @@ module Couchbase
21
21
  # $ ruby -rcouchbase -e 'pp Couchbase::VERSION'
22
22
  # {:sdk=>"3.4.0", :ruby_abi=>"3.1.0", :revision=>"416fe68e6029ec8a4c40611cf6e6b30d3b90d20f"}
23
23
  VERSION = {} unless defined?(VERSION) # rubocop:disable Style/MutableConstant
24
- VERSION.update(:sdk => "3.7.0")
24
+ VERSION.update(:sdk => "3.8.1")
25
25
  end
data/lib/couchbase.rb CHANGED
@@ -25,8 +25,8 @@ require "couchbase/railtie" if defined?(Rails)
25
25
 
26
26
  # @!macro uncommitted
27
27
  # @couchbase.stability
28
- # Uncommitted: This API may change in the future.
28
+ # **Uncommitted:** This API may change in the future.
29
29
  #
30
30
  # @!macro volatile
31
31
  # @couchbase.stability
32
- # Volatile: This API is subject to change at any time.
32
+ # **Volatile:** This API is subject to change at any time.
metadata CHANGED
@@ -1,15 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: couchbase
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.7.0
4
+ version: 3.8.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sergey Avseyev
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2025-09-29 00:00:00.000000000 Z
11
+ date: 2026-07-01 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: concurrent-ruby
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '1.3'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '1.3'
13
27
  - !ruby/object:Gem::Dependency
14
28
  name: grpc
15
29
  requirement: !ruby/object:Gem::Requirement
@@ -2318,6 +2332,8 @@ files:
2318
2332
  - ext/couchbase/core/cluster_agent_config.hxx
2319
2333
  - ext/couchbase/core/cluster_credentials.cxx
2320
2334
  - ext/couchbase/core/cluster_credentials.hxx
2335
+ - ext/couchbase/core/cluster_label_listener.cxx
2336
+ - ext/couchbase/core/cluster_label_listener.hxx
2321
2337
  - ext/couchbase/core/cluster_options.cxx
2322
2338
  - ext/couchbase/core/cluster_options.hxx
2323
2339
  - ext/couchbase/core/cluster_options_fwd.hxx
@@ -2361,6 +2377,7 @@ files:
2361
2377
  - ext/couchbase/core/crypto/CMakeLists.txt
2362
2378
  - ext/couchbase/core/crypto/cbcrypto.cc
2363
2379
  - ext/couchbase/core/crypto/cbcrypto.h
2380
+ - ext/couchbase/core/deprecation_utils.hxx
2364
2381
  - ext/couchbase/core/design_document_namespace.hxx
2365
2382
  - ext/couchbase/core/design_document_namespace_fmt.hxx
2366
2383
  - ext/couchbase/core/diagnostics.hxx
@@ -2373,6 +2390,7 @@ files:
2373
2390
  - ext/couchbase/core/document_id.hxx
2374
2391
  - ext/couchbase/core/document_id_fmt.hxx
2375
2392
  - ext/couchbase/core/durability_options.hxx
2393
+ - ext/couchbase/core/error.hxx
2376
2394
  - ext/couchbase/core/error_context/analytics.hxx
2377
2395
  - ext/couchbase/core/error_context/analytics_json.hxx
2378
2396
  - ext/couchbase/core/error_context/base_error_context.hxx
@@ -2468,6 +2486,7 @@ files:
2468
2486
  - ext/couchbase/core/impl/internal_search_row_locations.hxx
2469
2487
  - ext/couchbase/core/impl/internal_term_facet_result.cxx
2470
2488
  - ext/couchbase/core/impl/internal_term_facet_result.hxx
2489
+ - ext/couchbase/core/impl/invoke_with_node_id.hxx
2471
2490
  - ext/couchbase/core/impl/key_value_error_category.cxx
2472
2491
  - ext/couchbase/core/impl/key_value_error_context.cxx
2473
2492
  - ext/couchbase/core/impl/lookup_in_all_replicas.hxx
@@ -2480,10 +2499,14 @@ files:
2480
2499
  - ext/couchbase/core/impl/match_phrase_query.cxx
2481
2500
  - ext/couchbase/core/impl/match_query.cxx
2482
2501
  - ext/couchbase/core/impl/network_error_category.cxx
2502
+ - ext/couchbase/core/impl/node_id.cxx
2503
+ - ext/couchbase/core/impl/node_id.hxx
2483
2504
  - ext/couchbase/core/impl/numeric_range.cxx
2484
2505
  - ext/couchbase/core/impl/numeric_range_facet.cxx
2485
2506
  - ext/couchbase/core/impl/numeric_range_facet_result.cxx
2486
2507
  - ext/couchbase/core/impl/numeric_range_query.cxx
2508
+ - ext/couchbase/core/impl/observability_recorder.cxx
2509
+ - ext/couchbase/core/impl/observability_recorder.hxx
2487
2510
  - ext/couchbase/core/impl/observe_poll.cxx
2488
2511
  - ext/couchbase/core/impl/observe_poll.hxx
2489
2512
  - ext/couchbase/core/impl/observe_seqno.cxx
@@ -2557,6 +2580,7 @@ files:
2557
2580
  - ext/couchbase/core/impl/vector_search.cxx
2558
2581
  - ext/couchbase/core/impl/view_error_category.cxx
2559
2582
  - ext/couchbase/core/impl/wildcard_query.cxx
2583
+ - ext/couchbase/core/impl/with_cancellation.hxx
2560
2584
  - ext/couchbase/core/impl/with_legacy_durability.hxx
2561
2585
  - ext/couchbase/core/io/config_tracker.cxx
2562
2586
  - ext/couchbase/core/io/config_tracker.hxx
@@ -2667,6 +2691,7 @@ files:
2667
2691
  - ext/couchbase/core/meta/features.hxx
2668
2692
  - ext/couchbase/core/meta/version.cxx
2669
2693
  - ext/couchbase/core/meta/version.hxx
2694
+ - ext/couchbase/core/metrics/constants.hxx
2670
2695
  - ext/couchbase/core/metrics/logging_meter.cxx
2671
2696
  - ext/couchbase/core/metrics/logging_meter.hxx
2672
2697
  - ext/couchbase/core/metrics/logging_meter_options.hxx
@@ -2886,6 +2911,8 @@ files:
2886
2911
  - ext/couchbase/core/operations_fwd.hxx
2887
2912
  - ext/couchbase/core/origin.cxx
2888
2913
  - ext/couchbase/core/origin.hxx
2914
+ - ext/couchbase/core/orphan_reporter.cxx
2915
+ - ext/couchbase/core/orphan_reporter.hxx
2889
2916
  - ext/couchbase/core/pending_operation.hxx
2890
2917
  - ext/couchbase/core/pending_operation_connection_info.hxx
2891
2918
  - ext/couchbase/core/ping_collector.hxx
@@ -3012,6 +3039,8 @@ files:
3012
3039
  - ext/couchbase/core/sasl/error_fmt.h
3013
3040
  - ext/couchbase/core/sasl/mechanism.cc
3014
3041
  - ext/couchbase/core/sasl/mechanism.h
3042
+ - ext/couchbase/core/sasl/oauthbearer/oauthbearer.cc
3043
+ - ext/couchbase/core/sasl/oauthbearer/oauthbearer.h
3015
3044
  - ext/couchbase/core/sasl/plain/plain.cc
3016
3045
  - ext/couchbase/core/sasl/plain/plain.h
3017
3046
  - ext/couchbase/core/sasl/scram-sha/scram-sha.cc
@@ -3031,6 +3060,8 @@ files:
3031
3060
  - ext/couchbase/core/stats_options.hxx
3032
3061
  - ext/couchbase/core/subdoc_options.hxx
3033
3062
  - ext/couchbase/core/timeout_defaults.hxx
3063
+ - ext/couchbase/core/tls_context_provider.cxx
3064
+ - ext/couchbase/core/tls_context_provider.hxx
3034
3065
  - ext/couchbase/core/tls_verify_mode.hxx
3035
3066
  - ext/couchbase/core/topology/capabilities.cxx
3036
3067
  - ext/couchbase/core/topology/capabilities.hxx
@@ -3044,6 +3075,7 @@ files:
3044
3075
  - ext/couchbase/core/topology/configuration_json.hxx
3045
3076
  - ext/couchbase/core/topology/error_map.hxx
3046
3077
  - ext/couchbase/core/topology/error_map_json.hxx
3078
+ - ext/couchbase/core/tracing/attribute_helpers.hxx
3047
3079
  - ext/couchbase/core/tracing/constants.hxx
3048
3080
  - ext/couchbase/core/tracing/noop_tracer.hxx
3049
3081
  - ext/couchbase/core/tracing/threshold_logging_options.hxx
@@ -3051,6 +3083,8 @@ files:
3051
3083
  - ext/couchbase/core/tracing/threshold_logging_tracer.hxx
3052
3084
  - ext/couchbase/core/tracing/tracer_wrapper.cxx
3053
3085
  - ext/couchbase/core/tracing/tracer_wrapper.hxx
3086
+ - ext/couchbase/core/tracing/wrapper_sdk_tracer.cxx
3087
+ - ext/couchbase/core/tracing/wrapper_sdk_tracer.hxx
3054
3088
  - ext/couchbase/core/transactions.hxx
3055
3089
  - ext/couchbase/core/transactions/active_transaction_record.cxx
3056
3090
  - ext/couchbase/core/transactions/active_transaction_record.hxx
@@ -3120,8 +3154,11 @@ files:
3120
3154
  - ext/couchbase/core/utils/binary.cxx
3121
3155
  - ext/couchbase/core/utils/binary.hxx
3122
3156
  - ext/couchbase/core/utils/byteswap.hxx
3157
+ - ext/couchbase/core/utils/concurrent_fixed_priority_queue.hxx
3123
3158
  - ext/couchbase/core/utils/connection_string.cxx
3124
3159
  - ext/couchbase/core/utils/connection_string.hxx
3160
+ - ext/couchbase/core/utils/contains_string.cxx
3161
+ - ext/couchbase/core/utils/contains_string.hxx
3125
3162
  - ext/couchbase/core/utils/crc32.hxx
3126
3163
  - ext/couchbase/core/utils/duration_parser.cxx
3127
3164
  - ext/couchbase/core/utils/duration_parser.hxx
@@ -3283,6 +3320,7 @@ files:
3283
3320
  - ext/couchbase/couchbase/increment_options.hxx
3284
3321
  - ext/couchbase/couchbase/insert_options.hxx
3285
3322
  - ext/couchbase/couchbase/ip_protocol.hxx
3323
+ - ext/couchbase/couchbase/jwt_authenticator.hxx
3286
3324
  - ext/couchbase/couchbase/logger.hxx
3287
3325
  - ext/couchbase/couchbase/lookup_in_all_replicas_options.hxx
3288
3326
  - ext/couchbase/couchbase/lookup_in_any_replica_options.hxx
@@ -3313,6 +3351,9 @@ files:
3313
3351
  - ext/couchbase/couchbase/mutation_state.hxx
3314
3352
  - ext/couchbase/couchbase/mutation_token.hxx
3315
3353
  - ext/couchbase/couchbase/network_options.hxx
3354
+ - ext/couchbase/couchbase/node_id.hxx
3355
+ - ext/couchbase/couchbase/node_id_for_options.hxx
3356
+ - ext/couchbase/couchbase/node_ids_options.hxx
3316
3357
  - ext/couchbase/couchbase/numeric_range.hxx
3317
3358
  - ext/couchbase/couchbase/numeric_range_facet.hxx
3318
3359
  - ext/couchbase/couchbase/numeric_range_facet_result.hxx
@@ -3463,10 +3504,14 @@ files:
3463
3504
  - ext/rcb_exceptions.hxx
3464
3505
  - ext/rcb_extras.cxx
3465
3506
  - ext/rcb_extras.hxx
3507
+ - ext/rcb_hdr_histogram.cxx
3508
+ - ext/rcb_hdr_histogram.hxx
3466
3509
  - ext/rcb_logger.cxx
3467
3510
  - ext/rcb_logger.hxx
3468
3511
  - ext/rcb_multi.cxx
3469
3512
  - ext/rcb_multi.hxx
3513
+ - ext/rcb_observability.cxx
3514
+ - ext/rcb_observability.hxx
3470
3515
  - ext/rcb_query.cxx
3471
3516
  - ext/rcb_query.hxx
3472
3517
  - ext/rcb_range_scan.cxx
@@ -3516,6 +3561,12 @@ files:
3516
3561
  - lib/couchbase/management/search_index_manager.rb
3517
3562
  - lib/couchbase/management/user_manager.rb
3518
3563
  - lib/couchbase/management/view_index_manager.rb
3564
+ - lib/couchbase/metrics/logging_meter.rb
3565
+ - lib/couchbase/metrics/logging_value_recorder.rb
3566
+ - lib/couchbase/metrics/meter.rb
3567
+ - lib/couchbase/metrics/noop_meter.rb
3568
+ - lib/couchbase/metrics/noop_value_recorder.rb
3569
+ - lib/couchbase/metrics/value_recorder.rb
3519
3570
  - lib/couchbase/mutation_state.rb
3520
3571
  - lib/couchbase/options.rb
3521
3572
  - lib/couchbase/protostellar.rb
@@ -3527,6 +3578,8 @@ files:
3527
3578
  - lib/couchbase/protostellar/connect_options.rb
3528
3579
  - lib/couchbase/protostellar/error_handling.rb
3529
3580
  - lib/couchbase/protostellar/generated.rb
3581
+ - lib/couchbase/protostellar/generated/admin/analytics/v1/analytics_pb.rb
3582
+ - lib/couchbase/protostellar/generated/admin/analytics/v1/analytics_services_pb.rb
3530
3583
  - lib/couchbase/protostellar/generated/admin/bucket/v1/bucket_pb.rb
3531
3584
  - lib/couchbase/protostellar/generated/admin/bucket/v1/bucket_services_pb.rb
3532
3585
  - lib/couchbase/protostellar/generated/admin/collection/v1/collection_pb.rb
@@ -3539,12 +3592,14 @@ files:
3539
3592
  - lib/couchbase/protostellar/generated/analytics/v1/analytics_services_pb.rb
3540
3593
  - lib/couchbase/protostellar/generated/internal/hooks/v1/hooks_pb.rb
3541
3594
  - lib/couchbase/protostellar/generated/internal/hooks/v1/hooks_services_pb.rb
3595
+ - lib/couchbase/protostellar/generated/internal/xdcr/v1/xdcr_pb.rb
3596
+ - lib/couchbase/protostellar/generated/internal/xdcr/v1/xdcr_services_pb.rb
3542
3597
  - lib/couchbase/protostellar/generated/kv/v1/kv_pb.rb
3543
3598
  - lib/couchbase/protostellar/generated/kv/v1/kv_services_pb.rb
3544
3599
  - lib/couchbase/protostellar/generated/query/v1/query_pb.rb
3545
3600
  - lib/couchbase/protostellar/generated/query/v1/query_services_pb.rb
3546
- - lib/couchbase/protostellar/generated/routing/v1/routing_pb.rb
3547
- - lib/couchbase/protostellar/generated/routing/v1/routing_services_pb.rb
3601
+ - lib/couchbase/protostellar/generated/routing/v2/routing_pb.rb
3602
+ - lib/couchbase/protostellar/generated/routing/v2/routing_services_pb.rb
3548
3603
  - lib/couchbase/protostellar/generated/search/v1/search_pb.rb
3549
3604
  - lib/couchbase/protostellar/generated/search/v1/search_services_pb.rb
3550
3605
  - lib/couchbase/protostellar/generated/transactions/v1/transactions_pb.rb
@@ -3591,9 +3646,18 @@ files:
3591
3646
  - lib/couchbase/scope.rb
3592
3647
  - lib/couchbase/search_options.rb
3593
3648
  - lib/couchbase/subdoc.rb
3649
+ - lib/couchbase/tracing/noop_span.rb
3650
+ - lib/couchbase/tracing/noop_tracer.rb
3651
+ - lib/couchbase/tracing/request_span.rb
3652
+ - lib/couchbase/tracing/request_tracer.rb
3653
+ - lib/couchbase/tracing/threshold_logging_span.rb
3654
+ - lib/couchbase/tracing/threshold_logging_tracer.rb
3594
3655
  - lib/couchbase/transcoder_flags.rb
3595
3656
  - lib/couchbase/utils.rb
3596
3657
  - lib/couchbase/utils/generic_logger_adapter.rb
3658
+ - lib/couchbase/utils/hdr_histogram.rb
3659
+ - lib/couchbase/utils/observability.rb
3660
+ - lib/couchbase/utils/observability_constants.rb
3597
3661
  - lib/couchbase/utils/stdlib_logger_adapter.rb
3598
3662
  - lib/couchbase/utils/time.rb
3599
3663
  - lib/couchbase/version.rb
@@ -3606,9 +3670,9 @@ metadata:
3606
3670
  homepage_uri: https://docs.couchbase.com/ruby-sdk/current/hello-world/start-using-sdk.html
3607
3671
  bug_tracker_uri: https://jira.issues.couchbase.com/browse/RCBC
3608
3672
  mailing_list_uri: https://www.couchbase.com/forums/c/ruby-sdk
3609
- source_code_uri: https://github.com/couchbase/couchbase-ruby-client/tree/3.7.0
3610
- changelog_uri: https://github.com/couchbase/couchbase-ruby-client/releases/tag/3.7.0
3611
- documentation_uri: https://docs.couchbase.com/sdk-api/couchbase-ruby-client-3.7.0/index.html
3673
+ source_code_uri: https://github.com/couchbase/couchbase-ruby-client/tree/3.8.1
3674
+ changelog_uri: https://github.com/couchbase/couchbase-ruby-client/releases/tag/3.8.1
3675
+ documentation_uri: https://docs.couchbase.com/sdk-api/couchbase-ruby-client-3.8.1/index.html
3612
3676
  github_repo: https://github.com/couchbase/couchbase-ruby-client
3613
3677
  rubygems_mfa_required: 'true'
3614
3678
  post_install_message:
@@ -3621,7 +3685,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
3621
3685
  requirements:
3622
3686
  - - ">"
3623
3687
  - !ruby/object:Gem::Version
3624
- version: '3.1'
3688
+ version: '3.2'
3625
3689
  required_rubygems_version: !ruby/object:Gem::Requirement
3626
3690
  requirements:
3627
3691
  - - ">="
@@ -1,52 +0,0 @@
1
- # frozen_string_literal: true
2
- # Generated by the protocol buffer compiler. DO NOT EDIT!
3
- # source: couchbase/routing/v1/routing.proto
4
-
5
- require 'google/protobuf'
6
-
7
-
8
- descriptor_data = "\n\"couchbase/routing/v1/routing.proto\x12\x14\x63ouchbase.routing.v1\"D\n\x0fRoutingEndpoint\x12\n\n\x02id\x18\x01 \x01(\t\x12\x14\n\x0cserver_group\x18\x02 \x01(\t\x12\x0f\n\x07\x61\x64\x64ress\x18\x03 \x01(\t\"[\n\x13\x44\x61taRoutingEndpoint\x12\x14\n\x0c\x65ndpoint_idx\x18\x01 \x01(\r\x12\x16\n\x0elocal_vbuckets\x18\x02 \x03(\r\x12\x16\n\x0egroup_vbuckets\x18\x03 \x03(\r\"p\n\x1aVbucketDataRoutingStrategy\x12<\n\tendpoints\x18\x01 \x03(\x0b\x32).couchbase.routing.v1.DataRoutingEndpoint\x12\x14\n\x0cnum_vbuckets\x18\x03 \x01(\r\",\n\x14QueryRoutingEndpoint\x12\x14\n\x0c\x65ndpoint_idx\x18\x01 \x01(\r\"M\n\x0cQueryRouting\x12=\n\tendpoints\x18\x01 \x03(\x0b\x32*.couchbase.routing.v1.QueryRoutingEndpoint\",\n\x14ViewsRoutingEndpoint\x12\x14\n\x0c\x65ndpoint_idx\x18\x01 \x01(\r\"M\n\x0cViewsRouting\x12=\n\tendpoints\x18\x01 \x03(\x0b\x32*.couchbase.routing.v1.ViewsRoutingEndpoint\"?\n\x13WatchRoutingRequest\x12\x18\n\x0b\x62ucket_name\x18\x01 \x01(\tH\x00\x88\x01\x01\x42\x0e\n\x0c_bucket_name\"\xe8\x02\n\x14WatchRoutingResponse\x12\x10\n\x08revision\x18\x01 \x03(\x04\x12\x38\n\tendpoints\x18\x02 \x03(\x0b\x32%.couchbase.routing.v1.RoutingEndpoint\x12P\n\x14vbucket_data_routing\x18\x03 \x01(\x0b\x32\x30.couchbase.routing.v1.VbucketDataRoutingStrategyH\x00\x12>\n\rquery_routing\x18\x04 \x01(\x0b\x32\".couchbase.routing.v1.QueryRoutingH\x01\x88\x01\x01\x12>\n\rviews_routing\x18\x05 \x01(\x0b\x32\".couchbase.routing.v1.ViewsRoutingH\x02\x88\x01\x01\x42\x0e\n\x0c\x64\x61ta_routingB\x10\n\x0e_query_routingB\x10\n\x0e_views_routing2{\n\x0eRoutingService\x12i\n\x0cWatchRouting\x12).couchbase.routing.v1.WatchRoutingRequest\x1a*.couchbase.routing.v1.WatchRoutingResponse\"\x00\x30\x01\x42\xf8\x01\n,com.couchbase.client.protostellar.routing.v1P\x01ZBgithub.com/couchbase/goprotostellar/genproto/routing_v1;routing_v1\xaa\x02!Couchbase.Protostellar.Routing.V1\xca\x02+Couchbase\\Protostellar\\Generated\\Routing\\V1\xea\x02/Couchbase::Protostellar::Generated::Routing::V1b\x06proto3"
9
-
10
- pool = Google::Protobuf::DescriptorPool.generated_pool
11
-
12
- begin
13
- pool.add_serialized_file(descriptor_data)
14
- rescue TypeError => e
15
- # Compatibility code: will be removed in the next major version.
16
- require 'google/protobuf/descriptor_pb'
17
- parsed = Google::Protobuf::FileDescriptorProto.decode(descriptor_data)
18
- parsed.clear_dependency
19
- serialized = parsed.class.encode(parsed)
20
- file = pool.add_serialized_file(serialized)
21
- warn "Warning: Protobuf detected an import path issue while loading generated file #{__FILE__}"
22
- imports = [
23
- ]
24
- imports.each do |type_name, expected_filename|
25
- import_file = pool.lookup(type_name).file_descriptor
26
- if import_file.name != expected_filename
27
- warn "- #{file.name} imports #{expected_filename}, but that import was loaded as #{import_file.name}"
28
- end
29
- end
30
- warn "Each proto file must use a consistent fully-qualified name."
31
- warn "This will become an error in the next major version."
32
- end
33
-
34
- module Couchbase
35
- module Protostellar
36
- module Generated
37
- module Routing
38
- module V1
39
- RoutingEndpoint = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("couchbase.routing.v1.RoutingEndpoint").msgclass
40
- DataRoutingEndpoint = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("couchbase.routing.v1.DataRoutingEndpoint").msgclass
41
- VbucketDataRoutingStrategy = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("couchbase.routing.v1.VbucketDataRoutingStrategy").msgclass
42
- QueryRoutingEndpoint = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("couchbase.routing.v1.QueryRoutingEndpoint").msgclass
43
- QueryRouting = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("couchbase.routing.v1.QueryRouting").msgclass
44
- ViewsRoutingEndpoint = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("couchbase.routing.v1.ViewsRoutingEndpoint").msgclass
45
- ViewsRouting = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("couchbase.routing.v1.ViewsRouting").msgclass
46
- WatchRoutingRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("couchbase.routing.v1.WatchRoutingRequest").msgclass
47
- WatchRoutingResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("couchbase.routing.v1.WatchRoutingResponse").msgclass
48
- end
49
- end
50
- end
51
- end
52
- end
@@ -1,30 +0,0 @@
1
- # Generated by the protocol buffer compiler. DO NOT EDIT!
2
- # Source: couchbase/routing/v1/routing.proto for package 'Couchbase.Protostellar.Generated.Routing.V1'
3
-
4
- require 'grpc'
5
- require 'couchbase/protostellar/generated/routing/v1/routing_pb'
6
-
7
- module Couchbase
8
- module Protostellar
9
- module Generated
10
- module Routing
11
- module V1
12
- module RoutingService
13
- class Service
14
-
15
- include ::GRPC::GenericService
16
-
17
- self.marshal_class_method = :encode
18
- self.unmarshal_class_method = :decode
19
- self.service_name = 'couchbase.routing.v1.RoutingService'
20
-
21
- rpc :WatchRouting, ::Couchbase::Protostellar::Generated::Routing::V1::WatchRoutingRequest, stream(::Couchbase::Protostellar::Generated::Routing::V1::WatchRoutingResponse)
22
- end
23
-
24
- Stub = Service.rpc_stub_class
25
- end
26
- end
27
- end
28
- end
29
- end
30
- end