couchbase 3.5.4 → 3.5.6
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.
- checksums.yaml +4 -4
- data/README.md +1 -1
- data/ext/CMakeLists.txt +8 -6
- data/ext/cache/cpm/{CPM_0.38.6.cmake → CPM_0.40.5.cmake} +152 -22
- data/ext/cache/extconf_include.rb +3 -3
- data/ext/cache/mozilla-ca-bundle.crt +94 -118
- data/ext/cache/mozilla-ca-bundle.sha256 +1 -1
- data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/CMakeLists.txt +30 -6
- data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/cmake/utils.cmake +13 -2
- data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/async_logger-inl.h +5 -7
- data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/details/mpmc_blocking_q.h +3 -3
- data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/details/os-inl.h +3 -3
- data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/details/thread_pool-inl.h +3 -8
- data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/details/thread_pool.h +3 -14
- data/ext/cache/{fmt/141a17a028e6c29914e109691389f6cf87f9cfe3/fmt/include/fmt → spdlog/7251ead404dccd824789f8f3a13df2a6fb56440c/spdlog/include/spdlog/fmt/bundled}/base.h +47 -31
- data/ext/cache/{fmt/141a17a028e6c29914e109691389f6cf87f9cfe3/fmt/include/fmt → spdlog/7251ead404dccd824789f8f3a13df2a6fb56440c/spdlog/include/spdlog/fmt/bundled}/format-inl.h +32 -8
- data/ext/cache/{fmt/141a17a028e6c29914e109691389f6cf87f9cfe3/fmt/include/fmt → spdlog/7251ead404dccd824789f8f3a13df2a6fb56440c/spdlog/include/spdlog/fmt/bundled}/format.h +22 -14
- data/ext/cache/{fmt/141a17a028e6c29914e109691389f6cf87f9cfe3/fmt/include/fmt → spdlog/7251ead404dccd824789f8f3a13df2a6fb56440c/spdlog/include/spdlog/fmt/bundled}/ranges.h +1 -1
- data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/mdc.h +4 -0
- data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/pattern_formatter-inl.h +16 -2
- data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/sinks/ansicolor_sink.h +1 -1
- data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/sinks/base_sink.h +4 -4
- data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/sinks/callback_sink.h +1 -1
- data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/sinks/daily_file_sink.h +3 -0
- data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/sinks/hourly_file_sink.h +2 -0
- data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/sinks/msvc_sink.h +1 -1
- data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/sinks/rotating_file_sink-inl.h +1 -1
- data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/sinks/syslog_sink.h +3 -2
- data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/sinks/wincolor_sink-inl.h +9 -0
- data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/version.h +2 -2
- data/ext/cache/{fmt/141a17a028e6c29914e109691389f6cf87f9cfe3/fmt/src/format.cc → spdlog/7251ead404dccd824789f8f3a13df2a6fb56440c/spdlog/src/bundled_fmtlib_format.cpp} +10 -5
- data/ext/couchbase/CMakeLists.txt +3 -2
- data/ext/couchbase/cmake/APKBUILD.in +54 -0
- data/ext/couchbase/cmake/Backtrace.cmake +3 -1
- data/ext/couchbase/cmake/CPM.cmake +1 -1
- data/ext/couchbase/cmake/CompilerWarnings.cmake +0 -5
- data/ext/couchbase/cmake/Packaging.cmake +174 -11
- data/ext/couchbase/cmake/RPath.cmake +10 -0
- data/ext/couchbase/cmake/Testing.cmake +0 -4
- data/ext/couchbase/cmake/ThirdPartyDependencies.cmake +7 -26
- data/ext/couchbase/cmake/VersionInfo.cmake +4 -0
- data/ext/couchbase/cmake/build_version.hxx.in +1 -0
- data/ext/couchbase/cmake/couchbase-cxx-client.spec.in +2 -2
- data/ext/couchbase/cmake/couchbase_cxx_client.pc.in +2 -2
- data/ext/couchbase/core/agent_config.cxx +1 -1
- data/ext/couchbase/core/agent_group_config.cxx +1 -1
- data/ext/couchbase/core/bucket.cxx +25 -23
- data/ext/couchbase/core/bucket.hxx +2 -1
- data/ext/couchbase/core/cluster.cxx +9 -9
- data/ext/couchbase/core/cluster.hxx +2 -1
- data/ext/couchbase/core/cluster_agent_config.cxx +1 -1
- data/ext/couchbase/core/collections_component.cxx +1 -1
- data/ext/couchbase/core/columnar/agent_config.cxx +2 -2
- data/ext/couchbase/core/columnar/error.hxx +0 -1
- data/ext/couchbase/core/columnar/query_component.cxx +2 -2
- data/ext/couchbase/core/config_profiles.cxx +1 -1
- data/ext/couchbase/core/core_sdk_shim.cxx +1 -1
- data/ext/couchbase/core/crud_component.cxx +1 -1
- data/ext/couchbase/core/design_document_namespace_fmt.hxx +1 -1
- data/ext/couchbase/core/diagnostics_fmt.hxx +1 -1
- data/ext/couchbase/core/document_id.cxx +1 -1
- data/ext/couchbase/core/document_id_fmt.hxx +1 -1
- data/ext/couchbase/core/error_context/analytics_json.hxx +3 -1
- data/ext/couchbase/core/error_context/key_value_json.hxx +1 -1
- data/ext/couchbase/core/error_context/query_public_json.hxx +1 -1
- data/ext/couchbase/core/error_context/subdocument_json.hxx +1 -1
- data/ext/couchbase/core/fmt/key_value_error_map_attribute.hxx +1 -1
- data/ext/couchbase/core/fmt/key_value_extended_error_info.hxx +1 -1
- data/ext/couchbase/core/fmt/key_value_status_code.hxx +1 -1
- data/ext/couchbase/core/http_component.cxx +3 -3
- data/ext/couchbase/core/impl/analytics.cxx +1 -0
- data/ext/couchbase/core/impl/best_effort_retry_strategy.cxx +1 -1
- data/ext/couchbase/core/impl/cluster.cxx +55 -18
- data/ext/couchbase/core/impl/collection.cxx +40 -15
- data/ext/couchbase/core/impl/date_range.cxx +2 -2
- data/ext/couchbase/core/impl/date_range_query.cxx +2 -2
- data/ext/couchbase/core/impl/dns_srv_tracker.cxx +1 -1
- data/ext/couchbase/core/impl/error.cxx +27 -4
- data/ext/couchbase/core/impl/expiry.cxx +2 -2
- data/ext/couchbase/core/impl/fail_fast_retry_strategy.cxx +1 -2
- data/ext/couchbase/core/impl/get_replica.hxx +2 -0
- data/ext/couchbase/core/impl/key_value_error_context.cxx +6 -4
- data/ext/couchbase/core/impl/lookup_in_replica.hxx +2 -0
- data/ext/couchbase/core/impl/numeric_range.cxx +1 -1
- data/ext/couchbase/core/impl/observe_poll.cxx +7 -7
- data/ext/couchbase/core/impl/observe_seqno.hxx +2 -0
- data/ext/couchbase/core/impl/query.cxx +1 -0
- data/ext/couchbase/core/impl/query_error_context.cxx +3 -2
- data/ext/couchbase/core/impl/replica_utils.cxx +5 -5
- data/ext/couchbase/core/impl/replica_utils.hxx +2 -1
- data/ext/couchbase/core/impl/scope.cxx +5 -6
- data/ext/couchbase/core/impl/search.cxx +3 -1
- data/ext/couchbase/core/io/config_tracker.cxx +1 -1
- data/ext/couchbase/core/io/dns_client.cxx +23 -8
- data/ext/couchbase/core/io/http_command.hxx +2 -2
- data/ext/couchbase/core/io/http_parser.cxx +1 -1
- data/ext/couchbase/core/io/http_session.cxx +4 -0
- data/ext/couchbase/core/io/http_session.hxx +4 -2
- data/ext/couchbase/core/io/mcbp_command.hxx +2 -2
- data/ext/couchbase/core/key_value_config.cxx +2 -2
- data/ext/couchbase/core/logger/logger.cxx +1 -1
- data/ext/couchbase/core/logger/logger.hxx +1 -1
- data/ext/couchbase/core/management/rbac_fmt.hxx +1 -1
- data/ext/couchbase/core/mcbp/operation_queue.cxx +1 -1
- data/ext/couchbase/core/mcbp/packet.cxx +1 -1
- data/ext/couchbase/core/meta/features.hxx +16 -0
- data/ext/couchbase/core/meta/version.cxx +48 -7
- data/ext/couchbase/core/operations/document_analytics.cxx +23 -17
- data/ext/couchbase/core/operations/document_analytics.hxx +1 -0
- data/ext/couchbase/core/operations/document_append.hxx +2 -0
- data/ext/couchbase/core/operations/document_decrement.hxx +2 -0
- data/ext/couchbase/core/operations/document_exists.hxx +2 -0
- data/ext/couchbase/core/operations/document_get.hxx +2 -0
- data/ext/couchbase/core/operations/document_get_all_replicas.hxx +5 -4
- data/ext/couchbase/core/operations/document_get_and_lock.hxx +2 -0
- data/ext/couchbase/core/operations/document_get_and_touch.hxx +2 -0
- data/ext/couchbase/core/operations/document_get_any_replica.hxx +5 -3
- data/ext/couchbase/core/operations/document_get_projected.hxx +2 -0
- data/ext/couchbase/core/operations/document_increment.hxx +2 -0
- data/ext/couchbase/core/operations/document_insert.hxx +2 -0
- data/ext/couchbase/core/operations/document_lookup_in.hxx +2 -0
- data/ext/couchbase/core/operations/document_lookup_in_all_replicas.hxx +5 -3
- data/ext/couchbase/core/operations/document_lookup_in_any_replica.hxx +5 -3
- data/ext/couchbase/core/operations/document_mutate_in.hxx +2 -0
- data/ext/couchbase/core/operations/document_prepend.hxx +2 -0
- data/ext/couchbase/core/operations/document_query.hxx +1 -0
- data/ext/couchbase/core/operations/document_remove.hxx +2 -0
- data/ext/couchbase/core/operations/document_replace.hxx +2 -0
- data/ext/couchbase/core/operations/document_search.hxx +1 -0
- data/ext/couchbase/core/operations/document_touch.hxx +2 -0
- data/ext/couchbase/core/operations/document_unlock.hxx +2 -0
- data/ext/couchbase/core/operations/document_upsert.hxx +2 -0
- data/ext/couchbase/core/operations/document_view.hxx +1 -0
- data/ext/couchbase/core/operations/http_noop.hxx +2 -0
- data/ext/couchbase/core/operations/management/CMakeLists.txt +0 -1
- data/ext/couchbase/core/operations/management/analytics_dataset_create.cxx +1 -1
- data/ext/couchbase/core/operations/management/analytics_dataset_create.hxx +1 -0
- data/ext/couchbase/core/operations/management/analytics_dataset_drop.cxx +1 -1
- data/ext/couchbase/core/operations/management/analytics_dataset_drop.hxx +1 -0
- data/ext/couchbase/core/operations/management/analytics_dataset_get_all.hxx +1 -0
- data/ext/couchbase/core/operations/management/analytics_dataverse_create.cxx +1 -1
- data/ext/couchbase/core/operations/management/analytics_dataverse_create.hxx +1 -0
- data/ext/couchbase/core/operations/management/analytics_dataverse_drop.cxx +1 -1
- data/ext/couchbase/core/operations/management/analytics_dataverse_drop.hxx +1 -0
- data/ext/couchbase/core/operations/management/analytics_get_pending_mutations.cxx +1 -1
- data/ext/couchbase/core/operations/management/analytics_get_pending_mutations.hxx +2 -0
- data/ext/couchbase/core/operations/management/analytics_index_create.hxx +1 -0
- data/ext/couchbase/core/operations/management/analytics_index_drop.cxx +1 -1
- data/ext/couchbase/core/operations/management/analytics_index_drop.hxx +1 -0
- data/ext/couchbase/core/operations/management/analytics_index_get_all.hxx +1 -0
- data/ext/couchbase/core/operations/management/analytics_link_connect.cxx +1 -1
- data/ext/couchbase/core/operations/management/analytics_link_connect.hxx +1 -0
- data/ext/couchbase/core/operations/management/analytics_link_create.hxx +1 -0
- data/ext/couchbase/core/operations/management/analytics_link_disconnect.cxx +1 -1
- data/ext/couchbase/core/operations/management/analytics_link_disconnect.hxx +1 -0
- data/ext/couchbase/core/operations/management/analytics_link_drop.cxx +1 -1
- data/ext/couchbase/core/operations/management/analytics_link_drop.hxx +1 -0
- data/ext/couchbase/core/operations/management/analytics_link_get_all.cxx +24 -16
- data/ext/couchbase/core/operations/management/analytics_link_get_all.hxx +4 -3
- data/ext/couchbase/core/operations/management/analytics_link_replace.hxx +1 -0
- data/ext/couchbase/core/operations/management/analytics_link_utils.hxx +4 -3
- data/ext/couchbase/core/operations/management/bucket_create.hxx +1 -0
- data/ext/couchbase/core/operations/management/bucket_describe.cxx +1 -1
- data/ext/couchbase/core/operations/management/bucket_describe.hxx +1 -0
- data/ext/couchbase/core/operations/management/bucket_drop.cxx +1 -1
- data/ext/couchbase/core/operations/management/bucket_drop.hxx +1 -0
- data/ext/couchbase/core/operations/management/bucket_flush.cxx +1 -1
- data/ext/couchbase/core/operations/management/bucket_flush.hxx +1 -0
- data/ext/couchbase/core/operations/management/bucket_get.cxx +1 -1
- data/ext/couchbase/core/operations/management/bucket_get.hxx +1 -0
- data/ext/couchbase/core/operations/management/bucket_get_all.hxx +1 -0
- data/ext/couchbase/core/operations/management/bucket_update.hxx +1 -0
- data/ext/couchbase/core/operations/management/change_password.cxx +1 -1
- data/ext/couchbase/core/operations/management/change_password.hxx +1 -0
- data/ext/couchbase/core/operations/management/cluster_describe.hxx +1 -0
- data/ext/couchbase/core/operations/management/cluster_developer_preview_enable.hxx +1 -0
- data/ext/couchbase/core/operations/management/collection_create.cxx +1 -1
- data/ext/couchbase/core/operations/management/collection_create.hxx +2 -0
- data/ext/couchbase/core/operations/management/collection_drop.cxx +1 -1
- data/ext/couchbase/core/operations/management/collection_drop.hxx +1 -0
- data/ext/couchbase/core/operations/management/collection_update.cxx +1 -1
- data/ext/couchbase/core/operations/management/collection_update.hxx +2 -0
- data/ext/couchbase/core/operations/management/collections_manifest_get.hxx +2 -0
- data/ext/couchbase/core/operations/management/eventing_deploy_function.cxx +1 -1
- data/ext/couchbase/core/operations/management/eventing_deploy_function.hxx +3 -2
- data/ext/couchbase/core/operations/management/eventing_drop_function.cxx +1 -1
- data/ext/couchbase/core/operations/management/eventing_drop_function.hxx +3 -2
- data/ext/couchbase/core/operations/management/eventing_get_all_functions.hxx +3 -2
- data/ext/couchbase/core/operations/management/eventing_get_function.cxx +1 -1
- data/ext/couchbase/core/operations/management/eventing_get_function.hxx +3 -2
- data/ext/couchbase/core/operations/management/eventing_get_status.hxx +3 -2
- data/ext/couchbase/core/operations/management/eventing_pause_function.cxx +1 -1
- data/ext/couchbase/core/operations/management/eventing_pause_function.hxx +3 -2
- data/ext/couchbase/core/operations/management/eventing_resume_function.cxx +1 -1
- data/ext/couchbase/core/operations/management/eventing_resume_function.hxx +3 -2
- data/ext/couchbase/core/operations/management/eventing_undeploy_function.cxx +1 -1
- data/ext/couchbase/core/operations/management/eventing_undeploy_function.hxx +3 -2
- data/ext/couchbase/core/operations/management/eventing_upsert_function.cxx +1 -2
- data/ext/couchbase/core/operations/management/eventing_upsert_function.hxx +3 -2
- data/ext/couchbase/core/operations/management/freeform.hxx +2 -0
- data/ext/couchbase/core/operations/management/group_drop.cxx +1 -1
- data/ext/couchbase/core/operations/management/group_drop.hxx +1 -0
- data/ext/couchbase/core/operations/management/group_get.cxx +1 -1
- data/ext/couchbase/core/operations/management/group_get.hxx +1 -0
- data/ext/couchbase/core/operations/management/group_get_all.hxx +1 -0
- data/ext/couchbase/core/operations/management/group_upsert.hxx +1 -0
- data/ext/couchbase/core/operations/management/query_index_build.hxx +7 -5
- data/ext/couchbase/core/operations/management/query_index_build_deferred.hxx +3 -0
- data/ext/couchbase/core/operations/management/query_index_create.cxx +1 -1
- data/ext/couchbase/core/operations/management/query_index_create.hxx +1 -0
- data/ext/couchbase/core/operations/management/query_index_drop.cxx +1 -1
- data/ext/couchbase/core/operations/management/query_index_drop.hxx +1 -0
- data/ext/couchbase/core/operations/management/query_index_get_all.hxx +2 -0
- data/ext/couchbase/core/operations/management/query_index_get_all_deferred.hxx +3 -0
- data/ext/couchbase/core/operations/management/role_get_all.hxx +1 -0
- data/ext/couchbase/core/operations/management/scope_create.cxx +1 -1
- data/ext/couchbase/core/operations/management/scope_create.hxx +1 -0
- data/ext/couchbase/core/operations/management/scope_drop.cxx +1 -1
- data/ext/couchbase/core/operations/management/scope_drop.hxx +1 -0
- data/ext/couchbase/core/operations/management/scope_get_all.cxx +1 -1
- data/ext/couchbase/core/operations/management/scope_get_all.hxx +1 -0
- data/ext/couchbase/core/operations/management/search_get_stats.hxx +1 -0
- data/ext/couchbase/core/operations/management/search_index_analyze_document.cxx +1 -1
- data/ext/couchbase/core/operations/management/search_index_analyze_document.hxx +1 -0
- data/ext/couchbase/core/operations/management/search_index_control_ingest.cxx +1 -1
- data/ext/couchbase/core/operations/management/search_index_control_ingest.hxx +1 -0
- data/ext/couchbase/core/operations/management/search_index_control_plan_freeze.cxx +1 -1
- data/ext/couchbase/core/operations/management/search_index_control_plan_freeze.hxx +1 -0
- data/ext/couchbase/core/operations/management/search_index_control_query.cxx +1 -1
- data/ext/couchbase/core/operations/management/search_index_control_query.hxx +1 -0
- data/ext/couchbase/core/operations/management/search_index_drop.cxx +1 -1
- data/ext/couchbase/core/operations/management/search_index_drop.hxx +1 -0
- data/ext/couchbase/core/operations/management/search_index_get.cxx +1 -1
- data/ext/couchbase/core/operations/management/search_index_get.hxx +1 -0
- data/ext/couchbase/core/operations/management/search_index_get_all.cxx +1 -1
- data/ext/couchbase/core/operations/management/search_index_get_all.hxx +1 -0
- data/ext/couchbase/core/operations/management/search_index_get_documents_count.cxx +1 -1
- data/ext/couchbase/core/operations/management/search_index_get_documents_count.hxx +2 -0
- data/ext/couchbase/core/operations/management/search_index_get_stats.cxx +1 -1
- data/ext/couchbase/core/operations/management/search_index_get_stats.hxx +1 -0
- data/ext/couchbase/core/operations/management/search_index_upsert.cxx +1 -1
- data/ext/couchbase/core/operations/management/search_index_upsert.hxx +1 -0
- data/ext/couchbase/core/operations/management/user_drop.hxx +1 -0
- data/ext/couchbase/core/operations/management/user_get.hxx +1 -0
- data/ext/couchbase/core/operations/management/user_get_all.hxx +1 -0
- data/ext/couchbase/core/operations/management/user_upsert.cxx +3 -3
- data/ext/couchbase/core/operations/management/user_upsert.hxx +1 -0
- data/ext/couchbase/core/operations/management/view_index_drop.cxx +1 -1
- data/ext/couchbase/core/operations/management/view_index_drop.hxx +1 -0
- data/ext/couchbase/core/operations/management/view_index_get.cxx +1 -1
- data/ext/couchbase/core/operations/management/view_index_get.hxx +1 -0
- data/ext/couchbase/core/operations/management/view_index_get_all.cxx +1 -1
- data/ext/couchbase/core/operations/management/view_index_get_all.hxx +2 -0
- data/ext/couchbase/core/operations/management/view_index_upsert.cxx +1 -1
- data/ext/couchbase/core/operations/management/view_index_upsert.hxx +1 -0
- data/ext/couchbase/core/origin.cxx +3 -2
- data/ext/couchbase/core/platform/base64.h +8 -8
- data/ext/couchbase/core/protocol/client_opcode_fmt.hxx +1 -1
- data/ext/couchbase/core/protocol/client_response.hxx +1 -1
- data/ext/couchbase/core/protocol/frame_info_id_fmt.hxx +1 -1
- data/ext/couchbase/core/protocol/hello_feature_fmt.hxx +1 -1
- data/ext/couchbase/core/protocol/magic_fmt.hxx +1 -1
- data/ext/couchbase/core/protocol/server_opcode_fmt.hxx +1 -1
- data/ext/couchbase/core/query_context.hxx +7 -6
- data/ext/couchbase/core/retry_orchestrator.cxx +1 -1
- data/ext/couchbase/core/sasl/CMakeLists.txt +0 -1
- data/ext/couchbase/core/sasl/error_fmt.h +1 -1
- data/ext/couchbase/core/seed_config.cxx +2 -2
- data/ext/couchbase/core/service_type_fmt.hxx +1 -1
- data/ext/couchbase/core/topology/capabilities_fmt.hxx +1 -1
- data/ext/couchbase/core/topology/collections_manifest_fmt.hxx +2 -1
- data/ext/couchbase/core/topology/configuration_fmt.hxx +1 -1
- data/ext/couchbase/core/transactions/async_attempt_context.cxx +1 -1
- data/ext/couchbase/core/transactions/async_attempt_context.hxx +9 -22
- data/ext/couchbase/core/transactions/attempt_context.cxx +1 -1
- data/ext/couchbase/core/transactions/attempt_context.hxx +6 -33
- data/ext/couchbase/core/transactions/attempt_context_impl.cxx +41 -41
- data/ext/couchbase/core/transactions/attempt_context_impl.hxx +15 -16
- data/ext/couchbase/core/transactions/exceptions_fmt.hxx +1 -1
- data/ext/couchbase/core/transactions/internal/atr_cleanup_entry.hxx +1 -1
- data/ext/couchbase/core/transactions/internal/client_record.hxx +4 -3
- data/ext/couchbase/core/transactions/internal/doc_record_fmt.hxx +1 -1
- data/ext/couchbase/core/transactions/internal/exceptions_internal.hxx +0 -2
- data/ext/couchbase/core/transactions/internal/exceptions_internal_fmt.hxx +1 -1
- data/ext/couchbase/core/transactions/internal/logging.hxx +2 -0
- data/ext/couchbase/core/transactions/internal/transaction_context.hxx +3 -0
- data/ext/couchbase/core/transactions/result_fmt.hxx +1 -1
- data/ext/couchbase/core/transactions/transaction_context.cxx +12 -2
- data/ext/couchbase/core/transactions/transaction_get_result.hxx +0 -20
- data/ext/couchbase/core/transactions/transaction_links.hxx +1 -1
- data/ext/couchbase/core/utils/join_strings.hxx +2 -2
- data/ext/couchbase/core/utils/keyspace.hxx +2 -1
- data/ext/couchbase/core/utils/url_codec.cxx +1 -1
- data/ext/couchbase/couchbase/common_options.hxx +16 -1
- data/ext/couchbase/couchbase/fmt/analytics_scan_consistency.hxx +0 -2
- data/ext/couchbase/couchbase/fmt/analytics_status.hxx +0 -2
- data/ext/couchbase/couchbase/fmt/cas.hxx +0 -2
- data/ext/couchbase/couchbase/fmt/durability_level.hxx +0 -2
- data/ext/couchbase/couchbase/fmt/error.hxx +0 -2
- data/ext/couchbase/couchbase/fmt/error_context.hxx +0 -2
- data/ext/couchbase/couchbase/fmt/mutation_token.hxx +0 -2
- data/ext/couchbase/couchbase/fmt/query_profile.hxx +0 -2
- data/ext/couchbase/couchbase/fmt/query_scan_consistency.hxx +0 -2
- data/ext/couchbase/couchbase/fmt/query_status.hxx +0 -2
- data/ext/couchbase/couchbase/fmt/retry_reason.hxx +5 -1
- data/ext/couchbase/couchbase/fmt/search_scan_consistency.hxx +0 -2
- data/ext/couchbase/couchbase/fmt/tls_verify_mode.hxx +0 -2
- data/ext/couchbase/couchbase/fmt/transaction_keyspace.hxx +0 -2
- data/ext/couchbase/couchbase/metrics/otel_meter.hxx +16 -20
- data/ext/couchbase.cxx +1 -0
- data/ext/extconf.rb +11 -0
- data/ext/rcb_analytics.cxx +7 -7
- data/ext/rcb_backend.cxx +83 -2
- data/ext/rcb_buckets.cxx +1 -1
- data/ext/rcb_collections.cxx +1 -1
- data/ext/rcb_crud.cxx +51 -30
- data/ext/rcb_diagnostics.cxx +1 -1
- data/ext/rcb_exceptions.cxx +3 -2
- data/ext/rcb_extras.cxx +1 -1
- data/ext/rcb_logger.cxx +6 -1
- data/ext/rcb_logger.hxx +3 -0
- data/ext/rcb_range_scan.cxx +3 -5
- data/ext/rcb_search.cxx +1 -1
- data/ext/rcb_users.cxx +2 -2
- data/ext/rcb_utils.hxx +32 -0
- data/lib/couchbase/bucket.rb +0 -8
- data/lib/couchbase/cluster.rb +2 -13
- data/lib/couchbase/collection.rb +0 -43
- data/lib/couchbase/collection_options.rb +3 -3
- data/lib/couchbase/datastructures/couchbase_queue.rb +1 -1
- data/lib/couchbase/datastructures/couchbase_set.rb +1 -1
- data/lib/couchbase/deprecations.rb +61 -0
- data/lib/couchbase/fork_hooks.rb +32 -0
- data/lib/couchbase/logger.rb +3 -3
- data/lib/couchbase/management/analytics_index_manager.rb +1 -1
- data/lib/couchbase/management/bucket_manager.rb +1 -1
- data/lib/couchbase/management/collection_manager.rb +1 -1
- data/lib/couchbase/management/query_index_manager.rb +1 -1
- data/lib/couchbase/options.rb +50 -2
- data/lib/couchbase/protostellar/request_generator/query.rb +1 -1
- data/lib/couchbase/utils/time.rb +1 -1
- data/lib/couchbase/version.rb +1 -1
- data/lib/couchbase.rb +2 -0
- metadata +133 -153
- data/ext/cache/fmt/141a17a028e6c29914e109691389f6cf87f9cfe3/fmt/CMakeLists.txt +0 -520
- data/ext/cache/fmt/141a17a028e6c29914e109691389f6cf87f9cfe3/fmt/ChangeLog.md +0 -2598
- data/ext/cache/fmt/141a17a028e6c29914e109691389f6cf87f9cfe3/fmt/LICENSE +0 -27
- data/ext/cache/fmt/141a17a028e6c29914e109691389f6cf87f9cfe3/fmt/README.md +0 -484
- data/ext/cache/fmt/141a17a028e6c29914e109691389f6cf87f9cfe3/fmt/src/fmt.cc +0 -135
- data/ext/cache/fmt/141a17a028e6c29914e109691389f6cf87f9cfe3/fmt/src/os.cc +0 -403
- data/ext/cache/fmt/141a17a028e6c29914e109691389f6cf87f9cfe3/fmt/support/cmake/FindSetEnv.cmake +0 -7
- data/ext/cache/fmt/141a17a028e6c29914e109691389f6cf87f9cfe3/fmt/support/cmake/JoinPaths.cmake +0 -26
- data/ext/cache/fmt/141a17a028e6c29914e109691389f6cf87f9cfe3/fmt/support/cmake/fmt-config.cmake.in +0 -7
- data/ext/cache/fmt/141a17a028e6c29914e109691389f6cf87f9cfe3/fmt/support/cmake/fmt.pc.in +0 -11
- data/ext/cache/spdlog/19df5d3d8e5526c255d27414e09568671ef87483/spdlog/include/spdlog/fmt/bundled/args.h +0 -235
- data/ext/cache/spdlog/19df5d3d8e5526c255d27414e09568671ef87483/spdlog/include/spdlog/fmt/bundled/chrono.h +0 -2240
- data/ext/cache/spdlog/19df5d3d8e5526c255d27414e09568671ef87483/spdlog/include/spdlog/fmt/bundled/color.h +0 -643
- data/ext/cache/spdlog/19df5d3d8e5526c255d27414e09568671ef87483/spdlog/include/spdlog/fmt/bundled/compile.h +0 -535
- data/ext/cache/spdlog/19df5d3d8e5526c255d27414e09568671ef87483/spdlog/include/spdlog/fmt/bundled/core.h +0 -2969
- data/ext/cache/spdlog/19df5d3d8e5526c255d27414e09568671ef87483/spdlog/include/spdlog/fmt/bundled/format-inl.h +0 -1678
- data/ext/cache/spdlog/19df5d3d8e5526c255d27414e09568671ef87483/spdlog/include/spdlog/fmt/bundled/format.h +0 -4535
- data/ext/cache/spdlog/19df5d3d8e5526c255d27414e09568671ef87483/spdlog/include/spdlog/fmt/bundled/os.h +0 -455
- data/ext/cache/spdlog/19df5d3d8e5526c255d27414e09568671ef87483/spdlog/include/spdlog/fmt/bundled/ostream.h +0 -245
- data/ext/cache/spdlog/19df5d3d8e5526c255d27414e09568671ef87483/spdlog/include/spdlog/fmt/bundled/printf.h +0 -675
- data/ext/cache/spdlog/19df5d3d8e5526c255d27414e09568671ef87483/spdlog/include/spdlog/fmt/bundled/ranges.h +0 -738
- data/ext/cache/spdlog/19df5d3d8e5526c255d27414e09568671ef87483/spdlog/include/spdlog/fmt/bundled/std.h +0 -537
- data/ext/cache/spdlog/19df5d3d8e5526c255d27414e09568671ef87483/spdlog/include/spdlog/fmt/bundled/xchar.h +0 -259
- data/ext/cache/spdlog/19df5d3d8e5526c255d27414e09568671ef87483/spdlog/src/bundled_fmtlib_format.cpp +0 -46
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/LICENSE +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/cmake/ide.cmake +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/cmake/pch.h.in +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/cmake/spdlog.pc.in +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/cmake/spdlogCPack.cmake +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/cmake/spdlogConfig.cmake.in +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/cmake/version.rc.in +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/async.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/async_logger.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/cfg/argv.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/cfg/env.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/cfg/helpers-inl.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/cfg/helpers.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/common-inl.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/common.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/details/backtracer-inl.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/details/backtracer.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/details/circular_q.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/details/console_globals.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/details/file_helper-inl.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/details/file_helper.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/details/fmt_helper.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/details/log_msg-inl.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/details/log_msg.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/details/log_msg_buffer-inl.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/details/log_msg_buffer.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/details/null_mutex.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/details/os.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/details/periodic_worker-inl.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/details/periodic_worker.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/details/registry-inl.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/details/registry.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/details/synchronous_factory.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/details/tcp_client-windows.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/details/tcp_client.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/details/udp_client-windows.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/details/udp_client.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/details/windows_include.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/fmt/bin_to_hex.h +0 -0
- /data/ext/cache/{fmt/141a17a028e6c29914e109691389f6cf87f9cfe3/fmt/include/fmt → spdlog/7251ead404dccd824789f8f3a13df2a6fb56440c/spdlog/include/spdlog/fmt/bundled}/args.h +0 -0
- /data/ext/cache/{fmt/141a17a028e6c29914e109691389f6cf87f9cfe3/fmt/include/fmt → spdlog/7251ead404dccd824789f8f3a13df2a6fb56440c/spdlog/include/spdlog/fmt/bundled}/chrono.h +0 -0
- /data/ext/cache/{fmt/141a17a028e6c29914e109691389f6cf87f9cfe3/fmt/include/fmt → spdlog/7251ead404dccd824789f8f3a13df2a6fb56440c/spdlog/include/spdlog/fmt/bundled}/color.h +0 -0
- /data/ext/cache/{fmt/141a17a028e6c29914e109691389f6cf87f9cfe3/fmt/include/fmt → spdlog/7251ead404dccd824789f8f3a13df2a6fb56440c/spdlog/include/spdlog/fmt/bundled}/compile.h +0 -0
- /data/ext/cache/{fmt/141a17a028e6c29914e109691389f6cf87f9cfe3/fmt/include/fmt → spdlog/7251ead404dccd824789f8f3a13df2a6fb56440c/spdlog/include/spdlog/fmt/bundled}/core.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/fmt/bundled/fmt.license.rst +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/fmt/bundled/locale.h +0 -0
- /data/ext/cache/{fmt/141a17a028e6c29914e109691389f6cf87f9cfe3/fmt/include/fmt → spdlog/7251ead404dccd824789f8f3a13df2a6fb56440c/spdlog/include/spdlog/fmt/bundled}/os.h +0 -0
- /data/ext/cache/{fmt/141a17a028e6c29914e109691389f6cf87f9cfe3/fmt/include/fmt → spdlog/7251ead404dccd824789f8f3a13df2a6fb56440c/spdlog/include/spdlog/fmt/bundled}/ostream.h +0 -0
- /data/ext/cache/{fmt/141a17a028e6c29914e109691389f6cf87f9cfe3/fmt/include/fmt → spdlog/7251ead404dccd824789f8f3a13df2a6fb56440c/spdlog/include/spdlog/fmt/bundled}/printf.h +0 -0
- /data/ext/cache/{fmt/141a17a028e6c29914e109691389f6cf87f9cfe3/fmt/include/fmt → spdlog/7251ead404dccd824789f8f3a13df2a6fb56440c/spdlog/include/spdlog/fmt/bundled}/std.h +0 -0
- /data/ext/cache/{fmt/141a17a028e6c29914e109691389f6cf87f9cfe3/fmt/include/fmt → spdlog/7251ead404dccd824789f8f3a13df2a6fb56440c/spdlog/include/spdlog/fmt/bundled}/xchar.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/fmt/chrono.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/fmt/compile.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/fmt/fmt.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/fmt/ostr.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/fmt/ranges.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/fmt/std.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/fmt/xchar.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/formatter.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/fwd.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/logger-inl.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/logger.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/pattern_formatter.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/sinks/android_sink.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/sinks/ansicolor_sink-inl.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/sinks/base_sink-inl.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/sinks/basic_file_sink-inl.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/sinks/basic_file_sink.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/sinks/dist_sink.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/sinks/dup_filter_sink.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/sinks/kafka_sink.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/sinks/mongo_sink.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/sinks/null_sink.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/sinks/ostream_sink.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/sinks/qt_sinks.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/sinks/ringbuffer_sink.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/sinks/rotating_file_sink.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/sinks/sink-inl.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/sinks/sink.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/sinks/stdout_color_sinks-inl.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/sinks/stdout_color_sinks.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/sinks/stdout_sinks-inl.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/sinks/stdout_sinks.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/sinks/systemd_sink.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/sinks/tcp_sink.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/sinks/udp_sink.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/sinks/win_eventlog_sink.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/sinks/wincolor_sink.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/spdlog-inl.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/spdlog.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/stopwatch.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/include/spdlog/tweakme.h +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/src/async.cpp +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/src/cfg.cpp +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/src/color_sinks.cpp +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/src/file_sinks.cpp +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/src/spdlog.cpp +0 -0
- /data/ext/cache/spdlog/{19df5d3d8e5526c255d27414e09568671ef87483 → 7251ead404dccd824789f8f3a13df2a6fb56440c}/spdlog/src/stdout_sinks.cpp +0 -0
@@ -20,6 +20,7 @@
|
|
20
20
|
#include "opentelemetry/sdk/metrics/meter.h"
|
21
21
|
#include <couchbase/metrics/meter.hxx>
|
22
22
|
|
23
|
+
#include <algorithm>
|
23
24
|
#include <iostream>
|
24
25
|
#include <thread>
|
25
26
|
#include <utility>
|
@@ -37,44 +38,39 @@ namespace couchbase::metrics
|
|
37
38
|
class otel_sync_histogram
|
38
39
|
{
|
39
40
|
public:
|
40
|
-
otel_sync_histogram(nostd::shared_ptr<metrics_api::Histogram<
|
41
|
+
otel_sync_histogram(nostd::shared_ptr<metrics_api::Histogram<std::uint64_t>> histogram_counter)
|
41
42
|
: histogram_counter_(histogram_counter)
|
42
43
|
{
|
43
44
|
}
|
44
|
-
|
45
|
+
|
46
|
+
void record(std::uint64_t value,
|
45
47
|
const opentelemetry::common::KeyValueIterable& tags,
|
46
48
|
opentelemetry::context::Context& ctx)
|
47
49
|
{
|
48
|
-
|
49
|
-
if (value > LONG_MAX) {
|
50
|
-
value = LONG_MAX;
|
51
|
-
}
|
52
|
-
long lvalue = static_cast<long>(value);
|
53
|
-
histogram_counter_->Record(lvalue, tags, ctx);
|
50
|
+
histogram_counter_->Record(value, tags, ctx);
|
54
51
|
}
|
55
52
|
|
56
53
|
private:
|
57
|
-
nostd::shared_ptr<metrics_api::Histogram<
|
54
|
+
nostd::shared_ptr<metrics_api::Histogram<std::uint64_t>> histogram_counter_;
|
58
55
|
std::mutex mutex_;
|
59
56
|
};
|
60
57
|
|
61
58
|
class otel_value_recorder : public couchbase::metrics::value_recorder
|
62
59
|
{
|
63
60
|
public:
|
64
|
-
explicit otel_value_recorder(
|
65
|
-
|
61
|
+
explicit otel_value_recorder(
|
62
|
+
nostd::shared_ptr<metrics_api::Histogram<std::uint64_t>> histogram_counter,
|
63
|
+
const std::map<std::string, std::string>& tags)
|
66
64
|
: histogram_counter_(histogram_counter)
|
67
65
|
, tags_(tags)
|
68
66
|
{
|
69
67
|
}
|
70
68
|
void record_value(std::int64_t value) override
|
71
69
|
{
|
72
|
-
|
73
|
-
|
74
|
-
}
|
75
|
-
long lvalue = static_cast<long>(value);
|
70
|
+
value = std::max<int64_t>(value, 0);
|
71
|
+
auto uvalue = static_cast<std::uint64_t>(value);
|
76
72
|
histogram_counter_->Record(
|
77
|
-
|
73
|
+
uvalue, opentelemetry::common::KeyValueIterableView<decltype(tags_)>{ tags_ }, context_);
|
78
74
|
}
|
79
75
|
|
80
76
|
const std::map<std::string, std::string> tags()
|
@@ -82,13 +78,13 @@ public:
|
|
82
78
|
return tags_;
|
83
79
|
}
|
84
80
|
|
85
|
-
nostd::shared_ptr<metrics_api::Histogram<
|
81
|
+
nostd::shared_ptr<metrics_api::Histogram<std::uint64_t>> histogram_counter()
|
86
82
|
{
|
87
83
|
return histogram_counter_;
|
88
84
|
}
|
89
85
|
|
90
86
|
private:
|
91
|
-
nostd::shared_ptr<metrics_api::Histogram<
|
87
|
+
nostd::shared_ptr<metrics_api::Histogram<std::uint64_t>> histogram_counter_;
|
92
88
|
const std::map<std::string, std::string> tags_;
|
93
89
|
opentelemetry::context::Context context_{};
|
94
90
|
std::mutex mutex_;
|
@@ -115,8 +111,8 @@ public:
|
|
115
111
|
// api doesn't seem to allow this.
|
116
112
|
return recorders_
|
117
113
|
.insert({ name,
|
118
|
-
std::make_shared<otel_value_recorder>(
|
119
|
-
|
114
|
+
std::make_shared<otel_value_recorder>(
|
115
|
+
meter_->CreateUInt64Histogram(name, "", "us"), tags) })
|
120
116
|
->second;
|
121
117
|
}
|
122
118
|
// so it is already, lets see if we already have one with those tags, or need
|
data/ext/couchbase.cxx
CHANGED
data/ext/extconf.rb
CHANGED
@@ -104,6 +104,7 @@ if ENV["CB_STATIC"] || ENV["CB_STATIC_BORINGSSL"]
|
|
104
104
|
elsif ENV["CB_STATIC_OPENSSL"]
|
105
105
|
cmake_flags << "-DCOUCHBASE_CXX_CLIENT_STATIC_OPENSSL=ON"
|
106
106
|
end
|
107
|
+
cmake_flags << "-DCOUCHBASE_CXX_CLIENT_WRAPPER_UNIFIED_ID=ruby/#{Couchbase::VERSION[:sdk]}"
|
107
108
|
|
108
109
|
unless cmake_flags.grep(/BORINGSSL/)
|
109
110
|
case RbConfig::CONFIG["target_os"]
|
@@ -153,6 +154,16 @@ build_dir = ENV['CB_EXT_BUILD_DIR'] ||
|
|
153
154
|
File.join(Dir.tmpdir, "cb-#{build_type}-#{RUBY_VERSION}-#{RUBY_PATCHLEVEL}-#{RUBY_PLATFORM}-#{SDK_VERSION}")
|
154
155
|
FileUtils.rm_rf(build_dir, verbose: true) unless ENV['CB_PRESERVE_BUILD_DIR']
|
155
156
|
FileUtils.mkdir_p(build_dir, verbose: true)
|
157
|
+
if ENV["CB_CREATE_BUILD_DIR_LINK"]
|
158
|
+
links = [
|
159
|
+
File.expand_path(File.join(project_path, "..", "build")),
|
160
|
+
File.expand_path(File.join(project_path, "build"))
|
161
|
+
]
|
162
|
+
links.each do |link|
|
163
|
+
next if link == build_dir
|
164
|
+
FileUtils.ln_sf(build_dir, link, verbose: true)
|
165
|
+
end
|
166
|
+
end
|
156
167
|
Dir.chdir(build_dir) do
|
157
168
|
puts "-- build #{build_type} extension #{SDK_VERSION} for ruby #{RUBY_VERSION}-#{RUBY_PATCHLEVEL}-#{RUBY_PLATFORM}"
|
158
169
|
sys(cmake, *cmake_flags, "-B#{build_dir}", "-S#{project_path}")
|
data/ext/rcb_analytics.cxx
CHANGED
@@ -36,7 +36,7 @@
|
|
36
36
|
#include <core/operations/management/analytics_link_get_all.hxx>
|
37
37
|
#include <core/operations/management/analytics_link_replace.hxx>
|
38
38
|
|
39
|
-
#include <fmt/core.h>
|
39
|
+
#include <spdlog/fmt/bundled/core.h>
|
40
40
|
|
41
41
|
#include <future>
|
42
42
|
#include <memory>
|
@@ -911,17 +911,17 @@ cb_Backend_analytics_link_get_all(VALUE self, VALUE options)
|
|
911
911
|
cb_throw_error(
|
912
912
|
resp.ctx,
|
913
913
|
fmt::format(R"(unable to retrieve links type={}, dataverse="{}", name="{}")",
|
914
|
-
req.link_type,
|
915
|
-
req.link_name,
|
916
|
-
req.dataverse_name));
|
914
|
+
req.link_type.value_or("-"),
|
915
|
+
req.link_name.value_or("-"),
|
916
|
+
req.dataverse_name.value_or("-")));
|
917
917
|
} else {
|
918
918
|
const auto& first_error = resp.errors.front();
|
919
919
|
cb_throw_error(
|
920
920
|
resp.ctx,
|
921
921
|
fmt::format(R"(unable to retrieve links type={}, dataverse="{}", name="{}" ({}: {}))",
|
922
|
-
req.link_type,
|
923
|
-
req.link_name,
|
924
|
-
req.dataverse_name,
|
922
|
+
req.link_type.value_or("-"),
|
923
|
+
req.link_name.value_or("-"),
|
924
|
+
req.dataverse_name.value_or("-"),
|
925
925
|
first_error.code,
|
926
926
|
first_error.message));
|
927
927
|
}
|
data/ext/rcb_backend.cxx
CHANGED
@@ -17,19 +17,23 @@
|
|
17
17
|
|
18
18
|
#include <couchbase/cluster.hxx>
|
19
19
|
|
20
|
+
#include <couchbase/fork_event.hxx>
|
21
|
+
#include <couchbase/ip_protocol.hxx>
|
22
|
+
|
20
23
|
#include <core/cluster.hxx>
|
21
24
|
#include <core/logger/logger.hxx>
|
22
25
|
#include <core/utils/connection_string.hxx>
|
23
26
|
|
24
27
|
#include <asio/io_context.hpp>
|
25
|
-
#include <fmt/core.h>
|
28
|
+
#include <spdlog/fmt/bundled/core.h>
|
26
29
|
|
27
30
|
#include <future>
|
31
|
+
#include <list>
|
28
32
|
#include <memory>
|
33
|
+
#include <mutex>
|
29
34
|
|
30
35
|
#include <ruby.h>
|
31
36
|
|
32
|
-
#include "couchbase/ip_protocol.hxx"
|
33
37
|
#include "rcb_backend.hxx"
|
34
38
|
#include "rcb_exceptions.hxx"
|
35
39
|
#include "rcb_logger.hxx"
|
@@ -44,10 +48,79 @@ struct cb_backend_data {
|
|
44
48
|
std::unique_ptr<cluster> instance{ nullptr };
|
45
49
|
};
|
46
50
|
|
51
|
+
class instance_registry
|
52
|
+
{
|
53
|
+
public:
|
54
|
+
void add(cluster* instance)
|
55
|
+
{
|
56
|
+
std::scoped_lock lock(instances_mutex_);
|
57
|
+
known_instances_.push_back(instance);
|
58
|
+
}
|
59
|
+
|
60
|
+
void remove(cluster* instance)
|
61
|
+
{
|
62
|
+
std::scoped_lock lock(instances_mutex_);
|
63
|
+
known_instances_.remove(instance);
|
64
|
+
}
|
65
|
+
|
66
|
+
void notify_fork(couchbase::fork_event event)
|
67
|
+
{
|
68
|
+
if (event != couchbase::fork_event::prepare) {
|
69
|
+
init_logger();
|
70
|
+
}
|
71
|
+
|
72
|
+
{
|
73
|
+
std::scoped_lock lock(instances_mutex_);
|
74
|
+
for (auto* instance : known_instances_) {
|
75
|
+
instance->notify_fork(event);
|
76
|
+
}
|
77
|
+
}
|
78
|
+
|
79
|
+
if (event == couchbase::fork_event::prepare) {
|
80
|
+
flush_logger();
|
81
|
+
couchbase::core::logger::shutdown();
|
82
|
+
}
|
83
|
+
}
|
84
|
+
|
85
|
+
private:
|
86
|
+
std::mutex instances_mutex_;
|
87
|
+
std::list<cluster*> known_instances_;
|
88
|
+
};
|
89
|
+
|
90
|
+
instance_registry instances;
|
91
|
+
|
92
|
+
VALUE
|
93
|
+
cb_Backend_notify_fork(VALUE self, VALUE event)
|
94
|
+
{
|
95
|
+
static const auto id_prepare{ rb_intern("prepare") };
|
96
|
+
static const auto id_parent{ rb_intern("parent") };
|
97
|
+
static const auto id_child{ rb_intern("child") };
|
98
|
+
|
99
|
+
try {
|
100
|
+
cb_check_type(event, T_SYMBOL);
|
101
|
+
|
102
|
+
if (rb_sym2id(event) == id_prepare) {
|
103
|
+
instances.notify_fork(couchbase::fork_event::prepare);
|
104
|
+
} else if (rb_sym2id(event) == id_parent) {
|
105
|
+
instances.notify_fork(couchbase::fork_event::parent);
|
106
|
+
} else if (rb_sym2id(event) == id_child) {
|
107
|
+
instances.notify_fork(couchbase::fork_event::child);
|
108
|
+
} else {
|
109
|
+
throw ruby_exception(rb_eTypeError,
|
110
|
+
rb_sprintf("unexpected fork event type %" PRIsVALUE "", event));
|
111
|
+
}
|
112
|
+
} catch (const ruby_exception& e) {
|
113
|
+
rb_exc_raise(e.exception_object());
|
114
|
+
}
|
115
|
+
|
116
|
+
return Qnil;
|
117
|
+
}
|
118
|
+
|
47
119
|
void
|
48
120
|
cb_backend_close(cb_backend_data* backend)
|
49
121
|
{
|
50
122
|
if (auto instance = std::move(backend->instance); instance) {
|
123
|
+
instances.remove(instance.get());
|
51
124
|
auto promise = std::make_shared<std::promise<void>>();
|
52
125
|
auto f = promise->get_future();
|
53
126
|
instance->close([promise = std::move(promise)]() mutable {
|
@@ -208,6 +281,11 @@ initialize_cluster_options(const core::utils::connection_string& connstr,
|
|
208
281
|
cluster_options.network().preferred_network(param.value());
|
209
282
|
}
|
210
283
|
|
284
|
+
static const auto server_group = rb_id2sym(rb_intern("preferred_server_group"));
|
285
|
+
if (auto group = options::get_string(options, server_group); group) {
|
286
|
+
cluster_options.network().preferred_server_group(group.value());
|
287
|
+
}
|
288
|
+
|
211
289
|
static const auto sym_use_ip_protocol = rb_id2sym(rb_intern("use_ip_protocol"));
|
212
290
|
if (auto proto = options::get_symbol(options, sym_use_ip_protocol); proto) {
|
213
291
|
static const auto sym_any = rb_id2sym(rb_intern("any"));
|
@@ -441,6 +519,7 @@ cb_Backend_open(VALUE self, VALUE connstr, VALUE credentials, VALUE options)
|
|
441
519
|
error, fmt::format("failed to connect to the Couchbase Server \"{}\"", connection_string));
|
442
520
|
}
|
443
521
|
backend->instance = std::make_unique<couchbase::cluster>(std::move(cluster));
|
522
|
+
instances.add(backend->instance.get());
|
444
523
|
} catch (const std::system_error& se) {
|
445
524
|
rb_exc_raise(cb_map_error_code(
|
446
525
|
se.code(), fmt::format("failed to perform {}: {}", __func__, se.what()), false));
|
@@ -504,6 +583,8 @@ init_backend(VALUE mCouchbase)
|
|
504
583
|
rb_define_method(cBackend, "open", cb_Backend_open, 3);
|
505
584
|
rb_define_method(cBackend, "open_bucket", cb_Backend_open_bucket, 2);
|
506
585
|
rb_define_method(cBackend, "close", cb_Backend_close, 0);
|
586
|
+
|
587
|
+
rb_define_singleton_method(cBackend, "notify_fork", cb_Backend_notify_fork, 1);
|
507
588
|
return cBackend;
|
508
589
|
}
|
509
590
|
|
data/ext/rcb_buckets.cxx
CHANGED
data/ext/rcb_collections.cxx
CHANGED
data/ext/rcb_crud.cxx
CHANGED
@@ -128,7 +128,7 @@ cb_Backend_document_get_any_replica(VALUE self,
|
|
128
128
|
VALUE id,
|
129
129
|
VALUE options)
|
130
130
|
{
|
131
|
-
auto cluster =
|
131
|
+
auto cluster = cb_backend_to_core_api_cluster(self);
|
132
132
|
|
133
133
|
Check_Type(bucket, T_STRING);
|
134
134
|
Check_Type(scope, T_STRING);
|
@@ -136,23 +136,32 @@ cb_Backend_document_get_any_replica(VALUE self,
|
|
136
136
|
Check_Type(id, T_STRING);
|
137
137
|
|
138
138
|
try {
|
139
|
-
|
140
|
-
|
139
|
+
core::document_id doc_id{
|
140
|
+
cb_string_new(bucket),
|
141
|
+
cb_string_new(scope),
|
142
|
+
cb_string_new(collection),
|
143
|
+
cb_string_new(id),
|
144
|
+
};
|
141
145
|
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
146
|
+
core::operations::get_any_replica_request req{ doc_id };
|
147
|
+
cb_extract_timeout(req, options);
|
148
|
+
cb_extract_read_preference(req, options);
|
149
|
+
|
150
|
+
std::promise<core::operations::get_any_replica_response> promise;
|
151
|
+
auto f = promise.get_future();
|
152
|
+
cluster.execute(req, [promise = std::move(promise)](auto&& resp) mutable {
|
153
|
+
promise.set_value(std::forward<decltype(resp)>(resp));
|
154
|
+
});
|
155
|
+
auto resp = cb_wait_for_future(f);
|
156
|
+
if (resp.ctx.ec()) {
|
157
|
+
cb_throw_error(resp.ctx, "unable to get replica of the document");
|
149
158
|
}
|
150
159
|
|
151
|
-
auto value = resp.content_as<passthrough_transcoder>();
|
152
160
|
VALUE res = rb_hash_new();
|
153
|
-
rb_hash_aset(res, rb_id2sym(rb_intern("content")), cb_str_new(value
|
154
|
-
rb_hash_aset(res, rb_id2sym(rb_intern("cas")), cb_cas_to_num(resp.cas
|
155
|
-
rb_hash_aset(res, rb_id2sym(rb_intern("flags")), UINT2NUM(
|
161
|
+
rb_hash_aset(res, rb_id2sym(rb_intern("content")), cb_str_new(resp.value));
|
162
|
+
rb_hash_aset(res, rb_id2sym(rb_intern("cas")), cb_cas_to_num(resp.cas));
|
163
|
+
rb_hash_aset(res, rb_id2sym(rb_intern("flags")), UINT2NUM(resp.flags));
|
164
|
+
rb_hash_aset(res, rb_id2sym(rb_intern("replica")), resp.replica ? Qtrue : Qfalse);
|
156
165
|
return res;
|
157
166
|
} catch (const std::system_error& se) {
|
158
167
|
rb_exc_raise(cb_map_error_code(
|
@@ -171,7 +180,7 @@ cb_Backend_document_get_all_replicas(VALUE self,
|
|
171
180
|
VALUE id,
|
172
181
|
VALUE options)
|
173
182
|
{
|
174
|
-
auto cluster =
|
183
|
+
auto cluster = cb_backend_to_core_api_cluster(self);
|
175
184
|
|
176
185
|
Check_Type(bucket, T_STRING);
|
177
186
|
Check_Type(scope, T_STRING);
|
@@ -179,25 +188,35 @@ cb_Backend_document_get_all_replicas(VALUE self,
|
|
179
188
|
Check_Type(id, T_STRING);
|
180
189
|
|
181
190
|
try {
|
182
|
-
|
183
|
-
|
191
|
+
core::document_id doc_id{
|
192
|
+
cb_string_new(bucket),
|
193
|
+
cb_string_new(scope),
|
194
|
+
cb_string_new(collection),
|
195
|
+
cb_string_new(id),
|
196
|
+
};
|
184
197
|
|
185
|
-
|
186
|
-
|
187
|
-
|
188
|
-
|
189
|
-
|
190
|
-
|
191
|
-
|
198
|
+
core::operations::get_all_replicas_request req{ doc_id };
|
199
|
+
cb_extract_timeout(req, options);
|
200
|
+
cb_extract_read_preference(req, options);
|
201
|
+
|
202
|
+
std::promise<core::operations::get_all_replicas_response> promise;
|
203
|
+
auto f = promise.get_future();
|
204
|
+
cluster.execute(req, [promise = std::move(promise)](auto&& resp) mutable {
|
205
|
+
promise.set_value(std::forward<decltype(resp)>(resp));
|
206
|
+
});
|
207
|
+
auto resp = cb_wait_for_future(f);
|
208
|
+
if (resp.ctx.ec()) {
|
209
|
+
cb_throw_error(resp.ctx, "unable to get all replicas for the document");
|
192
210
|
}
|
193
211
|
|
194
|
-
VALUE res = rb_ary_new_capa(static_cast<long>(resp.size()));
|
195
|
-
|
212
|
+
VALUE res = rb_ary_new_capa(static_cast<long>(resp.entries.size()));
|
213
|
+
|
214
|
+
for (const auto& entry : resp.entries) {
|
196
215
|
VALUE response = rb_hash_new();
|
197
|
-
|
198
|
-
rb_hash_aset(response, rb_id2sym(rb_intern("
|
199
|
-
rb_hash_aset(response, rb_id2sym(rb_intern("
|
200
|
-
rb_hash_aset(response, rb_id2sym(rb_intern("
|
216
|
+
rb_hash_aset(response, rb_id2sym(rb_intern("content")), cb_str_new(entry.value));
|
217
|
+
rb_hash_aset(response, rb_id2sym(rb_intern("cas")), cb_cas_to_num(entry.cas));
|
218
|
+
rb_hash_aset(response, rb_id2sym(rb_intern("flags")), UINT2NUM(entry.flags));
|
219
|
+
rb_hash_aset(response, rb_id2sym(rb_intern("replica")), entry.replica ? Qtrue : Qfalse);
|
201
220
|
rb_ary_push(res, response);
|
202
221
|
}
|
203
222
|
return res;
|
@@ -1107,6 +1126,7 @@ cb_Backend_document_lookup_in_any_replica(VALUE self,
|
|
1107
1126
|
|
1108
1127
|
core::operations::lookup_in_any_replica_request req{ doc_id };
|
1109
1128
|
cb_extract_timeout(req, options);
|
1129
|
+
cb_extract_read_preference(req, options);
|
1110
1130
|
|
1111
1131
|
static VALUE xattr_property = rb_id2sym(rb_intern("xattr"));
|
1112
1132
|
static VALUE path_property = rb_id2sym(rb_intern("path"));
|
@@ -1234,6 +1254,7 @@ cb_Backend_document_lookup_in_all_replicas(VALUE self,
|
|
1234
1254
|
|
1235
1255
|
core::operations::lookup_in_all_replicas_request req{ doc_id };
|
1236
1256
|
cb_extract_timeout(req, options);
|
1257
|
+
cb_extract_read_preference(req, options);
|
1237
1258
|
|
1238
1259
|
static VALUE xattr_property = rb_id2sym(rb_intern("xattr"));
|
1239
1260
|
static VALUE path_property = rb_id2sym(rb_intern("path"));
|
data/ext/rcb_diagnostics.cxx
CHANGED
data/ext/rcb_exceptions.cxx
CHANGED
@@ -17,7 +17,6 @@
|
|
17
17
|
|
18
18
|
#include <couchbase/error.hxx>
|
19
19
|
#include <couchbase/error_codes.hxx>
|
20
|
-
#include <couchbase/fmt/retry_reason.hxx>
|
21
20
|
|
22
21
|
#include <core/error_context/analytics.hxx>
|
23
22
|
#include <core/error_context/http.hxx>
|
@@ -27,7 +26,9 @@
|
|
27
26
|
#include <core/error_context/view.hxx>
|
28
27
|
#include <core/fmt/key_value_status_code.hxx>
|
29
28
|
|
30
|
-
#include <fmt/core.h>
|
29
|
+
#include <spdlog/fmt/bundled/core.h>
|
30
|
+
|
31
|
+
#include <couchbase/fmt/retry_reason.hxx>
|
31
32
|
|
32
33
|
#include "rcb_exceptions.hxx"
|
33
34
|
#include "rcb_utils.hxx"
|
data/ext/rcb_extras.cxx
CHANGED
data/ext/rcb_logger.cxx
CHANGED
@@ -268,13 +268,18 @@ cb_Backend_install_logger_shim(VALUE self, VALUE logger, VALUE log_level)
|
|
268
268
|
} // namespace
|
269
269
|
|
270
270
|
void
|
271
|
-
|
271
|
+
install_terminate_handler()
|
272
272
|
{
|
273
273
|
if (auto env_val =
|
274
274
|
spdlog::details::os::getenv("COUCHBASE_BACKEND_DONT_INSTALL_TERMINATE_HANDLER");
|
275
275
|
env_val.empty()) {
|
276
276
|
core::platform::install_backtrace_terminate_handler();
|
277
277
|
}
|
278
|
+
}
|
279
|
+
|
280
|
+
void
|
281
|
+
init_logger()
|
282
|
+
{
|
278
283
|
if (auto env_val = spdlog::details::os::getenv("COUCHBASE_BACKEND_DONT_USE_BUILTIN_LOGGER");
|
279
284
|
env_val.empty()) {
|
280
285
|
auto default_log_level = core::logger::level::info;
|
data/ext/rcb_logger.hxx
CHANGED
data/ext/rcb_range_scan.cxx
CHANGED
@@ -24,7 +24,7 @@
|
|
24
24
|
#include <core/scan_result.hxx>
|
25
25
|
#include <couchbase/error_codes.hxx>
|
26
26
|
|
27
|
-
#include <fmt/core.h>
|
27
|
+
#include <spdlog/fmt/bundled/core.h>
|
28
28
|
|
29
29
|
#include <future>
|
30
30
|
|
@@ -245,13 +245,11 @@ cb_Backend_document_scan_create(VALUE self,
|
|
245
245
|
std::promise<tl::expected<couchbase::core::topology::configuration, std::error_code>> promise;
|
246
246
|
auto f = promise.get_future();
|
247
247
|
cluster.with_bucket_configuration(
|
248
|
-
bucket_name,
|
249
|
-
[promise = std::move(promise)](
|
250
|
-
std::error_code ec, const couchbase::core::topology::configuration& config) mutable {
|
248
|
+
bucket_name, [promise = std::move(promise)](std::error_code ec, const auto& config) mutable {
|
251
249
|
if (ec) {
|
252
250
|
return promise.set_value(tl::unexpected(ec));
|
253
251
|
}
|
254
|
-
promise.set_value(config);
|
252
|
+
promise.set_value(*config);
|
255
253
|
});
|
256
254
|
auto config = cb_wait_for_future(f);
|
257
255
|
if (!config.has_value()) {
|
data/ext/rcb_search.cxx
CHANGED
@@ -30,8 +30,8 @@
|
|
30
30
|
#include <core/operations/management/search_index_get_stats.hxx>
|
31
31
|
#include <core/operations/management/search_index_upsert.hxx>
|
32
32
|
|
33
|
-
#include <fmt/core.h>
|
34
33
|
#include <gsl/narrow>
|
34
|
+
#include <spdlog/fmt/bundled/core.h>
|
35
35
|
|
36
36
|
#include <future>
|
37
37
|
#include <memory>
|
data/ext/rcb_users.cxx
CHANGED
@@ -28,8 +28,8 @@
|
|
28
28
|
#include <core/operations/management/user_get_all.hxx>
|
29
29
|
#include <core/operations/management/user_upsert.hxx>
|
30
30
|
|
31
|
-
#include <fmt/core.h>
|
32
|
-
#include <fmt/ranges.h>
|
31
|
+
#include <spdlog/fmt/bundled/core.h>
|
32
|
+
#include <spdlog/fmt/bundled/ranges.h>
|
33
33
|
|
34
34
|
#include <future>
|
35
35
|
#include <memory>
|
data/ext/rcb_utils.hxx
CHANGED
@@ -21,6 +21,7 @@
|
|
21
21
|
#include <couchbase/cas.hxx>
|
22
22
|
#include <couchbase/durability_level.hxx>
|
23
23
|
#include <couchbase/persist_to.hxx>
|
24
|
+
#include <couchbase/read_preference.hxx>
|
24
25
|
#include <couchbase/replicate_to.hxx>
|
25
26
|
#include <couchbase/store_semantics.hxx>
|
26
27
|
|
@@ -128,6 +129,37 @@ cb_extract_timeout(Request& req, VALUE options)
|
|
128
129
|
}
|
129
130
|
}
|
130
131
|
|
132
|
+
template<typename Request>
|
133
|
+
inline void
|
134
|
+
cb_extract_read_preference(Request& req, VALUE options)
|
135
|
+
{
|
136
|
+
static VALUE property_name = rb_id2sym(rb_intern("read_preference"));
|
137
|
+
if (!NIL_P(options)) {
|
138
|
+
if (TYPE(options) != T_HASH) {
|
139
|
+
throw ruby_exception(rb_eArgError,
|
140
|
+
rb_sprintf("expected options to be Hash, given %+" PRIsVALUE, options));
|
141
|
+
}
|
142
|
+
|
143
|
+
VALUE val = rb_hash_aref(options, property_name);
|
144
|
+
if (NIL_P(val)) {
|
145
|
+
return;
|
146
|
+
}
|
147
|
+
if (TYPE(val) != T_SYMBOL) {
|
148
|
+
throw ruby_exception(
|
149
|
+
rb_eArgError, rb_sprintf("read_preference must be a Symbol, but given %+" PRIsVALUE, val));
|
150
|
+
}
|
151
|
+
|
152
|
+
if (ID mode = rb_sym2id(val); mode == rb_intern("no_preference")) {
|
153
|
+
req.read_preference = couchbase::read_preference::no_preference;
|
154
|
+
} else if (mode == rb_intern("selected_server_group")) {
|
155
|
+
req.read_preference = couchbase::read_preference::selected_server_group;
|
156
|
+
} else {
|
157
|
+
throw ruby_exception(rb_eArgError,
|
158
|
+
rb_sprintf("unexpected read_preference, given %+" PRIsVALUE, val));
|
159
|
+
}
|
160
|
+
}
|
161
|
+
}
|
162
|
+
|
131
163
|
template<typename Field>
|
132
164
|
inline void
|
133
165
|
cb_extract_duration(Field& field, VALUE options, const char* name)
|
data/lib/couchbase/bucket.rb
CHANGED
@@ -134,13 +134,5 @@ module Couchbase
|
|
134
134
|
end
|
135
135
|
end
|
136
136
|
end
|
137
|
-
|
138
|
-
# @api private
|
139
|
-
# TODO: deprecate in 3.1
|
140
|
-
PingOptions = ::Couchbase::Options::Ping
|
141
|
-
|
142
|
-
# @api private
|
143
|
-
# TODO: deprecate in 3.1
|
144
|
-
ViewOptions = ::Couchbase::Options::View
|
145
137
|
end
|
146
138
|
end
|