couchbase 4.6.1 → 4.7.0-dev.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CMakeLists.txt +2 -1
- package/deps/couchbase-cxx-cache/mozilla-ca-bundle.crt +23 -5
- package/deps/couchbase-cxx-cache/mozilla-ca-bundle.sha256 +1 -1
- package/deps/couchbase-cxx-client/CMakeLists.txt +24 -11
- package/deps/couchbase-cxx-client/README.md +2 -2
- package/deps/couchbase-cxx-client/cmake/APKBUILD.in +17 -1
- package/deps/couchbase-cxx-client/cmake/Bundler.cmake +9 -1
- package/deps/couchbase-cxx-client/cmake/Cache.cmake +48 -19
- package/deps/couchbase-cxx-client/cmake/CompilerOptions.cmake +3 -1
- package/deps/couchbase-cxx-client/cmake/OpenSSL.cmake +10 -2
- package/deps/couchbase-cxx-client/cmake/Packaging.cmake +48 -8
- package/deps/couchbase-cxx-client/cmake/ThirdPartyDependencies.cmake +41 -0
- package/deps/couchbase-cxx-client/cmake/build_config.hxx.in +2 -0
- package/deps/couchbase-cxx-client/cmake/couchbase-cxx-client.spec.in +18 -0
- package/deps/couchbase-cxx-client/cmake/debian/control +6 -1
- package/deps/couchbase-cxx-client/cmake/debian/rules +1 -0
- package/deps/couchbase-cxx-client/cmake/tarball_glob.txt +10 -0
- package/deps/couchbase-cxx-client/core/app_telemetry_meter.cxx +1 -0
- package/deps/couchbase-cxx-client/core/app_telemetry_reporter.cxx +45 -43
- package/deps/couchbase-cxx-client/core/app_telemetry_reporter.hxx +4 -3
- package/deps/couchbase-cxx-client/core/bucket.cxx +128 -13
- package/deps/couchbase-cxx-client/core/bucket.hxx +12 -2
- package/deps/couchbase-cxx-client/core/cluster.cxx +304 -152
- package/deps/couchbase-cxx-client/core/cluster.hxx +32 -0
- package/deps/couchbase-cxx-client/core/cluster_credentials.cxx +25 -0
- package/deps/couchbase-cxx-client/core/cluster_credentials.hxx +5 -0
- package/deps/couchbase-cxx-client/core/cluster_label_listener.cxx +72 -0
- package/deps/couchbase-cxx-client/core/cluster_label_listener.hxx +46 -0
- package/deps/couchbase-cxx-client/core/cluster_options.hxx +4 -0
- package/deps/couchbase-cxx-client/core/deprecation_utils.hxx +26 -0
- package/deps/couchbase-cxx-client/core/error.hxx +27 -0
- package/deps/couchbase-cxx-client/core/free_form_http_request.hxx +0 -2
- package/deps/couchbase-cxx-client/core/http_component.cxx +12 -48
- package/deps/couchbase-cxx-client/core/impl/analytics.cxx +3 -2
- package/deps/couchbase-cxx-client/core/impl/analytics.hxx +2 -1
- package/deps/couchbase-cxx-client/core/impl/analytics_index_manager.cxx +249 -137
- package/deps/couchbase-cxx-client/core/impl/binary_collection.cxx +134 -58
- package/deps/couchbase-cxx-client/core/impl/bucket_manager.cxx +87 -35
- package/deps/couchbase-cxx-client/core/impl/collection.cxx +560 -245
- package/deps/couchbase-cxx-client/core/impl/collection_manager.cxx +89 -49
- package/deps/couchbase-cxx-client/core/impl/dns_srv_tracker.cxx +3 -3
- package/deps/couchbase-cxx-client/core/impl/error.cxx +20 -13
- package/deps/couchbase-cxx-client/core/impl/error.hxx +15 -10
- package/deps/couchbase-cxx-client/core/impl/get_all_replicas.hxx +1 -1
- package/deps/couchbase-cxx-client/core/impl/get_any_replica.hxx +2 -1
- package/deps/couchbase-cxx-client/core/impl/get_replica.hxx +2 -0
- package/deps/couchbase-cxx-client/core/impl/lookup_in_replica.hxx +1 -1
- package/deps/couchbase-cxx-client/core/impl/observability_recorder.cxx +161 -0
- package/deps/couchbase-cxx-client/core/impl/observability_recorder.hxx +77 -0
- package/deps/couchbase-cxx-client/core/impl/observe_seqno.hxx +2 -0
- package/deps/couchbase-cxx-client/core/impl/public_bucket.cxx +31 -7
- package/deps/couchbase-cxx-client/core/impl/public_cluster.cxx +107 -19
- package/deps/couchbase-cxx-client/core/impl/query.cxx +6 -3
- package/deps/couchbase-cxx-client/core/impl/query.hxx +3 -1
- package/deps/couchbase-cxx-client/core/impl/query_index_manager.cxx +267 -102
- package/deps/couchbase-cxx-client/core/impl/scope.cxx +53 -11
- package/deps/couchbase-cxx-client/core/impl/search.cxx +8 -4
- package/deps/couchbase-cxx-client/core/impl/search.hxx +6 -2
- package/deps/couchbase-cxx-client/core/impl/search_index_manager.cxx +131 -41
- package/deps/couchbase-cxx-client/core/impl/with_cancellation.hxx +75 -0
- package/deps/couchbase-cxx-client/core/io/config_tracker.cxx +9 -9
- package/deps/couchbase-cxx-client/core/io/config_tracker.hxx +2 -1
- package/deps/couchbase-cxx-client/core/io/http_command.hxx +98 -49
- package/deps/couchbase-cxx-client/core/io/http_context.hxx +2 -0
- package/deps/couchbase-cxx-client/core/io/http_session.cxx +23 -10
- package/deps/couchbase-cxx-client/core/io/http_session.hxx +17 -9
- package/deps/couchbase-cxx-client/core/io/http_session_manager.hxx +163 -228
- package/deps/couchbase-cxx-client/core/io/http_traits.hxx +0 -7
- package/deps/couchbase-cxx-client/core/io/mcbp_command.hxx +123 -44
- package/deps/couchbase-cxx-client/core/io/mcbp_session.cxx +251 -26
- package/deps/couchbase-cxx-client/core/io/mcbp_session.hxx +9 -1
- package/deps/couchbase-cxx-client/core/io/mcbp_traits.hxx +0 -8
- package/deps/couchbase-cxx-client/core/io/streams.cxx +3 -3
- package/deps/couchbase-cxx-client/core/io/streams.hxx +3 -2
- package/deps/couchbase-cxx-client/core/meta/features.hxx +15 -0
- package/deps/couchbase-cxx-client/core/meta/version.cxx +13 -0
- package/deps/couchbase-cxx-client/core/meta/version.hxx +3 -0
- package/deps/couchbase-cxx-client/core/metrics/constants.hxx +23 -0
- package/deps/couchbase-cxx-client/core/metrics/logging_meter.cxx +5 -5
- package/deps/couchbase-cxx-client/core/metrics/meter_wrapper.cxx +65 -63
- package/deps/couchbase-cxx-client/core/metrics/meter_wrapper.hxx +12 -10
- package/deps/couchbase-cxx-client/core/operations/document_analytics.hxx +0 -5
- package/deps/couchbase-cxx-client/core/operations/document_append.hxx +0 -4
- package/deps/couchbase-cxx-client/core/operations/document_decrement.hxx +0 -5
- package/deps/couchbase-cxx-client/core/operations/document_exists.hxx +0 -7
- package/deps/couchbase-cxx-client/core/operations/document_get.hxx +0 -7
- package/deps/couchbase-cxx-client/core/operations/document_get_all_replicas.hxx +77 -27
- package/deps/couchbase-cxx-client/core/operations/document_get_and_lock.hxx +0 -9
- package/deps/couchbase-cxx-client/core/operations/document_get_and_touch.hxx +0 -9
- package/deps/couchbase-cxx-client/core/operations/document_get_any_replica.hxx +83 -2
- package/deps/couchbase-cxx-client/core/operations/document_get_projected.hxx +0 -9
- package/deps/couchbase-cxx-client/core/operations/document_increment.hxx +0 -5
- package/deps/couchbase-cxx-client/core/operations/document_insert.hxx +0 -4
- package/deps/couchbase-cxx-client/core/operations/document_lookup_in.hxx +0 -9
- package/deps/couchbase-cxx-client/core/operations/document_lookup_in_all_replicas.hxx +46 -4
- package/deps/couchbase-cxx-client/core/operations/document_lookup_in_any_replica.hxx +121 -43
- package/deps/couchbase-cxx-client/core/operations/document_mutate_in.hxx +0 -5
- package/deps/couchbase-cxx-client/core/operations/document_prepend.hxx +0 -4
- package/deps/couchbase-cxx-client/core/operations/document_query.hxx +0 -4
- package/deps/couchbase-cxx-client/core/operations/document_remove.hxx +0 -4
- package/deps/couchbase-cxx-client/core/operations/document_replace.hxx +0 -4
- package/deps/couchbase-cxx-client/core/operations/document_search.hxx +0 -7
- package/deps/couchbase-cxx-client/core/operations/document_touch.hxx +0 -7
- package/deps/couchbase-cxx-client/core/operations/document_unlock.hxx +0 -6
- package/deps/couchbase-cxx-client/core/operations/document_upsert.hxx +0 -4
- package/deps/couchbase-cxx-client/core/operations/document_view.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/document_view.hxx +10 -13
- package/deps/couchbase-cxx-client/core/operations/http_noop.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/analytics_dataset_create.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/analytics_dataset_drop.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/analytics_dataset_get_all.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/analytics_dataverse_create.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/analytics_dataverse_drop.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/analytics_get_pending_mutations.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/analytics_index_create.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/analytics_index_drop.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/analytics_index_get_all.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/analytics_link_connect.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/analytics_link_create.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/analytics_link_disconnect.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/analytics_link_drop.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/analytics_link_get_all.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/analytics_link_replace.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/bucket_create.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/bucket_describe.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/bucket_drop.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/bucket_flush.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/bucket_get.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/bucket_get_all.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/bucket_update.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/change_password.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/cluster_describe.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/cluster_developer_preview_enable.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/collection_create.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/collection_drop.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/collection_update.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/collections_manifest_get.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/error_utils.cxx +4 -1
- package/deps/couchbase-cxx-client/core/operations/management/eventing_deploy_function.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/eventing_drop_function.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/eventing_get_all_functions.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/eventing_get_function.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/eventing_get_status.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/eventing_pause_function.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/eventing_resume_function.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/eventing_undeploy_function.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/eventing_upsert_function.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/freeform.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/group_drop.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/group_get.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/group_get_all.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/group_upsert.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/query_index_build.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/query_index_build_deferred.hxx +68 -30
- package/deps/couchbase-cxx-client/core/operations/management/query_index_create.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/query_index_drop.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/query_index_get_all.hxx +4 -3
- package/deps/couchbase-cxx-client/core/operations/management/query_index_get_all_deferred.hxx +2 -1
- package/deps/couchbase-cxx-client/core/operations/management/role_get_all.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/scope_create.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/scope_drop.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/scope_get_all.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/search_get_stats.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/search_index_analyze_document.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/search_index_control_ingest.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/search_index_control_plan_freeze.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/search_index_control_query.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/search_index_drop.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/search_index_get.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/search_index_get_all.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/search_index_get_documents_count.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/search_index_get_stats.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/search_index_upsert.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/user_drop.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/user_get.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/user_get_all.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/user_upsert.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/view_index_drop.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/view_index_get.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/view_index_get_all.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/view_index_upsert.hxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/operation_traits.hxx +6 -0
- package/deps/couchbase-cxx-client/core/operations.hxx +0 -1
- package/deps/couchbase-cxx-client/core/operations_fwd.hxx +8 -0
- package/deps/couchbase-cxx-client/core/origin.cxx +67 -12
- package/deps/couchbase-cxx-client/core/origin.hxx +13 -8
- package/deps/couchbase-cxx-client/core/orphan_reporter.cxx +164 -0
- package/deps/couchbase-cxx-client/core/orphan_reporter.hxx +65 -0
- package/deps/couchbase-cxx-client/core/sasl/CMakeLists.txt +1 -0
- package/deps/couchbase-cxx-client/core/sasl/client.cc +6 -0
- package/deps/couchbase-cxx-client/core/sasl/mechanism.cc +2 -1
- package/deps/couchbase-cxx-client/core/sasl/mechanism.h +2 -1
- package/deps/couchbase-cxx-client/core/sasl/oauthbearer/oauthbearer.cc +41 -0
- package/deps/couchbase-cxx-client/core/sasl/oauthbearer/oauthbearer.h +47 -0
- package/deps/couchbase-cxx-client/core/tls_context_provider.cxx +44 -0
- package/deps/couchbase-cxx-client/core/tls_context_provider.hxx +44 -0
- package/deps/couchbase-cxx-client/core/tracing/attribute_helpers.hxx +45 -0
- package/deps/couchbase-cxx-client/core/tracing/constants.hxx +148 -68
- package/deps/couchbase-cxx-client/core/tracing/threshold_logging_options.hxx +0 -3
- package/deps/couchbase-cxx-client/core/tracing/threshold_logging_tracer.cxx +122 -170
- package/deps/couchbase-cxx-client/core/tracing/tracer_wrapper.cxx +17 -24
- package/deps/couchbase-cxx-client/core/tracing/tracer_wrapper.hxx +8 -10
- package/deps/couchbase-cxx-client/core/tracing/wrapper_sdk_tracer.cxx +114 -0
- package/deps/couchbase-cxx-client/core/tracing/wrapper_sdk_tracer.hxx +85 -0
- package/deps/couchbase-cxx-client/core/transactions/attempt_context_impl.cxx +16 -14
- package/deps/couchbase-cxx-client/core/transactions/attempt_context_impl.hxx +4 -4
- package/deps/couchbase-cxx-client/core/transactions/transactions.cxx +1 -1
- package/deps/couchbase-cxx-client/core/transactions/transactions_cleanup.cxx +1 -2
- package/deps/couchbase-cxx-client/core/utils/byteswap.hxx +12 -0
- package/deps/couchbase-cxx-client/core/utils/concurrent_fixed_priority_queue.hxx +102 -0
- package/deps/couchbase-cxx-client/core/utils/connection_string.cxx +2 -0
- package/deps/couchbase-cxx-client/couchbase/certificate_authenticator.hxx +1 -0
- package/deps/couchbase-cxx-client/couchbase/cluster.hxx +47 -0
- package/deps/couchbase-cxx-client/couchbase/cluster_options.hxx +16 -0
- package/deps/couchbase-cxx-client/couchbase/collection.hxx +60 -15
- package/deps/couchbase-cxx-client/couchbase/error_codes.hxx +48 -48
- package/deps/couchbase-cxx-client/couchbase/jwt_authenticator.hxx +52 -0
- package/deps/couchbase-cxx-client/couchbase/metrics/meter.hxx +2 -1
- package/deps/couchbase-cxx-client/couchbase/metrics/otel_meter.hxx +75 -80
- package/deps/couchbase-cxx-client/couchbase/network_options.hxx +19 -0
- package/deps/couchbase-cxx-client/couchbase/password_authenticator.hxx +1 -0
- package/deps/couchbase-cxx-client/couchbase/tracing/otel_tracer.hxx +15 -17
- package/deps/couchbase-cxx-client/couchbase/tracing/request_span.hxx +2 -2
- package/dist/analyticsexecutor.d.ts +15 -0
- package/dist/analyticsexecutor.js +79 -50
- package/dist/analyticsindexmanager.d.ts +66 -0
- package/dist/analyticsindexmanager.js +404 -277
- package/dist/analyticstypes.d.ts +5 -0
- package/dist/authenticators.d.ts +34 -1
- package/dist/authenticators.js +19 -1
- package/dist/binarycollection.d.ts +17 -0
- package/dist/binding.d.ts +245 -228
- package/dist/bindingutilities.js +1 -1
- package/dist/bucket.d.ts +8 -0
- package/dist/bucket.js +8 -0
- package/dist/bucketmanager.d.ts +30 -0
- package/dist/bucketmanager.js +128 -69
- package/dist/cluster.d.ts +45 -0
- package/dist/cluster.js +133 -21
- package/dist/collection.d.ts +75 -2
- package/dist/collection.js +772 -551
- package/dist/collectionmanager.d.ts +34 -0
- package/dist/collectionmanager.js +172 -89
- package/dist/couchbase.d.ts +5 -0
- package/dist/couchbase.js +5 -0
- package/dist/datastructures.js +310 -97
- package/dist/errors.d.ts +8 -0
- package/dist/errors.js +12 -1
- package/dist/eventingfunctionmanager.d.ts +42 -0
- package/dist/eventingfunctionmanager.js +172 -100
- package/dist/logger.d.ts +192 -0
- package/dist/logger.js +213 -0
- package/dist/loggingmeter.d.ts +120 -0
- package/dist/loggingmeter.js +226 -0
- package/dist/metrics.d.ts +33 -0
- package/dist/metrics.js +5 -0
- package/dist/observability.d.ts +60 -0
- package/dist/observability.js +86 -0
- package/dist/observabilityhandler.d.ts +176 -0
- package/dist/observabilityhandler.js +733 -0
- package/dist/observabilitytypes.d.ts +320 -0
- package/dist/observabilitytypes.js +362 -0
- package/dist/observabilityutilities.d.ts +60 -0
- package/dist/observabilityutilities.js +175 -0
- package/dist/otelmeter.d.ts +51 -0
- package/dist/otelmeter.js +100 -0
- package/dist/oteltracer.d.ts +69 -0
- package/dist/oteltracer.js +141 -0
- package/dist/queryexecutor.d.ts +16 -0
- package/dist/queryexecutor.js +128 -86
- package/dist/queryindexmanager.d.ts +29 -0
- package/dist/queryindexmanager.js +277 -150
- package/dist/querytypes.d.ts +5 -0
- package/dist/scope.js +2 -2
- package/dist/scopeeventingfunctionmanager.d.ts +5 -0
- package/dist/scopeeventingfunctionmanager.js +217 -119
- package/dist/scopesearchindexmanager.d.ts +5 -0
- package/dist/scopesearchindexmanager.js +295 -166
- package/dist/sdspecs.js +6 -1
- package/dist/searchexecutor.d.ts +15 -0
- package/dist/searchexecutor.js +54 -26
- package/dist/searchindexmanager.d.ts +54 -0
- package/dist/searchindexmanager.js +235 -142
- package/dist/searchtypes.d.ts +5 -0
- package/dist/thresholdlogging.d.ts +301 -0
- package/dist/thresholdlogging.js +657 -0
- package/dist/tracing.d.ts +55 -0
- package/dist/tracing.js +2 -0
- package/dist/usermanager.d.ts +46 -0
- package/dist/usermanager.js +199 -118
- package/dist/utilities.d.ts +4 -0
- package/dist/utilities.js +11 -1
- package/dist/version.d.ts +2 -0
- package/dist/version.js +7 -0
- package/dist/viewexecutor.d.ts +15 -0
- package/dist/viewexecutor.js +54 -29
- package/dist/viewindexmanager.d.ts +30 -0
- package/dist/viewindexmanager.js +129 -100
- package/dist/viewtypes.d.ts +5 -0
- package/package.json +19 -9
- package/scripts/prebuilds.js +1 -1
- package/scripts/updateVersion.js +26 -0
- package/src/connection.cpp +79 -98
- package/src/connection.hpp +46 -38
- package/src/connection_autogen.cpp +1236 -292
- package/src/jstocbpp_autogen.hpp +1117 -313
- package/src/jstocbpp_basic.hpp +73 -0
- package/src/jstocbpp_defs.hpp +37 -9
- package/src/jstocbpp_errors.hpp +37 -11
- package/tools/gen-bindings-js.js +100 -22
- package/tools/gen-bindings-json.py +40 -6
- package/src/transcoder.hpp +0 -96
package/dist/queryexecutor.js
CHANGED
|
@@ -2,8 +2,12 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.QueryExecutor = void 0;
|
|
4
4
|
const bindingutilities_1 = require("./bindingutilities");
|
|
5
|
+
const observability_1 = require("./observability");
|
|
6
|
+
const observabilityhandler_1 = require("./observabilityhandler");
|
|
7
|
+
const observabilitytypes_1 = require("./observabilitytypes");
|
|
5
8
|
const querytypes_1 = require("./querytypes");
|
|
6
9
|
const streamablepromises_1 = require("./streamablepromises");
|
|
10
|
+
const utilities_1 = require("./utilities");
|
|
7
11
|
/**
|
|
8
12
|
* @internal
|
|
9
13
|
*/
|
|
@@ -17,6 +21,72 @@ class QueryExecutor {
|
|
|
17
21
|
/**
|
|
18
22
|
* @internal
|
|
19
23
|
*/
|
|
24
|
+
get observabilityInstruments() {
|
|
25
|
+
return this._cluster.observabilityInstruments;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* @internal
|
|
29
|
+
*/
|
|
30
|
+
static _processQueryResponse(emitter, err, resp, obsReqHandler) {
|
|
31
|
+
if (err) {
|
|
32
|
+
obsReqHandler === null || obsReqHandler === void 0 ? void 0 : obsReqHandler.endWithError(err);
|
|
33
|
+
emitter.emit('error', err);
|
|
34
|
+
emitter.emit('end');
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
resp.rows.forEach((row) => {
|
|
38
|
+
emitter.emit('row', JSON.parse(row));
|
|
39
|
+
});
|
|
40
|
+
{
|
|
41
|
+
const metaData = resp.meta;
|
|
42
|
+
let warnings;
|
|
43
|
+
if (metaData.warnings) {
|
|
44
|
+
warnings = metaData.warnings.map((warningData) => new querytypes_1.QueryWarning({
|
|
45
|
+
code: warningData.code,
|
|
46
|
+
message: warningData.message,
|
|
47
|
+
}));
|
|
48
|
+
}
|
|
49
|
+
else {
|
|
50
|
+
warnings = [];
|
|
51
|
+
}
|
|
52
|
+
let metrics;
|
|
53
|
+
if (metaData.metrics) {
|
|
54
|
+
const metricsData = metaData.metrics;
|
|
55
|
+
metrics = new querytypes_1.QueryMetrics({
|
|
56
|
+
elapsedTime: metricsData.elapsed_time,
|
|
57
|
+
executionTime: metricsData.execution_time,
|
|
58
|
+
sortCount: metricsData.sort_count || 0,
|
|
59
|
+
resultCount: metricsData.result_count || 0,
|
|
60
|
+
resultSize: metricsData.result_size || 0,
|
|
61
|
+
mutationCount: metricsData.mutation_count || 0,
|
|
62
|
+
errorCount: metricsData.error_count || 0,
|
|
63
|
+
warningCount: metricsData.warning_count || 0,
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
else {
|
|
67
|
+
metrics = undefined;
|
|
68
|
+
}
|
|
69
|
+
const meta = new querytypes_1.QueryMetaData({
|
|
70
|
+
requestId: metaData.request_id,
|
|
71
|
+
clientContextId: metaData.client_context_id,
|
|
72
|
+
status: metaData.status,
|
|
73
|
+
signature: metaData.signature
|
|
74
|
+
? JSON.parse(metaData.signature)
|
|
75
|
+
: undefined,
|
|
76
|
+
warnings: warnings,
|
|
77
|
+
metrics: metrics,
|
|
78
|
+
profile: metaData.profile ? JSON.parse(metaData.profile) : undefined,
|
|
79
|
+
});
|
|
80
|
+
emitter.emit('meta', meta);
|
|
81
|
+
}
|
|
82
|
+
obsReqHandler === null || obsReqHandler === void 0 ? void 0 : obsReqHandler.end();
|
|
83
|
+
emitter.emit('end');
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* @internal
|
|
87
|
+
*
|
|
88
|
+
* Used by transactions (observability currently not available for transactions)
|
|
89
|
+
*/
|
|
20
90
|
static execute(exec) {
|
|
21
91
|
const emitter = new streamablepromises_1.StreamableRowPromise((rows, meta) => {
|
|
22
92
|
return new querytypes_1.QueryResult({
|
|
@@ -25,59 +95,27 @@ class QueryExecutor {
|
|
|
25
95
|
});
|
|
26
96
|
});
|
|
27
97
|
exec((cppErr, resp) => {
|
|
28
|
-
|
|
29
|
-
if (
|
|
30
|
-
|
|
31
|
-
emitter.emit('end');
|
|
32
|
-
return;
|
|
98
|
+
let err = null;
|
|
99
|
+
if (cppErr) {
|
|
100
|
+
err = (0, bindingutilities_1.errorFromCpp)(cppErr);
|
|
33
101
|
}
|
|
34
|
-
|
|
35
|
-
|
|
102
|
+
QueryExecutor._processQueryResponse(emitter, err, resp);
|
|
103
|
+
});
|
|
104
|
+
return emitter;
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* @internal
|
|
108
|
+
*/
|
|
109
|
+
static executePromise(queryPromise, obsReqHandler) {
|
|
110
|
+
const emitter = new streamablepromises_1.StreamableRowPromise((rows, meta) => {
|
|
111
|
+
return new querytypes_1.QueryResult({
|
|
112
|
+
rows: rows,
|
|
113
|
+
meta: meta,
|
|
36
114
|
});
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
warnings = metaData.warnings.map((warningData) => new querytypes_1.QueryWarning({
|
|
42
|
-
code: warningData.code,
|
|
43
|
-
message: warningData.message,
|
|
44
|
-
}));
|
|
45
|
-
}
|
|
46
|
-
else {
|
|
47
|
-
warnings = [];
|
|
48
|
-
}
|
|
49
|
-
let metrics;
|
|
50
|
-
if (metaData.metrics) {
|
|
51
|
-
const metricsData = metaData.metrics;
|
|
52
|
-
metrics = new querytypes_1.QueryMetrics({
|
|
53
|
-
elapsedTime: metricsData.elapsed_time,
|
|
54
|
-
executionTime: metricsData.execution_time,
|
|
55
|
-
sortCount: metricsData.sort_count || 0,
|
|
56
|
-
resultCount: metricsData.result_count || 0,
|
|
57
|
-
resultSize: metricsData.result_size || 0,
|
|
58
|
-
mutationCount: metricsData.mutation_count || 0,
|
|
59
|
-
errorCount: metricsData.error_count || 0,
|
|
60
|
-
warningCount: metricsData.warning_count || 0,
|
|
61
|
-
});
|
|
62
|
-
}
|
|
63
|
-
else {
|
|
64
|
-
metrics = undefined;
|
|
65
|
-
}
|
|
66
|
-
const meta = new querytypes_1.QueryMetaData({
|
|
67
|
-
requestId: metaData.request_id,
|
|
68
|
-
clientContextId: metaData.client_context_id,
|
|
69
|
-
status: metaData.status,
|
|
70
|
-
signature: metaData.signature
|
|
71
|
-
? JSON.parse(metaData.signature)
|
|
72
|
-
: undefined,
|
|
73
|
-
warnings: warnings,
|
|
74
|
-
metrics: metrics,
|
|
75
|
-
profile: metaData.profile ? JSON.parse(metaData.profile) : undefined,
|
|
76
|
-
});
|
|
77
|
-
emitter.emit('meta', meta);
|
|
78
|
-
}
|
|
79
|
-
emitter.emit('end');
|
|
80
|
-
return;
|
|
115
|
+
});
|
|
116
|
+
utilities_1.PromiseHelper.wrapAsync(async () => {
|
|
117
|
+
const [err, resp] = await queryPromise;
|
|
118
|
+
QueryExecutor._processQueryResponse(emitter, err, resp, obsReqHandler);
|
|
81
119
|
});
|
|
82
120
|
return emitter;
|
|
83
121
|
}
|
|
@@ -86,42 +124,46 @@ class QueryExecutor {
|
|
|
86
124
|
*/
|
|
87
125
|
query(query, options) {
|
|
88
126
|
const timeout = options.timeout || this._cluster.queryTimeout;
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
metrics: options.metrics || false,
|
|
95
|
-
readonly: options.readOnly || false,
|
|
96
|
-
flex_index: options.flexIndex || false,
|
|
97
|
-
preserve_expiry: options.preserveExpiry || false,
|
|
98
|
-
use_replica: options.useReplica,
|
|
99
|
-
max_parallelism: options.maxParallelism,
|
|
100
|
-
scan_cap: options.scanCap,
|
|
101
|
-
scan_wait: options.scanWait,
|
|
102
|
-
pipeline_batch: options.pipelineBatch,
|
|
103
|
-
pipeline_cap: options.pipelineCap,
|
|
104
|
-
scan_consistency: (0, bindingutilities_1.queryScanConsistencyToCpp)(options.scanConsistency),
|
|
105
|
-
mutation_state: (0, bindingutilities_1.mutationStateToCpp)(options.consistentWith).tokens,
|
|
106
|
-
timeout: timeout,
|
|
107
|
-
query_context: options.queryContext,
|
|
108
|
-
profile: (0, bindingutilities_1.queryProfileToCpp)(options.profile),
|
|
109
|
-
raw: options.raw
|
|
110
|
-
? Object.fromEntries(Object.entries(options.raw)
|
|
111
|
-
.filter(([, v]) => v !== undefined)
|
|
112
|
-
.map(([k, v]) => [k, JSON.stringify(v)]))
|
|
113
|
-
: {},
|
|
114
|
-
positional_parameters: options.parameters && Array.isArray(options.parameters)
|
|
115
|
-
? options.parameters.map((v) => JSON.stringify(v !== null && v !== void 0 ? v : null))
|
|
116
|
-
: [],
|
|
117
|
-
named_parameters: options.parameters && !Array.isArray(options.parameters)
|
|
118
|
-
? Object.fromEntries(Object.entries(options.parameters)
|
|
119
|
-
.filter(([, v]) => v !== undefined)
|
|
120
|
-
.map(([k, v]) => [k, JSON.stringify(v)]))
|
|
121
|
-
: {},
|
|
122
|
-
body_str: '',
|
|
123
|
-
}, callback);
|
|
127
|
+
const obsReqHandler = new observabilityhandler_1.ObservableRequestHandler(observabilitytypes_1.StreamingOp.Query, this.observabilityInstruments, options === null || options === void 0 ? void 0 : options.parentSpan);
|
|
128
|
+
obsReqHandler.setRequestHttpAttributes({
|
|
129
|
+
statement: query,
|
|
130
|
+
queryContext: options.queryContext,
|
|
131
|
+
queryOptions: options,
|
|
124
132
|
});
|
|
133
|
+
return QueryExecutor.executePromise((0, observability_1.wrapObservableBindingCall)(this._cluster.conn.query.bind(this._cluster.conn), {
|
|
134
|
+
statement: query,
|
|
135
|
+
client_context_id: options.clientContextId,
|
|
136
|
+
adhoc: options.adhoc === false ? false : true,
|
|
137
|
+
metrics: options.metrics || false,
|
|
138
|
+
readonly: options.readOnly || false,
|
|
139
|
+
flex_index: options.flexIndex || false,
|
|
140
|
+
preserve_expiry: options.preserveExpiry || false,
|
|
141
|
+
use_replica: options.useReplica,
|
|
142
|
+
max_parallelism: options.maxParallelism,
|
|
143
|
+
scan_cap: options.scanCap,
|
|
144
|
+
scan_wait: options.scanWait,
|
|
145
|
+
pipeline_batch: options.pipelineBatch,
|
|
146
|
+
pipeline_cap: options.pipelineCap,
|
|
147
|
+
scan_consistency: (0, bindingutilities_1.queryScanConsistencyToCpp)(options.scanConsistency),
|
|
148
|
+
mutation_state: (0, bindingutilities_1.mutationStateToCpp)(options.consistentWith).tokens,
|
|
149
|
+
timeout: timeout,
|
|
150
|
+
query_context: options.queryContext,
|
|
151
|
+
profile: (0, bindingutilities_1.queryProfileToCpp)(options.profile),
|
|
152
|
+
raw: options.raw
|
|
153
|
+
? Object.fromEntries(Object.entries(options.raw)
|
|
154
|
+
.filter(([, v]) => v !== undefined)
|
|
155
|
+
.map(([k, v]) => [k, JSON.stringify(v)]))
|
|
156
|
+
: {},
|
|
157
|
+
positional_parameters: options.parameters && Array.isArray(options.parameters)
|
|
158
|
+
? options.parameters.map((v) => JSON.stringify(v !== null && v !== void 0 ? v : null))
|
|
159
|
+
: [],
|
|
160
|
+
named_parameters: options.parameters && !Array.isArray(options.parameters)
|
|
161
|
+
? Object.fromEntries(Object.entries(options.parameters)
|
|
162
|
+
.filter(([, v]) => v !== undefined)
|
|
163
|
+
.map(([k, v]) => [k, JSON.stringify(v)]))
|
|
164
|
+
: {},
|
|
165
|
+
body_str: '',
|
|
166
|
+
}, obsReqHandler), obsReqHandler);
|
|
125
167
|
}
|
|
126
168
|
}
|
|
127
169
|
exports.QueryExecutor = QueryExecutor;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Cluster } from './cluster';
|
|
2
2
|
import { Collection } from './collection';
|
|
3
|
+
import { RequestSpan } from './tracing';
|
|
3
4
|
import { NodeCallback } from './utilities';
|
|
4
5
|
/**
|
|
5
6
|
* Contains a specific index configuration for the query service.
|
|
@@ -86,6 +87,10 @@ export interface CreateQueryIndexOptions {
|
|
|
86
87
|
* The timeout for this operation, represented in milliseconds.
|
|
87
88
|
*/
|
|
88
89
|
timeout?: number;
|
|
90
|
+
/**
|
|
91
|
+
* Specifies the parent span for this specific operation.
|
|
92
|
+
*/
|
|
93
|
+
parentSpan?: RequestSpan;
|
|
89
94
|
}
|
|
90
95
|
/**
|
|
91
96
|
* @category Management
|
|
@@ -125,6 +130,10 @@ export interface CreatePrimaryQueryIndexOptions {
|
|
|
125
130
|
* The timeout for this operation, represented in milliseconds.
|
|
126
131
|
*/
|
|
127
132
|
timeout?: number;
|
|
133
|
+
/**
|
|
134
|
+
* Specifies the parent span for this specific operation.
|
|
135
|
+
*/
|
|
136
|
+
parentSpan?: RequestSpan;
|
|
128
137
|
}
|
|
129
138
|
/**
|
|
130
139
|
* @category Management
|
|
@@ -151,6 +160,10 @@ export interface DropQueryIndexOptions {
|
|
|
151
160
|
* The timeout for this operation, represented in milliseconds.
|
|
152
161
|
*/
|
|
153
162
|
timeout?: number;
|
|
163
|
+
/**
|
|
164
|
+
* Specifies the parent span for this specific operation.
|
|
165
|
+
*/
|
|
166
|
+
parentSpan?: RequestSpan;
|
|
154
167
|
}
|
|
155
168
|
/**
|
|
156
169
|
* @category Management
|
|
@@ -181,6 +194,10 @@ export interface DropPrimaryQueryIndexOptions {
|
|
|
181
194
|
* The timeout for this operation, represented in milliseconds.
|
|
182
195
|
*/
|
|
183
196
|
timeout?: number;
|
|
197
|
+
/**
|
|
198
|
+
* Specifies the parent span for this specific operation.
|
|
199
|
+
*/
|
|
200
|
+
parentSpan?: RequestSpan;
|
|
184
201
|
}
|
|
185
202
|
/**
|
|
186
203
|
* @category Management
|
|
@@ -202,6 +219,10 @@ export interface GetAllQueryIndexesOptions {
|
|
|
202
219
|
* The timeout for this operation, represented in milliseconds.
|
|
203
220
|
*/
|
|
204
221
|
timeout?: number;
|
|
222
|
+
/**
|
|
223
|
+
* Specifies the parent span for this specific operation.
|
|
224
|
+
*/
|
|
225
|
+
parentSpan?: RequestSpan;
|
|
205
226
|
}
|
|
206
227
|
/**
|
|
207
228
|
* @category Management
|
|
@@ -223,6 +244,10 @@ export interface BuildQueryIndexOptions {
|
|
|
223
244
|
* The timeout for this operation, represented in milliseconds.
|
|
224
245
|
*/
|
|
225
246
|
timeout?: number;
|
|
247
|
+
/**
|
|
248
|
+
* Specifies the parent span for this specific operation.
|
|
249
|
+
*/
|
|
250
|
+
parentSpan?: RequestSpan;
|
|
226
251
|
}
|
|
227
252
|
/**
|
|
228
253
|
* @category Management
|
|
@@ -244,6 +269,10 @@ export interface WatchQueryIndexOptions {
|
|
|
244
269
|
* Specifies whether the primary indexes should be watched as well.
|
|
245
270
|
*/
|
|
246
271
|
watchPrimary?: boolean;
|
|
272
|
+
/**
|
|
273
|
+
* Specifies the parent span for this specific operation.
|
|
274
|
+
*/
|
|
275
|
+
parentSpan?: RequestSpan;
|
|
247
276
|
}
|
|
248
277
|
/**
|
|
249
278
|
* CollectionQueryIndexManager provides an interface for managing the
|