couchbase 4.2.1 → 4.2.2
Sign up to get free protection for your applications and to get access to all the features.
- 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
|