couchbase 3.5.1 → 3.5.2

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 (1166) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -1
  3. data/ext/0001-fix-build-for-mingw-w64-ucrt-x86_64-toolchain.patch +40 -0
  4. data/ext/CMakeLists.txt +22 -2
  5. data/ext/cache/extconf_include.rb +3 -3
  6. data/ext/cache/mozilla-ca-bundle.crt +19 -32
  7. data/ext/cache/mozilla-ca-bundle.sha256 +1 -1
  8. data/ext/couchbase/CMakeLists.txt +16 -9
  9. data/ext/couchbase/cmake/0001-fix-build-for-mingw-w64-ucrt-x86_64-toolchain.patch +3 -4
  10. data/ext/couchbase/cmake/CompilerWarnings.cmake +2 -1
  11. data/ext/couchbase/cmake/Packaging.cmake +41 -0
  12. data/ext/couchbase/cmake/Sanitizers.cmake +1 -0
  13. data/ext/couchbase/cmake/VersionInfo.cmake +5 -5
  14. data/ext/couchbase/cmake/build_version.hxx.in +1 -0
  15. data/ext/couchbase/cmake/couchbase-cxx-client.pc.in +10 -0
  16. data/ext/couchbase/cmake/test_boringssl.cxx +1 -1
  17. data/ext/couchbase/cmake/test_openssl.cxx +1 -1
  18. data/ext/couchbase/core/agent.cxx +353 -304
  19. data/ext/couchbase/core/agent.hxx +94 -76
  20. data/ext/couchbase/core/agent_config.cxx +9 -8
  21. data/ext/couchbase/core/agent_config.hxx +7 -7
  22. data/ext/couchbase/core/agent_group.cxx +132 -120
  23. data/ext/couchbase/core/agent_group.hxx +26 -22
  24. data/ext/couchbase/core/agent_group_config.cxx +8 -7
  25. data/ext/couchbase/core/agent_group_config.hxx +6 -6
  26. data/ext/couchbase/core/agent_unit_test_api.hxx +6 -6
  27. data/ext/couchbase/core/analytics_query_options.cxx +21 -21
  28. data/ext/couchbase/core/analytics_query_options.hxx +19 -18
  29. data/ext/couchbase/core/analytics_scan_consistency.hxx +2 -2
  30. data/ext/couchbase/core/bucket.cxx +848 -776
  31. data/ext/couchbase/core/bucket.hxx +151 -139
  32. data/ext/couchbase/core/capella_ca.hxx +20 -19
  33. data/ext/couchbase/core/cluster.cxx +1240 -927
  34. data/ext/couchbase/core/cluster.hxx +254 -167
  35. data/ext/couchbase/core/cluster_agent.cxx +7 -7
  36. data/ext/couchbase/core/cluster_agent.hxx +4 -4
  37. data/ext/couchbase/core/cluster_agent_config.cxx +8 -7
  38. data/ext/couchbase/core/cluster_agent_config.hxx +6 -6
  39. data/ext/couchbase/core/cluster_options.cxx +17 -17
  40. data/ext/couchbase/core/cluster_options.hxx +50 -47
  41. data/ext/couchbase/core/cluster_state.hxx +3 -3
  42. data/ext/couchbase/core/collection_id_cache_entry.hxx +5 -4
  43. data/ext/couchbase/core/collections_component.cxx +372 -329
  44. data/ext/couchbase/core/collections_component.hxx +17 -13
  45. data/ext/couchbase/core/collections_component_unit_test_api.hxx +6 -6
  46. data/ext/couchbase/core/collections_options.hxx +29 -27
  47. data/ext/couchbase/core/config_listener.hxx +3 -3
  48. data/ext/couchbase/core/config_profile.hxx +3 -3
  49. data/ext/couchbase/core/config_profiles.cxx +31 -31
  50. data/ext/couchbase/core/config_profiles.hxx +19 -19
  51. data/ext/couchbase/core/core_sdk_shim.cxx +2 -1
  52. data/ext/couchbase/core/core_sdk_shim.hxx +2 -2
  53. data/ext/couchbase/core/crud_component.cxx +310 -276
  54. data/ext/couchbase/core/crud_component.hxx +21 -15
  55. data/ext/couchbase/core/crud_options.hxx +361 -354
  56. data/ext/couchbase/core/crypto/cbcrypto.cc +732 -627
  57. data/ext/couchbase/core/crypto/cbcrypto.h +12 -3
  58. data/ext/couchbase/core/design_document_namespace.hxx +2 -2
  59. data/ext/couchbase/core/design_document_namespace_fmt.hxx +18 -18
  60. data/ext/couchbase/core/diagnostics.hxx +44 -44
  61. data/ext/couchbase/core/diagnostics_fmt.hxx +76 -76
  62. data/ext/couchbase/core/diagnostics_json.hxx +61 -60
  63. data/ext/couchbase/core/diagntostics_options.hxx +14 -14
  64. data/ext/couchbase/core/dispatcher.cxx +4 -3
  65. data/ext/couchbase/core/dispatcher.hxx +8 -7
  66. data/ext/couchbase/core/document_id.cxx +37 -34
  67. data/ext/couchbase/core/document_id.hxx +87 -86
  68. data/ext/couchbase/core/document_id_fmt.hxx +10 -10
  69. data/ext/couchbase/core/durability_options.hxx +50 -49
  70. data/ext/couchbase/core/error_context/analytics.hxx +18 -18
  71. data/ext/couchbase/core/error_context/analytics_json.hxx +115 -0
  72. data/ext/couchbase/core/error_context/base_error_context.hxx +184 -0
  73. data/ext/couchbase/core/error_context/http.hxx +14 -14
  74. data/ext/couchbase/core/error_context/http_json.hxx +90 -0
  75. data/ext/couchbase/core/error_context/internal_tof_metadata_json.hxx +36 -0
  76. data/ext/couchbase/core/error_context/key_value.cxx +27 -27
  77. data/ext/couchbase/core/error_context/key_value.hxx +41 -38
  78. data/ext/couchbase/core/error_context/key_value_error_context.hxx +235 -0
  79. data/ext/couchbase/core/error_context/key_value_error_map_attribute.hxx +142 -0
  80. data/ext/couchbase/core/error_context/key_value_error_map_info.hxx +139 -0
  81. data/ext/couchbase/core/error_context/key_value_extended_error_info.hxx +86 -0
  82. data/ext/couchbase/core/error_context/key_value_json.hxx +83 -0
  83. data/ext/couchbase/core/error_context/key_value_status_code.hxx +109 -0
  84. data/ext/couchbase/core/error_context/query.hxx +18 -18
  85. data/ext/couchbase/core/error_context/query_error_context.hxx +150 -0
  86. data/ext/couchbase/core/error_context/query_json.hxx +114 -0
  87. data/ext/couchbase/core/error_context/query_public_json.hxx +84 -0
  88. data/ext/couchbase/core/error_context/search.hxx +17 -17
  89. data/ext/couchbase/core/error_context/search_json.hxx +101 -0
  90. data/ext/couchbase/core/error_context/subdocument_error_context.hxx +147 -0
  91. data/ext/couchbase/core/error_context/subdocument_json.hxx +48 -0
  92. data/ext/couchbase/{couchbase → core/error_context}/transaction_error_context.hxx +22 -22
  93. data/ext/couchbase/core/error_context/transaction_op_error_context.hxx +79 -0
  94. data/ext/couchbase/core/error_context/view.hxx +17 -17
  95. data/ext/couchbase/core/fmt/key_value_error_map_attribute.hxx +100 -0
  96. data/ext/couchbase/{couchbase → core}/fmt/key_value_extended_error_info.hxx +20 -20
  97. data/ext/couchbase/core/fmt/key_value_status_code.hxx +269 -0
  98. data/ext/couchbase/core/free_form_http_request.cxx +26 -26
  99. data/ext/couchbase/core/free_form_http_request.hxx +34 -33
  100. data/ext/couchbase/core/impl/analytics.cxx +111 -131
  101. data/ext/couchbase/core/impl/analytics.hxx +5 -7
  102. data/ext/couchbase/core/impl/analytics_error_category.cxx +29 -28
  103. data/ext/couchbase/core/impl/analytics_index_manager.cxx +615 -516
  104. data/ext/couchbase/core/impl/best_effort_retry_strategy.cxx +53 -50
  105. data/ext/couchbase/core/impl/binary_collection.cxx +346 -285
  106. data/ext/couchbase/core/impl/boolean_field_query.cxx +10 -10
  107. data/ext/couchbase/core/impl/boolean_query.cxx +27 -27
  108. data/ext/couchbase/core/impl/bootstrap_state_listener.hxx +6 -6
  109. data/ext/couchbase/core/impl/bucket.cxx +39 -34
  110. data/ext/couchbase/core/impl/bucket_manager.cxx +354 -313
  111. data/ext/couchbase/core/impl/cluster.cxx +430 -325
  112. data/ext/couchbase/core/impl/collection.cxx +1033 -1187
  113. data/ext/couchbase/core/impl/collection_manager.cxx +201 -170
  114. data/ext/couchbase/core/impl/common_error_category.cxx +58 -55
  115. data/ext/couchbase/core/impl/configuration_profiles_registry.cxx +46 -32
  116. data/ext/couchbase/core/impl/conjunction_query.cxx +17 -17
  117. data/ext/couchbase/core/impl/date_range.cxx +24 -20
  118. data/ext/couchbase/core/impl/date_range_facet.cxx +22 -22
  119. data/ext/couchbase/core/impl/date_range_facet_result.cxx +6 -6
  120. data/ext/couchbase/core/impl/date_range_query.cxx +50 -48
  121. data/ext/couchbase/core/impl/diagnostics.cxx +211 -198
  122. data/ext/couchbase/core/impl/diagnostics.hxx +7 -6
  123. data/ext/couchbase/core/impl/disjunction_query.cxx +18 -17
  124. data/ext/couchbase/core/impl/dns_srv_tracker.cxx +92 -75
  125. data/ext/couchbase/core/impl/dns_srv_tracker.hxx +24 -20
  126. data/ext/couchbase/core/impl/doc_id_query.cxx +9 -9
  127. data/ext/couchbase/core/impl/encoded_search_facet.hxx +2 -2
  128. data/ext/couchbase/core/impl/encoded_search_query.hxx +2 -2
  129. data/ext/couchbase/core/impl/encoded_search_sort.hxx +2 -2
  130. data/ext/couchbase/core/impl/error.cxx +171 -0
  131. data/ext/couchbase/core/impl/error.hxx +64 -0
  132. data/ext/couchbase/core/impl/error_context.cxx +56 -0
  133. data/ext/couchbase/core/impl/expiry.cxx +66 -53
  134. data/ext/couchbase/core/impl/fail_fast_retry_strategy.cxx +5 -4
  135. data/ext/couchbase/core/impl/field_level_encryption_error_category.cxx +30 -28
  136. data/ext/couchbase/core/impl/geo_bounding_box_query.cxx +17 -17
  137. data/ext/couchbase/core/impl/geo_distance_query.cxx +14 -14
  138. data/ext/couchbase/core/impl/geo_polygon_query.cxx +17 -17
  139. data/ext/couchbase/core/impl/get_all_replicas.hxx +26 -22
  140. data/ext/couchbase/core/impl/get_any_replica.hxx +25 -23
  141. data/ext/couchbase/core/impl/get_replica.cxx +18 -15
  142. data/ext/couchbase/core/impl/get_replica.hxx +23 -18
  143. data/ext/couchbase/core/impl/internal_date_range_facet_result.cxx +16 -14
  144. data/ext/couchbase/core/impl/internal_date_range_facet_result.hxx +16 -15
  145. data/ext/couchbase/core/impl/internal_error_context.cxx +79 -0
  146. data/ext/couchbase/core/impl/internal_error_context.hxx +52 -0
  147. data/ext/couchbase/core/impl/internal_numeric_range_facet_result.cxx +18 -15
  148. data/ext/couchbase/core/impl/internal_numeric_range_facet_result.hxx +16 -15
  149. data/ext/couchbase/core/impl/internal_scan_result.hxx +7 -7
  150. data/ext/couchbase/core/impl/internal_search_error_context.cxx +25 -22
  151. data/ext/couchbase/core/impl/internal_search_error_context.hxx +32 -31
  152. data/ext/couchbase/core/impl/internal_search_meta_data.cxx +15 -13
  153. data/ext/couchbase/core/impl/internal_search_meta_data.hxx +10 -9
  154. data/ext/couchbase/core/impl/internal_search_result.cxx +30 -22
  155. data/ext/couchbase/core/impl/internal_search_result.hxx +10 -9
  156. data/ext/couchbase/core/impl/internal_search_row.cxx +10 -10
  157. data/ext/couchbase/core/impl/internal_search_row.hxx +16 -16
  158. data/ext/couchbase/core/impl/internal_search_row_location.hxx +2 -2
  159. data/ext/couchbase/core/impl/internal_search_row_locations.cxx +68 -65
  160. data/ext/couchbase/core/impl/internal_search_row_locations.hxx +16 -13
  161. data/ext/couchbase/core/impl/internal_term_facet_result.cxx +16 -14
  162. data/ext/couchbase/core/impl/internal_term_facet_result.hxx +15 -15
  163. data/ext/couchbase/core/impl/key_value_error_category.cxx +73 -72
  164. data/ext/couchbase/core/impl/key_value_error_context.cxx +65 -65
  165. data/ext/couchbase/core/impl/logger.cxx +91 -0
  166. data/ext/couchbase/core/impl/lookup_in_all_replicas.hxx +32 -29
  167. data/ext/couchbase/core/impl/lookup_in_any_replica.hxx +33 -29
  168. data/ext/couchbase/core/impl/lookup_in_replica.cxx +75 -68
  169. data/ext/couchbase/core/impl/lookup_in_replica.hxx +30 -26
  170. data/ext/couchbase/core/impl/management_error_category.cxx +41 -40
  171. data/ext/couchbase/core/impl/match_all_query.cxx +6 -6
  172. data/ext/couchbase/core/impl/match_none_query.cxx +6 -6
  173. data/ext/couchbase/core/impl/match_phrase_query.cxx +13 -13
  174. data/ext/couchbase/core/impl/match_query.cxx +28 -28
  175. data/ext/couchbase/core/impl/network_error_category.cxx +39 -38
  176. data/ext/couchbase/core/impl/numeric_range.cxx +6 -6
  177. data/ext/couchbase/core/impl/numeric_range_facet.cxx +22 -22
  178. data/ext/couchbase/core/impl/numeric_range_facet_result.cxx +6 -6
  179. data/ext/couchbase/core/impl/numeric_range_query.cxx +22 -22
  180. data/ext/couchbase/core/impl/observe_poll.cxx +294 -277
  181. data/ext/couchbase/core/impl/observe_poll.hxx +1 -1
  182. data/ext/couchbase/core/impl/observe_seqno.cxx +21 -18
  183. data/ext/couchbase/core/impl/observe_seqno.hxx +31 -26
  184. data/ext/couchbase/core/impl/phrase_query.cxx +10 -10
  185. data/ext/couchbase/core/impl/prefix_query.cxx +10 -10
  186. data/ext/couchbase/core/impl/query.cxx +163 -154
  187. data/ext/couchbase/core/impl/query.hxx +6 -7
  188. data/ext/couchbase/core/impl/query_error_category.cxx +22 -21
  189. data/ext/couchbase/core/impl/query_error_context.cxx +45 -45
  190. data/ext/couchbase/core/impl/query_index_manager.cxx +488 -408
  191. data/ext/couchbase/core/impl/query_string_query.cxx +7 -7
  192. data/ext/couchbase/core/impl/regexp_query.cxx +10 -10
  193. data/ext/couchbase/core/impl/replica_utils.cxx +66 -0
  194. data/ext/couchbase/core/impl/replica_utils.hxx +48 -0
  195. data/ext/couchbase/core/impl/retry_action.cxx +3 -3
  196. data/ext/couchbase/core/impl/retry_reason.cxx +129 -56
  197. data/ext/couchbase/core/impl/retry_reason.hxx +28 -0
  198. data/ext/couchbase/core/impl/scan_result.cxx +53 -49
  199. data/ext/couchbase/core/impl/scope.cxx +103 -94
  200. data/ext/couchbase/core/impl/search.cxx +139 -130
  201. data/ext/couchbase/core/impl/search.hxx +4 -4
  202. data/ext/couchbase/core/impl/search_error_category.cxx +18 -17
  203. data/ext/couchbase/core/impl/search_index_manager.cxx +492 -390
  204. data/ext/couchbase/core/impl/search_meta_data.cxx +3 -3
  205. data/ext/couchbase/core/impl/search_request.cxx +78 -78
  206. data/ext/couchbase/core/impl/search_result.cxx +5 -5
  207. data/ext/couchbase/core/impl/search_row.cxx +7 -7
  208. data/ext/couchbase/core/impl/search_row_location.cxx +9 -8
  209. data/ext/couchbase/core/impl/search_row_locations.cxx +8 -7
  210. data/ext/couchbase/core/impl/search_sort_field.cxx +53 -53
  211. data/ext/couchbase/core/impl/search_sort_geo_distance.cxx +49 -48
  212. data/ext/couchbase/core/impl/search_sort_id.cxx +10 -10
  213. data/ext/couchbase/core/impl/search_sort_score.cxx +10 -10
  214. data/ext/couchbase/core/impl/streaming_json_lexer_error_category.cxx +70 -68
  215. data/ext/couchbase/core/impl/subdoc/array_add_unique.cxx +6 -6
  216. data/ext/couchbase/core/impl/subdoc/array_append.cxx +6 -6
  217. data/ext/couchbase/core/impl/subdoc/array_insert.cxx +6 -6
  218. data/ext/couchbase/core/impl/subdoc/array_prepend.cxx +6 -6
  219. data/ext/couchbase/core/impl/subdoc/command.hxx +5 -5
  220. data/ext/couchbase/core/impl/subdoc/command_bundle.hxx +11 -11
  221. data/ext/couchbase/core/impl/subdoc/count.cxx +6 -6
  222. data/ext/couchbase/core/impl/subdoc/counter.cxx +6 -6
  223. data/ext/couchbase/core/impl/subdoc/exists.cxx +6 -6
  224. data/ext/couchbase/core/impl/subdoc/get.cxx +6 -6
  225. data/ext/couchbase/core/impl/subdoc/insert.cxx +6 -6
  226. data/ext/couchbase/core/impl/subdoc/join_values.cxx +25 -25
  227. data/ext/couchbase/core/impl/subdoc/lookup_in_macro.cxx +61 -60
  228. data/ext/couchbase/core/impl/subdoc/lookup_in_specs.cxx +9 -9
  229. data/ext/couchbase/core/impl/subdoc/mutate_in_macro.cxx +48 -39
  230. data/ext/couchbase/core/impl/subdoc/mutate_in_specs.cxx +9 -9
  231. data/ext/couchbase/core/impl/subdoc/opcode.hxx +16 -16
  232. data/ext/couchbase/core/impl/subdoc/path_flags.hxx +40 -17
  233. data/ext/couchbase/core/impl/subdoc/remove.cxx +6 -6
  234. data/ext/couchbase/core/impl/subdoc/replace.cxx +6 -6
  235. data/ext/couchbase/core/impl/subdoc/upsert.cxx +6 -6
  236. data/ext/couchbase/core/impl/term_facet.cxx +8 -8
  237. data/ext/couchbase/core/impl/term_facet_result.cxx +6 -6
  238. data/ext/couchbase/core/impl/term_query.cxx +25 -25
  239. data/ext/couchbase/core/impl/term_range_query.cxx +22 -22
  240. data/ext/couchbase/core/impl/transaction_error_category.cxx +21 -20
  241. data/ext/couchbase/core/impl/transaction_get_result.cxx +41 -30
  242. data/ext/couchbase/core/impl/transaction_op_error_category.cxx +55 -56
  243. data/ext/couchbase/core/impl/vector_query.cxx +15 -10
  244. data/ext/couchbase/core/impl/vector_search.cxx +9 -9
  245. data/ext/couchbase/core/impl/view_error_category.cxx +17 -16
  246. data/ext/couchbase/core/impl/wildcard_query.cxx +10 -10
  247. data/ext/couchbase/core/impl/with_legacy_durability.hxx +30 -29
  248. data/ext/couchbase/core/io/dns_client.cxx +257 -232
  249. data/ext/couchbase/core/io/dns_client.hxx +19 -18
  250. data/ext/couchbase/core/io/dns_codec.hxx +156 -154
  251. data/ext/couchbase/core/io/dns_config.cxx +114 -109
  252. data/ext/couchbase/core/io/dns_config.hxx +15 -13
  253. data/ext/couchbase/core/io/dns_message.hxx +365 -342
  254. data/ext/couchbase/core/io/http_command.hxx +155 -134
  255. data/ext/couchbase/core/io/http_context.hxx +5 -5
  256. data/ext/couchbase/core/io/http_message.hxx +75 -71
  257. data/ext/couchbase/core/io/http_parser.cxx +70 -67
  258. data/ext/couchbase/core/io/http_parser.hxx +18 -18
  259. data/ext/couchbase/core/io/http_session.hxx +620 -520
  260. data/ext/couchbase/core/io/http_session_manager.hxx +406 -315
  261. data/ext/couchbase/core/io/http_traits.hxx +7 -0
  262. data/ext/couchbase/core/io/ip_protocol.hxx +3 -3
  263. data/ext/couchbase/core/io/mcbp_command.hxx +298 -278
  264. data/ext/couchbase/core/io/mcbp_context.hxx +7 -6
  265. data/ext/couchbase/core/io/mcbp_message.cxx +8 -8
  266. data/ext/couchbase/core/io/mcbp_message.hxx +19 -19
  267. data/ext/couchbase/core/io/mcbp_parser.cxx +60 -51
  268. data/ext/couchbase/core/io/mcbp_parser.hxx +21 -17
  269. data/ext/couchbase/core/io/mcbp_session.cxx +1769 -1616
  270. data/ext/couchbase/core/io/mcbp_session.hxx +63 -57
  271. data/ext/couchbase/core/io/query_cache.hxx +34 -34
  272. data/ext/couchbase/core/io/retry_context.hxx +45 -45
  273. data/ext/couchbase/core/io/retry_orchestrator.hxx +52 -42
  274. data/ext/couchbase/core/io/streams.hxx +210 -193
  275. data/ext/couchbase/core/json_string.hxx +47 -47
  276. data/ext/couchbase/core/key_value_config.cxx +8 -8
  277. data/ext/couchbase/core/key_value_config.hxx +12 -11
  278. data/ext/couchbase/core/logger/configuration.hxx +35 -35
  279. data/ext/couchbase/core/logger/custom_rotating_file_sink.cxx +73 -72
  280. data/ext/couchbase/core/logger/custom_rotating_file_sink.hxx +20 -18
  281. data/ext/couchbase/core/logger/level.hxx +9 -1
  282. data/ext/couchbase/core/logger/logger.cxx +279 -252
  283. data/ext/couchbase/core/logger/logger.hxx +110 -58
  284. data/ext/couchbase/core/management/analytics_dataset.hxx +4 -4
  285. data/ext/couchbase/core/management/analytics_index.hxx +4 -4
  286. data/ext/couchbase/core/management/analytics_link_azure_blob_external.cxx +35 -33
  287. data/ext/couchbase/core/management/analytics_link_azure_blob_external.hxx +36 -35
  288. data/ext/couchbase/core/management/analytics_link_azure_blob_external_json.hxx +24 -20
  289. data/ext/couchbase/core/management/analytics_link_couchbase_remote.cxx +66 -65
  290. data/ext/couchbase/core/management/analytics_link_couchbase_remote.hxx +77 -70
  291. data/ext/couchbase/core/management/analytics_link_couchbase_remote_json.hxx +38 -32
  292. data/ext/couchbase/core/management/analytics_link_s3_external.cxx +26 -25
  293. data/ext/couchbase/core/management/analytics_link_s3_external.hxx +30 -30
  294. data/ext/couchbase/core/management/analytics_link_s3_external_json.hxx +18 -16
  295. data/ext/couchbase/core/management/bucket_settings.hxx +109 -91
  296. data/ext/couchbase/core/management/bucket_settings_json.hxx +112 -94
  297. data/ext/couchbase/core/management/design_document.hxx +9 -9
  298. data/ext/couchbase/core/management/eventing_function.hxx +124 -121
  299. data/ext/couchbase/core/management/eventing_function_json.hxx +228 -184
  300. data/ext/couchbase/core/management/eventing_status.hxx +41 -41
  301. data/ext/couchbase/core/management/eventing_status_json.hxx +53 -45
  302. data/ext/couchbase/core/management/rbac.hxx +33 -28
  303. data/ext/couchbase/core/management/rbac_fmt.hxx +21 -21
  304. data/ext/couchbase/core/management/rbac_json.hxx +132 -125
  305. data/ext/couchbase/core/management/search_index.cxx +79 -0
  306. data/ext/couchbase/core/management/search_index.hxx +11 -10
  307. data/ext/couchbase/core/management/search_index_json.hxx +27 -26
  308. data/ext/couchbase/core/mcbp/barrier_frame.hxx +4 -3
  309. data/ext/couchbase/core/mcbp/big_endian.cxx +22 -22
  310. data/ext/couchbase/core/mcbp/buffer_writer.cxx +22 -19
  311. data/ext/couchbase/core/mcbp/buffer_writer.hxx +9 -9
  312. data/ext/couchbase/core/mcbp/codec.cxx +419 -397
  313. data/ext/couchbase/core/mcbp/codec.hxx +14 -12
  314. data/ext/couchbase/core/mcbp/command_code.cxx +48 -48
  315. data/ext/couchbase/core/mcbp/completion_token.hxx +33 -33
  316. data/ext/couchbase/core/mcbp/datatype.hxx +3 -3
  317. data/ext/couchbase/core/mcbp/durability_level.hxx +8 -7
  318. data/ext/couchbase/core/mcbp/durability_level_frame.hxx +3 -2
  319. data/ext/couchbase/core/mcbp/durability_timeout_frame.hxx +4 -3
  320. data/ext/couchbase/core/mcbp/open_tracing_frame.hxx +3 -2
  321. data/ext/couchbase/core/mcbp/operation_consumer.cxx +3 -3
  322. data/ext/couchbase/core/mcbp/operation_consumer.hxx +9 -9
  323. data/ext/couchbase/core/mcbp/operation_queue.cxx +76 -70
  324. data/ext/couchbase/core/mcbp/operation_queue.hxx +18 -17
  325. data/ext/couchbase/core/mcbp/packet.cxx +65 -51
  326. data/ext/couchbase/core/mcbp/packet.hxx +25 -25
  327. data/ext/couchbase/core/mcbp/preserve_expiry_frame.hxx +4 -2
  328. data/ext/couchbase/core/mcbp/queue_callback.hxx +3 -2
  329. data/ext/couchbase/core/mcbp/queue_request.cxx +65 -62
  330. data/ext/couchbase/core/mcbp/queue_request.hxx +54 -52
  331. data/ext/couchbase/core/mcbp/queue_request_connection_info.hxx +3 -3
  332. data/ext/couchbase/core/mcbp/queue_response.hxx +7 -7
  333. data/ext/couchbase/core/mcbp/read_units_frame.hxx +3 -2
  334. data/ext/couchbase/core/mcbp/server_duration.cxx +7 -7
  335. data/ext/couchbase/core/mcbp/server_duration_frame.hxx +3 -2
  336. data/ext/couchbase/core/mcbp/stream_id_frame.hxx +3 -2
  337. data/ext/couchbase/core/mcbp/unsupported_frame.hxx +4 -3
  338. data/ext/couchbase/core/mcbp/user_impersonation_frame.hxx +1 -1
  339. data/ext/couchbase/core/mcbp/write_units_frame.hxx +3 -2
  340. data/ext/couchbase/core/meta/features.hxx +58 -0
  341. data/ext/couchbase/core/meta/version.cxx +255 -204
  342. data/ext/couchbase/core/meta/version.hxx +31 -20
  343. data/ext/couchbase/core/metrics/logging_meter.cxx +160 -154
  344. data/ext/couchbase/core/metrics/logging_meter.hxx +16 -15
  345. data/ext/couchbase/core/metrics/logging_meter_options.hxx +1 -1
  346. data/ext/couchbase/core/metrics/noop_meter.hxx +14 -13
  347. data/ext/couchbase/core/mozilla_ca_bundle.hxx +2 -2
  348. data/ext/couchbase/core/n1ql_query_options.cxx +31 -31
  349. data/ext/couchbase/core/n1ql_query_options.hxx +22 -21
  350. data/ext/couchbase/core/operation_map.hxx +3 -3
  351. data/ext/couchbase/core/operations/document_analytics.cxx +187 -176
  352. data/ext/couchbase/core/operations/document_analytics.hxx +79 -71
  353. data/ext/couchbase/core/operations/document_append.cxx +18 -15
  354. data/ext/couchbase/core/operations/document_append.hxx +18 -16
  355. data/ext/couchbase/core/operations/document_decrement.cxx +26 -23
  356. data/ext/couchbase/core/operations/document_decrement.hxx +24 -20
  357. data/ext/couchbase/core/operations/document_exists.cxx +23 -21
  358. data/ext/couchbase/core/operations/document_exists.hxx +25 -23
  359. data/ext/couchbase/core/operations/document_get.cxx +17 -15
  360. data/ext/couchbase/core/operations/document_get.hxx +17 -15
  361. data/ext/couchbase/core/operations/document_get_all_replicas.hxx +121 -92
  362. data/ext/couchbase/core/operations/document_get_and_lock.cxx +19 -16
  363. data/ext/couchbase/core/operations/document_get_and_lock.hxx +21 -17
  364. data/ext/couchbase/core/operations/document_get_and_touch.cxx +19 -16
  365. data/ext/couchbase/core/operations/document_get_and_touch.hxx +22 -18
  366. data/ext/couchbase/core/operations/document_get_any_replica.hxx +111 -82
  367. data/ext/couchbase/core/operations/document_get_projected.cxx +193 -184
  368. data/ext/couchbase/core/operations/document_get_projected.hxx +25 -21
  369. data/ext/couchbase/core/operations/document_increment.cxx +26 -23
  370. data/ext/couchbase/core/operations/document_increment.hxx +24 -20
  371. data/ext/couchbase/core/operations/document_insert.cxx +23 -20
  372. data/ext/couchbase/core/operations/document_insert.hxx +20 -18
  373. data/ext/couchbase/core/operations/document_lookup_in.cxx +80 -67
  374. data/ext/couchbase/core/operations/document_lookup_in.hxx +31 -27
  375. data/ext/couchbase/core/operations/document_lookup_in_all_replicas.hxx +187 -149
  376. data/ext/couchbase/core/operations/document_lookup_in_any_replica.hxx +190 -145
  377. data/ext/couchbase/core/operations/document_mutate_in.cxx +98 -80
  378. data/ext/couchbase/core/operations/document_mutate_in.hxx +38 -33
  379. data/ext/couchbase/core/operations/document_prepend.cxx +18 -15
  380. data/ext/couchbase/core/operations/document_prepend.hxx +18 -16
  381. data/ext/couchbase/core/operations/document_query.cxx +367 -356
  382. data/ext/couchbase/core/operations/document_query.hxx +83 -79
  383. data/ext/couchbase/core/operations/document_remove.cxx +18 -15
  384. data/ext/couchbase/core/operations/document_remove.hxx +18 -16
  385. data/ext/couchbase/core/operations/document_replace.cxx +27 -24
  386. data/ext/couchbase/core/operations/document_replace.hxx +22 -20
  387. data/ext/couchbase/core/operations/document_search.cxx +322 -308
  388. data/ext/couchbase/core/operations/document_search.hxx +125 -121
  389. data/ext/couchbase/core/operations/document_touch.cxx +16 -14
  390. data/ext/couchbase/core/operations/document_touch.hxx +19 -17
  391. data/ext/couchbase/core/operations/document_unlock.cxx +16 -14
  392. data/ext/couchbase/core/operations/document_unlock.hxx +19 -17
  393. data/ext/couchbase/core/operations/document_upsert.cxx +26 -23
  394. data/ext/couchbase/core/operations/document_upsert.hxx +21 -19
  395. data/ext/couchbase/core/operations/document_view.cxx +169 -159
  396. data/ext/couchbase/core/operations/document_view.hxx +68 -65
  397. data/ext/couchbase/core/operations/http_noop.cxx +38 -35
  398. data/ext/couchbase/core/operations/http_noop.hxx +12 -10
  399. data/ext/couchbase/core/operations/management/analytics_dataset_create.cxx +58 -56
  400. data/ext/couchbase/core/operations/management/analytics_dataset_create.hxx +20 -17
  401. data/ext/couchbase/core/operations/management/analytics_dataset_drop.cxx +49 -44
  402. data/ext/couchbase/core/operations/management/analytics_dataset_drop.hxx +18 -15
  403. data/ext/couchbase/core/operations/management/analytics_dataset_get_all.cxx +46 -43
  404. data/ext/couchbase/core/operations/management/analytics_dataset_get_all.hxx +16 -13
  405. data/ext/couchbase/core/operations/management/analytics_dataverse_create.cxx +48 -43
  406. data/ext/couchbase/core/operations/management/analytics_dataverse_create.hxx +17 -14
  407. data/ext/couchbase/core/operations/management/analytics_dataverse_drop.cxx +48 -43
  408. data/ext/couchbase/core/operations/management/analytics_dataverse_drop.hxx +17 -14
  409. data/ext/couchbase/core/operations/management/analytics_get_pending_mutations.cxx +38 -35
  410. data/ext/couchbase/core/operations/management/analytics_get_pending_mutations.hxx +16 -14
  411. data/ext/couchbase/core/operations/management/analytics_index_create.cxx +68 -66
  412. data/ext/couchbase/core/operations/management/analytics_index_create.hxx +20 -17
  413. data/ext/couchbase/core/operations/management/analytics_index_drop.cxx +56 -51
  414. data/ext/couchbase/core/operations/management/analytics_index_drop.hxx +19 -16
  415. data/ext/couchbase/core/operations/management/analytics_index_get_all.cxx +44 -42
  416. data/ext/couchbase/core/operations/management/analytics_index_get_all.hxx +16 -13
  417. data/ext/couchbase/core/operations/management/analytics_link_connect.cxx +49 -43
  418. data/ext/couchbase/core/operations/management/analytics_link_connect.hxx +23 -20
  419. data/ext/couchbase/core/operations/management/analytics_link_create.cxx +52 -51
  420. data/ext/couchbase/core/operations/management/analytics_link_create.hxx +33 -30
  421. data/ext/couchbase/core/operations/management/analytics_link_disconnect.cxx +46 -42
  422. data/ext/couchbase/core/operations/management/analytics_link_disconnect.hxx +22 -19
  423. data/ext/couchbase/core/operations/management/analytics_link_drop.cxx +70 -67
  424. data/ext/couchbase/core/operations/management/analytics_link_drop.hxx +22 -19
  425. data/ext/couchbase/core/operations/management/analytics_link_get_all.cxx +92 -85
  426. data/ext/couchbase/core/operations/management/analytics_link_get_all.hxx +27 -24
  427. data/ext/couchbase/core/operations/management/analytics_link_replace.cxx +52 -51
  428. data/ext/couchbase/core/operations/management/analytics_link_replace.hxx +33 -30
  429. data/ext/couchbase/core/operations/management/analytics_link_utils.hxx +6 -4
  430. data/ext/couchbase/core/operations/management/analytics_problem.hxx +2 -2
  431. data/ext/couchbase/core/operations/management/bucket_create.cxx +158 -149
  432. data/ext/couchbase/core/operations/management/bucket_create.hxx +14 -12
  433. data/ext/couchbase/core/operations/management/bucket_describe.cxx +118 -42
  434. data/ext/couchbase/core/operations/management/bucket_describe.hxx +47 -22
  435. data/ext/couchbase/core/operations/management/bucket_drop.cxx +19 -18
  436. data/ext/couchbase/core/operations/management/bucket_drop.hxx +13 -11
  437. data/ext/couchbase/core/operations/management/bucket_flush.cxx +25 -24
  438. data/ext/couchbase/core/operations/management/bucket_flush.hxx +13 -11
  439. data/ext/couchbase/core/operations/management/bucket_get.cxx +24 -22
  440. data/ext/couchbase/core/operations/management/bucket_get.hxx +14 -12
  441. data/ext/couchbase/core/operations/management/bucket_get_all.cxx +25 -23
  442. data/ext/couchbase/core/operations/management/bucket_get_all.hxx +13 -11
  443. data/ext/couchbase/core/operations/management/bucket_update.cxx +112 -107
  444. data/ext/couchbase/core/operations/management/bucket_update.hxx +15 -13
  445. data/ext/couchbase/core/operations/management/change_password.cxx +22 -20
  446. data/ext/couchbase/core/operations/management/change_password.hxx +13 -11
  447. data/ext/couchbase/core/operations/management/cluster_describe.cxx +52 -50
  448. data/ext/couchbase/core/operations/management/cluster_describe.hxx +31 -29
  449. data/ext/couchbase/core/operations/management/cluster_developer_preview_enable.cxx +14 -12
  450. data/ext/couchbase/core/operations/management/cluster_developer_preview_enable.hxx +13 -11
  451. data/ext/couchbase/core/operations/management/collection_create.cxx +48 -46
  452. data/ext/couchbase/core/operations/management/collection_create.hxx +19 -16
  453. data/ext/couchbase/core/operations/management/collection_drop.cxx +37 -35
  454. data/ext/couchbase/core/operations/management/collection_drop.hxx +16 -14
  455. data/ext/couchbase/core/operations/management/collection_update.cxx +49 -47
  456. data/ext/couchbase/core/operations/management/collection_update.hxx +19 -16
  457. data/ext/couchbase/core/operations/management/collections_manifest_get.cxx +11 -9
  458. data/ext/couchbase/core/operations/management/collections_manifest_get.hxx +17 -13
  459. data/ext/couchbase/core/operations/management/error_utils.cxx +210 -198
  460. data/ext/couchbase/core/operations/management/error_utils.hxx +3 -1
  461. data/ext/couchbase/core/operations/management/eventing_deploy_function.cxx +30 -28
  462. data/ext/couchbase/core/operations/management/eventing_deploy_function.hxx +17 -14
  463. data/ext/couchbase/core/operations/management/eventing_drop_function.cxx +31 -29
  464. data/ext/couchbase/core/operations/management/eventing_drop_function.hxx +17 -14
  465. data/ext/couchbase/core/operations/management/eventing_get_all_functions.cxx +49 -43
  466. data/ext/couchbase/core/operations/management/eventing_get_all_functions.hxx +17 -14
  467. data/ext/couchbase/core/operations/management/eventing_get_function.cxx +29 -27
  468. data/ext/couchbase/core/operations/management/eventing_get_function.hxx +18 -15
  469. data/ext/couchbase/core/operations/management/eventing_get_status.cxx +45 -39
  470. data/ext/couchbase/core/operations/management/eventing_get_status.hxx +17 -14
  471. data/ext/couchbase/core/operations/management/eventing_pause_function.cxx +30 -28
  472. data/ext/couchbase/core/operations/management/eventing_pause_function.hxx +17 -14
  473. data/ext/couchbase/core/operations/management/eventing_problem.hxx +3 -3
  474. data/ext/couchbase/core/operations/management/eventing_resume_function.cxx +30 -28
  475. data/ext/couchbase/core/operations/management/eventing_resume_function.hxx +17 -14
  476. data/ext/couchbase/core/operations/management/eventing_undeploy_function.cxx +30 -28
  477. data/ext/couchbase/core/operations/management/eventing_undeploy_function.hxx +17 -14
  478. data/ext/couchbase/core/operations/management/eventing_upsert_function.cxx +328 -318
  479. data/ext/couchbase/core/operations/management/eventing_upsert_function.hxx +17 -14
  480. data/ext/couchbase/core/operations/management/freeform.cxx +23 -22
  481. data/ext/couchbase/core/operations/management/freeform.hxx +19 -17
  482. data/ext/couchbase/core/operations/management/group_drop.cxx +18 -17
  483. data/ext/couchbase/core/operations/management/group_drop.hxx +13 -11
  484. data/ext/couchbase/core/operations/management/group_get.cxx +25 -23
  485. data/ext/couchbase/core/operations/management/group_get.hxx +14 -12
  486. data/ext/couchbase/core/operations/management/group_get_all.cxx +23 -22
  487. data/ext/couchbase/core/operations/management/group_get_all.hxx +13 -11
  488. data/ext/couchbase/core/operations/management/group_upsert.cxx +58 -55
  489. data/ext/couchbase/core/operations/management/group_upsert.hxx +14 -12
  490. data/ext/couchbase/core/operations/management/query_index_build.cxx +53 -48
  491. data/ext/couchbase/core/operations/management/query_index_build.hxx +25 -22
  492. data/ext/couchbase/core/operations/management/query_index_build_deferred.hxx +75 -67
  493. data/ext/couchbase/core/operations/management/query_index_create.cxx +128 -122
  494. data/ext/couchbase/core/operations/management/query_index_create.hxx +31 -28
  495. data/ext/couchbase/core/operations/management/query_index_drop.cxx +95 -93
  496. data/ext/couchbase/core/operations/management/query_index_drop.hxx +26 -24
  497. data/ext/couchbase/core/operations/management/query_index_get_all.cxx +97 -93
  498. data/ext/couchbase/core/operations/management/query_index_get_all.hxx +24 -21
  499. data/ext/couchbase/core/operations/management/query_index_get_all_deferred.cxx +66 -62
  500. data/ext/couchbase/core/operations/management/query_index_get_all_deferred.hxx +24 -22
  501. data/ext/couchbase/core/operations/management/role_get_all.cxx +24 -22
  502. data/ext/couchbase/core/operations/management/role_get_all.hxx +13 -11
  503. data/ext/couchbase/core/operations/management/scope_create.cxx +38 -36
  504. data/ext/couchbase/core/operations/management/scope_create.hxx +15 -13
  505. data/ext/couchbase/core/operations/management/scope_drop.cxx +33 -32
  506. data/ext/couchbase/core/operations/management/scope_drop.hxx +15 -13
  507. data/ext/couchbase/core/operations/management/scope_get_all.cxx +27 -25
  508. data/ext/couchbase/core/operations/management/scope_get_all.hxx +14 -12
  509. data/ext/couchbase/core/operations/management/search_get_stats.cxx +12 -10
  510. data/ext/couchbase/core/operations/management/search_get_stats.hxx +13 -11
  511. data/ext/couchbase/core/operations/management/search_index_analyze_document.cxx +72 -67
  512. data/ext/couchbase/core/operations/management/search_index_analyze_document.hxx +20 -18
  513. data/ext/couchbase/core/operations/management/search_index_control_ingest.cxx +62 -59
  514. data/ext/couchbase/core/operations/management/search_index_control_ingest.hxx +19 -16
  515. data/ext/couchbase/core/operations/management/search_index_control_plan_freeze.cxx +62 -59
  516. data/ext/couchbase/core/operations/management/search_index_control_plan_freeze.hxx +19 -17
  517. data/ext/couchbase/core/operations/management/search_index_control_query.cxx +62 -59
  518. data/ext/couchbase/core/operations/management/search_index_control_query.hxx +19 -16
  519. data/ext/couchbase/core/operations/management/search_index_drop.cxx +58 -55
  520. data/ext/couchbase/core/operations/management/search_index_drop.hxx +18 -15
  521. data/ext/couchbase/core/operations/management/search_index_get.cxx +59 -56
  522. data/ext/couchbase/core/operations/management/search_index_get.hxx +18 -16
  523. data/ext/couchbase/core/operations/management/search_index_get_all.cxx +51 -46
  524. data/ext/couchbase/core/operations/management/search_index_get_all.hxx +18 -15
  525. data/ext/couchbase/core/operations/management/search_index_get_documents_count.cxx +66 -61
  526. data/ext/couchbase/core/operations/management/search_index_get_documents_count.hxx +19 -17
  527. data/ext/couchbase/core/operations/management/search_index_get_stats.cxx +38 -36
  528. data/ext/couchbase/core/operations/management/search_index_get_stats.hxx +17 -14
  529. data/ext/couchbase/core/operations/management/search_index_upsert.cxx +98 -95
  530. data/ext/couchbase/core/operations/management/search_index_upsert.hxx +20 -17
  531. data/ext/couchbase/core/operations/management/user_drop.cxx +18 -17
  532. data/ext/couchbase/core/operations/management/user_drop.hxx +16 -12
  533. data/ext/couchbase/core/operations/management/user_get.cxx +25 -23
  534. data/ext/couchbase/core/operations/management/user_get.hxx +17 -13
  535. data/ext/couchbase/core/operations/management/user_get_all.cxx +24 -22
  536. data/ext/couchbase/core/operations/management/user_get_all.hxx +16 -12
  537. data/ext/couchbase/core/operations/management/user_upsert.cxx +63 -60
  538. data/ext/couchbase/core/operations/management/user_upsert.hxx +17 -13
  539. data/ext/couchbase/core/operations/management/view_index_drop.cxx +16 -12
  540. data/ext/couchbase/core/operations/management/view_index_drop.hxx +15 -13
  541. data/ext/couchbase/core/operations/management/view_index_get.cxx +40 -35
  542. data/ext/couchbase/core/operations/management/view_index_get.hxx +16 -14
  543. data/ext/couchbase/core/operations/management/view_index_get_all.cxx +73 -69
  544. data/ext/couchbase/core/operations/management/view_index_get_all.hxx +16 -13
  545. data/ext/couchbase/core/operations/management/view_index_upsert.cxx +39 -35
  546. data/ext/couchbase/core/operations/management/view_index_upsert.hxx +15 -12
  547. data/ext/couchbase/core/origin.cxx +259 -249
  548. data/ext/couchbase/core/origin.hxx +55 -49
  549. data/ext/couchbase/core/pending_operation.hxx +3 -3
  550. data/ext/couchbase/core/ping_collector.hxx +3 -3
  551. data/ext/couchbase/core/ping_options.hxx +30 -30
  552. data/ext/couchbase/core/ping_reporter.hxx +3 -3
  553. data/ext/couchbase/core/platform/backtrace.c +100 -91
  554. data/ext/couchbase/core/platform/base64.cc +135 -134
  555. data/ext/couchbase/core/platform/dirutils.cc +66 -63
  556. data/ext/couchbase/core/platform/random.cc +43 -42
  557. data/ext/couchbase/core/platform/random.h +4 -4
  558. data/ext/couchbase/core/platform/string_hex.cc +42 -40
  559. data/ext/couchbase/core/platform/terminate_handler.cc +54 -52
  560. data/ext/couchbase/core/platform/uuid.cc +47 -47
  561. data/ext/couchbase/core/protocol/client_opcode.hxx +336 -327
  562. data/ext/couchbase/core/protocol/client_opcode_fmt.hxx +291 -291
  563. data/ext/couchbase/core/protocol/client_request.cxx +13 -10
  564. data/ext/couchbase/core/protocol/client_request.hxx +133 -130
  565. data/ext/couchbase/core/protocol/client_response.cxx +40 -40
  566. data/ext/couchbase/core/protocol/client_response.hxx +153 -150
  567. data/ext/couchbase/core/protocol/cmd_append.cxx +24 -23
  568. data/ext/couchbase/core/protocol/cmd_append.hxx +65 -65
  569. data/ext/couchbase/core/protocol/cmd_cluster_map_change_notification.cxx +25 -21
  570. data/ext/couchbase/core/protocol/cmd_cluster_map_change_notification.hxx +33 -25
  571. data/ext/couchbase/core/protocol/cmd_decrement.cxx +38 -38
  572. data/ext/couchbase/core/protocol/cmd_decrement.hxx +87 -87
  573. data/ext/couchbase/core/protocol/cmd_get.cxx +17 -17
  574. data/ext/couchbase/core/protocol/cmd_get.hxx +59 -59
  575. data/ext/couchbase/core/protocol/cmd_get_and_lock.cxx +20 -20
  576. data/ext/couchbase/core/protocol/cmd_get_and_lock.hxx +72 -72
  577. data/ext/couchbase/core/protocol/cmd_get_and_touch.cxx +20 -20
  578. data/ext/couchbase/core/protocol/cmd_get_and_touch.hxx +72 -72
  579. data/ext/couchbase/core/protocol/cmd_get_cluster_config.cxx +46 -39
  580. data/ext/couchbase/core/protocol/cmd_get_cluster_config.hxx +57 -49
  581. data/ext/couchbase/core/protocol/cmd_get_collection_id.cxx +17 -17
  582. data/ext/couchbase/core/protocol/cmd_get_collection_id.hxx +59 -59
  583. data/ext/couchbase/core/protocol/cmd_get_collections_manifest.cxx +16 -14
  584. data/ext/couchbase/core/protocol/cmd_get_collections_manifest.hxx +39 -39
  585. data/ext/couchbase/core/protocol/cmd_get_error_map.cxx +18 -17
  586. data/ext/couchbase/core/protocol/cmd_get_error_map.hxx +62 -62
  587. data/ext/couchbase/core/protocol/cmd_get_meta.cxx +24 -23
  588. data/ext/couchbase/core/protocol/cmd_get_meta.hxx +81 -79
  589. data/ext/couchbase/core/protocol/cmd_get_replica.cxx +23 -23
  590. data/ext/couchbase/core/protocol/cmd_get_replica.hxx +44 -44
  591. data/ext/couchbase/core/protocol/cmd_hello.cxx +28 -27
  592. data/ext/couchbase/core/protocol/cmd_hello.hxx +106 -105
  593. data/ext/couchbase/core/protocol/cmd_increment.cxx +38 -38
  594. data/ext/couchbase/core/protocol/cmd_increment.hxx +87 -87
  595. data/ext/couchbase/core/protocol/cmd_info.hxx +3 -3
  596. data/ext/couchbase/core/protocol/cmd_insert.cxx +27 -27
  597. data/ext/couchbase/core/protocol/cmd_insert.hxx +81 -81
  598. data/ext/couchbase/core/protocol/cmd_lookup_in.cxx +54 -51
  599. data/ext/couchbase/core/protocol/cmd_lookup_in.hxx +90 -90
  600. data/ext/couchbase/core/protocol/cmd_lookup_in_replica.cxx +54 -51
  601. data/ext/couchbase/core/protocol/cmd_lookup_in_replica.hxx +88 -88
  602. data/ext/couchbase/core/protocol/cmd_mutate_in.cxx +105 -97
  603. data/ext/couchbase/core/protocol/cmd_mutate_in.hxx +161 -153
  604. data/ext/couchbase/core/protocol/cmd_noop.cxx +4 -4
  605. data/ext/couchbase/core/protocol/cmd_noop.hxx +32 -32
  606. data/ext/couchbase/core/protocol/cmd_observe_seqno.cxx +36 -34
  607. data/ext/couchbase/core/protocol/cmd_observe_seqno.hxx +89 -89
  608. data/ext/couchbase/core/protocol/cmd_prepend.cxx +22 -22
  609. data/ext/couchbase/core/protocol/cmd_prepend.hxx +63 -63
  610. data/ext/couchbase/core/protocol/cmd_remove.cxx +23 -23
  611. data/ext/couchbase/core/protocol/cmd_remove.hxx +54 -54
  612. data/ext/couchbase/core/protocol/cmd_replace.cxx +28 -28
  613. data/ext/couchbase/core/protocol/cmd_replace.hxx +88 -88
  614. data/ext/couchbase/core/protocol/cmd_sasl_auth.cxx +17 -15
  615. data/ext/couchbase/core/protocol/cmd_sasl_auth.hxx +56 -56
  616. data/ext/couchbase/core/protocol/cmd_sasl_list_mechs.cxx +24 -19
  617. data/ext/couchbase/core/protocol/cmd_sasl_list_mechs.hxx +39 -39
  618. data/ext/couchbase/core/protocol/cmd_sasl_step.cxx +17 -15
  619. data/ext/couchbase/core/protocol/cmd_sasl_step.hxx +56 -56
  620. data/ext/couchbase/core/protocol/cmd_select_bucket.cxx +6 -6
  621. data/ext/couchbase/core/protocol/cmd_select_bucket.hxx +36 -36
  622. data/ext/couchbase/core/protocol/cmd_touch.cxx +8 -8
  623. data/ext/couchbase/core/protocol/cmd_touch.hxx +38 -38
  624. data/ext/couchbase/core/protocol/cmd_unlock.cxx +5 -5
  625. data/ext/couchbase/core/protocol/cmd_unlock.hxx +36 -36
  626. data/ext/couchbase/core/protocol/cmd_upsert.cxx +28 -28
  627. data/ext/couchbase/core/protocol/cmd_upsert.hxx +83 -83
  628. data/ext/couchbase/core/protocol/datatype.hxx +19 -18
  629. data/ext/couchbase/core/protocol/frame_info_id.hxx +108 -103
  630. data/ext/couchbase/core/protocol/frame_info_id_fmt.hxx +45 -45
  631. data/ext/couchbase/core/protocol/frame_info_utils.cxx +24 -21
  632. data/ext/couchbase/core/protocol/frame_info_utils.hxx +3 -1
  633. data/ext/couchbase/core/protocol/hello_feature.hxx +211 -175
  634. data/ext/couchbase/core/protocol/hello_feature_fmt.hxx +93 -90
  635. data/ext/couchbase/core/protocol/magic.hxx +24 -24
  636. data/ext/couchbase/core/protocol/magic_fmt.hxx +30 -30
  637. data/ext/couchbase/core/protocol/server_opcode.hxx +11 -11
  638. data/ext/couchbase/core/protocol/server_opcode_fmt.hxx +18 -18
  639. data/ext/couchbase/core/protocol/server_request.hxx +90 -86
  640. data/ext/couchbase/core/protocol/status.cxx +138 -138
  641. data/ext/couchbase/core/protocol/status.hxx +86 -86
  642. data/ext/couchbase/core/query_context.hxx +44 -43
  643. data/ext/couchbase/core/range_scan_load_balancer.cxx +51 -50
  644. data/ext/couchbase/core/range_scan_load_balancer.hxx +26 -25
  645. data/ext/couchbase/core/range_scan_options.cxx +2 -2
  646. data/ext/couchbase/core/range_scan_options.hxx +62 -59
  647. data/ext/couchbase/core/range_scan_orchestrator.cxx +515 -470
  648. data/ext/couchbase/core/range_scan_orchestrator.hxx +23 -18
  649. data/ext/couchbase/core/range_scan_orchestrator_options.hxx +10 -10
  650. data/ext/couchbase/core/resource_units.hxx +2 -2
  651. data/ext/couchbase/core/response_handler.hxx +8 -8
  652. data/ext/couchbase/core/retry_orchestrator.cxx +27 -19
  653. data/ext/couchbase/core/retry_orchestrator.hxx +3 -2
  654. data/ext/couchbase/core/sasl/client.cc +22 -18
  655. data/ext/couchbase/core/sasl/client.h +66 -62
  656. data/ext/couchbase/core/sasl/context.cc +4 -4
  657. data/ext/couchbase/core/sasl/context.h +19 -19
  658. data/ext/couchbase/core/sasl/error.h +12 -1
  659. data/ext/couchbase/core/sasl/error_fmt.h +42 -42
  660. data/ext/couchbase/core/sasl/mechanism.cc +13 -10
  661. data/ext/couchbase/core/sasl/mechanism.h +8 -3
  662. data/ext/couchbase/core/sasl/plain/plain.cc +8 -8
  663. data/ext/couchbase/core/sasl/plain/plain.h +25 -24
  664. data/ext/couchbase/core/sasl/scram-sha/scram-sha.cc +225 -218
  665. data/ext/couchbase/core/sasl/scram-sha/scram-sha.h +133 -115
  666. data/ext/couchbase/core/sasl/scram-sha/stringutils.cc +20 -20
  667. data/ext/couchbase/core/scan_result.cxx +38 -38
  668. data/ext/couchbase/core/scan_result.hxx +16 -16
  669. data/ext/couchbase/core/search_highlight_style.hxx +4 -1
  670. data/ext/couchbase/core/search_query_options.cxx +21 -21
  671. data/ext/couchbase/core/search_query_options.hxx +19 -18
  672. data/ext/couchbase/core/search_scan_consistency.hxx +3 -1
  673. data/ext/couchbase/core/seed_config.cxx +10 -7
  674. data/ext/couchbase/core/seed_config.hxx +8 -8
  675. data/ext/couchbase/core/service_type.hxx +7 -7
  676. data/ext/couchbase/core/service_type_fmt.hxx +33 -33
  677. data/ext/couchbase/core/stats_options.hxx +13 -13
  678. data/ext/couchbase/core/subdoc_options.hxx +60 -58
  679. data/ext/couchbase/core/tls_verify_mode.hxx +2 -2
  680. data/ext/couchbase/core/topology/capabilities.hxx +83 -83
  681. data/ext/couchbase/core/topology/capabilities_fmt.hxx +111 -111
  682. data/ext/couchbase/core/topology/collections_manifest.hxx +14 -14
  683. data/ext/couchbase/core/topology/collections_manifest_fmt.hxx +23 -21
  684. data/ext/couchbase/core/topology/collections_manifest_json.hxx +26 -25
  685. data/ext/couchbase/core/topology/configuration.cxx +213 -192
  686. data/ext/couchbase/core/topology/configuration.hxx +104 -91
  687. data/ext/couchbase/core/topology/configuration_fmt.hxx +131 -128
  688. data/ext/couchbase/core/topology/configuration_json.hxx +276 -242
  689. data/ext/couchbase/core/topology/error_map.hxx +5 -5
  690. data/ext/couchbase/core/topology/error_map_json.hxx +65 -60
  691. data/ext/couchbase/core/tracing/constants.hxx +153 -153
  692. data/ext/couchbase/core/tracing/noop_tracer.hxx +29 -28
  693. data/ext/couchbase/core/tracing/threshold_logging_options.hxx +30 -30
  694. data/ext/couchbase/core/tracing/threshold_logging_tracer.cxx +354 -344
  695. data/ext/couchbase/core/tracing/threshold_logging_tracer.hxx +12 -12
  696. data/ext/couchbase/core/transactions/active_transaction_record.cxx +153 -33
  697. data/ext/couchbase/core/transactions/active_transaction_record.hxx +30 -118
  698. data/ext/couchbase/core/transactions/async_attempt_context.cxx +8 -2
  699. data/ext/couchbase/core/transactions/async_attempt_context.hxx +163 -127
  700. data/ext/couchbase/core/transactions/atr_cleanup_entry.cxx +358 -334
  701. data/ext/couchbase/core/transactions/atr_ids.cxx +270 -185
  702. data/ext/couchbase/core/transactions/atr_ids.hxx +4 -4
  703. data/ext/couchbase/core/transactions/attempt_context.cxx +9 -5
  704. data/ext/couchbase/core/transactions/attempt_context.hxx +194 -154
  705. data/ext/couchbase/core/transactions/attempt_context_impl.cxx +3278 -2159
  706. data/ext/couchbase/core/transactions/attempt_context_impl.hxx +446 -573
  707. data/ext/couchbase/core/transactions/attempt_context_testing_hooks.cxx +15 -10
  708. data/ext/couchbase/core/transactions/attempt_context_testing_hooks.hxx +58 -49
  709. data/ext/couchbase/core/transactions/attempt_state.hxx +72 -72
  710. data/ext/couchbase/core/transactions/binary.cxx +3 -3
  711. data/ext/couchbase/core/transactions/cleanup_testing_hooks.cxx +2 -2
  712. data/ext/couchbase/core/transactions/cleanup_testing_hooks.hxx +28 -24
  713. data/ext/couchbase/core/transactions/document_metadata.hxx +68 -68
  714. data/ext/couchbase/core/transactions/durability_level.hxx +53 -53
  715. data/ext/couchbase/core/transactions/error_class.hxx +12 -12
  716. data/ext/couchbase/core/transactions/error_list.hxx +22 -22
  717. data/ext/couchbase/core/transactions/exceptions.cxx +167 -114
  718. data/ext/couchbase/core/transactions/exceptions.hxx +170 -139
  719. data/ext/couchbase/core/transactions/exceptions_fmt.hxx +105 -0
  720. data/ext/couchbase/core/transactions/forward_compat.cxx +220 -0
  721. data/ext/couchbase/core/transactions/forward_compat.hxx +63 -207
  722. data/ext/couchbase/core/transactions/internal/atr_cleanup_entry.hxx +110 -102
  723. data/ext/couchbase/core/transactions/internal/atr_entry.hxx +144 -144
  724. data/ext/couchbase/core/transactions/internal/client_record.hxx +53 -50
  725. data/ext/couchbase/core/transactions/internal/doc_record.cxx +5 -5
  726. data/ext/couchbase/core/transactions/internal/doc_record.hxx +38 -35
  727. data/ext/couchbase/core/transactions/internal/doc_record_fmt.hxx +17 -16
  728. data/ext/couchbase/core/transactions/internal/exceptions_internal.hxx +238 -281
  729. data/ext/couchbase/core/transactions/internal/exceptions_internal_fmt.hxx +103 -0
  730. data/ext/couchbase/core/transactions/internal/logging.hxx +52 -29
  731. data/ext/couchbase/core/transactions/internal/transaction_attempt.hxx +3 -3
  732. data/ext/couchbase/core/transactions/internal/transaction_context.hxx +136 -120
  733. data/ext/couchbase/core/transactions/internal/transaction_fields.hxx +2 -1
  734. data/ext/couchbase/core/transactions/internal/transactions_cleanup.hxx +127 -122
  735. data/ext/couchbase/core/transactions/internal/utils.hxx +244 -219
  736. data/ext/couchbase/core/transactions/result.cxx +41 -40
  737. data/ext/couchbase/core/transactions/result.hxx +143 -141
  738. data/ext/couchbase/core/transactions/result_fmt.hxx +21 -20
  739. data/ext/couchbase/core/transactions/staged_mutation.cxx +759 -627
  740. data/ext/couchbase/core/transactions/staged_mutation.hxx +175 -156
  741. data/ext/couchbase/core/transactions/transaction_context.cxx +231 -179
  742. data/ext/couchbase/core/transactions/transaction_get_result.cxx +185 -198
  743. data/ext/couchbase/core/transactions/transaction_get_result.hxx +207 -222
  744. data/ext/couchbase/core/transactions/transaction_keyspace.cxx +15 -11
  745. data/ext/couchbase/core/transactions/transaction_links.cxx +11 -7
  746. data/ext/couchbase/core/transactions/transaction_links.hxx +222 -201
  747. data/ext/couchbase/core/transactions/transaction_options.cxx +44 -41
  748. data/ext/couchbase/core/transactions/transactions.cxx +167 -125
  749. data/ext/couchbase/core/transactions/transactions_cleanup.cxx +491 -424
  750. data/ext/couchbase/core/transactions/transactions_config.cxx +25 -19
  751. data/ext/couchbase/core/transactions/uid_generator.cxx +3 -3
  752. data/ext/couchbase/core/transactions/uid_generator.hxx +2 -2
  753. data/ext/couchbase/core/transactions/utils.cxx +82 -69
  754. data/ext/couchbase/core/transactions/waitable_op_list.hxx +154 -140
  755. data/ext/couchbase/core/transactions.hxx +184 -180
  756. data/ext/couchbase/core/utils/binary.cxx +3 -3
  757. data/ext/couchbase/core/utils/binary.hxx +19 -15
  758. data/ext/couchbase/core/utils/byteswap.hxx +17 -17
  759. data/ext/couchbase/core/utils/connection_string.cxx +395 -328
  760. data/ext/couchbase/core/utils/connection_string.hxx +37 -36
  761. data/ext/couchbase/core/utils/crc32.hxx +42 -34
  762. data/ext/couchbase/core/utils/duration_parser.cxx +142 -133
  763. data/ext/couchbase/core/utils/duration_parser.hxx +9 -9
  764. data/ext/couchbase/core/utils/join_strings.hxx +24 -24
  765. data/ext/couchbase/core/utils/json.cxx +234 -228
  766. data/ext/couchbase/core/utils/json.hxx +12 -12
  767. data/ext/couchbase/core/utils/json_stream_control.hxx +8 -8
  768. data/ext/couchbase/core/utils/json_streaming_lexer.cxx +288 -263
  769. data/ext/couchbase/core/utils/json_streaming_lexer.hxx +20 -17
  770. data/ext/couchbase/core/utils/keyspace.hxx +22 -21
  771. data/ext/couchbase/core/utils/movable_function.hxx +78 -76
  772. data/ext/couchbase/core/utils/mutation_token.cxx +7 -3
  773. data/ext/couchbase/core/utils/mutation_token.hxx +3 -1
  774. data/ext/couchbase/core/utils/name_codec.hxx +13 -13
  775. data/ext/couchbase/core/utils/split_string.cxx +9 -9
  776. data/ext/couchbase/core/utils/split_string.hxx +2 -2
  777. data/ext/couchbase/core/utils/unsigned_leb128.hxx +92 -88
  778. data/ext/couchbase/core/utils/url_codec.cxx +301 -297
  779. data/ext/couchbase/core/utils/url_codec.hxx +35 -35
  780. data/ext/couchbase/core/vector_query_combination.hxx +4 -1
  781. data/ext/couchbase/core/view_on_error.hxx +4 -3
  782. data/ext/couchbase/core/view_query_options.cxx +21 -21
  783. data/ext/couchbase/core/view_query_options.hxx +23 -22
  784. data/ext/couchbase/core/view_scan_consistency.hxx +3 -3
  785. data/ext/couchbase/core/view_sort_order.hxx +4 -1
  786. data/ext/couchbase/core/wait_until_ready_options.hxx +11 -10
  787. data/ext/couchbase/couchbase/allow_querying_search_index_options.hxx +11 -11
  788. data/ext/couchbase/couchbase/analytics_index_manager.hxx +423 -405
  789. data/ext/couchbase/couchbase/analytics_meta_data.hxx +105 -105
  790. data/ext/couchbase/couchbase/analytics_metrics.hxx +120 -118
  791. data/ext/couchbase/couchbase/analytics_options.hxx +318 -292
  792. data/ext/couchbase/couchbase/analytics_result.hxx +56 -55
  793. data/ext/couchbase/couchbase/analytics_scan_consistency.hxx +24 -21
  794. data/ext/couchbase/couchbase/analytics_status.hxx +10 -10
  795. data/ext/couchbase/couchbase/analytics_warning.hxx +44 -43
  796. data/ext/couchbase/couchbase/analyze_document_options.hxx +9 -9
  797. data/ext/couchbase/couchbase/append_options.hxx +51 -47
  798. data/ext/couchbase/couchbase/behavior_options.hxx +75 -69
  799. data/ext/couchbase/couchbase/best_effort_retry_strategy.hxx +12 -10
  800. data/ext/couchbase/couchbase/binary_collection.hxx +213 -183
  801. data/ext/couchbase/couchbase/boolean_field_query.hxx +38 -38
  802. data/ext/couchbase/couchbase/boolean_query.hxx +166 -157
  803. data/ext/couchbase/couchbase/bucket.hxx +69 -68
  804. data/ext/couchbase/couchbase/bucket_manager.hxx +97 -88
  805. data/ext/couchbase/couchbase/build_query_index_options.hxx +22 -21
  806. data/ext/couchbase/couchbase/cas.hxx +74 -73
  807. data/ext/couchbase/couchbase/certificate_authenticator.hxx +10 -10
  808. data/ext/couchbase/couchbase/cluster.hxx +266 -310
  809. data/ext/couchbase/couchbase/cluster_options.hxx +235 -241
  810. data/ext/couchbase/couchbase/codec/binary_noop_serializer.hxx +11 -11
  811. data/ext/couchbase/couchbase/codec/codec_flags.hxx +39 -35
  812. data/ext/couchbase/couchbase/codec/encoded_value.hxx +15 -2
  813. data/ext/couchbase/couchbase/codec/json_transcoder.hxx +17 -15
  814. data/ext/couchbase/couchbase/codec/raw_binary_transcoder.hxx +19 -17
  815. data/ext/couchbase/couchbase/codec/raw_json_transcoder.hxx +31 -24
  816. data/ext/couchbase/couchbase/codec/raw_string_transcoder.hxx +20 -18
  817. data/ext/couchbase/couchbase/codec/tao_json_serializer.hxx +38 -30
  818. data/ext/couchbase/couchbase/collection.hxx +1007 -902
  819. data/ext/couchbase/couchbase/collection_manager.hxx +115 -107
  820. data/ext/couchbase/couchbase/collection_query_index_manager.hxx +200 -188
  821. data/ext/couchbase/couchbase/common_durability_options.hxx +68 -62
  822. data/ext/couchbase/couchbase/common_options.hxx +67 -67
  823. data/ext/couchbase/couchbase/compression_options.hxx +33 -33
  824. data/ext/couchbase/couchbase/configuration_profile.hxx +12 -11
  825. data/ext/couchbase/couchbase/configuration_profiles_registry.hxx +24 -22
  826. data/ext/couchbase/couchbase/conjunction_query.hxx +47 -45
  827. data/ext/couchbase/couchbase/connect_link_analytics_options.hxx +74 -72
  828. data/ext/couchbase/couchbase/counter_result.hxx +32 -32
  829. data/ext/couchbase/couchbase/create_bucket_options.hxx +9 -10
  830. data/ext/couchbase/couchbase/create_collection_options.hxx +35 -34
  831. data/ext/couchbase/couchbase/create_dataset_analytics_options.hxx +76 -76
  832. data/ext/couchbase/couchbase/create_dataverse_analytics_options.hxx +44 -44
  833. data/ext/couchbase/couchbase/create_index_analytics_options.hxx +60 -60
  834. data/ext/couchbase/couchbase/create_link_analytics_options.hxx +25 -25
  835. data/ext/couchbase/couchbase/create_primary_query_index_options.hxx +95 -94
  836. data/ext/couchbase/couchbase/create_query_index_options.hxx +97 -96
  837. data/ext/couchbase/couchbase/create_scope_options.hxx +9 -9
  838. data/ext/couchbase/couchbase/date_range.hxx +29 -27
  839. data/ext/couchbase/couchbase/date_range_facet.hxx +20 -20
  840. data/ext/couchbase/couchbase/date_range_facet_result.hxx +14 -14
  841. data/ext/couchbase/couchbase/date_range_query.hxx +219 -205
  842. data/ext/couchbase/couchbase/decrement_options.hxx +93 -91
  843. data/ext/couchbase/couchbase/diagnostics_options.hxx +42 -41
  844. data/ext/couchbase/couchbase/diagnostics_result.hxx +82 -83
  845. data/ext/couchbase/couchbase/disallow_querying_search_index_options.hxx +11 -10
  846. data/ext/couchbase/couchbase/disconnect_link_analytics_options.hxx +62 -62
  847. data/ext/couchbase/couchbase/disjunction_query.hxx +61 -60
  848. data/ext/couchbase/couchbase/dns_options.hxx +30 -30
  849. data/ext/couchbase/couchbase/doc_id_query.hxx +69 -69
  850. data/ext/couchbase/couchbase/drop_bucket_options.hxx +9 -9
  851. data/ext/couchbase/couchbase/drop_collection_options.hxx +9 -9
  852. data/ext/couchbase/couchbase/drop_dataset_analytics_options.hxx +60 -60
  853. data/ext/couchbase/couchbase/drop_dataverse_analytics_options.hxx +44 -44
  854. data/ext/couchbase/couchbase/drop_index_analytics_options.hxx +60 -60
  855. data/ext/couchbase/couchbase/drop_link_analytics_options.hxx +25 -25
  856. data/ext/couchbase/couchbase/drop_primary_query_index_options.hxx +58 -58
  857. data/ext/couchbase/couchbase/drop_query_index_options.hxx +44 -44
  858. data/ext/couchbase/couchbase/drop_scope_options.hxx +9 -9
  859. data/ext/couchbase/couchbase/drop_search_index_options.hxx +9 -9
  860. data/ext/couchbase/couchbase/durability_level.hxx +32 -29
  861. data/ext/couchbase/couchbase/endpoint_diagnostics.hxx +171 -171
  862. data/ext/couchbase/couchbase/endpoint_ping_report.hxx +166 -169
  863. data/ext/couchbase/couchbase/error.hxx +51 -0
  864. data/ext/couchbase/couchbase/error_codes.hxx +975 -940
  865. data/ext/couchbase/couchbase/error_context.hxx +19 -152
  866. data/ext/couchbase/couchbase/exists_options.hxx +25 -24
  867. data/ext/couchbase/couchbase/exists_result.hxx +32 -32
  868. data/ext/couchbase/couchbase/fail_fast_retry_strategy.hxx +4 -4
  869. data/ext/couchbase/couchbase/flush_bucket_options.hxx +9 -9
  870. data/ext/couchbase/couchbase/fmt/analytics_scan_consistency.hxx +18 -18
  871. data/ext/couchbase/couchbase/fmt/analytics_status.hxx +42 -42
  872. data/ext/couchbase/couchbase/fmt/cas.hxx +10 -10
  873. data/ext/couchbase/couchbase/fmt/durability_level.hxx +24 -24
  874. data/ext/couchbase/couchbase/fmt/error.hxx +53 -0
  875. data/ext/couchbase/couchbase/fmt/error_context.hxx +43 -0
  876. data/ext/couchbase/couchbase/fmt/mutation_token.hxx +15 -11
  877. data/ext/couchbase/couchbase/fmt/query_profile.hxx +21 -21
  878. data/ext/couchbase/couchbase/fmt/query_scan_consistency.hxx +18 -18
  879. data/ext/couchbase/couchbase/fmt/query_status.hxx +42 -42
  880. data/ext/couchbase/couchbase/fmt/retry_reason.hxx +75 -75
  881. data/ext/couchbase/couchbase/fmt/search_scan_consistency.hxx +15 -15
  882. data/ext/couchbase/couchbase/fmt/tls_verify_mode.hxx +18 -18
  883. data/ext/couchbase/couchbase/fmt/transaction_keyspace.hxx +15 -11
  884. data/ext/couchbase/couchbase/fork_event.hxx +12 -12
  885. data/ext/couchbase/couchbase/freeze_plan_search_index_options.hxx +9 -9
  886. data/ext/couchbase/couchbase/geo_bounding_box_query.hxx +71 -64
  887. data/ext/couchbase/couchbase/geo_distance_query.hxx +73 -66
  888. data/ext/couchbase/couchbase/geo_point.hxx +2 -2
  889. data/ext/couchbase/couchbase/geo_polygon_query.hxx +40 -39
  890. data/ext/couchbase/couchbase/get_all_buckets_options.hxx +9 -9
  891. data/ext/couchbase/couchbase/get_all_datasets_analytics_options.hxx +25 -25
  892. data/ext/couchbase/couchbase/get_all_indexes_analytics_options.hxx +26 -25
  893. data/ext/couchbase/couchbase/get_all_query_indexes_options.hxx +27 -25
  894. data/ext/couchbase/couchbase/get_all_replicas_options.hxx +49 -26
  895. data/ext/couchbase/couchbase/get_all_scopes_options.hxx +9 -9
  896. data/ext/couchbase/couchbase/get_all_search_indexes_options.hxx +9 -9
  897. data/ext/couchbase/couchbase/get_and_lock_options.hxx +25 -24
  898. data/ext/couchbase/couchbase/get_and_touch_options.hxx +25 -24
  899. data/ext/couchbase/couchbase/get_any_replica_options.hxx +49 -26
  900. data/ext/couchbase/couchbase/get_bucket_options.hxx +9 -9
  901. data/ext/couchbase/couchbase/get_indexed_search_index_options.hxx +9 -9
  902. data/ext/couchbase/couchbase/get_links_analytics_options.hxx +74 -74
  903. data/ext/couchbase/couchbase/get_options.hxx +63 -60
  904. data/ext/couchbase/couchbase/get_pending_mutations_analytics_options.hxx +30 -28
  905. data/ext/couchbase/couchbase/get_replica_result.hxx +79 -75
  906. data/ext/couchbase/couchbase/get_result.hxx +86 -80
  907. data/ext/couchbase/couchbase/get_search_index_options.hxx +9 -9
  908. data/ext/couchbase/couchbase/highlight_style.hxx +14 -14
  909. data/ext/couchbase/couchbase/increment_options.hxx +94 -91
  910. data/ext/couchbase/couchbase/insert_options.hxx +62 -59
  911. data/ext/couchbase/couchbase/ip_protocol.hxx +3 -3
  912. data/ext/couchbase/couchbase/logger.hxx +51 -0
  913. data/ext/couchbase/couchbase/lookup_in_all_replicas_options.hxx +54 -43
  914. data/ext/couchbase/couchbase/lookup_in_any_replica_options.hxx +54 -44
  915. data/ext/couchbase/couchbase/lookup_in_options.hxx +40 -40
  916. data/ext/couchbase/couchbase/lookup_in_replica_result.hxx +38 -35
  917. data/ext/couchbase/couchbase/lookup_in_result.hxx +222 -216
  918. data/ext/couchbase/couchbase/lookup_in_specs.hxx +101 -101
  919. data/ext/couchbase/couchbase/management/analytics_dataset.hxx +16 -16
  920. data/ext/couchbase/couchbase/management/analytics_index.hxx +16 -16
  921. data/ext/couchbase/couchbase/management/analytics_link.hxx +193 -189
  922. data/ext/couchbase/couchbase/management/bucket_settings.hxx +91 -75
  923. data/ext/couchbase/couchbase/management/collection_spec.hxx +4 -4
  924. data/ext/couchbase/couchbase/management/query_index.hxx +10 -10
  925. data/ext/couchbase/couchbase/management/scope_spec.hxx +2 -2
  926. data/ext/couchbase/couchbase/management/search_index.hxx +9 -9
  927. data/ext/couchbase/couchbase/match_all_query.hxx +10 -9
  928. data/ext/couchbase/couchbase/match_none_query.hxx +10 -9
  929. data/ext/couchbase/couchbase/match_operator.hxx +15 -14
  930. data/ext/couchbase/couchbase/match_phrase_query.hxx +70 -65
  931. data/ext/couchbase/couchbase/match_query.hxx +115 -114
  932. data/ext/couchbase/couchbase/metrics/meter.hxx +33 -30
  933. data/ext/couchbase/couchbase/metrics/otel_meter.hxx +86 -74
  934. data/ext/couchbase/couchbase/metrics_options.hxx +34 -34
  935. data/ext/couchbase/couchbase/mutate_in_options.hxx +160 -149
  936. data/ext/couchbase/couchbase/mutate_in_result.hxx +130 -123
  937. data/ext/couchbase/couchbase/mutate_in_specs.hxx +473 -454
  938. data/ext/couchbase/couchbase/mutation_result.hxx +32 -32
  939. data/ext/couchbase/couchbase/mutation_state.hxx +35 -34
  940. data/ext/couchbase/couchbase/mutation_token.hxx +78 -78
  941. data/ext/couchbase/couchbase/network_options.hxx +101 -72
  942. data/ext/couchbase/couchbase/numeric_range.hxx +26 -26
  943. data/ext/couchbase/couchbase/numeric_range_facet.hxx +20 -20
  944. data/ext/couchbase/couchbase/numeric_range_facet_result.hxx +14 -14
  945. data/ext/couchbase/couchbase/numeric_range_query.hxx +97 -95
  946. data/ext/couchbase/couchbase/password_authenticator.hxx +17 -17
  947. data/ext/couchbase/couchbase/pause_ingest_search_index_options.hxx +11 -10
  948. data/ext/couchbase/couchbase/persist_to.hxx +45 -44
  949. data/ext/couchbase/couchbase/phrase_query.hxx +69 -65
  950. data/ext/couchbase/couchbase/ping_options.hxx +55 -54
  951. data/ext/couchbase/couchbase/ping_result.hxx +79 -77
  952. data/ext/couchbase/couchbase/prefix_query.hxx +43 -40
  953. data/ext/couchbase/couchbase/prepend_options.hxx +51 -47
  954. data/ext/couchbase/couchbase/query_index_manager.hxx +207 -199
  955. data/ext/couchbase/couchbase/query_meta_data.hxx +120 -120
  956. data/ext/couchbase/couchbase/query_metrics.hxx +135 -133
  957. data/ext/couchbase/couchbase/query_options.hxx +518 -493
  958. data/ext/couchbase/couchbase/query_profile.hxx +29 -26
  959. data/ext/couchbase/couchbase/query_result.hxx +56 -55
  960. data/ext/couchbase/couchbase/query_scan_consistency.hxx +24 -21
  961. data/ext/couchbase/couchbase/query_status.hxx +10 -10
  962. data/ext/couchbase/couchbase/query_string_query.hxx +34 -29
  963. data/ext/couchbase/couchbase/query_warning.hxx +75 -71
  964. data/ext/couchbase/couchbase/read_preference.hxx +58 -0
  965. data/ext/couchbase/couchbase/regexp_query.hxx +40 -39
  966. data/ext/couchbase/couchbase/remove_options.hxx +51 -47
  967. data/ext/couchbase/couchbase/replace_link_analytics_options.hxx +25 -25
  968. data/ext/couchbase/couchbase/replace_options.hxx +112 -104
  969. data/ext/couchbase/couchbase/replicate_to.hxx +28 -28
  970. data/ext/couchbase/couchbase/result.hxx +28 -28
  971. data/ext/couchbase/couchbase/resume_ingest_search_index_options.hxx +11 -10
  972. data/ext/couchbase/couchbase/retry_action.hxx +10 -10
  973. data/ext/couchbase/couchbase/retry_reason.hxx +53 -51
  974. data/ext/couchbase/couchbase/retry_request.hxx +7 -7
  975. data/ext/couchbase/couchbase/retry_strategy.hxx +4 -4
  976. data/ext/couchbase/couchbase/scan_options.hxx +114 -108
  977. data/ext/couchbase/couchbase/scan_result.hxx +97 -96
  978. data/ext/couchbase/couchbase/scan_result_item.hxx +120 -118
  979. data/ext/couchbase/couchbase/scan_type.hxx +237 -232
  980. data/ext/couchbase/couchbase/scope.hxx +164 -157
  981. data/ext/couchbase/couchbase/scope_search_index_manager.hxx +263 -238
  982. data/ext/couchbase/couchbase/search_date_range.hxx +32 -29
  983. data/ext/couchbase/couchbase/search_facet.hxx +25 -25
  984. data/ext/couchbase/couchbase/search_facet_result.hxx +11 -11
  985. data/ext/couchbase/couchbase/search_geo_distance_units.hxx +11 -1
  986. data/ext/couchbase/couchbase/search_index_manager.hxx +261 -238
  987. data/ext/couchbase/couchbase/search_meta_data.hxx +37 -37
  988. data/ext/couchbase/couchbase/search_metrics.hxx +84 -83
  989. data/ext/couchbase/couchbase/search_numeric_range.hxx +32 -32
  990. data/ext/couchbase/couchbase/search_options.hxx +449 -435
  991. data/ext/couchbase/couchbase/search_query.hxx +32 -30
  992. data/ext/couchbase/couchbase/search_request.hxx +69 -68
  993. data/ext/couchbase/couchbase/search_result.hxx +29 -26
  994. data/ext/couchbase/couchbase/search_row.hxx +52 -52
  995. data/ext/couchbase/couchbase/search_row_location.hxx +20 -20
  996. data/ext/couchbase/couchbase/search_row_locations.hxx +39 -38
  997. data/ext/couchbase/couchbase/search_scan_consistency.hxx +11 -10
  998. data/ext/couchbase/couchbase/search_sort.hxx +20 -20
  999. data/ext/couchbase/couchbase/search_sort_field.hxx +77 -71
  1000. data/ext/couchbase/couchbase/search_sort_field_missing.hxx +2 -2
  1001. data/ext/couchbase/couchbase/search_sort_field_mode.hxx +3 -3
  1002. data/ext/couchbase/couchbase/search_sort_field_type.hxx +4 -4
  1003. data/ext/couchbase/couchbase/search_sort_geo_distance.hxx +41 -41
  1004. data/ext/couchbase/couchbase/search_sort_id.hxx +23 -23
  1005. data/ext/couchbase/couchbase/search_sort_score.hxx +23 -23
  1006. data/ext/couchbase/couchbase/search_term_range.hxx +17 -17
  1007. data/ext/couchbase/couchbase/security_options.hxx +50 -50
  1008. data/ext/couchbase/couchbase/service_type.hxx +34 -34
  1009. data/ext/couchbase/couchbase/store_semantics.hxx +28 -28
  1010. data/ext/couchbase/couchbase/subdoc/array_add_unique.hxx +54 -54
  1011. data/ext/couchbase/couchbase/subdoc/array_append.hxx +40 -40
  1012. data/ext/couchbase/couchbase/subdoc/array_insert.hxx +41 -41
  1013. data/ext/couchbase/couchbase/subdoc/array_prepend.hxx +41 -41
  1014. data/ext/couchbase/couchbase/subdoc/count.hxx +24 -24
  1015. data/ext/couchbase/couchbase/subdoc/counter.hxx +41 -41
  1016. data/ext/couchbase/couchbase/subdoc/exists.hxx +24 -24
  1017. data/ext/couchbase/couchbase/subdoc/get.hxx +45 -29
  1018. data/ext/couchbase/couchbase/subdoc/insert.hxx +70 -54
  1019. data/ext/couchbase/couchbase/subdoc/lookup_in_macro.hxx +13 -12
  1020. data/ext/couchbase/couchbase/subdoc/mutate_in_macro.hxx +7 -2
  1021. data/ext/couchbase/couchbase/subdoc/remove.hxx +24 -24
  1022. data/ext/couchbase/couchbase/subdoc/replace.hxx +55 -39
  1023. data/ext/couchbase/couchbase/subdoc/upsert.hxx +70 -54
  1024. data/ext/couchbase/couchbase/term_facet.hxx +16 -16
  1025. data/ext/couchbase/couchbase/term_facet_result.hxx +14 -14
  1026. data/ext/couchbase/couchbase/term_query.hxx +107 -104
  1027. data/ext/couchbase/couchbase/term_range_query.hxx +99 -96
  1028. data/ext/couchbase/couchbase/timeout_options.hxx +118 -112
  1029. data/ext/couchbase/couchbase/tls_verify_mode.hxx +2 -2
  1030. data/ext/couchbase/couchbase/touch_options.hxx +25 -24
  1031. data/ext/couchbase/couchbase/tracing/otel_tracer.hxx +45 -44
  1032. data/ext/couchbase/couchbase/tracing/request_span.hxx +34 -34
  1033. data/ext/couchbase/couchbase/tracing/request_tracer.hxx +27 -25
  1034. data/ext/couchbase/couchbase/tracing_options.hxx +147 -142
  1035. data/ext/couchbase/couchbase/transactions/async_attempt_context.hxx +149 -115
  1036. data/ext/couchbase/couchbase/transactions/attempt_context.hxx +146 -95
  1037. data/ext/couchbase/couchbase/transactions/transaction_get_result.hxx +52 -80
  1038. data/ext/couchbase/couchbase/transactions/transaction_keyspace.hxx +33 -29
  1039. data/ext/couchbase/couchbase/transactions/transaction_options.hxx +101 -96
  1040. data/ext/couchbase/couchbase/transactions/transaction_query_options.hxx +228 -223
  1041. data/ext/couchbase/couchbase/transactions/transaction_query_result.hxx +11 -12
  1042. data/ext/couchbase/couchbase/transactions/transaction_result.hxx +2 -3
  1043. data/ext/couchbase/couchbase/transactions/transactions_cleanup_config.hxx +105 -104
  1044. data/ext/couchbase/couchbase/transactions/transactions_config.hxx +191 -187
  1045. data/ext/couchbase/couchbase/transactions/transactions_query_config.hxx +32 -32
  1046. data/ext/couchbase/couchbase/transactions.hxx +56 -37
  1047. data/ext/couchbase/couchbase/unfreeze_plan_search_index_options.hxx +11 -10
  1048. data/ext/couchbase/couchbase/unlock_options.hxx +25 -24
  1049. data/ext/couchbase/couchbase/update_bucket_options.hxx +9 -9
  1050. data/ext/couchbase/couchbase/update_collection_options.hxx +35 -34
  1051. data/ext/couchbase/couchbase/upsert_options.hxx +85 -80
  1052. data/ext/couchbase/couchbase/upsert_search_index_options.hxx +9 -9
  1053. data/ext/couchbase/couchbase/vector_query.hxx +82 -62
  1054. data/ext/couchbase/couchbase/vector_search.hxx +51 -47
  1055. data/ext/couchbase/couchbase/vector_search_options.hxx +45 -41
  1056. data/ext/couchbase/couchbase/wan_development_configuration_profile.hxx +13 -13
  1057. data/ext/couchbase/couchbase/watch_query_indexes_options.hxx +41 -41
  1058. data/ext/couchbase/couchbase/wildcard_query.hxx +42 -41
  1059. data/ext/couchbase/third_party/expected/include/tl/expected.hpp +1746 -1584
  1060. data/ext/couchbase/third_party/jsonsl/jsonsl.c +2664 -2638
  1061. data/ext/couchbase/third_party/jsonsl/jsonsl.h +359 -342
  1062. data/ext/couchbase.cxx +43 -9568
  1063. data/ext/extconf.rb +5 -0
  1064. data/ext/rcb_analytics.cxx +1195 -0
  1065. data/ext/rcb_analytics.hxx +29 -0
  1066. data/ext/rcb_backend.cxx +530 -0
  1067. data/ext/rcb_backend.hxx +46 -0
  1068. data/ext/rcb_buckets.cxx +624 -0
  1069. data/ext/rcb_buckets.hxx +29 -0
  1070. data/ext/rcb_collections.cxx +377 -0
  1071. data/ext/rcb_collections.hxx +29 -0
  1072. data/ext/rcb_crud.cxx +1544 -0
  1073. data/ext/rcb_crud.hxx +29 -0
  1074. data/ext/rcb_diagnostics.cxx +264 -0
  1075. data/ext/rcb_diagnostics.hxx +29 -0
  1076. data/ext/rcb_exceptions.cxx +963 -0
  1077. data/ext/rcb_exceptions.hxx +111 -0
  1078. data/ext/rcb_extras.cxx +394 -0
  1079. data/ext/rcb_extras.hxx +29 -0
  1080. data/ext/rcb_logger.cxx +319 -0
  1081. data/ext/rcb_logger.hxx +36 -0
  1082. data/ext/rcb_multi.cxx +343 -0
  1083. data/ext/rcb_multi.hxx +29 -0
  1084. data/ext/rcb_query.cxx +1316 -0
  1085. data/ext/rcb_query.hxx +29 -0
  1086. data/ext/rcb_range_scan.cxx +358 -0
  1087. data/ext/rcb_range_scan.hxx +29 -0
  1088. data/ext/rcb_search.cxx +1216 -0
  1089. data/ext/rcb_search.hxx +29 -0
  1090. data/ext/rcb_users.cxx +636 -0
  1091. data/ext/rcb_users.hxx +29 -0
  1092. data/ext/rcb_utils.cxx +590 -0
  1093. data/ext/rcb_utils.hxx +564 -0
  1094. data/ext/rcb_version.cxx +137 -0
  1095. data/ext/rcb_version.hxx +34 -0
  1096. data/ext/rcb_views.cxx +485 -0
  1097. data/ext/rcb_views.hxx +29 -0
  1098. data/lib/active_support/cache/couchbase_store.rb +4 -1
  1099. data/lib/couchbase/analytics_options.rb +2 -0
  1100. data/lib/couchbase/authenticator.rb +2 -0
  1101. data/lib/couchbase/binary_collection.rb +2 -0
  1102. data/lib/couchbase/binary_collection_options.rb +2 -0
  1103. data/lib/couchbase/bucket.rb +2 -0
  1104. data/lib/couchbase/cluster.rb +2 -0
  1105. data/lib/couchbase/collection.rb +3 -1
  1106. data/lib/couchbase/collection_options.rb +2 -0
  1107. data/lib/couchbase/config_profiles.rb +2 -0
  1108. data/lib/couchbase/configuration.rb +2 -0
  1109. data/lib/couchbase/datastructures/couchbase_list.rb +4 -4
  1110. data/lib/couchbase/datastructures/couchbase_map.rb +4 -4
  1111. data/lib/couchbase/datastructures/couchbase_queue.rb +4 -4
  1112. data/lib/couchbase/datastructures/couchbase_set.rb +4 -4
  1113. data/lib/couchbase/datastructures.rb +2 -0
  1114. data/lib/couchbase/diagnostics.rb +2 -0
  1115. data/lib/couchbase/errors.rb +46 -8
  1116. data/lib/couchbase/json_transcoder.rb +2 -0
  1117. data/lib/couchbase/key_value_scan.rb +2 -0
  1118. data/lib/couchbase/logger.rb +2 -0
  1119. data/lib/couchbase/management/analytics_index_manager.rb +2 -0
  1120. data/lib/couchbase/management/bucket_manager.rb +2 -0
  1121. data/lib/couchbase/management/collection_manager.rb +2 -0
  1122. data/lib/couchbase/management/collection_query_index_manager.rb +2 -0
  1123. data/lib/couchbase/management/query_index_manager.rb +2 -0
  1124. data/lib/couchbase/management/scope_search_index_manager.rb +2 -0
  1125. data/lib/couchbase/management/search_index_manager.rb +2 -0
  1126. data/lib/couchbase/management/user_manager.rb +2 -0
  1127. data/lib/couchbase/management/view_index_manager.rb +2 -0
  1128. data/lib/couchbase/management.rb +2 -0
  1129. data/lib/couchbase/mutation_state.rb +2 -0
  1130. data/lib/couchbase/options.rb +2 -0
  1131. data/lib/couchbase/protostellar/request_generator/kv.rb +1 -1
  1132. data/lib/couchbase/query_options.rb +2 -0
  1133. data/lib/couchbase/railtie.rb +2 -0
  1134. data/lib/couchbase/raw_binary_transcoder.rb +2 -0
  1135. data/lib/couchbase/raw_json_transcoder.rb +2 -0
  1136. data/lib/couchbase/raw_string_transcoder.rb +2 -0
  1137. data/lib/couchbase/scope.rb +2 -0
  1138. data/lib/couchbase/search_options.rb +91 -63
  1139. data/lib/couchbase/subdoc.rb +5 -3
  1140. data/lib/couchbase/transcoder_flags.rb +2 -0
  1141. data/lib/couchbase/utils/generic_logger_adapter.rb +3 -1
  1142. data/lib/couchbase/utils/stdlib_logger_adapter.rb +2 -0
  1143. data/lib/couchbase/utils/time.rb +3 -1
  1144. data/lib/couchbase/utils.rb +2 -0
  1145. data/lib/couchbase/version.rb +3 -1
  1146. data/lib/couchbase/view_options.rb +2 -0
  1147. data/lib/couchbase.rb +2 -0
  1148. data/lib/rails/generators/couchbase/config/config_generator.rb +2 -0
  1149. metadata +83 -26
  1150. data/ext/couchbase/core/impl/internal_manager_error_context.cxx +0 -113
  1151. data/ext/couchbase/core/impl/internal_manager_error_context.hxx +0 -60
  1152. data/ext/couchbase/core/impl/manager_error_context.cxx +0 -100
  1153. data/ext/couchbase/core/impl/search_error_context.cxx +0 -147
  1154. data/ext/couchbase/couchbase/analytics_error_context.hxx +0 -143
  1155. data/ext/couchbase/couchbase/fmt/key_value_error_map_attribute.hxx +0 -100
  1156. data/ext/couchbase/couchbase/fmt/key_value_status_code.hxx +0 -269
  1157. data/ext/couchbase/couchbase/key_value_error_context.hxx +0 -229
  1158. data/ext/couchbase/couchbase/key_value_error_map_attribute.hxx +0 -136
  1159. data/ext/couchbase/couchbase/key_value_error_map_info.hxx +0 -138
  1160. data/ext/couchbase/couchbase/key_value_extended_error_info.hxx +0 -86
  1161. data/ext/couchbase/couchbase/key_value_status_code.hxx +0 -109
  1162. data/ext/couchbase/couchbase/manager_error_context.hxx +0 -111
  1163. data/ext/couchbase/couchbase/query_error_context.hxx +0 -145
  1164. data/ext/couchbase/couchbase/search_error_context.hxx +0 -138
  1165. data/ext/couchbase/couchbase/subdocument_error_context.hxx +0 -147
  1166. data/ext/couchbase/couchbase/transaction_op_error_context.hxx +0 -76
@@ -17,6 +17,7 @@
17
17
 
18
18
  #include "core/cluster.hxx"
19
19
 
20
+ #include "core/impl/error.hxx"
20
21
  #include "core/operations/management/search_index_analyze_document.hxx"
21
22
  #include "core/operations/management/search_index_control_ingest.hxx"
22
23
  #include "core/operations/management/search_index_control_plan_freeze.hxx"
@@ -27,7 +28,6 @@
27
28
  #include "core/operations/management/search_index_get_documents_count.hxx"
28
29
  #include "core/operations/management/search_index_upsert.hxx"
29
30
  #include "core/utils/json.hxx"
30
- #include "internal_manager_error_context.hxx"
31
31
 
32
32
  #include <couchbase/scope_search_index_manager.hxx>
33
33
  #include <couchbase/search_index_manager.hxx>
@@ -39,238 +39,262 @@ namespace couchbase
39
39
  {
40
40
  namespace
41
41
  {
42
- template<typename Response>
43
- manager_error_context
44
- build_context(Response& resp)
45
- {
46
- return manager_error_context(internal_manager_error_context{ resp.ctx.ec,
47
- resp.ctx.last_dispatched_to,
48
- resp.ctx.last_dispatched_from,
49
- resp.ctx.retry_attempts,
50
- std::move(resp.ctx.retry_reasons),
51
- std::move(resp.ctx.client_context_id),
52
- resp.ctx.http_status,
53
- std::move(resp.ctx.http_body),
54
- std::move(resp.ctx.path) });
55
- }
56
-
57
- couchbase::management::search::index
42
+ auto
58
43
  map_search_index(const couchbase::core::management::search::index& index)
44
+ -> couchbase::management::search::index
59
45
  {
60
- couchbase::management::search::index public_index{};
61
- public_index.uuid = index.uuid;
62
- public_index.name = index.name;
63
- public_index.type = index.type;
64
- public_index.params_json = index.params_json;
46
+ couchbase::management::search::index public_index{};
47
+ public_index.uuid = index.uuid;
48
+ public_index.name = index.name;
49
+ public_index.type = index.type;
50
+ public_index.params_json = index.params_json;
65
51
 
66
- public_index.source_name = index.source_name;
67
- public_index.source_type = index.source_type;
68
- public_index.source_uuid = index.source_uuid;
69
- public_index.source_params_json = index.source_params_json;
52
+ public_index.source_name = index.source_name;
53
+ public_index.source_type = index.source_type;
54
+ public_index.source_uuid = index.source_uuid;
55
+ public_index.source_params_json = index.source_params_json;
70
56
 
71
- public_index.plan_params_json = index.plan_params_json;
57
+ public_index.plan_params_json = index.plan_params_json;
72
58
 
73
- return public_index;
59
+ return public_index;
74
60
  }
75
61
 
76
- std::vector<couchbase::management::search::index>
62
+ auto
77
63
  map_all_search_indexes(const std::vector<couchbase::core::management::search::index>& indexes)
64
+ -> std::vector<couchbase::management::search::index>
78
65
  {
79
- std::vector<couchbase::management::search::index> search_indexes{};
80
- for (const auto& index : indexes) {
81
- auto converted_index = map_search_index(index);
82
- search_indexes.emplace_back(converted_index);
83
- }
84
- return search_indexes;
66
+ std::vector<couchbase::management::search::index> search_indexes{};
67
+ for (const auto& index : indexes) {
68
+ auto converted_index = map_search_index(index);
69
+ search_indexes.emplace_back(converted_index);
70
+ }
71
+ return search_indexes;
85
72
  }
86
73
 
87
- couchbase::core::management::search::index
74
+ auto
88
75
  map_search_index(const couchbase::management::search::index& index)
89
- {
90
- couchbase::core::management::search::index search_index{};
91
- search_index.name = index.name;
92
- search_index.type = index.type;
93
- search_index.source_type = index.source_type;
94
-
95
- if (index.uuid.has_value()) {
96
- search_index.uuid = index.uuid.value();
97
- }
98
- if (index.params_json.has_value()) {
99
- search_index.params_json = index.params_json.value();
100
- }
101
- // Below marked as omitempty
102
- if (!index.source_name.empty()) {
103
- search_index.source_name = index.source_name;
76
+ -> couchbase::core::management::search::index
77
+ {
78
+ couchbase::core::management::search::index search_index{};
79
+ search_index.name = index.name;
80
+ search_index.type = index.type;
81
+ search_index.source_type = index.source_type;
82
+
83
+ if (index.uuid.has_value()) {
84
+ search_index.uuid = index.uuid.value();
85
+ }
86
+ if (index.params_json.has_value()) {
87
+ search_index.params_json = index.params_json.value();
88
+ }
89
+ // Below marked as omitempty
90
+ if (!index.source_name.empty()) {
91
+ search_index.source_name = index.source_name;
92
+ }
93
+ if (index.source_uuid.has_value()) {
94
+ if (!index.source_uuid.value().empty()) {
95
+ search_index.source_uuid = index.source_uuid.value();
104
96
  }
105
- if (index.source_uuid.has_value()) {
106
- if (!index.source_uuid.value().empty()) {
107
- search_index.source_uuid = index.source_uuid.value();
108
- }
97
+ }
98
+ if (index.source_params_json.has_value()) {
99
+ if (index.source_params_json.value() != "{}" && !index.source_params_json.value().empty()) {
100
+ search_index.source_params_json = index.source_params_json.value();
109
101
  }
110
- if (index.source_params_json.has_value()) {
111
- if (index.source_params_json.value() != "{}" && !index.source_params_json.value().empty()) {
112
- search_index.source_params_json = index.source_params_json.value();
113
- }
102
+ }
103
+ if (index.plan_params_json.has_value()) {
104
+ if (index.plan_params_json.value() != "{}" && !index.plan_params_json->empty()) {
105
+ search_index.plan_params_json = index.plan_params_json.value();
114
106
  }
115
- if (index.plan_params_json.has_value()) {
116
- if (index.plan_params_json.value() != "{}" && !index.plan_params_json->empty()) {
117
- search_index.plan_params_json = index.plan_params_json.value();
118
- }
119
- }
120
- return search_index;
107
+ }
108
+ return search_index;
121
109
  }
122
110
 
123
- std::vector<std::string>
124
- convert_analysis(const std::string& analysis)
111
+ auto
112
+ convert_analysis(const std::string& analysis) -> std::vector<std::string>
125
113
  {
126
- std::vector<std::string> result;
127
-
128
- if (analysis.empty()) {
129
- return result;
130
- }
114
+ std::vector<std::string> result;
131
115
 
132
- auto parsed = core::utils::json::parse(analysis);
133
- auto analyses = parsed.get_array();
134
- for (auto const& object : analyses) {
135
- result.emplace_back(core::utils::json::generate(object));
136
- }
116
+ if (analysis.empty()) {
137
117
  return result;
118
+ }
119
+
120
+ auto parsed = core::utils::json::parse(analysis);
121
+ auto analyses = parsed.get_array();
122
+ for (auto const& object : analyses) {
123
+ result.emplace_back(core::utils::json::generate(object));
124
+ }
125
+ return result;
138
126
  }
139
127
  } // namespace
140
128
 
141
129
  class search_index_manager_impl
142
130
  {
143
- public:
144
- explicit search_index_manager_impl(core::cluster core)
145
- : core_{ std::move(core) }
146
- {
147
- }
148
-
149
- explicit search_index_manager_impl(core::cluster core, std::string bucket_name, std::string scope_name)
150
- : core_{ std::move(core) }
151
- , bucket_name_{ std::move(bucket_name) }
152
- , scope_name_{ std::move(scope_name) }
153
- {
154
- }
155
-
156
- void get_index(std::string index_name,
157
- const couchbase::get_search_index_options::built& options,
158
- get_search_index_handler&& handler) const
159
- {
160
- core_.execute(
161
- core::operations::management::search_index_get_request{ std::move(index_name), bucket_name_, scope_name_, {}, options.timeout },
162
- [handler = std::move(handler)](auto resp) mutable { return handler(build_context(resp), map_search_index(resp.index)); });
163
- }
164
-
165
- void get_all_indexes(const get_all_search_indexes_options::built& options, get_all_search_indexes_handler&& handler) const
166
- {
167
- core_.execute(
168
- core::operations::management::search_index_get_all_request{ bucket_name_, scope_name_, {}, options.timeout },
169
- [handler = std::move(handler)](auto resp) mutable { return handler(build_context(resp), map_all_search_indexes(resp.indexes)); });
170
- }
171
-
172
- void upsert_index(const management::search::index& search_index,
173
- const upsert_search_index_options::built& options,
174
- upsert_search_index_handler&& handler) const
175
- {
176
- core_.execute(
177
- core::operations::management::search_index_upsert_request{
178
- map_search_index(search_index), bucket_name_, scope_name_, {}, options.timeout },
179
- [handler = std::move(handler)](auto resp) mutable { return handler(build_context(resp)); });
180
- }
181
-
182
- void drop_index(std::string index_name, const drop_search_index_options::built& options, drop_search_index_handler&& handler) const
183
- {
184
- core_.execute(
185
- core::operations::management::search_index_drop_request{ std::move(index_name), bucket_name_, scope_name_, {}, options.timeout },
186
- [handler = std::move(handler)](auto resp) mutable { return handler(build_context(resp)); });
187
- }
188
-
189
- void get_indexed_documents_count(std::string index_name,
190
- const get_indexed_search_index_options::built& options,
191
- get_indexed_search_index_handler&& handler) const
192
- {
193
- core_.execute(
194
- core::operations::management::search_index_get_documents_count_request{
195
- std::move(index_name), bucket_name_, scope_name_, {}, options.timeout },
196
- [handler = std::move(handler)](auto resp) mutable { return handler(build_context(resp), resp.count); });
197
- }
198
-
199
- void pause_ingest(std::string index_name,
200
- const pause_ingest_search_index_options::built& options,
201
- pause_ingest_search_index_handler&& handler) const
202
- {
203
- core_.execute(
204
- core::operations::management::search_index_control_ingest_request{
205
- std::move(index_name), true, bucket_name_, scope_name_, {}, options.timeout },
206
- [handler = std::move(handler)](auto resp) mutable { return handler(build_context(resp)); });
207
- }
208
-
209
- void resume_ingest(std::string index_name,
210
- const resume_ingest_search_index_options::built& options,
211
- resume_ingest_search_index_handler&& handler) const
212
- {
213
- core_.execute(
214
- core::operations::management::search_index_control_ingest_request{
215
- std::move(index_name), false, bucket_name_, scope_name_, {}, options.timeout },
216
- [handler = std::move(handler)](auto resp) mutable { return handler(build_context(resp)); });
217
- }
218
-
219
- void allow_querying(std::string index_name,
220
- const allow_querying_search_index_options::built& options,
221
- allow_querying_search_index_handler&& handler) const
222
- {
223
- core_.execute(
224
- core::operations::management::search_index_control_query_request{
225
- std::move(index_name), true, bucket_name_, scope_name_, {}, options.timeout },
226
- [handler = std::move(handler)](auto resp) mutable { return handler(build_context(resp)); });
227
- }
228
-
229
- void disallow_querying(std::string index_name,
230
- const disallow_querying_search_index_options::built& options,
231
- disallow_querying_search_index_handler&& handler) const
232
- {
233
- core_.execute(
234
- core::operations::management::search_index_control_query_request{
235
- std::move(index_name), false, bucket_name_, scope_name_, {}, options.timeout },
236
- [handler = std::move(handler)](auto resp) mutable { return handler(build_context(resp)); });
237
- }
238
-
239
- void freeze_plan(std::string index_name,
240
- const freeze_plan_search_index_options::built& options,
241
- freeze_plan_search_index_handler&& handler) const
242
- {
243
- core_.execute(
244
- core::operations::management::search_index_control_plan_freeze_request{
245
- std::move(index_name), true, bucket_name_, scope_name_, {}, options.timeout },
246
- [handler = std::move(handler)](auto resp) mutable { return handler(build_context(resp)); });
247
- }
248
-
249
- void unfreeze_plan(std::string index_name,
250
- const unfreeze_plan_search_index_options::built& options,
251
- unfreeze_plan_search_index_handler&& handler) const
252
- {
253
- core_.execute(
254
- core::operations::management::search_index_control_plan_freeze_request{
255
- std::move(index_name), false, bucket_name_, scope_name_, {}, options.timeout },
256
- [handler = std::move(handler)](auto resp) mutable { return handler(build_context(resp)); });
257
- }
258
-
259
- void analyze_document(std::string index_name,
260
- std::string document,
261
- const analyze_document_options::built& options,
262
- analyze_document_handler&& handler) const
263
- {
264
- core_.execute(
265
- core::operations::management::search_index_analyze_document_request{
266
- std::move(index_name), std::move(document), bucket_name_, scope_name_, {}, options.timeout },
267
- [handler = std::move(handler)](auto resp) mutable { return handler(build_context(resp), convert_analysis(resp.analysis)); });
268
- }
269
-
270
- private:
271
- core::cluster core_;
272
- std::optional<std::string> bucket_name_{};
273
- std::optional<std::string> scope_name_{};
131
+ public:
132
+ explicit search_index_manager_impl(core::cluster core)
133
+ : core_{ std::move(core) }
134
+ {
135
+ }
136
+
137
+ explicit search_index_manager_impl(core::cluster core,
138
+ std::string bucket_name,
139
+ std::string scope_name)
140
+ : core_{ std::move(core) }
141
+ , bucket_name_{ std::move(bucket_name) }
142
+ , scope_name_{ std::move(scope_name) }
143
+ {
144
+ }
145
+
146
+ void get_index(std::string index_name,
147
+ const couchbase::get_search_index_options::built& options,
148
+ get_search_index_handler&& handler) const
149
+ {
150
+ core_.execute(
151
+ core::operations::management::search_index_get_request{
152
+ std::move(index_name), bucket_name_, scope_name_, {}, options.timeout },
153
+ [handler = std::move(handler)](auto resp) mutable {
154
+ return handler(core::impl::make_error(resp.ctx), map_search_index(resp.index));
155
+ });
156
+ }
157
+
158
+ void get_all_indexes(const get_all_search_indexes_options::built& options,
159
+ get_all_search_indexes_handler&& handler) const
160
+ {
161
+ core_.execute(
162
+ core::operations::management::search_index_get_all_request{
163
+ bucket_name_, scope_name_, {}, options.timeout },
164
+ [handler = std::move(handler)](auto resp) mutable {
165
+ return handler(core::impl::make_error(resp.ctx), map_all_search_indexes(resp.indexes));
166
+ });
167
+ }
168
+
169
+ void upsert_index(const management::search::index& search_index,
170
+ const upsert_search_index_options::built& options,
171
+ upsert_search_index_handler&& handler) const
172
+ {
173
+ core_.execute(
174
+ core::operations::management::search_index_upsert_request{
175
+ map_search_index(search_index), bucket_name_, scope_name_, {}, options.timeout },
176
+ [handler = std::move(handler)](auto resp) mutable {
177
+ return handler(core::impl::make_error(resp.ctx));
178
+ });
179
+ }
180
+
181
+ void drop_index(std::string index_name,
182
+ const drop_search_index_options::built& options,
183
+ drop_search_index_handler&& handler) const
184
+ {
185
+ core_.execute(
186
+ core::operations::management::search_index_drop_request{
187
+ std::move(index_name), bucket_name_, scope_name_, {}, options.timeout },
188
+ [handler = std::move(handler)](auto resp) mutable {
189
+ return handler(core::impl::make_error(resp.ctx));
190
+ });
191
+ }
192
+
193
+ void get_indexed_documents_count(std::string index_name,
194
+ const get_indexed_search_index_options::built& options,
195
+ get_indexed_search_index_handler&& handler) const
196
+ {
197
+ core_.execute(
198
+ core::operations::management::search_index_get_documents_count_request{
199
+ std::move(index_name), bucket_name_, scope_name_, {}, options.timeout },
200
+ [handler = std::move(handler)](auto resp) mutable {
201
+ return handler(core::impl::make_error(resp.ctx), resp.count);
202
+ });
203
+ }
204
+
205
+ void pause_ingest(std::string index_name,
206
+ const pause_ingest_search_index_options::built& options,
207
+ pause_ingest_search_index_handler&& handler) const
208
+ {
209
+ core_.execute(
210
+ core::operations::management::search_index_control_ingest_request{
211
+ std::move(index_name), true, bucket_name_, scope_name_, {}, options.timeout },
212
+ [handler = std::move(handler)](auto resp) mutable {
213
+ return handler(core::impl::make_error(resp.ctx));
214
+ });
215
+ }
216
+
217
+ void resume_ingest(std::string index_name,
218
+ const resume_ingest_search_index_options::built& options,
219
+ resume_ingest_search_index_handler&& handler) const
220
+ {
221
+ core_.execute(
222
+ core::operations::management::search_index_control_ingest_request{
223
+ std::move(index_name), false, bucket_name_, scope_name_, {}, options.timeout },
224
+ [handler = std::move(handler)](auto resp) mutable {
225
+ return handler(core::impl::make_error(resp.ctx));
226
+ });
227
+ }
228
+
229
+ void allow_querying(std::string index_name,
230
+ const allow_querying_search_index_options::built& options,
231
+ allow_querying_search_index_handler&& handler) const
232
+ {
233
+ core_.execute(
234
+ core::operations::management::search_index_control_query_request{
235
+ std::move(index_name), true, bucket_name_, scope_name_, {}, options.timeout },
236
+ [handler = std::move(handler)](auto resp) mutable {
237
+ return handler(core::impl::make_error(resp.ctx));
238
+ });
239
+ }
240
+
241
+ void disallow_querying(std::string index_name,
242
+ const disallow_querying_search_index_options::built& options,
243
+ disallow_querying_search_index_handler&& handler) const
244
+ {
245
+ core_.execute(
246
+ core::operations::management::search_index_control_query_request{
247
+ std::move(index_name), false, bucket_name_, scope_name_, {}, options.timeout },
248
+ [handler = std::move(handler)](auto resp) mutable {
249
+ return handler(core::impl::make_error(resp.ctx));
250
+ });
251
+ }
252
+
253
+ void freeze_plan(std::string index_name,
254
+ const freeze_plan_search_index_options::built& options,
255
+ freeze_plan_search_index_handler&& handler) const
256
+ {
257
+ core_.execute(
258
+ core::operations::management::search_index_control_plan_freeze_request{
259
+ std::move(index_name), true, bucket_name_, scope_name_, {}, options.timeout },
260
+ [handler = std::move(handler)](auto resp) mutable {
261
+ return handler(core::impl::make_error(resp.ctx));
262
+ });
263
+ }
264
+
265
+ void unfreeze_plan(std::string index_name,
266
+ const unfreeze_plan_search_index_options::built& options,
267
+ unfreeze_plan_search_index_handler&& handler) const
268
+ {
269
+ core_.execute(
270
+ core::operations::management::search_index_control_plan_freeze_request{
271
+ std::move(index_name), false, bucket_name_, scope_name_, {}, options.timeout },
272
+ [handler = std::move(handler)](auto resp) mutable {
273
+ return handler(core::impl::make_error(resp.ctx));
274
+ });
275
+ }
276
+
277
+ void analyze_document(std::string index_name,
278
+ std::string document,
279
+ const analyze_document_options::built& options,
280
+ analyze_document_handler&& handler) const
281
+ {
282
+ core_.execute(
283
+ core::operations::management::search_index_analyze_document_request{ std::move(index_name),
284
+ std::move(document),
285
+ bucket_name_,
286
+ scope_name_,
287
+ {},
288
+ options.timeout },
289
+ [handler = std::move(handler)](auto resp) mutable {
290
+ return handler(core::impl::make_error(resp.ctx), convert_analysis(resp.analysis));
291
+ });
292
+ }
293
+
294
+ private:
295
+ core::cluster core_;
296
+ std::optional<std::string> bucket_name_{};
297
+ std::optional<std::string> scope_name_{};
274
298
  };
275
299
 
276
300
  search_index_manager::search_index_manager(core::cluster core)
@@ -283,35 +307,38 @@ search_index_manager::get_index(std::string index_name,
283
307
  const couchbase::get_search_index_options& options,
284
308
  get_search_index_handler&& handler) const
285
309
  {
286
- return impl_->get_index(std::move(index_name), options.build(), std::move(handler));
310
+ return impl_->get_index(std::move(index_name), options.build(), std::move(handler));
287
311
  }
288
312
 
289
313
  auto
290
- search_index_manager::get_index(std::string index_name, const couchbase::get_search_index_options& options) const
291
- -> std::future<std::pair<manager_error_context, management::search::index>>
314
+ search_index_manager::get_index(std::string index_name,
315
+ const couchbase::get_search_index_options& options) const
316
+ -> std::future<std::pair<error, management::search::index>>
292
317
  {
293
- auto barrier = std::make_shared<std::promise<std::pair<manager_error_context, management::search::index>>>();
294
- get_index(std::move(index_name), options, [barrier](auto ctx, auto result) mutable {
295
- barrier->set_value(std::make_pair(std::move(ctx), std::move(result)));
296
- });
297
- return barrier->get_future();
318
+ auto barrier = std::make_shared<std::promise<std::pair<error, management::search::index>>>();
319
+ get_index(std::move(index_name), options, [barrier](auto err, auto result) mutable {
320
+ barrier->set_value(std::make_pair(std::move(err), std::move(result)));
321
+ });
322
+ return barrier->get_future();
298
323
  }
299
324
 
300
325
  void
301
326
  search_index_manager::get_all_indexes(const couchbase::get_all_search_indexes_options& options,
302
327
  get_all_search_indexes_handler&& handler) const
303
328
  {
304
- return impl_->get_all_indexes(options.build(), std::move(handler));
329
+ return impl_->get_all_indexes(options.build(), std::move(handler));
305
330
  }
306
331
 
307
332
  auto
308
- search_index_manager::get_all_indexes(const couchbase::get_all_search_indexes_options& options) const
309
- -> std::future<std::pair<manager_error_context, std::vector<management::search::index>>>
333
+ search_index_manager::get_all_indexes(const couchbase::get_all_search_indexes_options& options)
334
+ const -> std::future<std::pair<error, std::vector<management::search::index>>>
310
335
  {
311
- auto barrier = std::make_shared<std::promise<std::pair<manager_error_context, std::vector<management::search::index>>>>();
312
- get_all_indexes(options,
313
- [barrier](auto ctx, auto result) mutable { barrier->set_value(std::make_pair(std::move(ctx), std::move(result))); });
314
- return barrier->get_future();
336
+ auto barrier =
337
+ std::make_shared<std::promise<std::pair<error, std::vector<management::search::index>>>>();
338
+ get_all_indexes(options, [barrier](auto err, auto result) mutable {
339
+ barrier->set_value(std::make_pair(std::move(err), std::move(result)));
340
+ });
341
+ return barrier->get_future();
315
342
  }
316
343
 
317
344
  void
@@ -319,16 +346,19 @@ search_index_manager::upsert_index(const management::search::index& search_index
319
346
  const couchbase::upsert_search_index_options& options,
320
347
  couchbase::upsert_search_index_handler&& handler) const
321
348
  {
322
- return impl_->upsert_index(search_index, options.build(), std::move(handler));
349
+ return impl_->upsert_index(search_index, options.build(), std::move(handler));
323
350
  }
324
351
 
325
352
  auto
326
353
  search_index_manager::upsert_index(const management::search::index& search_index,
327
- const couchbase::upsert_search_index_options& options) const -> std::future<manager_error_context>
354
+ const couchbase::upsert_search_index_options& options) const
355
+ -> std::future<error>
328
356
  {
329
- auto barrier = std::make_shared<std::promise<manager_error_context>>();
330
- upsert_index(search_index, options, [barrier](auto ctx) mutable { barrier->set_value(std::move(ctx)); });
331
- return barrier->get_future();
357
+ auto barrier = std::make_shared<std::promise<error>>();
358
+ upsert_index(search_index, options, [barrier](auto err) mutable {
359
+ barrier->set_value(std::move(err));
360
+ });
361
+ return barrier->get_future();
332
362
  }
333
363
 
334
364
  void
@@ -336,35 +366,42 @@ search_index_manager::drop_index(std::string index_name,
336
366
  const couchbase::drop_search_index_options& options,
337
367
  couchbase::drop_search_index_handler&& handler) const
338
368
  {
339
- return impl_->drop_index(std::move(index_name), options.build(), std::move(handler));
369
+ return impl_->drop_index(std::move(index_name), options.build(), std::move(handler));
340
370
  }
341
371
 
342
372
  auto
343
- search_index_manager::drop_index(std::string index_name, const couchbase::drop_search_index_options& options) const
344
- -> std::future<manager_error_context>
373
+ search_index_manager::drop_index(std::string index_name,
374
+ const couchbase::drop_search_index_options& options) const
375
+ -> std::future<error>
345
376
  {
346
- auto barrier = std::make_shared<std::promise<manager_error_context>>();
347
- drop_index(std::move(index_name), options, [barrier](auto ctx) mutable { barrier->set_value(std::move(ctx)); });
348
- return barrier->get_future();
377
+ auto barrier = std::make_shared<std::promise<error>>();
378
+ drop_index(std::move(index_name), options, [barrier](auto err) mutable {
379
+ barrier->set_value(std::move(err));
380
+ });
381
+ return barrier->get_future();
349
382
  }
350
383
 
351
384
  void
352
- search_index_manager::get_indexed_documents_count(std::string index_name,
353
- const couchbase::get_indexed_search_index_options& options,
354
- couchbase::get_indexed_search_index_handler&& handler) const
385
+ search_index_manager::get_indexed_documents_count(
386
+ std::string index_name,
387
+ const couchbase::get_indexed_search_index_options& options,
388
+ couchbase::get_indexed_search_index_handler&& handler) const
355
389
  {
356
- return impl_->get_indexed_documents_count(std::move(index_name), options.build(), std::move(handler));
390
+ return impl_->get_indexed_documents_count(
391
+ std::move(index_name), options.build(), std::move(handler));
357
392
  }
358
393
 
359
394
  auto
360
- search_index_manager::get_indexed_documents_count(std::string index_name, const get_indexed_search_index_options& options) const
361
- -> std::future<std::pair<manager_error_context, std::uint64_t>>
395
+ search_index_manager::get_indexed_documents_count(std::string index_name,
396
+ const get_indexed_search_index_options& options)
397
+ const -> std::future<std::pair<error, std::uint64_t>>
362
398
  {
363
- auto barrier = std::make_shared<std::promise<std::pair<manager_error_context, std::uint64_t>>>();
364
- get_indexed_documents_count(std::move(index_name), options, [barrier](auto ctx, auto result) mutable {
365
- barrier->set_value(std::make_pair(std::move(ctx), std::move(result)));
399
+ auto barrier = std::make_shared<std::promise<std::pair<error, std::uint64_t>>>();
400
+ get_indexed_documents_count(
401
+ std::move(index_name), options, [barrier](auto err, auto result) mutable {
402
+ barrier->set_value(std::make_pair(std::move(err), std::move(result)));
366
403
  });
367
- return barrier->get_future();
404
+ return barrier->get_future();
368
405
  }
369
406
 
370
407
  void
@@ -372,16 +409,19 @@ search_index_manager::pause_ingest(std::string index_name,
372
409
  const couchbase::pause_ingest_search_index_options& options,
373
410
  couchbase::pause_ingest_search_index_handler&& handler) const
374
411
  {
375
- return impl_->pause_ingest(std::move(index_name), options.build(), std::move(handler));
412
+ return impl_->pause_ingest(std::move(index_name), options.build(), std::move(handler));
376
413
  }
377
414
 
378
415
  auto
379
- search_index_manager::pause_ingest(std::string index_name, const couchbase::pause_ingest_search_index_options& options) const
380
- -> std::future<manager_error_context>
416
+ search_index_manager::pause_ingest(
417
+ std::string index_name,
418
+ const couchbase::pause_ingest_search_index_options& options) const -> std::future<error>
381
419
  {
382
- auto barrier = std::make_shared<std::promise<manager_error_context>>();
383
- pause_ingest(std::move(index_name), options, [barrier](auto ctx) mutable { barrier->set_value(std::move(ctx)); });
384
- return barrier->get_future();
420
+ auto barrier = std::make_shared<std::promise<error>>();
421
+ pause_ingest(std::move(index_name), options, [barrier](auto err) mutable {
422
+ barrier->set_value(std::move(err));
423
+ });
424
+ return barrier->get_future();
385
425
  }
386
426
 
387
427
  void
@@ -389,16 +429,19 @@ search_index_manager::resume_ingest(std::string index_name,
389
429
  const couchbase::resume_ingest_search_index_options& options,
390
430
  couchbase::resume_ingest_search_index_handler&& handler) const
391
431
  {
392
- return impl_->resume_ingest(std::move(index_name), options.build(), std::move(handler));
432
+ return impl_->resume_ingest(std::move(index_name), options.build(), std::move(handler));
393
433
  }
394
434
 
395
435
  auto
396
- search_index_manager::resume_ingest(std::string index_name, const couchbase::resume_ingest_search_index_options& options) const
397
- -> std::future<manager_error_context>
436
+ search_index_manager::resume_ingest(
437
+ std::string index_name,
438
+ const couchbase::resume_ingest_search_index_options& options) const -> std::future<error>
398
439
  {
399
- auto barrier = std::make_shared<std::promise<manager_error_context>>();
400
- resume_ingest(std::move(index_name), options, [barrier](auto ctx) mutable { barrier->set_value(std::move(ctx)); });
401
- return barrier->get_future();
440
+ auto barrier = std::make_shared<std::promise<error>>();
441
+ resume_ingest(std::move(index_name), options, [barrier](auto err) mutable {
442
+ barrier->set_value(std::move(err));
443
+ });
444
+ return barrier->get_future();
402
445
  }
403
446
 
404
447
  void
@@ -406,33 +449,40 @@ search_index_manager::allow_querying(std::string index_name,
406
449
  const couchbase::allow_querying_search_index_options& options,
407
450
  couchbase::allow_querying_search_index_handler&& handler) const
408
451
  {
409
- return impl_->allow_querying(std::move(index_name), options.build(), std::move(handler));
452
+ return impl_->allow_querying(std::move(index_name), options.build(), std::move(handler));
410
453
  }
411
454
 
412
455
  auto
413
- search_index_manager::allow_querying(std::string index_name, const couchbase::allow_querying_search_index_options& options) const
414
- -> std::future<manager_error_context>
456
+ search_index_manager::allow_querying(
457
+ std::string index_name,
458
+ const couchbase::allow_querying_search_index_options& options) const -> std::future<error>
415
459
  {
416
- auto barrier = std::make_shared<std::promise<manager_error_context>>();
417
- allow_querying(std::move(index_name), options, [barrier](auto ctx) mutable { barrier->set_value(std::move(ctx)); });
418
- return barrier->get_future();
460
+ auto barrier = std::make_shared<std::promise<error>>();
461
+ allow_querying(std::move(index_name), options, [barrier](auto err) mutable {
462
+ barrier->set_value(std::move(err));
463
+ });
464
+ return barrier->get_future();
419
465
  }
420
466
 
421
467
  void
422
- search_index_manager::disallow_querying(std::string index_name,
423
- const couchbase::disallow_querying_search_index_options& options,
424
- couchbase::disallow_querying_search_index_handler&& handler) const
468
+ search_index_manager::disallow_querying(
469
+ std::string index_name,
470
+ const couchbase::disallow_querying_search_index_options& options,
471
+ couchbase::disallow_querying_search_index_handler&& handler) const
425
472
  {
426
- return impl_->disallow_querying(std::move(index_name), options.build(), std::move(handler));
473
+ return impl_->disallow_querying(std::move(index_name), options.build(), std::move(handler));
427
474
  }
428
475
 
429
476
  auto
430
- search_index_manager::disallow_querying(std::string index_name, const couchbase::disallow_querying_search_index_options& options) const
431
- -> std::future<manager_error_context>
477
+ search_index_manager::disallow_querying(
478
+ std::string index_name,
479
+ const couchbase::disallow_querying_search_index_options& options) const -> std::future<error>
432
480
  {
433
- auto barrier = std::make_shared<std::promise<manager_error_context>>();
434
- disallow_querying(std::move(index_name), options, [barrier](auto ctx) mutable { barrier->set_value(std::move(ctx)); });
435
- return barrier->get_future();
481
+ auto barrier = std::make_shared<std::promise<error>>();
482
+ disallow_querying(std::move(index_name), options, [barrier](auto err) mutable {
483
+ barrier->set_value(std::move(err));
484
+ });
485
+ return barrier->get_future();
436
486
  }
437
487
 
438
488
  void
@@ -440,16 +490,19 @@ search_index_manager::freeze_plan(std::string index_name,
440
490
  const couchbase::freeze_plan_search_index_options& options,
441
491
  couchbase::freeze_plan_search_index_handler&& handler) const
442
492
  {
443
- return impl_->freeze_plan(std::move(index_name), options.build(), std::move(handler));
493
+ return impl_->freeze_plan(std::move(index_name), options.build(), std::move(handler));
444
494
  }
445
495
 
446
496
  auto
447
- search_index_manager::freeze_plan(std::string index_name, const couchbase::freeze_plan_search_index_options& options) const
448
- -> std::future<manager_error_context>
497
+ search_index_manager::freeze_plan(std::string index_name,
498
+ const couchbase::freeze_plan_search_index_options& options) const
499
+ -> std::future<error>
449
500
  {
450
- auto barrier = std::make_shared<std::promise<manager_error_context>>();
451
- freeze_plan(std::move(index_name), options, [barrier](auto ctx) mutable { barrier->set_value(std::move(ctx)); });
452
- return barrier->get_future();
501
+ auto barrier = std::make_shared<std::promise<error>>();
502
+ freeze_plan(std::move(index_name), options, [barrier](auto err) mutable {
503
+ barrier->set_value(std::move(err));
504
+ });
505
+ return barrier->get_future();
453
506
  }
454
507
 
455
508
  void
@@ -457,16 +510,19 @@ search_index_manager::unfreeze_plan(std::string index_name,
457
510
  const couchbase::unfreeze_plan_search_index_options& options,
458
511
  couchbase::unfreeze_plan_search_index_handler&& handler) const
459
512
  {
460
- return impl_->unfreeze_plan(std::move(index_name), options.build(), std::move(handler));
513
+ return impl_->unfreeze_plan(std::move(index_name), options.build(), std::move(handler));
461
514
  }
462
515
 
463
516
  auto
464
- search_index_manager::unfreeze_plan(std::string index_name, const couchbase::unfreeze_plan_search_index_options& options) const
465
- -> std::future<manager_error_context>
517
+ search_index_manager::unfreeze_plan(
518
+ std::string index_name,
519
+ const couchbase::unfreeze_plan_search_index_options& options) const -> std::future<error>
466
520
  {
467
- auto barrier = std::make_shared<std::promise<manager_error_context>>();
468
- unfreeze_plan(std::move(index_name), options, [barrier](auto ctx) mutable { barrier->set_value(std::move(ctx)); });
469
- return barrier->get_future();
521
+ auto barrier = std::make_shared<std::promise<error>>();
522
+ unfreeze_plan(std::move(index_name), options, [barrier](auto err) mutable {
523
+ barrier->set_value(std::move(err));
524
+ });
525
+ return barrier->get_future();
470
526
  }
471
527
 
472
528
  void
@@ -475,24 +531,30 @@ search_index_manager::analyze_document(std::string index_name,
475
531
  const couchbase::analyze_document_options& options,
476
532
  couchbase::analyze_document_handler&& handler) const
477
533
  {
478
- return impl_->analyze_document(std::move(index_name), std::move(document), options.build(), std::move(handler));
534
+ return impl_->analyze_document(
535
+ std::move(index_name), std::move(document), options.build(), std::move(handler));
479
536
  }
480
537
 
481
538
  auto
482
539
  search_index_manager::analyze_document(std::string index_name,
483
540
  std::string document,
484
541
  const couchbase::analyze_document_options& options) const
485
- -> std::future<std::pair<manager_error_context, std::vector<std::string>>>
542
+ -> std::future<std::pair<error, std::vector<std::string>>>
486
543
  {
487
- auto barrier = std::make_shared<std::promise<std::pair<manager_error_context, std::vector<std::string>>>>();
488
- analyze_document(std::move(index_name), std::move(document), options, [barrier](auto ctx, auto result) mutable {
489
- barrier->set_value(std::make_pair(std::move(ctx), std::move(result)));
544
+ auto barrier = std::make_shared<std::promise<std::pair<error, std::vector<std::string>>>>();
545
+ analyze_document(
546
+ std::move(index_name), std::move(document), options, [barrier](auto err, auto result) mutable {
547
+ barrier->set_value(std::make_pair(std::move(err), std::move(result)));
490
548
  });
491
- return barrier->get_future();
549
+ return barrier->get_future();
492
550
  }
493
551
 
494
- scope_search_index_manager::scope_search_index_manager(core::cluster core, std::string bucket_name, std::string scope_name)
495
- : impl_(std::make_shared<search_index_manager_impl>(std::move(core), std::move(bucket_name), std::move(scope_name)))
552
+ scope_search_index_manager::scope_search_index_manager(core::cluster core,
553
+ std::string bucket_name,
554
+ std::string scope_name)
555
+ : impl_(std::make_shared<search_index_manager_impl>(std::move(core),
556
+ std::move(bucket_name),
557
+ std::move(scope_name)))
496
558
  {
497
559
  }
498
560
 
@@ -501,35 +563,40 @@ scope_search_index_manager::get_index(std::string index_name,
501
563
  const couchbase::get_search_index_options& options,
502
564
  couchbase::get_search_index_handler&& handler) const
503
565
  {
504
- return impl_->get_index(std::move(index_name), options.build(), std::move(handler));
566
+ return impl_->get_index(std::move(index_name), options.build(), std::move(handler));
505
567
  }
506
568
 
507
569
  auto
508
- scope_search_index_manager::get_index(std::string index_name, const couchbase::get_search_index_options& options) const
509
- -> std::future<std::pair<manager_error_context, management::search::index>>
570
+ scope_search_index_manager::get_index(std::string index_name,
571
+ const couchbase::get_search_index_options& options) const
572
+ -> std::future<std::pair<error, management::search::index>>
510
573
  {
511
- auto barrier = std::make_shared<std::promise<std::pair<manager_error_context, management::search::index>>>();
512
- get_index(std::move(index_name), options, [barrier](auto ctx, auto result) mutable {
513
- barrier->set_value(std::make_pair(std::move(ctx), std::move(result)));
514
- });
515
- return barrier->get_future();
574
+ auto barrier = std::make_shared<std::promise<std::pair<error, management::search::index>>>();
575
+ get_index(std::move(index_name), options, [barrier](auto err, auto result) mutable {
576
+ barrier->set_value(std::make_pair(std::move(err), std::move(result)));
577
+ });
578
+ return barrier->get_future();
516
579
  }
517
580
 
518
581
  void
519
- scope_search_index_manager::get_all_indexes(const couchbase::get_all_search_indexes_options& options,
520
- get_all_search_indexes_handler&& handler) const
582
+ scope_search_index_manager::get_all_indexes(
583
+ const couchbase::get_all_search_indexes_options& options,
584
+ get_all_search_indexes_handler&& handler) const
521
585
  {
522
- return impl_->get_all_indexes(options.build(), std::move(handler));
586
+ return impl_->get_all_indexes(options.build(), std::move(handler));
523
587
  }
524
588
 
525
589
  auto
526
- scope_search_index_manager::get_all_indexes(const couchbase::get_all_search_indexes_options& options) const
527
- -> std::future<std::pair<manager_error_context, std::vector<management::search::index>>>
590
+ scope_search_index_manager::get_all_indexes(
591
+ const couchbase::get_all_search_indexes_options& options) const
592
+ -> std::future<std::pair<error, std::vector<management::search::index>>>
528
593
  {
529
- auto barrier = std::make_shared<std::promise<std::pair<manager_error_context, std::vector<management::search::index>>>>();
530
- get_all_indexes(options,
531
- [barrier](auto ctx, auto result) mutable { barrier->set_value(std::make_pair(std::move(ctx), std::move(result))); });
532
- return barrier->get_future();
594
+ auto barrier =
595
+ std::make_shared<std::promise<std::pair<error, std::vector<management::search::index>>>>();
596
+ get_all_indexes(options, [barrier](auto err, auto result) mutable {
597
+ barrier->set_value(std::make_pair(std::move(err), std::move(result)));
598
+ });
599
+ return barrier->get_future();
533
600
  }
534
601
 
535
602
  void
@@ -537,16 +604,19 @@ scope_search_index_manager::upsert_index(const management::search::index& search
537
604
  const couchbase::upsert_search_index_options& options,
538
605
  couchbase::upsert_search_index_handler&& handler) const
539
606
  {
540
- return impl_->upsert_index(search_index, options.build(), std::move(handler));
607
+ return impl_->upsert_index(search_index, options.build(), std::move(handler));
541
608
  }
542
609
 
543
610
  auto
544
- scope_search_index_manager::upsert_index(const management::search::index& search_index,
545
- const couchbase::upsert_search_index_options& options) const -> std::future<manager_error_context>
611
+ scope_search_index_manager::upsert_index(
612
+ const management::search::index& search_index,
613
+ const couchbase::upsert_search_index_options& options) const -> std::future<error>
546
614
  {
547
- auto barrier = std::make_shared<std::promise<manager_error_context>>();
548
- upsert_index(search_index, options, [barrier](auto ctx) mutable { barrier->set_value(std::move(ctx)); });
549
- return barrier->get_future();
615
+ auto barrier = std::make_shared<std::promise<error>>();
616
+ upsert_index(search_index, options, [barrier](auto err) mutable {
617
+ barrier->set_value(std::move(err));
618
+ });
619
+ return barrier->get_future();
550
620
  }
551
621
 
552
622
  void
@@ -554,104 +624,127 @@ scope_search_index_manager::drop_index(std::string index_name,
554
624
  const couchbase::drop_search_index_options& options,
555
625
  couchbase::drop_search_index_handler&& handler) const
556
626
  {
557
- return impl_->drop_index(std::move(index_name), options.build(), std::move(handler));
627
+ return impl_->drop_index(std::move(index_name), options.build(), std::move(handler));
558
628
  }
559
629
 
560
630
  auto
561
- scope_search_index_manager::drop_index(std::string index_name, const couchbase::drop_search_index_options& options) const
562
- -> std::future<manager_error_context>
631
+ scope_search_index_manager::drop_index(std::string index_name,
632
+ const couchbase::drop_search_index_options& options) const
633
+ -> std::future<error>
563
634
  {
564
- auto barrier = std::make_shared<std::promise<manager_error_context>>();
565
- drop_index(std::move(index_name), options, [barrier](auto ctx) mutable { barrier->set_value(std::move(ctx)); });
566
- return barrier->get_future();
635
+ auto barrier = std::make_shared<std::promise<error>>();
636
+ drop_index(std::move(index_name), options, [barrier](auto err) mutable {
637
+ barrier->set_value(std::move(err));
638
+ });
639
+ return barrier->get_future();
567
640
  }
568
641
 
569
642
  void
570
- scope_search_index_manager::get_indexed_documents_count(std::string index_name,
571
- const couchbase::get_indexed_search_index_options& options,
572
- couchbase::get_indexed_search_index_handler&& handler) const
643
+ scope_search_index_manager::get_indexed_documents_count(
644
+ std::string index_name,
645
+ const couchbase::get_indexed_search_index_options& options,
646
+ couchbase::get_indexed_search_index_handler&& handler) const
573
647
  {
574
- return impl_->get_indexed_documents_count(std::move(index_name), options.build(), std::move(handler));
648
+ return impl_->get_indexed_documents_count(
649
+ std::move(index_name), options.build(), std::move(handler));
575
650
  }
576
651
 
577
652
  auto
578
- scope_search_index_manager::get_indexed_documents_count(std::string index_name, const get_indexed_search_index_options& options) const
579
- -> std::future<std::pair<manager_error_context, std::uint64_t>>
580
- {
581
- auto barrier = std::make_shared<std::promise<std::pair<manager_error_context, std::uint64_t>>>();
582
- get_indexed_documents_count(std::move(index_name), options, [barrier](auto ctx, auto result) mutable {
583
- barrier->set_value(std::make_pair(std::move(ctx), std::move(result)));
653
+ scope_search_index_manager::get_indexed_documents_count(
654
+ std::string index_name,
655
+ const get_indexed_search_index_options& options) const
656
+ -> std::future<std::pair<error, std::uint64_t>>
657
+ {
658
+ auto barrier = std::make_shared<std::promise<std::pair<error, std::uint64_t>>>();
659
+ get_indexed_documents_count(
660
+ std::move(index_name), options, [barrier](auto err, auto result) mutable {
661
+ barrier->set_value(std::make_pair(std::move(err), std::move(result)));
584
662
  });
585
- return barrier->get_future();
663
+ return barrier->get_future();
586
664
  }
587
665
 
588
666
  void
589
- scope_search_index_manager::pause_ingest(std::string index_name,
590
- const couchbase::pause_ingest_search_index_options& options,
591
- couchbase::pause_ingest_search_index_handler&& handler) const
667
+ scope_search_index_manager::pause_ingest(
668
+ std::string index_name,
669
+ const couchbase::pause_ingest_search_index_options& options,
670
+ couchbase::pause_ingest_search_index_handler&& handler) const
592
671
  {
593
- return impl_->pause_ingest(std::move(index_name), options.build(), std::move(handler));
672
+ return impl_->pause_ingest(std::move(index_name), options.build(), std::move(handler));
594
673
  }
595
674
 
596
675
  auto
597
- scope_search_index_manager::pause_ingest(std::string index_name, const couchbase::pause_ingest_search_index_options& options) const
598
- -> std::future<manager_error_context>
676
+ scope_search_index_manager::pause_ingest(
677
+ std::string index_name,
678
+ const couchbase::pause_ingest_search_index_options& options) const -> std::future<error>
599
679
  {
600
- auto barrier = std::make_shared<std::promise<manager_error_context>>();
601
- pause_ingest(std::move(index_name), options, [barrier](auto ctx) mutable { barrier->set_value(std::move(ctx)); });
602
- return barrier->get_future();
680
+ auto barrier = std::make_shared<std::promise<error>>();
681
+ pause_ingest(std::move(index_name), options, [barrier](auto err) mutable {
682
+ barrier->set_value(std::move(err));
683
+ });
684
+ return barrier->get_future();
603
685
  }
604
686
 
605
687
  void
606
- scope_search_index_manager::resume_ingest(std::string index_name,
607
- const couchbase::resume_ingest_search_index_options& options,
608
- couchbase::resume_ingest_search_index_handler&& handler) const
688
+ scope_search_index_manager::resume_ingest(
689
+ std::string index_name,
690
+ const couchbase::resume_ingest_search_index_options& options,
691
+ couchbase::resume_ingest_search_index_handler&& handler) const
609
692
  {
610
- return impl_->resume_ingest(std::move(index_name), options.build(), std::move(handler));
693
+ return impl_->resume_ingest(std::move(index_name), options.build(), std::move(handler));
611
694
  }
612
695
 
613
696
  auto
614
- scope_search_index_manager::resume_ingest(std::string index_name, const couchbase::resume_ingest_search_index_options& options) const
615
- -> std::future<manager_error_context>
697
+ scope_search_index_manager::resume_ingest(
698
+ std::string index_name,
699
+ const couchbase::resume_ingest_search_index_options& options) const -> std::future<error>
616
700
  {
617
- auto barrier = std::make_shared<std::promise<manager_error_context>>();
618
- resume_ingest(std::move(index_name), options, [barrier](auto ctx) mutable { barrier->set_value(std::move(ctx)); });
619
- return barrier->get_future();
701
+ auto barrier = std::make_shared<std::promise<error>>();
702
+ resume_ingest(std::move(index_name), options, [barrier](auto err) mutable {
703
+ barrier->set_value(std::move(err));
704
+ });
705
+ return barrier->get_future();
620
706
  }
621
707
 
622
708
  void
623
- scope_search_index_manager::allow_querying(std::string index_name,
624
- const couchbase::allow_querying_search_index_options& options,
625
- couchbase::allow_querying_search_index_handler&& handler) const
709
+ scope_search_index_manager::allow_querying(
710
+ std::string index_name,
711
+ const couchbase::allow_querying_search_index_options& options,
712
+ couchbase::allow_querying_search_index_handler&& handler) const
626
713
  {
627
- return impl_->allow_querying(std::move(index_name), options.build(), std::move(handler));
714
+ return impl_->allow_querying(std::move(index_name), options.build(), std::move(handler));
628
715
  }
629
716
 
630
717
  auto
631
- scope_search_index_manager::allow_querying(std::string index_name, const couchbase::allow_querying_search_index_options& options) const
632
- -> std::future<manager_error_context>
718
+ scope_search_index_manager::allow_querying(
719
+ std::string index_name,
720
+ const couchbase::allow_querying_search_index_options& options) const -> std::future<error>
633
721
  {
634
- auto barrier = std::make_shared<std::promise<manager_error_context>>();
635
- allow_querying(std::move(index_name), options, [barrier](auto ctx) mutable { barrier->set_value(std::move(ctx)); });
636
- return barrier->get_future();
722
+ auto barrier = std::make_shared<std::promise<error>>();
723
+ allow_querying(std::move(index_name), options, [barrier](auto err) mutable {
724
+ barrier->set_value(std::move(err));
725
+ });
726
+ return barrier->get_future();
637
727
  }
638
728
 
639
729
  void
640
- scope_search_index_manager::disallow_querying(std::string index_name,
641
- const couchbase::disallow_querying_search_index_options& options,
642
- couchbase::disallow_querying_search_index_handler&& handler) const
730
+ scope_search_index_manager::disallow_querying(
731
+ std::string index_name,
732
+ const couchbase::disallow_querying_search_index_options& options,
733
+ couchbase::disallow_querying_search_index_handler&& handler) const
643
734
  {
644
- return impl_->disallow_querying(std::move(index_name), options.build(), std::move(handler));
735
+ return impl_->disallow_querying(std::move(index_name), options.build(), std::move(handler));
645
736
  }
646
737
 
647
738
  auto
648
- scope_search_index_manager::disallow_querying(std::string index_name,
649
- const couchbase::disallow_querying_search_index_options& options) const
650
- -> std::future<manager_error_context>
739
+ scope_search_index_manager::disallow_querying(
740
+ std::string index_name,
741
+ const couchbase::disallow_querying_search_index_options& options) const -> std::future<error>
651
742
  {
652
- auto barrier = std::make_shared<std::promise<manager_error_context>>();
653
- disallow_querying(std::move(index_name), options, [barrier](auto ctx) mutable { barrier->set_value(std::move(ctx)); });
654
- return barrier->get_future();
743
+ auto barrier = std::make_shared<std::promise<error>>();
744
+ disallow_querying(std::move(index_name), options, [barrier](auto err) mutable {
745
+ barrier->set_value(std::move(err));
746
+ });
747
+ return barrier->get_future();
655
748
  }
656
749
 
657
750
  void
@@ -659,33 +752,40 @@ scope_search_index_manager::freeze_plan(std::string index_name,
659
752
  const couchbase::freeze_plan_search_index_options& options,
660
753
  couchbase::freeze_plan_search_index_handler&& handler) const
661
754
  {
662
- return impl_->freeze_plan(std::move(index_name), options.build(), std::move(handler));
755
+ return impl_->freeze_plan(std::move(index_name), options.build(), std::move(handler));
663
756
  }
664
757
 
665
758
  auto
666
- scope_search_index_manager::freeze_plan(std::string index_name, const couchbase::freeze_plan_search_index_options& options) const
667
- -> std::future<manager_error_context>
759
+ scope_search_index_manager::freeze_plan(
760
+ std::string index_name,
761
+ const couchbase::freeze_plan_search_index_options& options) const -> std::future<error>
668
762
  {
669
- auto barrier = std::make_shared<std::promise<manager_error_context>>();
670
- freeze_plan(std::move(index_name), options, [barrier](auto ctx) mutable { barrier->set_value(std::move(ctx)); });
671
- return barrier->get_future();
763
+ auto barrier = std::make_shared<std::promise<error>>();
764
+ freeze_plan(std::move(index_name), options, [barrier](auto err) mutable {
765
+ barrier->set_value(std::move(err));
766
+ });
767
+ return barrier->get_future();
672
768
  }
673
769
 
674
770
  void
675
- scope_search_index_manager::unfreeze_plan(std::string index_name,
676
- const couchbase::unfreeze_plan_search_index_options& options,
677
- couchbase::unfreeze_plan_search_index_handler&& handler) const
771
+ scope_search_index_manager::unfreeze_plan(
772
+ std::string index_name,
773
+ const couchbase::unfreeze_plan_search_index_options& options,
774
+ couchbase::unfreeze_plan_search_index_handler&& handler) const
678
775
  {
679
- return impl_->unfreeze_plan(std::move(index_name), options.build(), std::move(handler));
776
+ return impl_->unfreeze_plan(std::move(index_name), options.build(), std::move(handler));
680
777
  }
681
778
 
682
779
  auto
683
- scope_search_index_manager::unfreeze_plan(std::string index_name, const couchbase::unfreeze_plan_search_index_options& options) const
684
- -> std::future<manager_error_context>
780
+ scope_search_index_manager::unfreeze_plan(
781
+ std::string index_name,
782
+ const couchbase::unfreeze_plan_search_index_options& options) const -> std::future<error>
685
783
  {
686
- auto barrier = std::make_shared<std::promise<manager_error_context>>();
687
- unfreeze_plan(std::move(index_name), options, [barrier](auto ctx) mutable { barrier->set_value(std::move(ctx)); });
688
- return barrier->get_future();
784
+ auto barrier = std::make_shared<std::promise<error>>();
785
+ unfreeze_plan(std::move(index_name), options, [barrier](auto err) mutable {
786
+ barrier->set_value(std::move(err));
787
+ });
788
+ return barrier->get_future();
689
789
  }
690
790
 
691
791
  void
@@ -694,19 +794,21 @@ scope_search_index_manager::analyze_document(std::string index_name,
694
794
  const couchbase::analyze_document_options& options,
695
795
  couchbase::analyze_document_handler&& handler) const
696
796
  {
697
- return impl_->analyze_document(std::move(index_name), std::move(document), options.build(), std::move(handler));
797
+ return impl_->analyze_document(
798
+ std::move(index_name), std::move(document), options.build(), std::move(handler));
698
799
  }
699
800
 
700
801
  auto
701
802
  scope_search_index_manager::analyze_document(std::string index_name,
702
803
  std::string document,
703
- const couchbase::analyze_document_options& options) const
704
- -> std::future<std::pair<manager_error_context, std::vector<std::string>>>
804
+ const couchbase::analyze_document_options& options)
805
+ const -> std::future<std::pair<error, std::vector<std::string>>>
705
806
  {
706
- auto barrier = std::make_shared<std::promise<std::pair<manager_error_context, std::vector<std::string>>>>();
707
- analyze_document(std::move(index_name), std::move(document), options, [barrier](auto ctx, auto result) mutable {
708
- barrier->set_value(std::make_pair(std::move(ctx), std::move(result)));
807
+ auto barrier = std::make_shared<std::promise<std::pair<error, std::vector<std::string>>>>();
808
+ analyze_document(
809
+ std::move(index_name), std::move(document), options, [barrier](auto err, auto result) mutable {
810
+ barrier->set_value(std::make_pair(std::move(err), std::move(result)));
709
811
  });
710
- return barrier->get_future();
812
+ return barrier->get_future();
711
813
  }
712
814
  } // namespace couchbase