couchbase 4.2.8-dev.1 → 4.2.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CMakeLists.txt +1 -1
- package/deps/couchbase-cxx-cache/mozilla-ca-bundle.crt +139 -56
- package/deps/couchbase-cxx-cache/mozilla-ca-bundle.sha256 +1 -1
- package/deps/couchbase-cxx-client/CMakeLists.txt +397 -424
- package/deps/couchbase-cxx-client/core/agent_config.hxx +1 -1
- package/deps/couchbase-cxx-client/core/agent_group.cxx +0 -1
- package/deps/couchbase-cxx-client/core/agent_group.hxx +9 -0
- package/deps/couchbase-cxx-client/core/agent_group_config.hxx +1 -1
- package/deps/couchbase-cxx-client/core/bucket.cxx +22 -8
- package/deps/couchbase-cxx-client/core/bucket.hxx +3 -1
- package/deps/couchbase-cxx-client/core/cluster.cxx +1453 -108
- package/deps/couchbase-cxx-client/core/cluster.hxx +183 -473
- package/deps/couchbase-cxx-client/core/cluster_agent_config.hxx +1 -1
- package/deps/couchbase-cxx-client/core/cluster_options.cxx +12 -2
- package/deps/couchbase-cxx-client/core/cluster_options.hxx +9 -8
- package/deps/couchbase-cxx-client/core/config_profiles.cxx +2 -2
- package/deps/couchbase-cxx-client/core/config_profiles.hxx +1 -1
- package/deps/couchbase-cxx-client/core/core_sdk_shim.cxx +1 -2
- package/deps/couchbase-cxx-client/core/core_sdk_shim.hxx +3 -2
- package/deps/couchbase-cxx-client/core/diagnostics.hxx +0 -1
- package/deps/couchbase-cxx-client/core/dispatcher.cxx +2 -2
- package/deps/couchbase-cxx-client/core/impl/analytics.cxx +38 -76
- package/deps/couchbase-cxx-client/core/impl/analytics.hxx +40 -0
- package/deps/couchbase-cxx-client/core/impl/analytics_index_manager.cxx +820 -0
- package/deps/couchbase-cxx-client/core/impl/binary_collection.cxx +403 -0
- package/deps/couchbase-cxx-client/core/impl/bucket.cxx +78 -0
- package/deps/couchbase-cxx-client/core/impl/bucket_manager.cxx +433 -0
- package/deps/couchbase-cxx-client/core/impl/cluster.cxx +226 -44
- package/deps/couchbase-cxx-client/core/impl/collection.cxx +1384 -0
- package/deps/couchbase-cxx-client/core/impl/collection_manager.cxx +306 -0
- package/deps/couchbase-cxx-client/core/impl/configuration_profiles_registry.cxx +3 -1
- package/deps/couchbase-cxx-client/core/impl/dns_srv_tracker.cxx +2 -0
- package/deps/couchbase-cxx-client/core/{operations/mcbp_noop.cxx → impl/doc_id_query.cxx} +19 -15
- package/deps/couchbase-cxx-client/core/impl/key_value_error_category.cxx +4 -2
- package/deps/couchbase-cxx-client/core/impl/lookup_in_all_replicas.hxx +0 -10
- package/deps/couchbase-cxx-client/core/impl/lookup_in_any_replica.hxx +0 -10
- package/deps/couchbase-cxx-client/core/impl/observe_poll.cxx +24 -17
- package/deps/couchbase-cxx-client/core/impl/observe_poll.hxx +1 -1
- package/deps/couchbase-cxx-client/core/impl/query.cxx +45 -68
- package/deps/couchbase-cxx-client/core/impl/query.hxx +34 -0
- package/deps/couchbase-cxx-client/core/impl/query_index_manager.cxx +628 -0
- package/deps/couchbase-cxx-client/core/impl/scope.cxx +172 -0
- package/deps/couchbase-cxx-client/core/impl/search.cxx +12 -61
- package/deps/couchbase-cxx-client/core/impl/search.hxx +37 -0
- package/deps/couchbase-cxx-client/core/impl/search_index_manager.cxx +469 -0
- package/deps/couchbase-cxx-client/core/impl/search_row_location.cxx +12 -0
- package/deps/couchbase-cxx-client/core/impl/search_sort_geo_distance.cxx +87 -0
- package/deps/couchbase-cxx-client/core/impl/with_legacy_durability.hxx +23 -25
- package/deps/couchbase-cxx-client/core/io/dns_config.cxx +28 -0
- package/deps/couchbase-cxx-client/core/io/dns_config.hxx +6 -25
- package/deps/couchbase-cxx-client/core/io/http_session_manager.hxx +9 -1
- package/deps/couchbase-cxx-client/core/io/mcbp_command.hxx +1 -1
- package/deps/couchbase-cxx-client/core/io/mcbp_message.hxx +3 -2
- package/deps/couchbase-cxx-client/core/io/mcbp_session.cxx +51 -21
- package/deps/couchbase-cxx-client/core/io/mcbp_session.hxx +2 -1
- package/deps/couchbase-cxx-client/core/logger/logger.hxx +4 -4
- package/deps/couchbase-cxx-client/core/management/bucket_settings.hxx +1 -1
- package/deps/couchbase-cxx-client/core/mcbp/packet.cxx +1 -1
- package/deps/couchbase-cxx-client/core/mcbp/queue_callback.hxx +1 -1
- package/deps/couchbase-cxx-client/core/meta/features.hxx +28 -0
- package/deps/couchbase-cxx-client/core/operations/document_query.cxx +17 -1
- package/deps/couchbase-cxx-client/core/operations/document_query.hxx +1 -1
- package/deps/couchbase-cxx-client/core/operations/management/analytics_dataset_create.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/analytics_dataset_drop.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/analytics_dataverse_create.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/analytics_dataverse_drop.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/analytics_get_pending_mutations.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/analytics_index_drop.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/analytics_link_connect.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/analytics_link_disconnect.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/analytics_link_drop.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/analytics_link_get_all.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/bucket_create.cxx +1 -1
- package/deps/couchbase-cxx-client/core/operations/management/bucket_describe.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/bucket_drop.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/bucket_flush.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/bucket_get.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/change_password.cxx +3 -1
- package/deps/couchbase-cxx-client/core/operations/management/collection_create.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/collection_drop.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/collection_update.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/error_utils.cxx +6 -5
- package/deps/couchbase-cxx-client/core/operations/management/eventing_deploy_function.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/eventing_drop_function.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/eventing_get_function.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/eventing_pause_function.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/eventing_resume_function.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/eventing_undeploy_function.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/eventing_upsert_function.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/group_drop.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/group_get.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/group_get_all.cxx +1 -1
- package/deps/couchbase-cxx-client/core/operations/management/query_index_build_deferred.hxx +2 -2
- package/deps/couchbase-cxx-client/core/operations/management/query_index_create.cxx +4 -1
- package/deps/couchbase-cxx-client/core/operations/management/query_index_drop.cxx +4 -1
- package/deps/couchbase-cxx-client/core/operations/management/query_index_get_all.cxx +1 -1
- package/deps/couchbase-cxx-client/core/operations/management/query_index_get_all.hxx +1 -1
- package/deps/couchbase-cxx-client/core/operations/management/scope_create.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/scope_drop.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/scope_get_all.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/search_get_stats.cxx +4 -4
- package/deps/couchbase-cxx-client/core/operations/management/search_get_stats.hxx +4 -4
- package/deps/couchbase-cxx-client/core/operations/management/search_index_analyze_document.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/search_index_control_ingest.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/search_index_control_plan_freeze.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/search_index_control_query.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/search_index_drop.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/search_index_get.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/search_index_get_all.cxx +1 -1
- package/deps/couchbase-cxx-client/core/operations/management/search_index_get_documents_count.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/search_index_get_stats.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/search_index_upsert.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/view_index_drop.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/view_index_get.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/view_index_get_all.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/view_index_upsert.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations.hxx +0 -1
- package/deps/couchbase-cxx-client/core/operations_fwd.hxx +260 -0
- package/deps/couchbase-cxx-client/core/origin.cxx +146 -5
- package/deps/couchbase-cxx-client/core/origin.hxx +30 -140
- package/deps/couchbase-cxx-client/core/protocol/cmd_cluster_map_change_notification.hxx +3 -3
- package/deps/couchbase-cxx-client/core/protocol/cmd_hello.hxx +5 -0
- package/deps/couchbase-cxx-client/core/protocol/cmd_observe_seqno.hxx +4 -4
- package/deps/couchbase-cxx-client/core/protocol/hello_feature.hxx +6 -0
- package/deps/couchbase-cxx-client/core/protocol/hello_feature_fmt.hxx +3 -0
- package/deps/couchbase-cxx-client/core/protocol/status.cxx +6 -0
- package/deps/couchbase-cxx-client/core/protocol/status.hxx +1 -0
- package/deps/couchbase-cxx-client/core/query_context.hxx +11 -7
- package/deps/couchbase-cxx-client/core/range_scan_orchestrator.cxx +1 -1
- package/deps/couchbase-cxx-client/core/topology/configuration.cxx +23 -0
- package/deps/couchbase-cxx-client/core/topology/configuration.hxx +8 -12
- package/deps/couchbase-cxx-client/core/topology/configuration_fmt.hxx +3 -3
- package/deps/couchbase-cxx-client/core/topology/configuration_json.hxx +2 -0
- package/deps/couchbase-cxx-client/core/topology/error_map.hxx +2 -2
- package/deps/couchbase-cxx-client/core/topology/error_map_json.hxx +4 -0
- package/deps/couchbase-cxx-client/core/transactions/active_transaction_record.cxx +58 -0
- package/deps/couchbase-cxx-client/core/transactions/active_transaction_record.hxx +5 -40
- package/deps/couchbase-cxx-client/core/transactions/async_attempt_context.cxx +30 -0
- package/deps/couchbase-cxx-client/core/transactions/atr_cleanup_entry.cxx +18 -18
- package/deps/couchbase-cxx-client/core/transactions/attempt_context.cxx +36 -0
- package/deps/couchbase-cxx-client/core/transactions/attempt_context_impl.cxx +39 -41
- package/deps/couchbase-cxx-client/core/transactions/attempt_context_impl.hxx +2 -2
- package/deps/couchbase-cxx-client/core/transactions/internal/atr_cleanup_entry.hxx +3 -1
- package/deps/couchbase-cxx-client/core/transactions/internal/atr_entry.hxx +2 -0
- package/deps/couchbase-cxx-client/core/transactions/internal/doc_record.cxx +32 -0
- package/deps/couchbase-cxx-client/core/transactions/internal/doc_record.hxx +4 -30
- package/deps/couchbase-cxx-client/core/transactions/internal/doc_record_fmt.hxx +41 -0
- package/deps/couchbase-cxx-client/core/transactions/internal/logging.hxx +17 -15
- package/deps/couchbase-cxx-client/core/transactions/internal/transaction_context.hxx +1 -1
- package/deps/couchbase-cxx-client/core/transactions/internal/transactions_cleanup.hxx +4 -4
- package/deps/couchbase-cxx-client/core/transactions/internal/utils.hxx +1 -13
- package/deps/couchbase-cxx-client/core/transactions/result.hxx +0 -26
- package/deps/couchbase-cxx-client/core/transactions/result_fmt.hxx +46 -0
- package/deps/couchbase-cxx-client/core/transactions/staged_mutation.cxx +16 -14
- package/deps/couchbase-cxx-client/core/transactions/transaction_context.cxx +6 -6
- package/deps/couchbase-cxx-client/core/transactions/transaction_keyspace.cxx +48 -0
- package/deps/couchbase-cxx-client/core/transactions/transaction_links.hxx +1 -0
- package/deps/couchbase-cxx-client/core/transactions/transaction_options.cxx +61 -4
- package/deps/couchbase-cxx-client/core/transactions/transactions.cxx +9 -8
- package/deps/couchbase-cxx-client/core/transactions/transactions_cleanup.cxx +9 -16
- package/deps/couchbase-cxx-client/core/transactions/transactions_config.cxx +7 -6
- package/deps/couchbase-cxx-client/core/transactions.hxx +6 -5
- package/deps/couchbase-cxx-client/core/utils/join_strings.hxx +4 -3
- package/deps/couchbase-cxx-client/core/utils/keyspace.hxx +4 -4
- package/deps/couchbase-cxx-client/couchbase/allow_querying_search_index_options.hxx +44 -0
- package/deps/couchbase-cxx-client/couchbase/analytics_index_manager.hxx +463 -0
- package/deps/couchbase-cxx-client/couchbase/analyze_document_options.hxx +44 -0
- package/deps/couchbase-cxx-client/couchbase/append_options.hxx +0 -24
- package/deps/couchbase-cxx-client/couchbase/behavior_options.hxx +1 -1
- package/deps/couchbase-cxx-client/couchbase/binary_collection.hxx +19 -115
- package/deps/couchbase-cxx-client/couchbase/bucket.hxx +13 -30
- package/deps/couchbase-cxx-client/couchbase/bucket_manager.hxx +8 -7
- package/deps/couchbase-cxx-client/couchbase/build_query_index_options.hxx +0 -1
- package/deps/couchbase-cxx-client/couchbase/cluster.hxx +41 -73
- package/deps/couchbase-cxx-client/couchbase/cluster_options.hxx +1 -27
- package/deps/couchbase-cxx-client/couchbase/collection.hxx +176 -386
- package/deps/couchbase-cxx-client/couchbase/collection_manager.hxx +8 -9
- package/deps/couchbase-cxx-client/couchbase/collection_query_index_manager.hxx +21 -24
- package/deps/couchbase-cxx-client/couchbase/connect_link_analytics_options.hxx +116 -0
- package/deps/couchbase-cxx-client/couchbase/create_bucket_options.hxx +3 -3
- package/deps/couchbase-cxx-client/couchbase/create_collection_options.hxx +3 -2
- package/deps/couchbase-cxx-client/couchbase/create_dataset_analytics_options.hxx +120 -0
- package/deps/couchbase-cxx-client/couchbase/create_dataverse_analytics_options.hxx +85 -0
- package/deps/couchbase-cxx-client/couchbase/create_index_analytics_options.hxx +103 -0
- package/deps/couchbase-cxx-client/couchbase/create_link_analytics_options.hxx +63 -0
- package/deps/couchbase-cxx-client/couchbase/decrement_options.hxx +0 -23
- package/deps/couchbase-cxx-client/couchbase/disallow_querying_search_index_options.hxx +43 -0
- package/deps/couchbase-cxx-client/couchbase/disconnect_link_analytics_options.hxx +105 -0
- package/deps/couchbase-cxx-client/couchbase/drop_dataset_analytics_options.hxx +103 -0
- package/deps/couchbase-cxx-client/couchbase/drop_dataverse_analytics_options.hxx +84 -0
- package/deps/couchbase-cxx-client/couchbase/drop_index_analytics_options.hxx +103 -0
- package/deps/couchbase-cxx-client/couchbase/drop_link_analytics_options.hxx +63 -0
- package/deps/couchbase-cxx-client/couchbase/drop_search_index_options.hxx +43 -0
- package/deps/couchbase-cxx-client/couchbase/error_codes.hxx +22 -1
- package/deps/couchbase-cxx-client/couchbase/exists_options.hxx +0 -23
- package/deps/couchbase-cxx-client/couchbase/fmt/key_value_error_map_attribute.hxx +6 -0
- package/deps/couchbase-cxx-client/couchbase/fmt/key_value_status_code.hxx +3 -0
- package/deps/couchbase-cxx-client/couchbase/fmt/transaction_keyspace.hxx +37 -0
- package/deps/couchbase-cxx-client/couchbase/freeze_plan_search_index_options.hxx +43 -0
- package/deps/couchbase-cxx-client/couchbase/get_all_datasets_analytics_options.hxx +66 -0
- package/deps/couchbase-cxx-client/couchbase/get_all_indexes_analytics_options.hxx +65 -0
- package/deps/couchbase-cxx-client/couchbase/get_all_query_indexes_options.hxx +1 -4
- package/deps/couchbase-cxx-client/couchbase/get_all_replicas_options.hxx +0 -23
- package/deps/couchbase-cxx-client/couchbase/get_all_search_indexes_options.hxx +45 -0
- package/deps/couchbase-cxx-client/couchbase/get_and_lock_options.hxx +0 -24
- package/deps/couchbase-cxx-client/couchbase/get_and_touch_options.hxx +0 -24
- package/deps/couchbase-cxx-client/couchbase/get_any_replica_options.hxx +0 -23
- package/deps/couchbase-cxx-client/couchbase/get_indexed_search_index_options.hxx +43 -0
- package/deps/couchbase-cxx-client/couchbase/get_links_analytics_options.hxx +121 -0
- package/deps/couchbase-cxx-client/couchbase/get_options.hxx +0 -23
- package/deps/couchbase-cxx-client/couchbase/get_pending_mutations_analytics_options.hxx +67 -0
- package/deps/couchbase-cxx-client/couchbase/get_search_index_options.hxx +44 -0
- package/deps/couchbase-cxx-client/couchbase/increment_options.hxx +0 -23
- package/deps/couchbase-cxx-client/couchbase/insert_options.hxx +0 -24
- package/deps/couchbase-cxx-client/couchbase/key_value_error_map_attribute.hxx +12 -0
- package/deps/couchbase-cxx-client/couchbase/key_value_status_code.hxx +1 -0
- package/deps/couchbase-cxx-client/couchbase/lookup_in_options.hxx +0 -24
- package/deps/couchbase-cxx-client/couchbase/management/analytics_dataset.hxx +48 -0
- package/deps/couchbase-cxx-client/couchbase/management/analytics_index.hxx +48 -0
- package/deps/couchbase-cxx-client/couchbase/management/analytics_link.hxx +239 -0
- package/deps/couchbase-cxx-client/couchbase/management/query_index.hxx +3 -3
- package/deps/couchbase-cxx-client/couchbase/management/search_index.hxx +40 -0
- package/deps/couchbase-cxx-client/couchbase/manager_error_context.hxx +0 -1
- package/deps/couchbase-cxx-client/couchbase/mutate_in_options.hxx +0 -24
- package/deps/couchbase-cxx-client/couchbase/network_options.hxx +1 -1
- package/deps/couchbase-cxx-client/couchbase/pause_ingest_search_index_options.hxx +43 -0
- package/deps/couchbase-cxx-client/couchbase/phrase_query.hxx +19 -0
- package/deps/couchbase-cxx-client/couchbase/prepend_options.hxx +0 -24
- package/deps/couchbase-cxx-client/couchbase/query_index_manager.hxx +99 -20
- package/deps/couchbase-cxx-client/couchbase/query_options.hxx +0 -21
- package/deps/couchbase-cxx-client/couchbase/remove_options.hxx +0 -23
- package/deps/couchbase-cxx-client/couchbase/replace_link_analytics_options.hxx +63 -0
- package/deps/couchbase-cxx-client/couchbase/replace_options.hxx +0 -24
- package/deps/couchbase-cxx-client/couchbase/resume_ingest_search_index_options.hxx +43 -0
- package/deps/couchbase-cxx-client/couchbase/scope.hxx +13 -45
- package/deps/couchbase-cxx-client/couchbase/search_facet_result.hxx +1 -7
- package/deps/couchbase-cxx-client/couchbase/search_geo_distance_units.hxx +26 -0
- package/deps/couchbase-cxx-client/couchbase/search_index_manager.hxx +292 -0
- package/deps/couchbase-cxx-client/couchbase/search_row_location.hxx +10 -0
- package/deps/couchbase-cxx-client/couchbase/search_sort_geo_distance.hxx +84 -0
- package/deps/couchbase-cxx-client/couchbase/security_options.hxx +1 -1
- package/deps/couchbase-cxx-client/couchbase/touch_options.hxx +0 -24
- package/deps/couchbase-cxx-client/couchbase/tracing/request_tracer.hxx +1 -1
- package/deps/couchbase-cxx-client/couchbase/transactions/async_attempt_context.hxx +10 -7
- package/deps/couchbase-cxx-client/couchbase/transactions/attempt_context.hxx +10 -10
- package/deps/couchbase-cxx-client/couchbase/transactions/transaction_keyspace.hxx +8 -58
- package/deps/couchbase-cxx-client/couchbase/transactions/transaction_options.hxx +28 -70
- package/deps/couchbase-cxx-client/couchbase/transactions/transaction_query_options.hxx +7 -2
- package/deps/couchbase-cxx-client/couchbase/transactions/transactions_cleanup_config.hxx +2 -1
- package/deps/couchbase-cxx-client/couchbase/transactions/transactions_config.hxx +11 -38
- package/deps/couchbase-cxx-client/couchbase/unfreeze_plan_search_index_options.hxx +43 -0
- package/deps/couchbase-cxx-client/couchbase/unlock_options.hxx +0 -24
- package/deps/couchbase-cxx-client/couchbase/upsert_options.hxx +0 -24
- package/deps/couchbase-cxx-client/couchbase/upsert_search_index_options.hxx +41 -0
- package/dist/binding.d.ts +7 -9
- package/dist/bindingutilities.js +2 -0
- package/dist/collection.js +3 -3
- package/dist/errors.d.ts +9 -0
- package/dist/errors.js +14 -2
- package/dist/transactions.d.ts +2 -0
- package/dist/transactions.js +2 -3
- package/dist/usermanager.js +1 -1
- package/package.json +7 -7
- package/src/binding.cpp +1 -0
- package/src/connection.cpp +12 -9
- package/src/connection.hpp +3 -3
- package/src/connection_autogen.cpp +7 -5
- package/src/constants.cpp +3 -0
- package/src/instance.cpp +2 -2
- package/src/instance.hpp +1 -1
- package/src/jstocbpp_autogen.hpp +21 -38
- package/src/jstocbpp_basic.hpp +2 -0
- package/src/jstocbpp_errors.hpp +1 -0
- package/src/jstocbpp_transactions.hpp +6 -22
- package/src/mutationtoken.hpp +1 -0
- package/tools/gen-bindings-json.py +39 -16
- package/deps/couchbase-cxx-cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/example/CMakeLists.txt +0 -23
- package/deps/couchbase-cxx-cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/example/example.cpp +0 -398
- package/deps/couchbase-cxx-client/core/impl/append.cxx +0 -87
- package/deps/couchbase-cxx-client/core/impl/build_deferred_query_indexes.cxx +0 -157
- package/deps/couchbase-cxx-client/core/impl/create_bucket.cxx +0 -158
- package/deps/couchbase-cxx-client/core/impl/create_collection.cxx +0 -83
- package/deps/couchbase-cxx-client/core/impl/create_query_index.cxx +0 -232
- package/deps/couchbase-cxx-client/core/impl/create_scope.cxx +0 -69
- package/deps/couchbase-cxx-client/core/impl/decrement.cxx +0 -96
- package/deps/couchbase-cxx-client/core/impl/drop_bucket.cxx +0 -66
- package/deps/couchbase-cxx-client/core/impl/drop_collection.cxx +0 -76
- package/deps/couchbase-cxx-client/core/impl/drop_query_index.cxx +0 -187
- package/deps/couchbase-cxx-client/core/impl/drop_scope.cxx +0 -68
- package/deps/couchbase-cxx-client/core/impl/exists.cxx +0 -47
- package/deps/couchbase-cxx-client/core/impl/flush_bucket.cxx +0 -66
- package/deps/couchbase-cxx-client/core/impl/get.cxx +0 -68
- package/deps/couchbase-cxx-client/core/impl/get_all_buckets.cxx +0 -178
- package/deps/couchbase-cxx-client/core/impl/get_all_query_indexes.cxx +0 -106
- package/deps/couchbase-cxx-client/core/impl/get_all_replicas.cxx +0 -145
- package/deps/couchbase-cxx-client/core/impl/get_all_scopes.cxx +0 -94
- package/deps/couchbase-cxx-client/core/impl/get_and_lock.cxx +0 -49
- package/deps/couchbase-cxx-client/core/impl/get_and_touch.cxx +0 -49
- package/deps/couchbase-cxx-client/core/impl/get_any_replica.cxx +0 -134
- package/deps/couchbase-cxx-client/core/impl/get_bucket.cxx +0 -168
- package/deps/couchbase-cxx-client/core/impl/increment.cxx +0 -96
- package/deps/couchbase-cxx-client/core/impl/insert.cxx +0 -90
- package/deps/couchbase-cxx-client/core/impl/lookup_in.cxx +0 -69
- package/deps/couchbase-cxx-client/core/impl/lookup_in_all_replicas.cxx +0 -178
- package/deps/couchbase-cxx-client/core/impl/lookup_in_any_replica.cxx +0 -169
- package/deps/couchbase-cxx-client/core/impl/mutate_in.cxx +0 -125
- package/deps/couchbase-cxx-client/core/impl/prepend.cxx +0 -87
- package/deps/couchbase-cxx-client/core/impl/remove.cxx +0 -86
- package/deps/couchbase-cxx-client/core/impl/replace.cxx +0 -102
- package/deps/couchbase-cxx-client/core/impl/touch.cxx +0 -49
- package/deps/couchbase-cxx-client/core/impl/unlock.cxx +0 -47
- package/deps/couchbase-cxx-client/core/impl/update_bucket.cxx +0 -133
- package/deps/couchbase-cxx-client/core/impl/update_collection.cxx +0 -83
- package/deps/couchbase-cxx-client/core/impl/upsert.cxx +0 -100
- package/deps/couchbase-cxx-client/core/impl/watch_query_indexes.cxx +0 -196
- package/deps/couchbase-cxx-client/core/operations/mcbp_noop.hxx +0 -49
- /package/deps/couchbase-cxx-client/core/impl/{streaming_json_lexter_error_category.cxx → streaming_json_lexer_error_category.cxx} +0 -0
|
@@ -16,13 +16,18 @@
|
|
|
16
16
|
|
|
17
17
|
#pragma once
|
|
18
18
|
|
|
19
|
+
#include <couchbase/durability_level.hxx>
|
|
19
20
|
#include <couchbase/query_scan_consistency.hxx>
|
|
20
21
|
#include <couchbase/transactions/transactions_config.hxx>
|
|
21
22
|
|
|
22
23
|
#include <chrono>
|
|
23
24
|
#include <optional>
|
|
24
25
|
|
|
25
|
-
namespace couchbase
|
|
26
|
+
namespace couchbase
|
|
27
|
+
{
|
|
28
|
+
class collection;
|
|
29
|
+
|
|
30
|
+
namespace transactions
|
|
26
31
|
{
|
|
27
32
|
/**
|
|
28
33
|
* The transaction_options can be passed in to override some elements of the global @ref transactions_config.
|
|
@@ -40,11 +45,8 @@ class transaction_options
|
|
|
40
45
|
* @param level Durability level for this transaction.
|
|
41
46
|
* @return reference to this object, convenient for chaining operations.
|
|
42
47
|
*/
|
|
43
|
-
transaction_options& durability_level(durability_level level)
|
|
44
|
-
|
|
45
|
-
durability_ = level;
|
|
46
|
-
return *this;
|
|
47
|
-
}
|
|
48
|
+
transaction_options& durability_level(durability_level level);
|
|
49
|
+
|
|
48
50
|
/**
|
|
49
51
|
* Get the durability if it has been set.
|
|
50
52
|
*
|
|
@@ -52,10 +54,8 @@ class transaction_options
|
|
|
52
54
|
*
|
|
53
55
|
* @return durability if set.
|
|
54
56
|
*/
|
|
55
|
-
std::optional<couchbase::durability_level> durability_level()
|
|
56
|
-
|
|
57
|
-
return durability_;
|
|
58
|
-
}
|
|
57
|
+
[[nodiscard]] std::optional<couchbase::durability_level> durability_level() const;
|
|
58
|
+
|
|
59
59
|
/**
|
|
60
60
|
* Set the @ref query_scan_consistency for this transaction.
|
|
61
61
|
*
|
|
@@ -64,11 +64,8 @@ class transaction_options
|
|
|
64
64
|
* @param scan_consistency The desired @ref query_scan_consistency for this transaction.
|
|
65
65
|
* @return reference to this object, convenient for chaining operations.
|
|
66
66
|
*/
|
|
67
|
-
transaction_options& scan_consistency(query_scan_consistency scan_consistency)
|
|
68
|
-
|
|
69
|
-
scan_consistency_ = scan_consistency;
|
|
70
|
-
return *this;
|
|
71
|
-
}
|
|
67
|
+
transaction_options& scan_consistency(query_scan_consistency scan_consistency);
|
|
68
|
+
|
|
72
69
|
/**
|
|
73
70
|
* Get the scan_consistency if it has been set.
|
|
74
71
|
*
|
|
@@ -76,55 +73,28 @@ class transaction_options
|
|
|
76
73
|
*
|
|
77
74
|
* @return The scan_consistency, if set.
|
|
78
75
|
*/
|
|
79
|
-
std::optional<query_scan_consistency> scan_consistency()
|
|
80
|
-
{
|
|
81
|
-
return scan_consistency_;
|
|
82
|
-
}
|
|
83
|
-
/**
|
|
84
|
-
* Set the timeout for key-value operations for this transaction.
|
|
85
|
-
*
|
|
86
|
-
* @param kv_timeout Desired key-value timeout.
|
|
87
|
-
* @return reference to this object, convenient for chaining operations.
|
|
88
|
-
*/
|
|
89
|
-
transaction_options& kv_timeout(std::chrono::milliseconds kv_timeout)
|
|
90
|
-
{
|
|
91
|
-
kv_timeout_ = kv_timeout;
|
|
92
|
-
return *this;
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
/**
|
|
96
|
-
* Get the key-value timeout if it has been set.
|
|
97
|
-
*
|
|
98
|
-
* @return The key-value timeout, if set.
|
|
99
|
-
*/
|
|
100
|
-
std::optional<std::chrono::milliseconds> kv_timeout()
|
|
101
|
-
{
|
|
102
|
-
return kv_timeout_;
|
|
103
|
-
}
|
|
76
|
+
[[nodiscard]] std::optional<query_scan_consistency> scan_consistency() const;
|
|
104
77
|
|
|
105
78
|
/**
|
|
106
|
-
* Set the
|
|
79
|
+
* Set the timeout for this transaction.
|
|
107
80
|
*
|
|
108
|
-
* @tparam T
|
|
109
|
-
* @param
|
|
81
|
+
* @tparam T timeout type, e.g. @ref std::chrono::milliseconds, or similar
|
|
82
|
+
* @param timeout Desired timeout
|
|
110
83
|
* @return reference to this object, convenient for chaining operations.
|
|
111
84
|
*/
|
|
112
85
|
template<typename T>
|
|
113
|
-
transaction_options&
|
|
86
|
+
transaction_options& timeout(T timeout)
|
|
114
87
|
{
|
|
115
|
-
|
|
88
|
+
timeout_ = std::chrono::duration_cast<std::chrono::nanoseconds>(timeout);
|
|
116
89
|
return *this;
|
|
117
90
|
}
|
|
118
91
|
|
|
119
92
|
/**
|
|
120
|
-
* Get the
|
|
93
|
+
* Get the timeout, if set.
|
|
121
94
|
*
|
|
122
|
-
* @return the
|
|
95
|
+
* @return the timeout, if set.
|
|
123
96
|
*/
|
|
124
|
-
std::optional<std::chrono::nanoseconds>
|
|
125
|
-
{
|
|
126
|
-
return expiration_time_;
|
|
127
|
-
}
|
|
97
|
+
std::optional<std::chrono::nanoseconds> timeout();
|
|
128
98
|
|
|
129
99
|
/**
|
|
130
100
|
* Set the metadata collection to use for this transaction
|
|
@@ -136,11 +106,8 @@ class transaction_options
|
|
|
136
106
|
* @param coll The desired collection to use.
|
|
137
107
|
* @return reference to this object, convenient for chaining operations.
|
|
138
108
|
*/
|
|
139
|
-
transaction_options& metadata_collection(const couchbase::collection& coll)
|
|
140
|
-
|
|
141
|
-
metadata_collection_.emplace(coll.bucket_name(), coll.scope_name(), coll.name());
|
|
142
|
-
return *this;
|
|
143
|
-
}
|
|
109
|
+
transaction_options& metadata_collection(const couchbase::collection& coll);
|
|
110
|
+
|
|
144
111
|
/**
|
|
145
112
|
* Set metadata collection to use for this transaction
|
|
146
113
|
*
|
|
@@ -157,30 +124,21 @@ class transaction_options
|
|
|
157
124
|
*
|
|
158
125
|
* @return the metadata collection, as a @ref transaction_keyspace, if set.
|
|
159
126
|
*/
|
|
160
|
-
std::optional<transaction_keyspace> metadata_collection()
|
|
161
|
-
{
|
|
162
|
-
return metadata_collection_;
|
|
163
|
-
}
|
|
127
|
+
[[nodiscard]] std::optional<transaction_keyspace> metadata_collection() const;
|
|
164
128
|
|
|
165
129
|
/** @private */
|
|
166
130
|
transaction_options& test_factories(std::shared_ptr<core::transactions::attempt_context_testing_hooks> hooks,
|
|
167
|
-
std::shared_ptr<core::transactions::cleanup_testing_hooks> cleanup_hooks)
|
|
168
|
-
{
|
|
169
|
-
attempt_context_hooks_ = hooks;
|
|
170
|
-
cleanup_hooks_ = cleanup_hooks;
|
|
171
|
-
return *this;
|
|
172
|
-
}
|
|
131
|
+
std::shared_ptr<core::transactions::cleanup_testing_hooks> cleanup_hooks);
|
|
173
132
|
/** @private */
|
|
174
133
|
[[nodiscard]] transactions_config::built apply(const transactions_config::built& conf) const;
|
|
175
134
|
|
|
176
135
|
private:
|
|
177
136
|
std::optional<couchbase::durability_level> durability_;
|
|
178
137
|
std::optional<couchbase::query_scan_consistency> scan_consistency_;
|
|
179
|
-
std::optional<std::chrono::
|
|
180
|
-
std::optional<std::chrono::nanoseconds> expiration_time_;
|
|
138
|
+
std::optional<std::chrono::nanoseconds> timeout_;
|
|
181
139
|
std::optional<transaction_keyspace> metadata_collection_;
|
|
182
140
|
std::shared_ptr<core::transactions::attempt_context_testing_hooks> attempt_context_hooks_;
|
|
183
141
|
std::shared_ptr<core::transactions::cleanup_testing_hooks> cleanup_hooks_;
|
|
184
142
|
};
|
|
185
|
-
|
|
186
|
-
} // namespace couchbase
|
|
143
|
+
} // namespace transactions
|
|
144
|
+
} // namespace couchbase
|
|
@@ -15,8 +15,6 @@
|
|
|
15
15
|
*/
|
|
16
16
|
#pragma once
|
|
17
17
|
|
|
18
|
-
// TODO: remove this when moving the wrap_request call
|
|
19
|
-
#include "core/operations/document_query.hxx"
|
|
20
18
|
#include <couchbase/query_options.hxx>
|
|
21
19
|
|
|
22
20
|
// NOTE: when query is in public api, we will hold a query_options struct instead, and
|
|
@@ -57,6 +55,7 @@ class transaction_query_options
|
|
|
57
55
|
opts_.raw(key, value);
|
|
58
56
|
return *this;
|
|
59
57
|
}
|
|
58
|
+
|
|
60
59
|
/**
|
|
61
60
|
* Set ad_hoc.
|
|
62
61
|
*
|
|
@@ -71,6 +70,7 @@ class transaction_query_options
|
|
|
71
70
|
opts_.adhoc(value);
|
|
72
71
|
return *this;
|
|
73
72
|
}
|
|
73
|
+
|
|
74
74
|
/**
|
|
75
75
|
* Set the query_scan_consistency for this query.
|
|
76
76
|
*
|
|
@@ -98,6 +98,7 @@ class transaction_query_options
|
|
|
98
98
|
opts_.profile(mode);
|
|
99
99
|
return *this;
|
|
100
100
|
}
|
|
101
|
+
|
|
101
102
|
/**
|
|
102
103
|
* Set a client id for this query.
|
|
103
104
|
*
|
|
@@ -139,6 +140,7 @@ class transaction_query_options
|
|
|
139
140
|
opts_.readonly(readonly);
|
|
140
141
|
return *this;
|
|
141
142
|
}
|
|
143
|
+
|
|
142
144
|
/**
|
|
143
145
|
* Set the scan cap for this query.
|
|
144
146
|
*
|
|
@@ -152,6 +154,7 @@ class transaction_query_options
|
|
|
152
154
|
opts_.scan_cap(cap);
|
|
153
155
|
return *this;
|
|
154
156
|
}
|
|
157
|
+
|
|
155
158
|
/**
|
|
156
159
|
* Set pipeline_batch size for this query.
|
|
157
160
|
*
|
|
@@ -195,6 +198,7 @@ class transaction_query_options
|
|
|
195
198
|
opts_.positional_parameters(parameters...);
|
|
196
199
|
return *this;
|
|
197
200
|
}
|
|
201
|
+
|
|
198
202
|
/**
|
|
199
203
|
* Set named parameters for this query.
|
|
200
204
|
*
|
|
@@ -210,6 +214,7 @@ class transaction_query_options
|
|
|
210
214
|
opts_.named_parameters(parameters...);
|
|
211
215
|
return *this;
|
|
212
216
|
}
|
|
217
|
+
|
|
213
218
|
/**
|
|
214
219
|
* Set metrics for this query.
|
|
215
220
|
*
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/* -*- Mode: C++; tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- */
|
|
1
2
|
/*
|
|
2
3
|
* Copyright 2021-Present Couchbase, Inc.
|
|
3
4
|
*
|
|
@@ -15,6 +16,7 @@
|
|
|
15
16
|
*/
|
|
16
17
|
#pragma once
|
|
17
18
|
|
|
19
|
+
#include <couchbase/durability_level.hxx>
|
|
18
20
|
#include <couchbase/transactions/transaction_keyspace.hxx>
|
|
19
21
|
#include <couchbase/transactions/transactions_cleanup_config.hxx>
|
|
20
22
|
#include <couchbase/transactions/transactions_query_config.hxx>
|
|
@@ -77,55 +79,28 @@ class transactions_config
|
|
|
77
79
|
}
|
|
78
80
|
|
|
79
81
|
/**
|
|
80
|
-
* @brief
|
|
81
|
-
*
|
|
82
|
-
* @see kv_timeout()
|
|
83
|
-
* @param duration An std::chrono::duration representing the desired default kv operation timeout.
|
|
84
|
-
* @return reference to this, so calls can be chained.
|
|
85
|
-
*/
|
|
86
|
-
template<typename T>
|
|
87
|
-
transactions_config& kv_timeout(T duration)
|
|
88
|
-
{
|
|
89
|
-
kv_timeout_ = std::chrono::duration_cast<std::chrono::milliseconds>(duration);
|
|
90
|
-
return *this;
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
/**
|
|
94
|
-
* @brief Get kv_timeout
|
|
95
|
-
*
|
|
96
|
-
* This is the default kv operation timeout used throughout the transactions. Note all the operations
|
|
97
|
-
* have an options class which allows you to override this value for a particular operation, if desired.
|
|
98
|
-
*
|
|
99
|
-
* @return The default kv operation timeout.
|
|
100
|
-
*/
|
|
101
|
-
[[nodiscard]] std::optional<std::chrono::milliseconds> kv_timeout() const
|
|
102
|
-
{
|
|
103
|
-
return kv_timeout_;
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
/**
|
|
107
|
-
* @brief Get expiration time for transactions
|
|
82
|
+
* @brief Get the timeout for transactions
|
|
108
83
|
*
|
|
109
84
|
* Transactions can conflict (or other operations on those documents), and may retry.
|
|
110
85
|
* This is the maximum time a transaction can take, including any retries. The transaction will throw
|
|
111
86
|
* an @ref transaction_expired and rollback when this occurs.
|
|
112
87
|
*
|
|
113
|
-
* @return
|
|
88
|
+
* @return timeout for transactions.
|
|
114
89
|
*/
|
|
115
|
-
[[nodiscard]] std::chrono::nanoseconds
|
|
90
|
+
[[nodiscard]] std::chrono::nanoseconds timeout() const
|
|
116
91
|
{
|
|
117
|
-
return
|
|
92
|
+
return timeout_;
|
|
118
93
|
}
|
|
119
94
|
/**
|
|
120
|
-
* @brief Set the
|
|
95
|
+
* @brief Set the timeout for transactions.
|
|
121
96
|
*
|
|
122
97
|
* @param duration desired expiration for transactions.
|
|
123
98
|
* @return reference to this, so calls can be chained.
|
|
124
99
|
*/
|
|
125
100
|
template<typename T>
|
|
126
|
-
transactions_config&
|
|
101
|
+
transactions_config& timeout(T duration)
|
|
127
102
|
{
|
|
128
|
-
|
|
103
|
+
timeout_ = std::chrono::duration_cast<std::chrono::nanoseconds>(duration);
|
|
129
104
|
return *this;
|
|
130
105
|
}
|
|
131
106
|
|
|
@@ -234,8 +209,7 @@ class transactions_config
|
|
|
234
209
|
/** @private */
|
|
235
210
|
struct built {
|
|
236
211
|
couchbase::durability_level level;
|
|
237
|
-
std::chrono::nanoseconds
|
|
238
|
-
std::optional<std::chrono::milliseconds> kv_timeout;
|
|
212
|
+
std::chrono::nanoseconds timeout;
|
|
239
213
|
std::shared_ptr<core::transactions::attempt_context_testing_hooks> attempt_context_hooks;
|
|
240
214
|
std::shared_ptr<core::transactions::cleanup_testing_hooks> cleanup_hooks;
|
|
241
215
|
std::optional<couchbase::transactions::transaction_keyspace> metadata_collection;
|
|
@@ -248,8 +222,7 @@ class transactions_config
|
|
|
248
222
|
|
|
249
223
|
private:
|
|
250
224
|
couchbase::durability_level level_{ couchbase::durability_level::majority };
|
|
251
|
-
std::chrono::nanoseconds
|
|
252
|
-
std::optional<std::chrono::milliseconds> kv_timeout_;
|
|
225
|
+
std::chrono::nanoseconds timeout_{ std::chrono::seconds(15) };
|
|
253
226
|
std::shared_ptr<core::transactions::attempt_context_testing_hooks> attempt_context_hooks_;
|
|
254
227
|
std::shared_ptr<core::transactions::cleanup_testing_hooks> cleanup_hooks_;
|
|
255
228
|
std::optional<couchbase::transactions::transaction_keyspace> metadata_collection_;
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/* -*- Mode: C++; tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- */
|
|
2
|
+
/*
|
|
3
|
+
* Copyright 2020-Present Couchbase, Inc.
|
|
4
|
+
*
|
|
5
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
* you may not use this file except in compliance with the License.
|
|
7
|
+
* You may obtain a copy of the License at
|
|
8
|
+
*
|
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
*
|
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
* See the License for the specific language governing permissions and
|
|
15
|
+
* limitations under the License.
|
|
16
|
+
*/
|
|
17
|
+
|
|
18
|
+
#pragma once
|
|
19
|
+
|
|
20
|
+
#include <couchbase/common_options.hxx>
|
|
21
|
+
|
|
22
|
+
#include <functional>
|
|
23
|
+
#include <memory>
|
|
24
|
+
#include <optional>
|
|
25
|
+
#include <string>
|
|
26
|
+
|
|
27
|
+
namespace couchbase
|
|
28
|
+
{
|
|
29
|
+
struct unfreeze_plan_search_index_options : public common_options<unfreeze_plan_search_index_options> {
|
|
30
|
+
public:
|
|
31
|
+
struct built : public common_options<unfreeze_plan_search_index_options>::built {
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
[[nodiscard]] auto build() const -> built
|
|
35
|
+
{
|
|
36
|
+
return { build_common_options() };
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
private:
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
using unfreeze_plan_search_index_handler = std::function<void(couchbase::manager_error_context)>;
|
|
43
|
+
} // namespace couchbase
|
|
@@ -70,28 +70,4 @@ struct unlock_options : public common_options<unlock_options> {
|
|
|
70
70
|
* @uncommitted
|
|
71
71
|
*/
|
|
72
72
|
using unlock_handler = std::function<void(couchbase::key_value_error_context)>;
|
|
73
|
-
|
|
74
|
-
#ifndef COUCHBASE_CXX_CLIENT_DOXYGEN
|
|
75
|
-
namespace core
|
|
76
|
-
{
|
|
77
|
-
class cluster;
|
|
78
|
-
namespace impl
|
|
79
|
-
{
|
|
80
|
-
|
|
81
|
-
/**
|
|
82
|
-
* @since 1.0.0
|
|
83
|
-
* @internal
|
|
84
|
-
*/
|
|
85
|
-
void
|
|
86
|
-
initiate_unlock_operation(std::shared_ptr<couchbase::core::cluster> core,
|
|
87
|
-
std::string bucket_name,
|
|
88
|
-
std::string scope_name,
|
|
89
|
-
std::string collection_name,
|
|
90
|
-
std::string document_key,
|
|
91
|
-
couchbase::cas cas,
|
|
92
|
-
couchbase::unlock_options::built options,
|
|
93
|
-
couchbase::unlock_handler&& handler);
|
|
94
|
-
#endif
|
|
95
|
-
} // namespace impl
|
|
96
|
-
} // namespace core
|
|
97
73
|
} // namespace couchbase
|
|
@@ -131,28 +131,4 @@ struct upsert_options : public common_durability_options<upsert_options> {
|
|
|
131
131
|
* @uncommitted
|
|
132
132
|
*/
|
|
133
133
|
using upsert_handler = std::function<void(couchbase::key_value_error_context, mutation_result)>;
|
|
134
|
-
|
|
135
|
-
#ifndef COUCHBASE_CXX_CLIENT_DOXYGEN
|
|
136
|
-
namespace core
|
|
137
|
-
{
|
|
138
|
-
class cluster;
|
|
139
|
-
namespace impl
|
|
140
|
-
{
|
|
141
|
-
|
|
142
|
-
/**
|
|
143
|
-
* @since 1.0.0
|
|
144
|
-
* @internal
|
|
145
|
-
*/
|
|
146
|
-
void
|
|
147
|
-
initiate_upsert_operation(std::shared_ptr<couchbase::core::cluster> core,
|
|
148
|
-
std::string bucket_name,
|
|
149
|
-
std::string scope_name,
|
|
150
|
-
std::string collection_name,
|
|
151
|
-
std::string document_key,
|
|
152
|
-
couchbase::codec::encoded_value encoded,
|
|
153
|
-
couchbase::upsert_options::built options,
|
|
154
|
-
couchbase::upsert_handler&& handler);
|
|
155
|
-
#endif
|
|
156
|
-
} // namespace impl
|
|
157
|
-
} // namespace core
|
|
158
134
|
} // namespace couchbase
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/* -*- Mode: C++; tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- */
|
|
2
|
+
/*
|
|
3
|
+
* Copyright 2020-Present Couchbase, Inc.
|
|
4
|
+
*
|
|
5
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
* you may not use this file except in compliance with the License.
|
|
7
|
+
* You may obtain a copy of the License at
|
|
8
|
+
*
|
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
*
|
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
* See the License for the specific language governing permissions and
|
|
15
|
+
* limitations under the License.
|
|
16
|
+
*/
|
|
17
|
+
|
|
18
|
+
#pragma once
|
|
19
|
+
|
|
20
|
+
#include <functional>
|
|
21
|
+
#include <memory>
|
|
22
|
+
#include <optional>
|
|
23
|
+
#include <string>
|
|
24
|
+
|
|
25
|
+
namespace couchbase
|
|
26
|
+
{
|
|
27
|
+
struct upsert_search_index_options : public common_options<upsert_search_index_options> {
|
|
28
|
+
public:
|
|
29
|
+
struct built : public common_options<upsert_search_index_options>::built {
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
[[nodiscard]] auto build() const -> built
|
|
33
|
+
{
|
|
34
|
+
return { build_common_options() };
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
private:
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
using upsert_search_index_handler = std::function<void(couchbase::manager_error_context)>;
|
|
41
|
+
} // namespace couchbase
|
package/dist/binding.d.ts
CHANGED
|
@@ -606,8 +606,6 @@ export interface CppQueryRequest {
|
|
|
606
606
|
send_to_node?: string;
|
|
607
607
|
body_str: string;
|
|
608
608
|
}
|
|
609
|
-
export interface CppMcbpNoopResponse {
|
|
610
|
-
}
|
|
611
609
|
export interface CppReplaceResponse {
|
|
612
610
|
cas: CppCas;
|
|
613
611
|
token: CppMutationToken;
|
|
@@ -1629,10 +1627,10 @@ export interface CppManagementSearchIndexControlPlanFreezeRequest {
|
|
|
1629
1627
|
client_context_id?: string;
|
|
1630
1628
|
timeout?: CppMilliseconds;
|
|
1631
1629
|
}
|
|
1632
|
-
export interface
|
|
1630
|
+
export interface CppManagementSearchGetStatsResponse {
|
|
1633
1631
|
stats: string;
|
|
1634
1632
|
}
|
|
1635
|
-
export interface
|
|
1633
|
+
export interface CppManagementSearchGetStatsRequest {
|
|
1636
1634
|
client_context_id?: string;
|
|
1637
1635
|
timeout?: CppMilliseconds;
|
|
1638
1636
|
}
|
|
@@ -2010,7 +2008,7 @@ export interface CppConnectionAutogen {
|
|
|
2010
2008
|
managementUserGet(options: CppManagementUserGetRequest, callback: (err: CppError | null, result: CppManagementUserGetResponse) => void): void;
|
|
2011
2009
|
managementSearchIndexDrop(options: CppManagementSearchIndexDropRequest, callback: (err: CppError | null, result: CppManagementSearchIndexDropResponse) => void): void;
|
|
2012
2010
|
managementSearchIndexControlPlanFreeze(options: CppManagementSearchIndexControlPlanFreezeRequest, callback: (err: CppError | null, result: CppManagementSearchIndexControlPlanFreezeResponse) => void): void;
|
|
2013
|
-
|
|
2011
|
+
managementSearchGetStats(options: CppManagementSearchGetStatsRequest, callback: (err: CppError | null, result: CppManagementSearchGetStatsResponse) => void): void;
|
|
2014
2012
|
managementUserDrop(options: CppManagementUserDropRequest, callback: (err: CppError | null, result: CppManagementUserDropResponse) => void): void;
|
|
2015
2013
|
managementAnalyticsDataverseCreate(options: CppManagementAnalyticsDataverseCreateRequest, callback: (err: CppError | null, result: CppManagementAnalyticsDataverseCreateResponse) => void): void;
|
|
2016
2014
|
managementSearchIndexControlQuery(options: CppManagementSearchIndexControlQueryRequest, callback: (err: CppError | null, result: CppManagementSearchIndexControlQueryResponse) => void): void;
|
|
@@ -2280,6 +2278,7 @@ export interface CppBindingAutogen {
|
|
|
2280
2278
|
xattr_unknown_virtual_attribute: CppErrcKeyValue;
|
|
2281
2279
|
xattr_cannot_modify_virtual_attribute: CppErrcKeyValue;
|
|
2282
2280
|
xattr_no_access: CppErrcKeyValue;
|
|
2281
|
+
document_not_locked: CppErrcKeyValue;
|
|
2283
2282
|
cannot_revive_living_document: CppErrcKeyValue;
|
|
2284
2283
|
mutation_token_outdated: CppErrcKeyValue;
|
|
2285
2284
|
range_scan_completed: CppErrcKeyValue;
|
|
@@ -2362,6 +2361,7 @@ export interface CppBindingAutogen {
|
|
|
2362
2361
|
dcp_stream_not_found: CppKeyValueStatusCode;
|
|
2363
2362
|
opaque_no_match: CppKeyValueStatusCode;
|
|
2364
2363
|
locked: CppKeyValueStatusCode;
|
|
2364
|
+
not_locked: CppKeyValueStatusCode;
|
|
2365
2365
|
auth_stale: CppKeyValueStatusCode;
|
|
2366
2366
|
auth_error: CppKeyValueStatusCode;
|
|
2367
2367
|
auth_continue: CppKeyValueStatusCode;
|
|
@@ -2641,8 +2641,7 @@ export interface CppConnection extends CppConnectionAutogen {
|
|
|
2641
2641
|
}
|
|
2642
2642
|
export interface CppTransactionsConfig {
|
|
2643
2643
|
durability_level?: CppDurabilityLevel;
|
|
2644
|
-
|
|
2645
|
-
expiration_time?: CppMilliseconds;
|
|
2644
|
+
timeout?: CppMilliseconds;
|
|
2646
2645
|
query_scan_consistency?: CppQueryScanConsistency;
|
|
2647
2646
|
cleanup_window?: CppMilliseconds;
|
|
2648
2647
|
cleanup_lost_attempts?: boolean;
|
|
@@ -2650,8 +2649,7 @@ export interface CppTransactionsConfig {
|
|
|
2650
2649
|
}
|
|
2651
2650
|
export interface CppTransactionOptions {
|
|
2652
2651
|
durability_level?: CppDurabilityLevel;
|
|
2653
|
-
|
|
2654
|
-
expiration_time?: CppMilliseconds;
|
|
2652
|
+
timeout?: CppMilliseconds;
|
|
2655
2653
|
query_scan_consistency?: CppQueryScanConsistency;
|
|
2656
2654
|
}
|
|
2657
2655
|
export interface CppTransactionLinks {
|
package/dist/bindingutilities.js
CHANGED
|
@@ -674,6 +674,8 @@ function errorFromCpp(err) {
|
|
|
674
674
|
return new errs.DocumentUnretrievableError(baseErr, context);
|
|
675
675
|
case binding_1.default.errc_key_value.document_locked:
|
|
676
676
|
return new errs.DocumentLockedError(baseErr, context);
|
|
677
|
+
case binding_1.default.errc_key_value.document_not_locked:
|
|
678
|
+
return new errs.DocumentNotLockedError(baseErr, context);
|
|
677
679
|
case binding_1.default.errc_key_value.value_too_large:
|
|
678
680
|
return new errs.ValueTooLargeError(baseErr, context);
|
|
679
681
|
case binding_1.default.errc_key_value.document_exists:
|
package/dist/collection.js
CHANGED
|
@@ -1028,11 +1028,11 @@ class Collection {
|
|
|
1028
1028
|
value,
|
|
1029
1029
|
}));
|
|
1030
1030
|
}
|
|
1031
|
-
emitter.emit('replica', new crudoptypes_1.LookupInReplicaResult(
|
|
1031
|
+
emitter.emit('replica', new crudoptypes_1.LookupInReplicaResult({
|
|
1032
1032
|
content: content,
|
|
1033
1033
|
cas: replica.cas,
|
|
1034
|
-
isReplica: replica.is_replica
|
|
1035
|
-
}))
|
|
1034
|
+
isReplica: replica.is_replica,
|
|
1035
|
+
}));
|
|
1036
1036
|
});
|
|
1037
1037
|
emitter.emit('end');
|
|
1038
1038
|
return;
|
package/dist/errors.d.ts
CHANGED
|
@@ -285,6 +285,15 @@ export declare class DocumentUnretrievableError extends CouchbaseError {
|
|
|
285
285
|
export declare class DocumentLockedError extends CouchbaseError {
|
|
286
286
|
constructor(cause?: Error, context?: ErrorContext);
|
|
287
287
|
}
|
|
288
|
+
/**
|
|
289
|
+
* Indicates that the referenced document is not locked. Generally raised when an unlock
|
|
290
|
+
* operation is performed.
|
|
291
|
+
*
|
|
292
|
+
* @category Error Handling
|
|
293
|
+
*/
|
|
294
|
+
export declare class DocumentNotLockedError extends CouchbaseError {
|
|
295
|
+
constructor(cause?: Error, context?: ErrorContext);
|
|
296
|
+
}
|
|
288
297
|
/**
|
|
289
298
|
* Indicates that a value could not be stored as it was too large.
|
|
290
299
|
*
|
package/dist/errors.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
exports.TransactionCommitAmbiguousError = exports.TransactionExpiredError = exports.TransactionFailedError = exports.TransactionOperationFailedError = exports.EventingFunctionPausedError = exports.EventingFunctionDeployedError = exports.EventingFunctionNotBootstrappedError = exports.EventingFunctionIdenticalKeyspaceError = exports.EventingFunctionCompilationFailureError = exports.EventingFunctionNotDeployedError = exports.EventingFunctionNotFoundError = exports.BucketNotFlushableError = exports.UserExistsError = exports.BucketExistsError = exports.GroupNotFoundError = exports.UserNotFoundError = exports.ScopeExistsError = exports.CollectionExistsError = exports.DesignDocumentNotFoundError = exports.ViewNotFoundError = exports.LinkExistsError = exports.LinkNotFoundError = exports.DataverseExistsError = exports.DatasetExistsError = exports.DataverseNotFoundError = exports.DatasetNotFoundError = exports.JobQueueFullError = exports.CompilationFailureError = exports.IndexNotReadyError = exports.DmlFailureError = exports.PreparedStatementFailureError = exports.IndexFailureError = exports.PlanningFailureError = exports.PathExistsError = exports.DeltaInvalidError = void 0;
|
|
3
|
+
exports.DocumentNotJsonError = exports.ValueInvalidError = exports.ValueTooDeepError = exports.PathTooDeepError = exports.PathTooBigError = exports.PathInvalidError = exports.PathMismatchError = exports.PathNotFoundError = exports.MutationLostError = exports.DurableWriteReCommitInProgressError = exports.DurableWriteInProgressError = exports.DurabilityAmbiguousError = exports.DurabilityImpossibleError = exports.DurabilityLevelNotAvailableError = exports.ValueNotJsonError = exports.DocumentExistsError = exports.ValueTooLargeError = exports.DocumentNotLockedError = exports.DocumentLockedError = exports.DocumentUnretrievableError = exports.DocumentNotFoundError = exports.IndexExistsError = exports.QuotaLimitedError = exports.RateLimitedError = exports.IndexNotFoundError = exports.ScopeNotFoundError = exports.FeatureNotAvailableError = exports.UnambiguousTimeoutError = exports.AmbiguousTimeoutError = exports.UnsupportedOperationError = exports.DecodingFailureError = exports.EncodingFailureError = exports.CollectionNotFoundError = exports.BucketNotFoundError = exports.CasMismatchError = exports.ParsingFailureError = exports.TemporaryFailureError = exports.AuthenticationFailureError = exports.InternalServerFailureError = exports.ServiceNotAvailableError = exports.InvalidArgumentError = exports.RequestCanceledError = exports.TimeoutError = exports.InvalidDurabilityReplicateToLevel = exports.InvalidDurabilityPersistToLevel = exports.InvalidDurabilityLevel = exports.NeedOpenBucketError = exports.ClusterClosedError = exports.ConnectionClosedError = exports.CouchbaseError = void 0;
|
|
4
|
+
exports.TransactionCommitAmbiguousError = exports.TransactionExpiredError = exports.TransactionFailedError = exports.TransactionOperationFailedError = exports.EventingFunctionPausedError = exports.EventingFunctionDeployedError = exports.EventingFunctionNotBootstrappedError = exports.EventingFunctionIdenticalKeyspaceError = exports.EventingFunctionCompilationFailureError = exports.EventingFunctionNotDeployedError = exports.EventingFunctionNotFoundError = exports.BucketNotFlushableError = exports.UserExistsError = exports.BucketExistsError = exports.GroupNotFoundError = exports.UserNotFoundError = exports.ScopeExistsError = exports.CollectionExistsError = exports.DesignDocumentNotFoundError = exports.ViewNotFoundError = exports.LinkExistsError = exports.LinkNotFoundError = exports.DataverseExistsError = exports.DatasetExistsError = exports.DataverseNotFoundError = exports.DatasetNotFoundError = exports.JobQueueFullError = exports.CompilationFailureError = exports.IndexNotReadyError = exports.DmlFailureError = exports.PreparedStatementFailureError = exports.IndexFailureError = exports.PlanningFailureError = exports.PathExistsError = exports.DeltaInvalidError = exports.NumberTooBigError = void 0;
|
|
5
5
|
require("./errorcontexts");
|
|
6
6
|
/**
|
|
7
7
|
* A generic base error that all errors inherit. Exposes the cause and
|
|
@@ -381,6 +381,18 @@ class DocumentLockedError extends CouchbaseError {
|
|
|
381
381
|
}
|
|
382
382
|
}
|
|
383
383
|
exports.DocumentLockedError = DocumentLockedError;
|
|
384
|
+
/**
|
|
385
|
+
* Indicates that the referenced document is not locked. Generally raised when an unlock
|
|
386
|
+
* operation is performed.
|
|
387
|
+
*
|
|
388
|
+
* @category Error Handling
|
|
389
|
+
*/
|
|
390
|
+
class DocumentNotLockedError extends CouchbaseError {
|
|
391
|
+
constructor(cause, context) {
|
|
392
|
+
super('document not locked', cause, context);
|
|
393
|
+
}
|
|
394
|
+
}
|
|
395
|
+
exports.DocumentNotLockedError = DocumentNotLockedError;
|
|
384
396
|
/**
|
|
385
397
|
* Indicates that a value could not be stored as it was too large.
|
|
386
398
|
*
|
package/dist/transactions.d.ts
CHANGED
|
@@ -71,6 +71,8 @@ export interface TransactionsConfig {
|
|
|
71
71
|
durabilityLevel?: DurabilityLevel;
|
|
72
72
|
/**
|
|
73
73
|
* Specifies the default timeout for KV operations, specified in millseconds.
|
|
74
|
+
*
|
|
75
|
+
* @deprecated Currently a no-op. CXXCBC-391: Adds support for ExtSDKIntegration which uses KV durable timeout internally.
|
|
74
76
|
*/
|
|
75
77
|
kvTimeout?: number;
|
|
76
78
|
/**
|
package/dist/transactions.js
CHANGED
|
@@ -103,7 +103,7 @@ class TransactionAttemptContext {
|
|
|
103
103
|
}
|
|
104
104
|
this._impl = new binding_1.default.Transaction(txns.impl, {
|
|
105
105
|
durability_level: (0, bindingutilities_1.durabilityToCpp)(config.durabilityLevel),
|
|
106
|
-
|
|
106
|
+
timeout: config.timeout,
|
|
107
107
|
query_scan_consistency: (0, bindingutilities_1.queryScanConsistencyToCpp)(undefined),
|
|
108
108
|
});
|
|
109
109
|
}
|
|
@@ -313,8 +313,7 @@ class Transactions {
|
|
|
313
313
|
const connImpl = cluster.conn;
|
|
314
314
|
const txnsImpl = new binding_1.default.Transactions(connImpl, {
|
|
315
315
|
durability_level: (0, bindingutilities_1.durabilityToCpp)(config.durabilityLevel),
|
|
316
|
-
|
|
317
|
-
expiration_time: config.timeout,
|
|
316
|
+
timeout: config.timeout,
|
|
318
317
|
query_scan_consistency: (0, bindingutilities_1.queryScanConsistencyToCpp)(config.queryConfig.scanConsistency),
|
|
319
318
|
cleanup_window: config.cleanupConfig.cleanupWindow,
|
|
320
319
|
cleanup_lost_attempts: !config.cleanupConfig.disableLostAttemptCleanup,
|