couchbase 4.2.1 → 4.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CMakeLists.txt +1 -0
- package/deps/couchbase-cxx-client/.gitmodules +3 -0
- package/deps/couchbase-cxx-client/.idea/misc.xml +1 -0
- package/deps/couchbase-cxx-client/.idea/vcs.xml +1 -0
- package/deps/couchbase-cxx-client/CMakeLists.txt +11 -1
- package/deps/couchbase-cxx-client/README.md +3 -3
- package/deps/couchbase-cxx-client/cmake/CompilerWarnings.cmake +4 -1
- package/deps/couchbase-cxx-client/cmake/VersionInfo.cmake +13 -1
- package/deps/couchbase-cxx-client/cmake/build_version.hxx.in +1 -0
- package/deps/couchbase-cxx-client/core/cluster.hxx +15 -5
- package/deps/couchbase-cxx-client/core/impl/build_deferred_query_indexes.cxx +17 -6
- package/deps/couchbase-cxx-client/core/impl/cluster.cxx +1 -1
- package/deps/couchbase-cxx-client/core/impl/collection_query_index_manager.cxx +93 -0
- package/deps/couchbase-cxx-client/core/impl/configuration_profiles_registry.cxx +11 -0
- package/deps/couchbase-cxx-client/core/impl/create_query_index.cxx +119 -0
- package/deps/couchbase-cxx-client/core/impl/drop_query_index.cxx +108 -0
- package/deps/couchbase-cxx-client/core/impl/get.cxx +1 -1
- package/deps/couchbase-cxx-client/core/impl/get_all_query_indexes.cxx +76 -0
- package/deps/couchbase-cxx-client/core/impl/query.cxx +5 -7
- package/deps/couchbase-cxx-client/core/impl/watch_query_indexes.cxx +168 -0
- package/deps/couchbase-cxx-client/core/io/mcbp_session.cxx +15 -1
- package/deps/couchbase-cxx-client/core/logger/configuration.hxx +3 -0
- package/deps/couchbase-cxx-client/core/logger/level.hxx +21 -0
- package/deps/couchbase-cxx-client/core/logger/logger.hxx +4 -6
- package/deps/couchbase-cxx-client/core/meta/CMakeLists.txt +4 -2
- package/deps/couchbase-cxx-client/core/meta/features.hxx +31 -0
- package/deps/couchbase-cxx-client/core/meta/version.cxx +67 -5
- package/deps/couchbase-cxx-client/core/meta/version.hxx +12 -1
- package/deps/couchbase-cxx-client/core/metrics/CMakeLists.txt +4 -1
- package/deps/couchbase-cxx-client/core/metrics/logging_meter.cxx +46 -5
- package/deps/couchbase-cxx-client/core/metrics/logging_meter.hxx +10 -26
- package/deps/couchbase-cxx-client/core/operations/document_get_projected.cxx +3 -2
- package/deps/couchbase-cxx-client/core/operations/document_query.cxx +10 -12
- package/deps/couchbase-cxx-client/core/operations/document_query.hxx +1 -3
- package/deps/couchbase-cxx-client/core/operations/management/query_index_build.cxx +8 -14
- package/deps/couchbase-cxx-client/core/operations/management/query_index_build.hxx +2 -1
- package/deps/couchbase-cxx-client/core/operations/management/query_index_build_deferred.hxx +15 -8
- package/deps/couchbase-cxx-client/core/operations/management/query_index_create.cxx +7 -14
- 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.cxx +11 -16
- 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.cxx +8 -12
- 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.cxx +21 -12
- package/deps/couchbase-cxx-client/core/operations/management/query_index_get_all_deferred.hxx +3 -2
- package/deps/couchbase-cxx-client/core/origin.hxx +1 -1
- package/deps/couchbase-cxx-client/core/platform/uuid.cc +1 -2
- package/deps/couchbase-cxx-client/core/protocol/cmd_hello.hxx +5 -1
- package/deps/couchbase-cxx-client/core/query_context.hxx +79 -0
- package/deps/couchbase-cxx-client/core/tracing/CMakeLists.txt +3 -1
- package/deps/couchbase-cxx-client/core/tracing/threshold_logging_tracer.cxx +19 -4
- package/deps/couchbase-cxx-client/core/tracing/threshold_logging_tracer.hxx +2 -2
- package/deps/couchbase-cxx-client/core/transactions/async_attempt_context.hxx +10 -4
- package/deps/couchbase-cxx-client/core/transactions/atr_cleanup_entry.cxx +52 -63
- package/deps/couchbase-cxx-client/core/transactions/attempt_context.hxx +8 -3
- package/deps/couchbase-cxx-client/core/transactions/attempt_context_impl.cxx +163 -126
- package/deps/couchbase-cxx-client/core/transactions/attempt_context_impl.hxx +24 -37
- package/deps/couchbase-cxx-client/core/transactions/forward_compat.hxx +4 -4
- package/deps/couchbase-cxx-client/core/transactions/internal/atr_cleanup_entry.hxx +51 -13
- package/deps/couchbase-cxx-client/core/transactions/internal/client_record.hxx +26 -1
- package/deps/couchbase-cxx-client/core/transactions/internal/doc_record.hxx +21 -0
- package/deps/couchbase-cxx-client/core/transactions/internal/logging.hxx +40 -18
- package/deps/couchbase-cxx-client/core/transactions/internal/transaction_context.hxx +5 -0
- package/deps/couchbase-cxx-client/core/transactions/result.hxx +26 -0
- package/deps/couchbase-cxx-client/core/transactions/staged_mutation.cxx +48 -47
- package/deps/couchbase-cxx-client/core/transactions/staged_mutation.hxx +6 -6
- package/deps/couchbase-cxx-client/core/transactions/transaction_context.cxx +33 -19
- package/deps/couchbase-cxx-client/core/transactions/transaction_get_result.hxx +18 -2
- package/deps/couchbase-cxx-client/core/transactions/transaction_links.hxx +25 -2
- package/deps/couchbase-cxx-client/core/transactions/transactions.cxx +4 -4
- package/deps/couchbase-cxx-client/core/transactions/transactions_cleanup.cxx +49 -56
- package/deps/couchbase-cxx-client/core/transactions/waitable_op_list.hxx +7 -7
- package/deps/couchbase-cxx-client/core/transactions.hxx +0 -12
- package/deps/couchbase-cxx-client/core/utils/binary.hxx +1 -1
- package/deps/couchbase-cxx-client/core/utils/keyspace.hxx +55 -0
- package/deps/couchbase-cxx-client/couchbase/build_query_index_options.hxx +12 -45
- package/deps/couchbase-cxx-client/couchbase/cluster.hxx +1 -1
- package/deps/couchbase-cxx-client/couchbase/cluster_options.hxx +6 -7
- package/deps/couchbase-cxx-client/couchbase/collection.hxx +8 -0
- package/deps/couchbase-cxx-client/couchbase/collection_query_index_manager.hxx +218 -0
- package/deps/couchbase-cxx-client/couchbase/configuration_profiles_registry.hxx +3 -0
- package/deps/couchbase-cxx-client/couchbase/create_primary_query_index_options.hxx +166 -0
- package/deps/couchbase-cxx-client/couchbase/create_query_index_options.hxx +172 -0
- package/deps/couchbase-cxx-client/couchbase/drop_primary_query_index_options.hxx +129 -0
- package/deps/couchbase-cxx-client/couchbase/drop_query_index_options.hxx +116 -0
- package/deps/couchbase-cxx-client/couchbase/fmt/cas.hxx +1 -1
- package/deps/couchbase-cxx-client/couchbase/fmt/query_scan_consistency.hxx +46 -0
- package/deps/couchbase-cxx-client/couchbase/fmt/query_status.hxx +70 -0
- package/deps/couchbase-cxx-client/couchbase/fmt/tls_verify_mode.hxx +46 -0
- package/deps/couchbase-cxx-client/couchbase/get_all_query_indexes_options.hxx +100 -0
- package/deps/couchbase-cxx-client/{core → couchbase}/management/query_index.hxx +2 -2
- package/deps/couchbase-cxx-client/couchbase/metrics/meter.hxx +16 -0
- package/deps/couchbase-cxx-client/couchbase/query_index_manager.hxx +178 -6
- package/deps/couchbase-cxx-client/couchbase/query_options.hxx +1 -18
- package/deps/couchbase-cxx-client/couchbase/scope.hxx +5 -2
- package/deps/couchbase-cxx-client/couchbase/tracing/request_tracer.hxx +16 -0
- package/deps/couchbase-cxx-client/couchbase/transactions/async_attempt_context.hxx +11 -4
- package/deps/couchbase-cxx-client/couchbase/transactions/attempt_context.hxx +5 -3
- package/deps/couchbase-cxx-client/couchbase/transactions/transaction_keyspace.hxx +16 -0
- package/deps/couchbase-cxx-client/couchbase/transactions/transaction_query_options.hxx +0 -6
- package/deps/couchbase-cxx-client/couchbase/watch_query_indexes_options.hxx +115 -0
- package/deps/couchbase-cxx-client/examples/minimal.cxx +3 -1
- package/deps/couchbase-cxx-client/test/test_integration_crud.cxx +72 -0
- package/deps/couchbase-cxx-client/test/test_integration_management.cxx +727 -310
- package/deps/couchbase-cxx-client/test/test_integration_query.cxx +4 -8
- package/deps/couchbase-cxx-client/test/test_integration_transcoders.cxx +14 -0
- package/deps/couchbase-cxx-client/test/test_transaction_transaction_public_blocking_api.cxx +34 -19
- package/deps/couchbase-cxx-client/test/test_unit_transaction_logging.cxx +66 -22
- package/deps/couchbase-cxx-client/test/test_unit_utils.cxx +51 -0
- package/deps/couchbase-cxx-client/test/tools/tool_kv_loader.cxx +2 -2
- package/deps/couchbase-cxx-client/test/utils/integration_test_guard.cxx +2 -0
- package/deps/couchbase-cxx-client/test/utils/wait_until.cxx +4 -4
- package/deps/couchbase-cxx-client/third_party/docopt/.travis.yml +103 -0
- package/deps/couchbase-cxx-client/third_party/docopt/CMakeLists.txt +129 -0
- package/deps/couchbase-cxx-client/third_party/docopt/LICENSE-Boost-1.0 +23 -0
- package/deps/couchbase-cxx-client/third_party/docopt/LICENSE-MIT +23 -0
- package/deps/couchbase-cxx-client/third_party/docopt/README.rst +479 -0
- package/deps/couchbase-cxx-client/third_party/docopt/docopt-config.cmake +1 -0
- package/deps/couchbase-cxx-client/third_party/docopt/docopt.cpp +687 -0
- package/deps/couchbase-cxx-client/third_party/docopt/docopt.h +98 -0
- package/deps/couchbase-cxx-client/third_party/docopt/docopt.pc.in +9 -0
- package/deps/couchbase-cxx-client/third_party/docopt/docopt_private.h +676 -0
- package/deps/couchbase-cxx-client/third_party/docopt/docopt_util.h +122 -0
- package/deps/couchbase-cxx-client/third_party/docopt/docopt_value.h +341 -0
- package/deps/couchbase-cxx-client/third_party/docopt/examples/naval_fate.cpp +36 -0
- package/deps/couchbase-cxx-client/third_party/docopt/main.cpp +16 -0
- package/deps/couchbase-cxx-client/third_party/docopt/run_testcase.cpp +40 -0
- package/deps/couchbase-cxx-client/third_party/docopt/run_tests.py +72 -0
- package/deps/couchbase-cxx-client/third_party/docopt/testcases.docopt +957 -0
- package/deps/couchbase-cxx-client/tools/CMakeLists.txt +14 -0
- package/deps/couchbase-cxx-client/tools/cbc.cxx +65 -0
- package/deps/couchbase-cxx-client/tools/command.hxx +31 -0
- package/deps/couchbase-cxx-client/tools/command_registry.cxx +43 -0
- package/deps/couchbase-cxx-client/tools/command_registry.hxx +39 -0
- package/deps/couchbase-cxx-client/tools/get.cxx +267 -0
- package/deps/couchbase-cxx-client/tools/get.hxx +26 -0
- package/deps/couchbase-cxx-client/tools/query.cxx +441 -0
- package/deps/couchbase-cxx-client/tools/query.hxx +26 -0
- package/deps/couchbase-cxx-client/tools/utils.cxx +418 -0
- package/deps/couchbase-cxx-client/tools/utils.hxx +150 -0
- package/deps/couchbase-cxx-client/tools/version.cxx +82 -0
- package/deps/couchbase-cxx-client/tools/version.hxx +26 -0
- package/dist/authenticators.d.ts +2 -2
- package/dist/authenticators.js +1 -2
- package/dist/binding.d.ts +32 -16
- package/dist/cluster.js +14 -7
- package/dist/collection.d.ts +6 -0
- package/dist/collection.js +8 -0
- package/dist/queryexecutor.js +1 -1
- package/dist/queryindexmanager.d.ts +100 -4
- package/dist/queryindexmanager.js +344 -118
- package/dist/transactions.js +0 -2
- package/package.json +1 -1
- package/src/connection.cpp +2 -0
- package/src/connection.hpp +1 -0
- package/src/connection_autogen.cpp +16 -0
- package/src/jstocbpp_autogen.hpp +93 -23
- package/src/jstocbpp_basic.hpp +24 -0
- package/src/jstocbpp_transactions.hpp +0 -8
- package/tools/gen-bindings-js.js +1 -0
- package/tools/gen-bindings-json.py +4 -2
- package/deps/couchbase-cxx-client/core/transactions/logging.cxx +0 -107
package/src/jstocbpp_autogen.hpp
CHANGED
|
@@ -1256,12 +1256,11 @@ struct js_to_cbpp_t<couchbase::core::management::search::index> {
|
|
|
1256
1256
|
};
|
|
1257
1257
|
|
|
1258
1258
|
template <>
|
|
1259
|
-
struct js_to_cbpp_t<couchbase::
|
|
1260
|
-
static inline couchbase::
|
|
1261
|
-
from_js(Napi::Value jsVal)
|
|
1259
|
+
struct js_to_cbpp_t<couchbase::management::query::index> {
|
|
1260
|
+
static inline couchbase::management::query::index from_js(Napi::Value jsVal)
|
|
1262
1261
|
{
|
|
1263
1262
|
auto jsObj = jsVal.ToObject();
|
|
1264
|
-
couchbase::
|
|
1263
|
+
couchbase::management::query::index cppObj;
|
|
1265
1264
|
js_to_cbpp<bool>(cppObj.is_primary, jsObj.Get("is_primary"));
|
|
1266
1265
|
js_to_cbpp<std::string>(cppObj.name, jsObj.Get("name"));
|
|
1267
1266
|
js_to_cbpp<std::string>(cppObj.state, jsObj.Get("state"));
|
|
@@ -1280,8 +1279,7 @@ struct js_to_cbpp_t<couchbase::core::management::query::index> {
|
|
|
1280
1279
|
return cppObj;
|
|
1281
1280
|
}
|
|
1282
1281
|
static inline Napi::Value
|
|
1283
|
-
to_js(Napi::Env env,
|
|
1284
|
-
const couchbase::core::management::query::index &cppObj)
|
|
1282
|
+
to_js(Napi::Env env, const couchbase::management::query::index &cppObj)
|
|
1285
1283
|
{
|
|
1286
1284
|
auto resObj = Napi::Object::New(env);
|
|
1287
1285
|
resObj.Set("is_primary", cbpp_to_js<bool>(env, cppObj.is_primary));
|
|
@@ -2434,12 +2432,8 @@ struct js_to_cbpp_t<couchbase::core::operations::query_request> {
|
|
|
2434
2432
|
cppObj.scan_consistency, jsObj.Get("scan_consistency"));
|
|
2435
2433
|
js_to_cbpp<std::vector<couchbase::mutation_token>>(
|
|
2436
2434
|
cppObj.mutation_state, jsObj.Get("mutation_state"));
|
|
2437
|
-
js_to_cbpp<std::optional<std::string>>(cppObj.
|
|
2438
|
-
jsObj.Get("
|
|
2439
|
-
js_to_cbpp<std::optional<std::string>>(cppObj.scope_name,
|
|
2440
|
-
jsObj.Get("scope_name"));
|
|
2441
|
-
js_to_cbpp<std::optional<std::string>>(cppObj.scope_qualifier,
|
|
2442
|
-
jsObj.Get("scope_qualifier"));
|
|
2435
|
+
js_to_cbpp<std::optional<std::string>>(cppObj.query_context,
|
|
2436
|
+
jsObj.Get("query_context"));
|
|
2443
2437
|
js_to_cbpp<std::optional<std::string>>(cppObj.client_context_id,
|
|
2444
2438
|
jsObj.Get("client_context_id"));
|
|
2445
2439
|
js_to_cbpp<std::optional<std::chrono::milliseconds>>(
|
|
@@ -2492,12 +2486,8 @@ struct js_to_cbpp_t<couchbase::core::operations::query_request> {
|
|
|
2492
2486
|
resObj.Set("mutation_state",
|
|
2493
2487
|
cbpp_to_js<std::vector<couchbase::mutation_token>>(
|
|
2494
2488
|
env, cppObj.mutation_state));
|
|
2495
|
-
resObj.Set("
|
|
2496
|
-
|
|
2497
|
-
resObj.Set("scope_name", cbpp_to_js<std::optional<std::string>>(
|
|
2498
|
-
env, cppObj.scope_name));
|
|
2499
|
-
resObj.Set("scope_qualifier", cbpp_to_js<std::optional<std::string>>(
|
|
2500
|
-
env, cppObj.scope_qualifier));
|
|
2489
|
+
resObj.Set("query_context", cbpp_to_js<std::optional<std::string>>(
|
|
2490
|
+
env, cppObj.query_context));
|
|
2501
2491
|
resObj.Set("client_context_id", cbpp_to_js<std::optional<std::string>>(
|
|
2502
2492
|
env, cppObj.client_context_id));
|
|
2503
2493
|
resObj.Set("timeout",
|
|
@@ -4893,7 +4883,7 @@ struct js_to_cbpp_t<
|
|
|
4893
4883
|
cppObj;
|
|
4894
4884
|
// ctx
|
|
4895
4885
|
js_to_cbpp<std::string>(cppObj.status, jsObj.Get("status"));
|
|
4896
|
-
js_to_cbpp<std::vector<couchbase::
|
|
4886
|
+
js_to_cbpp<std::vector<couchbase::management::query::index>>(
|
|
4897
4887
|
cppObj.indexes, jsObj.Get("indexes"));
|
|
4898
4888
|
return cppObj;
|
|
4899
4889
|
}
|
|
@@ -4904,10 +4894,9 @@ struct js_to_cbpp_t<
|
|
|
4904
4894
|
auto resObj = Napi::Object::New(env);
|
|
4905
4895
|
// ctx
|
|
4906
4896
|
resObj.Set("status", cbpp_to_js<std::string>(env, cppObj.status));
|
|
4907
|
-
resObj.Set(
|
|
4908
|
-
|
|
4909
|
-
|
|
4910
|
-
env, cppObj.indexes));
|
|
4897
|
+
resObj.Set("indexes",
|
|
4898
|
+
cbpp_to_js<std::vector<couchbase::management::query::index>>(
|
|
4899
|
+
env, cppObj.indexes));
|
|
4911
4900
|
return resObj;
|
|
4912
4901
|
}
|
|
4913
4902
|
};
|
|
@@ -4926,6 +4915,8 @@ struct js_to_cbpp_t<
|
|
|
4926
4915
|
js_to_cbpp<std::string>(cppObj.scope_name, jsObj.Get("scope_name"));
|
|
4927
4916
|
js_to_cbpp<std::string>(cppObj.collection_name,
|
|
4928
4917
|
jsObj.Get("collection_name"));
|
|
4918
|
+
js_to_cbpp<couchbase::core::query_context>(cppObj.query_ctx,
|
|
4919
|
+
jsObj.Get("query_ctx"));
|
|
4929
4920
|
js_to_cbpp<std::optional<std::string>>(cppObj.client_context_id,
|
|
4930
4921
|
jsObj.Get("client_context_id"));
|
|
4931
4922
|
js_to_cbpp<std::optional<std::chrono::milliseconds>>(
|
|
@@ -4943,6 +4934,8 @@ struct js_to_cbpp_t<
|
|
|
4943
4934
|
cbpp_to_js<std::string>(env, cppObj.scope_name));
|
|
4944
4935
|
resObj.Set("collection_name",
|
|
4945
4936
|
cbpp_to_js<std::string>(env, cppObj.collection_name));
|
|
4937
|
+
resObj.Set("query_ctx", cbpp_to_js<couchbase::core::query_context>(
|
|
4938
|
+
env, cppObj.query_ctx));
|
|
4946
4939
|
resObj.Set("client_context_id", cbpp_to_js<std::optional<std::string>>(
|
|
4947
4940
|
env, cppObj.client_context_id));
|
|
4948
4941
|
resObj.Set("timeout",
|
|
@@ -5281,6 +5274,8 @@ struct js_to_cbpp_t<couchbase::core::operations::management::
|
|
|
5281
5274
|
jsObj.Get("scope_name"));
|
|
5282
5275
|
js_to_cbpp<std::optional<std::string>>(cppObj.collection_name,
|
|
5283
5276
|
jsObj.Get("collection_name"));
|
|
5277
|
+
js_to_cbpp<couchbase::core::query_context>(cppObj.query_ctx,
|
|
5278
|
+
jsObj.Get("query_ctx"));
|
|
5284
5279
|
js_to_cbpp<std::optional<std::string>>(cppObj.client_context_id,
|
|
5285
5280
|
jsObj.Get("client_context_id"));
|
|
5286
5281
|
js_to_cbpp<std::optional<std::chrono::milliseconds>>(
|
|
@@ -5298,6 +5293,8 @@ struct js_to_cbpp_t<couchbase::core::operations::management::
|
|
|
5298
5293
|
env, cppObj.scope_name));
|
|
5299
5294
|
resObj.Set("collection_name", cbpp_to_js<std::optional<std::string>>(
|
|
5300
5295
|
env, cppObj.collection_name));
|
|
5296
|
+
resObj.Set("query_ctx", cbpp_to_js<couchbase::core::query_context>(
|
|
5297
|
+
env, cppObj.query_ctx));
|
|
5301
5298
|
resObj.Set("client_context_id", cbpp_to_js<std::optional<std::string>>(
|
|
5302
5299
|
env, cppObj.client_context_id));
|
|
5303
5300
|
resObj.Set("timeout",
|
|
@@ -5683,6 +5680,8 @@ struct js_to_cbpp_t<
|
|
|
5683
5680
|
js_to_cbpp<std::string>(cppObj.collection_name,
|
|
5684
5681
|
jsObj.Get("collection_name"));
|
|
5685
5682
|
js_to_cbpp<std::string>(cppObj.index_name, jsObj.Get("index_name"));
|
|
5683
|
+
js_to_cbpp<couchbase::core::query_context>(cppObj.query_ctx,
|
|
5684
|
+
jsObj.Get("query_ctx"));
|
|
5686
5685
|
js_to_cbpp<bool>(cppObj.is_primary, jsObj.Get("is_primary"));
|
|
5687
5686
|
js_to_cbpp<bool>(cppObj.ignore_if_does_not_exist,
|
|
5688
5687
|
jsObj.Get("ignore_if_does_not_exist"));
|
|
@@ -5706,6 +5705,8 @@ struct js_to_cbpp_t<
|
|
|
5706
5705
|
cbpp_to_js<std::string>(env, cppObj.collection_name));
|
|
5707
5706
|
resObj.Set("index_name",
|
|
5708
5707
|
cbpp_to_js<std::string>(env, cppObj.index_name));
|
|
5708
|
+
resObj.Set("query_ctx", cbpp_to_js<couchbase::core::query_context>(
|
|
5709
|
+
env, cppObj.query_ctx));
|
|
5709
5710
|
resObj.Set("is_primary", cbpp_to_js<bool>(env, cppObj.is_primary));
|
|
5710
5711
|
resObj.Set("ignore_if_does_not_exist",
|
|
5711
5712
|
cbpp_to_js<bool>(env, cppObj.ignore_if_does_not_exist));
|
|
@@ -6005,6 +6006,8 @@ struct js_to_cbpp_t<
|
|
|
6005
6006
|
js_to_cbpp<std::string>(cppObj.index_name, jsObj.Get("index_name"));
|
|
6006
6007
|
js_to_cbpp<std::vector<std::string>>(cppObj.fields,
|
|
6007
6008
|
jsObj.Get("fields"));
|
|
6009
|
+
js_to_cbpp<couchbase::core::query_context>(cppObj.query_ctx,
|
|
6010
|
+
jsObj.Get("query_ctx"));
|
|
6008
6011
|
js_to_cbpp<bool>(cppObj.is_primary, jsObj.Get("is_primary"));
|
|
6009
6012
|
js_to_cbpp<bool>(cppObj.ignore_if_exists,
|
|
6010
6013
|
jsObj.Get("ignore_if_exists"));
|
|
@@ -6034,6 +6037,8 @@ struct js_to_cbpp_t<
|
|
|
6034
6037
|
cbpp_to_js<std::string>(env, cppObj.index_name));
|
|
6035
6038
|
resObj.Set("fields",
|
|
6036
6039
|
cbpp_to_js<std::vector<std::string>>(env, cppObj.fields));
|
|
6040
|
+
resObj.Set("query_ctx", cbpp_to_js<couchbase::core::query_context>(
|
|
6041
|
+
env, cppObj.query_ctx));
|
|
6037
6042
|
resObj.Set("is_primary", cbpp_to_js<bool>(env, cppObj.is_primary));
|
|
6038
6043
|
resObj.Set("ignore_if_exists",
|
|
6039
6044
|
cbpp_to_js<bool>(env, cppObj.ignore_if_exists));
|
|
@@ -6583,6 +6588,63 @@ struct js_to_cbpp_t<
|
|
|
6583
6588
|
}
|
|
6584
6589
|
};
|
|
6585
6590
|
|
|
6591
|
+
template <>
|
|
6592
|
+
struct js_to_cbpp_t<
|
|
6593
|
+
couchbase::core::operations::management::change_password_response> {
|
|
6594
|
+
static inline couchbase::core::operations::management::
|
|
6595
|
+
change_password_response
|
|
6596
|
+
from_js(Napi::Value jsVal)
|
|
6597
|
+
{
|
|
6598
|
+
auto jsObj = jsVal.ToObject();
|
|
6599
|
+
couchbase::core::operations::management::change_password_response
|
|
6600
|
+
cppObj;
|
|
6601
|
+
// ctx
|
|
6602
|
+
return cppObj;
|
|
6603
|
+
}
|
|
6604
|
+
static inline Napi::Value to_js(
|
|
6605
|
+
Napi::Env env,
|
|
6606
|
+
const couchbase::core::operations::management::change_password_response
|
|
6607
|
+
&cppObj)
|
|
6608
|
+
{
|
|
6609
|
+
auto resObj = Napi::Object::New(env);
|
|
6610
|
+
// ctx
|
|
6611
|
+
return resObj;
|
|
6612
|
+
}
|
|
6613
|
+
};
|
|
6614
|
+
|
|
6615
|
+
template <>
|
|
6616
|
+
struct js_to_cbpp_t<
|
|
6617
|
+
couchbase::core::operations::management::change_password_request> {
|
|
6618
|
+
static inline couchbase::core::operations::management::
|
|
6619
|
+
change_password_request
|
|
6620
|
+
from_js(Napi::Value jsVal)
|
|
6621
|
+
{
|
|
6622
|
+
auto jsObj = jsVal.ToObject();
|
|
6623
|
+
couchbase::core::operations::management::change_password_request cppObj;
|
|
6624
|
+
js_to_cbpp<std::string>(cppObj.newPassword, jsObj.Get("newPassword"));
|
|
6625
|
+
js_to_cbpp<std::optional<std::string>>(cppObj.client_context_id,
|
|
6626
|
+
jsObj.Get("client_context_id"));
|
|
6627
|
+
js_to_cbpp<std::optional<std::chrono::milliseconds>>(
|
|
6628
|
+
cppObj.timeout, jsObj.Get("timeout"));
|
|
6629
|
+
return cppObj;
|
|
6630
|
+
}
|
|
6631
|
+
static inline Napi::Value
|
|
6632
|
+
to_js(Napi::Env env,
|
|
6633
|
+
const couchbase::core::operations::management::change_password_request
|
|
6634
|
+
&cppObj)
|
|
6635
|
+
{
|
|
6636
|
+
auto resObj = Napi::Object::New(env);
|
|
6637
|
+
resObj.Set("newPassword",
|
|
6638
|
+
cbpp_to_js<std::string>(env, cppObj.newPassword));
|
|
6639
|
+
resObj.Set("client_context_id", cbpp_to_js<std::optional<std::string>>(
|
|
6640
|
+
env, cppObj.client_context_id));
|
|
6641
|
+
resObj.Set("timeout",
|
|
6642
|
+
cbpp_to_js<std::optional<std::chrono::milliseconds>>(
|
|
6643
|
+
env, cppObj.timeout));
|
|
6644
|
+
return resObj;
|
|
6645
|
+
}
|
|
6646
|
+
};
|
|
6647
|
+
|
|
6586
6648
|
template <>
|
|
6587
6649
|
struct js_to_cbpp_t<couchbase::core::operations::management::
|
|
6588
6650
|
cluster_developer_preview_enable_response> {
|
|
@@ -9407,6 +9469,8 @@ struct js_to_cbpp_t<couchbase::core::operations::management::
|
|
|
9407
9469
|
js_to_cbpp<std::string>(cppObj.scope_name, jsObj.Get("scope_name"));
|
|
9408
9470
|
js_to_cbpp<std::string>(cppObj.collection_name,
|
|
9409
9471
|
jsObj.Get("collection_name"));
|
|
9472
|
+
js_to_cbpp<couchbase::core::query_context>(cppObj.query_ctx,
|
|
9473
|
+
jsObj.Get("query_ctx"));
|
|
9410
9474
|
js_to_cbpp<std::optional<std::string>>(cppObj.client_context_id,
|
|
9411
9475
|
jsObj.Get("client_context_id"));
|
|
9412
9476
|
js_to_cbpp<std::optional<std::chrono::milliseconds>>(
|
|
@@ -9424,6 +9488,8 @@ struct js_to_cbpp_t<couchbase::core::operations::management::
|
|
|
9424
9488
|
cbpp_to_js<std::string>(env, cppObj.scope_name));
|
|
9425
9489
|
resObj.Set("collection_name",
|
|
9426
9490
|
cbpp_to_js<std::string>(env, cppObj.collection_name));
|
|
9491
|
+
resObj.Set("query_ctx", cbpp_to_js<couchbase::core::query_context>(
|
|
9492
|
+
env, cppObj.query_ctx));
|
|
9427
9493
|
resObj.Set("client_context_id", cbpp_to_js<std::optional<std::string>>(
|
|
9428
9494
|
env, cppObj.client_context_id));
|
|
9429
9495
|
resObj.Set("timeout",
|
|
@@ -9506,6 +9572,8 @@ struct js_to_cbpp_t<
|
|
|
9506
9572
|
js_to_cbpp<std::string>(cppObj.scope_name, jsObj.Get("scope_name"));
|
|
9507
9573
|
js_to_cbpp<std::string>(cppObj.collection_name,
|
|
9508
9574
|
jsObj.Get("collection_name"));
|
|
9575
|
+
js_to_cbpp<couchbase::core::query_context>(cppObj.query_ctx,
|
|
9576
|
+
jsObj.Get("query_ctx"));
|
|
9509
9577
|
js_to_cbpp<std::vector<std::string>>(cppObj.index_names,
|
|
9510
9578
|
jsObj.Get("index_names"));
|
|
9511
9579
|
js_to_cbpp<std::optional<std::string>>(cppObj.client_context_id,
|
|
@@ -9526,6 +9594,8 @@ struct js_to_cbpp_t<
|
|
|
9526
9594
|
cbpp_to_js<std::string>(env, cppObj.scope_name));
|
|
9527
9595
|
resObj.Set("collection_name",
|
|
9528
9596
|
cbpp_to_js<std::string>(env, cppObj.collection_name));
|
|
9597
|
+
resObj.Set("query_ctx", cbpp_to_js<couchbase::core::query_context>(
|
|
9598
|
+
env, cppObj.query_ctx));
|
|
9529
9599
|
resObj.Set("index_names", cbpp_to_js<std::vector<std::string>>(
|
|
9530
9600
|
env, cppObj.index_names));
|
|
9531
9601
|
resObj.Set("client_context_id", cbpp_to_js<std::optional<std::string>>(
|
package/src/jstocbpp_basic.hpp
CHANGED
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
#include "mutationtoken.hpp"
|
|
7
7
|
|
|
8
8
|
#include <core/cluster.hxx>
|
|
9
|
+
#include <core/query_context.hxx>
|
|
9
10
|
|
|
10
11
|
namespace couchnode
|
|
11
12
|
{
|
|
@@ -107,4 +108,27 @@ struct js_to_cbpp_t<couchbase::mutation_token> {
|
|
|
107
108
|
}
|
|
108
109
|
};
|
|
109
110
|
|
|
111
|
+
template <>
|
|
112
|
+
struct js_to_cbpp_t<couchbase::core::query_context> {
|
|
113
|
+
static inline Napi::Value
|
|
114
|
+
to_js(Napi::Env env, const couchbase::core::query_context &cppObj)
|
|
115
|
+
{
|
|
116
|
+
auto resObj = Napi::Object::New(env);
|
|
117
|
+
resObj.Set("bucket_name", cbpp_to_js(env, cppObj.bucket_name()));
|
|
118
|
+
resObj.Set("scope_name", cbpp_to_js(env, cppObj.scope_name()));
|
|
119
|
+
return resObj;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
static inline couchbase::core::query_context from_js(Napi::Value jsVal)
|
|
123
|
+
{
|
|
124
|
+
auto jsObj = jsVal.ToObject();
|
|
125
|
+
auto bucket_name = js_to_cbpp<std::string>(jsObj.Get("bucket_name"));
|
|
126
|
+
auto scope_name = js_to_cbpp<std::string>(jsObj.Get("scope_name"));
|
|
127
|
+
if (!bucket_name.empty() || !scope_name.empty()) {
|
|
128
|
+
return couchbase::core::query_context(bucket_name, scope_name);
|
|
129
|
+
}
|
|
130
|
+
return couchbase::core::query_context();
|
|
131
|
+
}
|
|
132
|
+
};
|
|
133
|
+
|
|
110
134
|
} // namespace couchnode
|
|
@@ -327,14 +327,6 @@ struct js_to_cbpp_t<cbtxns::transaction_query_options> {
|
|
|
327
327
|
if (named_parameters.has_value() && named_parameters.value().size() > 0) {
|
|
328
328
|
cppObj.encoded_named_parameters(named_parameters.value());
|
|
329
329
|
}
|
|
330
|
-
|
|
331
|
-
auto bucket_name =
|
|
332
|
-
js_to_cbpp<std::optional<std::string>>(jsObj.Get("bucket_name"));
|
|
333
|
-
auto scope_name =
|
|
334
|
-
js_to_cbpp<std::optional<std::string>>(jsObj.Get("scope_name"));
|
|
335
|
-
if (bucket_name.has_value() && scope_name.has_value()) {
|
|
336
|
-
cppObj.scope_qualifier(fmt::format("default:`{}`.`{}`", bucket_name.value(), scope_name.value()));
|
|
337
|
-
}
|
|
338
330
|
|
|
339
331
|
return cppObj;
|
|
340
332
|
}
|
package/tools/gen-bindings-js.js
CHANGED
|
@@ -28,7 +28,7 @@ fileList = [
|
|
|
28
28
|
"core/management/eventing_status.hxx",
|
|
29
29
|
"core/management/rbac.hxx",
|
|
30
30
|
"core/management/search_index.hxx",
|
|
31
|
-
"
|
|
31
|
+
"couchbase/management/query_index.hxx",
|
|
32
32
|
"couchbase/retry_reason.hxx",
|
|
33
33
|
"core/topology/collections_manifest.hxx",
|
|
34
34
|
"core/protocol/client_opcode.hxx",
|
|
@@ -63,6 +63,7 @@ fileList = [
|
|
|
63
63
|
"core/range_scan_options.hxx",
|
|
64
64
|
"core/scan_options.hxx",
|
|
65
65
|
"core/range_scan_orchestrator_options.hxx",
|
|
66
|
+
"core/query_context.hxx",
|
|
66
67
|
]
|
|
67
68
|
|
|
68
69
|
typeList = [
|
|
@@ -91,7 +92,7 @@ typeList = [
|
|
|
91
92
|
"couchbase::core::management::rbac::user_and_metadata",
|
|
92
93
|
"couchbase::core::management::rbac::group",
|
|
93
94
|
"couchbase::core::management::search::index",
|
|
94
|
-
"couchbase::
|
|
95
|
+
"couchbase::management::query::index",
|
|
95
96
|
"couchbase::retry_reason",
|
|
96
97
|
"couchbase::core::topology::collections_manifest",
|
|
97
98
|
"couchbase::core::protocol::status",
|
|
@@ -154,6 +155,7 @@ typeList = [
|
|
|
154
155
|
"couchbase::core::range_scan_create_result",
|
|
155
156
|
"couchbase::core::range_scan_continue_result",
|
|
156
157
|
"couchbase::core::range_scan_cancel_result",
|
|
158
|
+
"couchbase::core::query_context",
|
|
157
159
|
]
|
|
158
160
|
|
|
159
161
|
# end of configurable part
|
|
@@ -1,107 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Copyright 2021-Present Couchbase, Inc.
|
|
3
|
-
*
|
|
4
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
-
* you may not use this file except in compliance with the License.
|
|
6
|
-
* You may obtain a copy of the License at
|
|
7
|
-
*
|
|
8
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
-
*
|
|
10
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
-
* See the License for the specific language governing permissions and
|
|
14
|
-
* limitations under the License.
|
|
15
|
-
*/
|
|
16
|
-
|
|
17
|
-
#include "internal/logging.hxx"
|
|
18
|
-
#include "core/transactions.hxx"
|
|
19
|
-
|
|
20
|
-
#include <spdlog/sinks/stdout_sinks.h>
|
|
21
|
-
|
|
22
|
-
namespace couchbase::core::transactions
|
|
23
|
-
{
|
|
24
|
-
// TODO: consider always using async logger? Makes life easier, I think, in
|
|
25
|
-
// wrappers. For instance, in python the GIL may, or may not, be held
|
|
26
|
-
// by the thread that is logging. So there are deadlock possibilities
|
|
27
|
-
// that can only be worked around by making the custom sink asynchronous.
|
|
28
|
-
// A single thread in the thread pool that services each async logger would
|
|
29
|
-
// keep ordering in place, _and_ make a much simpler sink to implement.
|
|
30
|
-
// That would have to also be done in the client, and of course, there is the
|
|
31
|
-
// sizing of the queue to take into account, etc...
|
|
32
|
-
std::shared_ptr<spdlog::logger>
|
|
33
|
-
init_txn_log()
|
|
34
|
-
{
|
|
35
|
-
static auto txnlogger = spdlog::stderr_logger_mt(TXN_LOG);
|
|
36
|
-
return txnlogger;
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
std::shared_ptr<spdlog::logger>
|
|
40
|
-
init_attempt_cleanup_log()
|
|
41
|
-
{
|
|
42
|
-
static auto txnlogger = spdlog::stderr_logger_mt(ATTEMPT_CLEANUP_LOG);
|
|
43
|
-
return txnlogger;
|
|
44
|
-
}
|
|
45
|
-
std::shared_ptr<spdlog::logger>
|
|
46
|
-
init_lost_attempts_log()
|
|
47
|
-
{
|
|
48
|
-
static auto txnlogger = spdlog::stderr_logger_mt(LOST_ATTEMPT_CLEANUP_LOG);
|
|
49
|
-
return txnlogger;
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
// TODO: better integration with client, so we don't need to repeat this private
|
|
53
|
-
// method.
|
|
54
|
-
spdlog::level::level_enum
|
|
55
|
-
translate_level(core::logger::level level)
|
|
56
|
-
{
|
|
57
|
-
switch (level) {
|
|
58
|
-
case core::logger::level::trace:
|
|
59
|
-
return spdlog::level::level_enum::trace;
|
|
60
|
-
case core::logger::level::debug:
|
|
61
|
-
return spdlog::level::level_enum::debug;
|
|
62
|
-
case core::logger::level::info:
|
|
63
|
-
return spdlog::level::level_enum::info;
|
|
64
|
-
case core::logger::level::warn:
|
|
65
|
-
return spdlog::level::level_enum::warn;
|
|
66
|
-
case core::logger::level::err:
|
|
67
|
-
return spdlog::level::level_enum::err;
|
|
68
|
-
case core::logger::level::critical:
|
|
69
|
-
return spdlog::level::level_enum::critical;
|
|
70
|
-
case core::logger::level::off:
|
|
71
|
-
return spdlog::level::level_enum::off;
|
|
72
|
-
}
|
|
73
|
-
return spdlog::level::level_enum::trace;
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
void
|
|
77
|
-
set_transactions_log_level(core::logger::level level)
|
|
78
|
-
{
|
|
79
|
-
spdlog::level::level_enum lvl = translate_level(level);
|
|
80
|
-
txn_log->set_level(lvl);
|
|
81
|
-
attempt_cleanup_log->set_level(lvl);
|
|
82
|
-
lost_attempts_cleanup_log->set_level(lvl);
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
// This cannot be done in multiple threads at the same time. We could
|
|
86
|
-
// consider a mutex, but eventually we will merge with the cxx_client so
|
|
87
|
-
// this will be fine for now. Unsure if this will lead to issues if called
|
|
88
|
-
// while logging is happening in other threads. Do this once, at startup.
|
|
89
|
-
void
|
|
90
|
-
create_loggers(core::logger::level level, spdlog::sink_ptr sink)
|
|
91
|
-
{
|
|
92
|
-
if (nullptr != sink) {
|
|
93
|
-
sink->set_level(translate_level(level));
|
|
94
|
-
txn_log->flush();
|
|
95
|
-
txn_log->sinks().clear();
|
|
96
|
-
txn_log->sinks().push_back(sink);
|
|
97
|
-
attempt_cleanup_log->flush();
|
|
98
|
-
attempt_cleanup_log->sinks().clear();
|
|
99
|
-
attempt_cleanup_log->sinks().push_back(sink);
|
|
100
|
-
lost_attempts_cleanup_log->flush();
|
|
101
|
-
lost_attempts_cleanup_log->sinks().clear();
|
|
102
|
-
lost_attempts_cleanup_log->sinks().push_back(sink);
|
|
103
|
-
}
|
|
104
|
-
set_transactions_log_level(level);
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
} // namespace couchbase::core::transactions
|