couchbase 3.4.1 → 3.4.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +2 -2
- data/ext/couchbase/CMakeLists.txt +59 -7
- data/ext/couchbase/cmake/Documentation.cmake +0 -1
- data/ext/couchbase/cmake/OpenSSL.cmake +98 -3
- data/ext/couchbase/cmake/Testing.cmake +12 -4
- data/ext/couchbase/cmake/ThirdPartyDependencies.cmake +4 -0
- data/ext/couchbase/cmake/build_config.hxx.in +3 -0
- data/ext/couchbase/core/bucket.cxx +3 -2
- data/ext/couchbase/core/bucket.hxx +9 -0
- data/ext/couchbase/core/cluster.hxx +17 -0
- data/ext/couchbase/core/cluster_options.cxx +2 -2
- data/ext/couchbase/core/cluster_options.hxx +4 -7
- data/ext/couchbase/core/{config_profile.cxx → cluster_options_fwd.hxx} +7 -6
- data/ext/couchbase/core/config_profile.hxx +2 -65
- data/ext/couchbase/core/config_profiles.cxx +79 -0
- data/ext/couchbase/core/config_profiles.hxx +56 -0
- data/ext/couchbase/core/error_context/search.hxx +1 -1
- data/ext/couchbase/core/impl/analytics.cxx +237 -0
- data/ext/couchbase/core/impl/boolean_field_query.cxx +40 -0
- data/ext/couchbase/core/impl/boolean_query.cxx +62 -0
- data/ext/couchbase/core/impl/cluster.cxx +2 -1
- data/ext/couchbase/core/impl/conjunction_query.cxx +51 -0
- data/ext/couchbase/core/impl/date_range.cxx +89 -0
- data/ext/couchbase/core/impl/date_range_facet.cxx +54 -0
- data/ext/couchbase/core/impl/date_range_facet_result.cxx +64 -0
- data/ext/couchbase/core/impl/date_range_query.cxx +125 -0
- data/ext/couchbase/core/impl/disjunction_query.cxx +51 -0
- data/ext/couchbase/core/impl/dns_srv_tracker.cxx +5 -3
- data/ext/couchbase/core/impl/encoded_search_facet.hxx +29 -0
- data/ext/couchbase/core/impl/encoded_search_query.hxx +29 -0
- data/ext/couchbase/core/impl/encoded_search_sort.hxx +29 -0
- data/ext/couchbase/core/impl/geo_bounding_box_query.cxx +46 -0
- data/ext/couchbase/core/impl/geo_distance_query.cxx +43 -0
- data/ext/couchbase/core/impl/geo_polygon_query.cxx +46 -0
- data/ext/couchbase/core/impl/internal_date_range_facet_result.cxx +80 -0
- data/ext/couchbase/core/impl/internal_date_range_facet_result.hxx +48 -0
- data/ext/couchbase/core/impl/internal_numeric_range_facet_result.cxx +80 -0
- data/ext/couchbase/core/impl/internal_numeric_range_facet_result.hxx +48 -0
- data/ext/couchbase/core/impl/internal_search_error_context.cxx +141 -0
- data/ext/couchbase/core/impl/internal_search_error_context.hxx +61 -0
- data/ext/couchbase/core/impl/internal_search_meta_data.cxx +60 -0
- data/ext/couchbase/core/impl/internal_search_meta_data.hxx +41 -0
- data/ext/couchbase/core/impl/internal_search_result.cxx +84 -0
- data/ext/couchbase/core/impl/internal_search_result.hxx +43 -0
- data/ext/couchbase/core/impl/internal_search_row.cxx +82 -0
- data/ext/couchbase/core/impl/internal_search_row.hxx +56 -0
- data/ext/couchbase/core/impl/internal_search_row_location.hxx +32 -0
- data/ext/couchbase/core/impl/internal_search_row_locations.cxx +137 -0
- data/ext/couchbase/core/impl/internal_search_row_locations.hxx +45 -0
- data/ext/couchbase/core/impl/internal_term_facet_result.cxx +80 -0
- data/ext/couchbase/core/impl/internal_term_facet_result.hxx +48 -0
- data/ext/couchbase/core/impl/match_all_query.cxx +35 -0
- data/ext/couchbase/core/impl/match_none_query.cxx +35 -0
- data/ext/couchbase/core/impl/match_phrase_query.cxx +43 -0
- data/ext/couchbase/core/impl/match_query.cxx +59 -0
- data/ext/couchbase/core/impl/numeric_range.cxx +49 -0
- data/ext/couchbase/core/impl/numeric_range_facet.cxx +54 -0
- data/ext/couchbase/core/impl/numeric_range_facet_result.cxx +64 -0
- data/ext/couchbase/core/impl/numeric_range_query.cxx +56 -0
- data/ext/couchbase/core/impl/phrase_query.cxx +42 -0
- data/ext/couchbase/core/impl/prefix_query.cxx +40 -0
- data/ext/couchbase/core/impl/query.cxx +5 -5
- data/ext/couchbase/core/impl/query_string_query.cxx +37 -0
- data/ext/couchbase/core/impl/regexp_query.cxx +40 -0
- data/ext/couchbase/core/impl/search.cxx +191 -0
- data/ext/couchbase/core/impl/search_error_context.cxx +147 -0
- data/ext/couchbase/core/impl/search_meta_data.cxx +46 -0
- data/ext/couchbase/core/impl/search_result.cxx +66 -0
- data/ext/couchbase/core/impl/search_row.cxx +74 -0
- data/ext/couchbase/core/impl/search_row_location.cxx +64 -0
- data/ext/couchbase/core/impl/search_row_locations.cxx +66 -0
- data/ext/couchbase/core/impl/search_sort_field.cxx +104 -0
- data/ext/couchbase/core/impl/search_sort_id.cxx +43 -0
- data/ext/couchbase/core/impl/search_sort_score.cxx +43 -0
- data/ext/couchbase/core/impl/term_facet.cxx +36 -0
- data/ext/couchbase/core/impl/term_facet_result.cxx +64 -0
- data/ext/couchbase/core/impl/term_query.cxx +56 -0
- data/ext/couchbase/core/impl/term_range_query.cxx +57 -0
- data/ext/couchbase/core/impl/wildcard_query.cxx +40 -0
- data/ext/couchbase/core/io/dns_client.cxx +225 -0
- data/ext/couchbase/core/io/dns_client.hxx +19 -188
- data/ext/couchbase/core/io/http_context.hxx +1 -1
- data/ext/couchbase/core/io/http_session.hxx +10 -0
- data/ext/couchbase/core/io/http_session_manager.hxx +5 -3
- data/ext/couchbase/core/io/mcbp_session.cxx +28 -1
- data/ext/couchbase/core/io/retry_orchestrator.hxx +3 -2
- data/ext/couchbase/core/json_string.hxx +5 -0
- data/ext/couchbase/core/meta/version.cxx +18 -4
- data/ext/couchbase/core/mozilla_ca_bundle.hxx +39 -0
- data/ext/couchbase/core/operations/document_analytics.cxx +1 -0
- data/ext/couchbase/core/operations/document_analytics.hxx +1 -0
- data/ext/couchbase/core/operations/document_append.hxx +1 -1
- data/ext/couchbase/core/operations/document_decrement.hxx +1 -1
- data/ext/couchbase/core/operations/document_exists.hxx +1 -1
- data/ext/couchbase/core/operations/document_get.hxx +1 -1
- data/ext/couchbase/core/operations/document_get_and_lock.hxx +1 -1
- data/ext/couchbase/core/operations/document_get_and_touch.hxx +1 -1
- data/ext/couchbase/core/operations/document_get_projected.hxx +1 -1
- data/ext/couchbase/core/operations/document_increment.hxx +1 -1
- data/ext/couchbase/core/operations/document_insert.hxx +1 -1
- data/ext/couchbase/core/operations/document_lookup_in.hxx +1 -1
- data/ext/couchbase/core/operations/document_mutate_in.hxx +1 -1
- data/ext/couchbase/core/operations/document_prepend.hxx +1 -1
- data/ext/couchbase/core/operations/document_query.cxx +2 -0
- data/ext/couchbase/core/operations/document_query.hxx +6 -0
- data/ext/couchbase/core/operations/document_remove.hxx +1 -1
- data/ext/couchbase/core/operations/document_replace.hxx +1 -1
- data/ext/couchbase/core/operations/document_search.cxx +4 -1
- data/ext/couchbase/core/operations/document_search.hxx +2 -1
- data/ext/couchbase/core/operations/document_touch.hxx +1 -1
- data/ext/couchbase/core/operations/document_unlock.hxx +1 -1
- data/ext/couchbase/core/operations/document_upsert.hxx +1 -1
- data/ext/couchbase/core/operations/document_view.hxx +1 -0
- data/ext/couchbase/core/protocol/client_request.hxx +11 -2
- data/ext/couchbase/core/public_fwd.hxx +21 -0
- data/ext/couchbase/core/tls_verify_mode.hxx +26 -0
- data/ext/couchbase/core/topology/configuration.cxx +15 -2
- data/ext/couchbase/core/topology/configuration.hxx +5 -1
- data/ext/couchbase/core/transactions/active_transaction_record.hxx +2 -2
- data/ext/couchbase/core/transactions/attempt_context_impl.cxx +3 -0
- data/ext/couchbase/core/transactions/attempt_context_impl.hxx +1 -1
- data/ext/couchbase/core/transactions/attempt_context_testing_hooks.cxx +93 -0
- data/ext/couchbase/core/transactions/attempt_context_testing_hooks.hxx +48 -75
- data/ext/couchbase/core/transactions/cleanup_testing_hooks.cxx +52 -0
- data/ext/couchbase/core/transactions/cleanup_testing_hooks.hxx +17 -31
- data/ext/couchbase/core/transactions/exceptions.hxx +12 -9
- data/ext/couchbase/core/transactions/internal/transaction_context.hxx +12 -12
- data/ext/couchbase/core/transactions/internal/transactions_cleanup.hxx +7 -1
- data/ext/couchbase/core/transactions/transaction_context.cxx +1 -0
- data/ext/couchbase/core/transactions/transactions_cleanup.cxx +144 -155
- data/ext/couchbase/core/utils/connection_string.cxx +27 -3
- data/ext/couchbase/core/utils/connection_string.hxx +3 -3
- data/ext/couchbase/core/utils/json.cxx +4 -1
- data/ext/couchbase/couchbase/analytics_error_context.hxx +143 -0
- data/ext/couchbase/couchbase/analytics_meta_data.hxx +155 -0
- data/ext/couchbase/couchbase/analytics_metrics.hxx +163 -0
- data/ext/couchbase/couchbase/analytics_options.hxx +359 -0
- data/ext/couchbase/couchbase/analytics_result.hxx +102 -0
- data/ext/couchbase/couchbase/analytics_scan_consistency.hxx +46 -0
- data/ext/couchbase/couchbase/analytics_status.hxx +41 -0
- data/ext/couchbase/couchbase/analytics_warning.hxx +85 -0
- data/ext/couchbase/couchbase/behavior_options.hxx +10 -1
- data/ext/couchbase/couchbase/boolean_field_query.hxx +77 -0
- data/ext/couchbase/couchbase/boolean_query.hxx +223 -0
- data/ext/couchbase/couchbase/cluster.hxx +75 -1
- data/ext/couchbase/couchbase/conjunction_query.hxx +88 -0
- data/ext/couchbase/couchbase/date_range.hxx +69 -0
- data/ext/couchbase/couchbase/date_range_facet.hxx +56 -0
- data/ext/couchbase/couchbase/date_range_facet_result.hxx +55 -0
- data/ext/couchbase/couchbase/date_range_query.hxx +265 -0
- data/ext/couchbase/couchbase/disjunction_query.hxx +109 -0
- data/ext/couchbase/couchbase/doc_id_query.hxx +111 -0
- data/ext/couchbase/couchbase/error_context.hxx +7 -6
- data/ext/couchbase/couchbase/fmt/analytics_scan_consistency.hxx +52 -0
- data/ext/couchbase/couchbase/fmt/analytics_status.hxx +76 -0
- data/ext/couchbase/couchbase/fmt/search_scan_consistency.hxx +49 -0
- data/ext/couchbase/couchbase/geo_bounding_box_query.hxx +107 -0
- data/ext/couchbase/couchbase/geo_distance_query.hxx +109 -0
- data/ext/couchbase/couchbase/geo_point.hxx +32 -0
- data/ext/couchbase/couchbase/geo_polygon_query.hxx +85 -0
- data/ext/couchbase/couchbase/highlight_style.hxx +45 -0
- data/ext/couchbase/couchbase/match_all_query.hxx +43 -0
- data/ext/couchbase/couchbase/match_none_query.hxx +43 -0
- data/ext/couchbase/couchbase/match_operator.hxx +45 -0
- data/ext/couchbase/couchbase/match_phrase_query.hxx +108 -0
- data/ext/couchbase/couchbase/match_query.hxx +163 -0
- data/ext/couchbase/couchbase/numeric_range.hxx +58 -0
- data/ext/couchbase/couchbase/numeric_range_facet.hxx +56 -0
- data/ext/couchbase/couchbase/numeric_range_facet_result.hxx +55 -0
- data/ext/couchbase/couchbase/numeric_range_query.hxx +143 -0
- data/ext/couchbase/couchbase/phrase_query.hxx +93 -0
- data/ext/couchbase/couchbase/prefix_query.hxx +82 -0
- data/ext/couchbase/couchbase/query_options.hxx +0 -1
- data/ext/couchbase/couchbase/query_string_query.hxx +72 -0
- data/ext/couchbase/couchbase/regexp_query.hxx +82 -0
- data/ext/couchbase/couchbase/scope.hxx +73 -0
- data/ext/couchbase/couchbase/search_date_range.hxx +68 -0
- data/ext/couchbase/couchbase/search_error_context.hxx +138 -0
- data/ext/couchbase/couchbase/search_facet.hxx +60 -0
- data/ext/couchbase/couchbase/search_facet_result.hxx +50 -0
- data/ext/couchbase/couchbase/search_meta_data.hxx +85 -0
- data/ext/couchbase/couchbase/search_metrics.hxx +127 -0
- data/ext/couchbase/couchbase/search_numeric_range.hxx +69 -0
- data/ext/couchbase/couchbase/search_options.hxx +509 -0
- data/ext/couchbase/couchbase/search_query.hxx +69 -0
- data/ext/couchbase/couchbase/search_result.hxx +77 -0
- data/ext/couchbase/couchbase/search_row.hxx +104 -0
- data/ext/couchbase/couchbase/search_row_location.hxx +55 -0
- data/ext/couchbase/couchbase/search_row_locations.hxx +86 -0
- data/ext/couchbase/couchbase/search_scan_consistency.hxx +34 -0
- data/ext/couchbase/couchbase/search_sort.hxx +58 -0
- data/ext/couchbase/couchbase/search_sort_field.hxx +117 -0
- data/ext/couchbase/couchbase/search_sort_field_missing.hxx +26 -0
- data/ext/couchbase/couchbase/search_sort_field_mode.hxx +27 -0
- data/ext/couchbase/couchbase/search_sort_field_type.hxx +28 -0
- data/ext/couchbase/couchbase/search_sort_id.hxx +60 -0
- data/ext/couchbase/couchbase/search_sort_score.hxx +60 -0
- data/ext/couchbase/couchbase/search_term_range.hxx +51 -0
- data/ext/couchbase/couchbase/security_options.hxx +3 -0
- data/ext/couchbase/couchbase/term_facet.hxx +48 -0
- data/ext/couchbase/couchbase/term_facet_result.hxx +55 -0
- data/ext/couchbase/couchbase/term_query.hxx +151 -0
- data/ext/couchbase/couchbase/term_range_query.hxx +142 -0
- data/ext/couchbase/couchbase/tracing/request_span.hxx +63 -0
- data/ext/couchbase/couchbase/tracing/request_tracer.hxx +2 -40
- data/ext/couchbase/couchbase/transactions/async_attempt_context.hxx +83 -4
- data/ext/couchbase/couchbase/transactions/attempt_context.hxx +68 -1
- data/ext/couchbase/couchbase/transactions/transaction_get_result.hxx +2 -0
- data/ext/couchbase/couchbase/transactions/transaction_keyspace.hxx +11 -1
- data/ext/couchbase/couchbase/transactions/transaction_options.hxx +79 -8
- data/ext/couchbase/couchbase/transactions/transaction_query_options.hxx +128 -15
- data/ext/couchbase/couchbase/transactions/transaction_query_result.hxx +4 -0
- data/ext/couchbase/couchbase/transactions/transaction_result.hxx +1 -1
- data/ext/couchbase/couchbase/transactions/transactions_cleanup_config.hxx +5 -3
- data/ext/couchbase/couchbase/transactions/transactions_config.hxx +9 -5
- data/ext/couchbase/couchbase/transactions/transactions_query_config.hxx +6 -3
- data/ext/couchbase/couchbase/transactions.hxx +34 -1
- data/ext/couchbase/couchbase/wildcard_query.hxx +83 -0
- data/ext/couchbase/test/CMakeLists.txt +8 -7
- data/ext/couchbase/test/benchmark_helper_integration.hxx +2 -2
- data/ext/couchbase/test/test_helper.hxx +6 -6
- data/ext/couchbase/test/test_integration_analytics.cxx +314 -16
- data/ext/couchbase/test/test_integration_collections.cxx +7 -3
- data/ext/couchbase/test/test_integration_connect.cxx +7 -3
- data/ext/couchbase/test/test_integration_crud.cxx +19 -2
- data/ext/couchbase/test/test_integration_diagnostics.cxx +11 -5
- data/ext/couchbase/test/test_integration_durability.cxx +12 -7
- data/ext/couchbase/test/test_integration_examples.cxx +324 -11
- data/ext/couchbase/test/test_integration_management.cxx +162 -94
- data/ext/couchbase/test/test_integration_query.cxx +68 -10
- data/ext/couchbase/test/test_integration_range_scan.cxx +12 -12
- data/ext/couchbase/test/test_integration_read_replica.cxx +48 -11
- data/ext/couchbase/test/test_integration_search.cxx +621 -0
- data/ext/couchbase/test/test_integration_subdoc.cxx +62 -11
- data/ext/couchbase/test/test_integration_tracer.cxx +5 -0
- data/ext/couchbase/test/test_integration_transcoders.cxx +13 -5
- data/ext/couchbase/test/{test_transaction_transaction_context.cxx → test_transaction_context.cxx} +1 -1
- data/ext/couchbase/test/test_transaction_examples.cxx +195 -0
- data/ext/couchbase/test/{test_transaction_transaction_simple.cxx → test_transaction_simple.cxx} +90 -5
- data/ext/couchbase/test/{test_transaction_transaction_simple_async.cxx → test_transaction_simple_async.cxx} +19 -21
- data/ext/couchbase/test/test_unit_config_profiles.cxx +13 -13
- data/ext/couchbase/test/test_unit_connection_string.cxx +35 -0
- data/ext/couchbase/test/test_unit_json_transcoder.cxx +4 -0
- data/ext/couchbase/test/test_unit_search.cxx +427 -0
- data/ext/couchbase/test/test_unit_transaction_utils.cxx +10 -1
- data/ext/couchbase/test/test_unit_utils.cxx +8 -4
- data/ext/couchbase/third_party/snappy/CMakeLists.txt +150 -27
- data/ext/couchbase/third_party/snappy/cmake/config.h.in +28 -24
- data/ext/couchbase/third_party/snappy/snappy-internal.h +189 -25
- data/ext/couchbase/third_party/snappy/snappy-sinksource.cc +26 -9
- data/ext/couchbase/third_party/snappy/snappy-sinksource.h +11 -11
- data/ext/couchbase/third_party/snappy/snappy-stubs-internal.cc +1 -1
- data/ext/couchbase/third_party/snappy/snappy-stubs-internal.h +227 -308
- data/ext/couchbase/third_party/snappy/snappy-stubs-public.h.in +0 -11
- data/ext/couchbase/third_party/snappy/snappy.cc +1176 -410
- data/ext/couchbase/third_party/snappy/snappy.h +19 -4
- data/ext/couchbase.cxx +85 -22
- data/ext/revisions.rb +3 -3
- data/lib/couchbase/authenticator.rb +0 -1
- data/lib/couchbase/cluster.rb +13 -13
- data/lib/couchbase/cluster_registry.rb +7 -2
- data/lib/couchbase/config_profiles.rb +1 -1
- data/lib/couchbase/configuration.rb +3 -4
- data/lib/couchbase/json_transcoder.rb +12 -5
- data/lib/couchbase/management/collection_query_index_manager.rb +54 -15
- data/lib/couchbase/management/query_index_manager.rb +70 -5
- data/lib/couchbase/options.rb +85 -2
- data/lib/couchbase/raw_binary_transcoder.rb +37 -0
- data/lib/couchbase/raw_json_transcoder.rb +38 -0
- data/lib/couchbase/raw_string_transcoder.rb +40 -0
- data/lib/couchbase/search_options.rb +163 -240
- data/lib/couchbase/transcoder_flags.rb +62 -0
- data/lib/couchbase/version.rb +1 -1
- metadata +151 -12
- data/ext/couchbase/core/CMakeLists.txt +0 -0
- /data/ext/couchbase/test/{test_transaction_transaction_public_async_api.cxx → test_transaction_public_async_api.cxx} +0 -0
- /data/ext/couchbase/test/{test_transaction_transaction_public_blocking_api.cxx → test_transaction_public_blocking_api.cxx} +0 -0
|
@@ -120,7 +120,7 @@ TEST_CASE("integration: range scan large values", "[integration]")
|
|
|
120
120
|
test::utils::integration_test_guard integration;
|
|
121
121
|
|
|
122
122
|
if (!integration.has_bucket_capability("range_scan")) {
|
|
123
|
-
|
|
123
|
+
SKIP("cluster does not support range_scan");
|
|
124
124
|
}
|
|
125
125
|
|
|
126
126
|
auto collection = couchbase::cluster(integration.cluster)
|
|
@@ -176,7 +176,7 @@ TEST_CASE("integration: range scan small values", "[integration]")
|
|
|
176
176
|
test::utils::integration_test_guard integration;
|
|
177
177
|
|
|
178
178
|
if (!integration.has_bucket_capability("range_scan")) {
|
|
179
|
-
|
|
179
|
+
SKIP("cluster does not support range_scan");
|
|
180
180
|
}
|
|
181
181
|
|
|
182
182
|
auto collection = couchbase::cluster(integration.cluster)
|
|
@@ -274,7 +274,7 @@ TEST_CASE("integration: range scan collection retry", "[integration]")
|
|
|
274
274
|
test::utils::integration_test_guard integration;
|
|
275
275
|
|
|
276
276
|
if (!integration.has_bucket_capability("range_scan")) {
|
|
277
|
-
|
|
277
|
+
SKIP("cluster does not support range_scan");
|
|
278
278
|
}
|
|
279
279
|
|
|
280
280
|
collection_guard new_collection(integration);
|
|
@@ -340,7 +340,7 @@ TEST_CASE("integration: range scan only keys", "[integration]")
|
|
|
340
340
|
test::utils::integration_test_guard integration;
|
|
341
341
|
|
|
342
342
|
if (!integration.has_bucket_capability("range_scan")) {
|
|
343
|
-
|
|
343
|
+
SKIP("cluster does not support range_scan");
|
|
344
344
|
}
|
|
345
345
|
|
|
346
346
|
auto collection = couchbase::cluster(integration.cluster)
|
|
@@ -399,7 +399,7 @@ TEST_CASE("integration: range scan cancellation before continue", "[integration]
|
|
|
399
399
|
test::utils::integration_test_guard integration;
|
|
400
400
|
|
|
401
401
|
if (!integration.has_bucket_capability("range_scan")) {
|
|
402
|
-
|
|
402
|
+
SKIP("cluster does not support range_scan");
|
|
403
403
|
}
|
|
404
404
|
|
|
405
405
|
auto collection = couchbase::cluster(integration.cluster)
|
|
@@ -503,7 +503,7 @@ TEST_CASE("integration: range scan cancel during streaming using protocol cancel
|
|
|
503
503
|
test::utils::integration_test_guard integration;
|
|
504
504
|
|
|
505
505
|
if (!integration.has_bucket_capability("range_scan")) {
|
|
506
|
-
|
|
506
|
+
SKIP("cluster does not support range_scan");
|
|
507
507
|
}
|
|
508
508
|
|
|
509
509
|
auto collection = couchbase::cluster(integration.cluster)
|
|
@@ -615,7 +615,7 @@ TEST_CASE("integration: range scan cancel during streaming using pending_operati
|
|
|
615
615
|
test::utils::integration_test_guard integration;
|
|
616
616
|
|
|
617
617
|
if (!integration.has_bucket_capability("range_scan")) {
|
|
618
|
-
|
|
618
|
+
SKIP("cluster does not support range_scan");
|
|
619
619
|
}
|
|
620
620
|
|
|
621
621
|
auto collection = couchbase::cluster(integration.cluster)
|
|
@@ -717,7 +717,7 @@ TEST_CASE("integration: sampling scan keys only", "[integration]")
|
|
|
717
717
|
test::utils::integration_test_guard integration;
|
|
718
718
|
|
|
719
719
|
if (!integration.has_bucket_capability("range_scan")) {
|
|
720
|
-
|
|
720
|
+
SKIP("cluster does not support range_scan");
|
|
721
721
|
}
|
|
722
722
|
|
|
723
723
|
auto collection = couchbase::cluster(integration.cluster)
|
|
@@ -788,7 +788,7 @@ TEST_CASE("integration: manager scan range without content", "[integration]")
|
|
|
788
788
|
test::utils::integration_test_guard integration;
|
|
789
789
|
|
|
790
790
|
if (!integration.has_bucket_capability("range_scan")) {
|
|
791
|
-
|
|
791
|
+
SKIP("cluster does not support range_scan");
|
|
792
792
|
}
|
|
793
793
|
|
|
794
794
|
auto collection = couchbase::cluster(integration.cluster)
|
|
@@ -859,7 +859,7 @@ TEST_CASE("integration: manager scan range with content", "[integration]")
|
|
|
859
859
|
test::utils::integration_test_guard integration;
|
|
860
860
|
|
|
861
861
|
if (!integration.has_bucket_capability("range_scan")) {
|
|
862
|
-
|
|
862
|
+
SKIP("cluster does not support range_scan");
|
|
863
863
|
}
|
|
864
864
|
|
|
865
865
|
auto collection = couchbase::cluster(integration.cluster)
|
|
@@ -930,7 +930,7 @@ TEST_CASE("integration: manager sampling scan with custom collection", "[integra
|
|
|
930
930
|
test::utils::integration_test_guard integration;
|
|
931
931
|
|
|
932
932
|
if (!integration.has_bucket_capability("range_scan")) {
|
|
933
|
-
|
|
933
|
+
SKIP("cluster does not support range_scan");
|
|
934
934
|
}
|
|
935
935
|
|
|
936
936
|
collection_guard new_collection(integration);
|
|
@@ -1003,7 +1003,7 @@ TEST_CASE("integration: manager range scan with sort", "[integration]")
|
|
|
1003
1003
|
test::utils::integration_test_guard integration;
|
|
1004
1004
|
|
|
1005
1005
|
if (!integration.has_bucket_capability("range_scan")) {
|
|
1006
|
-
|
|
1006
|
+
SKIP("cluster does not support range_scan");
|
|
1007
1007
|
}
|
|
1008
1008
|
|
|
1009
1009
|
collection_guard new_collection(integration);
|
|
@@ -63,8 +63,13 @@ TEST_CASE("integration: get any replica", "[integration]")
|
|
|
63
63
|
{
|
|
64
64
|
test::utils::integration_test_guard integration;
|
|
65
65
|
|
|
66
|
-
if (integration.number_of_replicas() == 0
|
|
67
|
-
|
|
66
|
+
if (integration.number_of_replicas() == 0) {
|
|
67
|
+
SKIP("bucket has zero replicas");
|
|
68
|
+
}
|
|
69
|
+
if (integration.number_of_nodes() <= integration.number_of_replicas()) {
|
|
70
|
+
SKIP(fmt::format("number of nodes ({}) is less or equal to number of replicas ({})",
|
|
71
|
+
integration.number_of_nodes(),
|
|
72
|
+
integration.number_of_replicas()));
|
|
68
73
|
}
|
|
69
74
|
|
|
70
75
|
test::utils::open_bucket(integration.cluster, integration.ctx.bucket);
|
|
@@ -95,8 +100,12 @@ TEST_CASE("integration: get all replicas", "[integration]")
|
|
|
95
100
|
test::utils::integration_test_guard integration;
|
|
96
101
|
|
|
97
102
|
auto number_of_replicas = integration.number_of_replicas();
|
|
98
|
-
if (number_of_replicas == 0
|
|
99
|
-
|
|
103
|
+
if (number_of_replicas == 0) {
|
|
104
|
+
SKIP("bucket has zero replicas");
|
|
105
|
+
}
|
|
106
|
+
if (integration.number_of_nodes() <= number_of_replicas) {
|
|
107
|
+
SKIP(fmt::format(
|
|
108
|
+
"number of nodes ({}) is less or equal to number of replicas ({})", integration.number_of_nodes(), number_of_replicas));
|
|
100
109
|
}
|
|
101
110
|
|
|
102
111
|
test::utils::open_bucket(integration.cluster, integration.ctx.bucket);
|
|
@@ -109,10 +118,16 @@ TEST_CASE("integration: get all replicas", "[integration]")
|
|
|
109
118
|
couchbase::core::document_id id{ integration.ctx.bucket, scope_name, collection_name, key };
|
|
110
119
|
|
|
111
120
|
couchbase::core::operations::insert_request req{ id, basic_doc_json };
|
|
121
|
+
req.durability_level = couchbase::durability_level::majority_and_persist_to_active;
|
|
112
122
|
auto resp = test::utils::execute(integration.cluster, req);
|
|
113
123
|
REQUIRE_SUCCESS(resp.ctx.ec());
|
|
114
124
|
}
|
|
115
125
|
|
|
126
|
+
if (integration.cluster_version().is_mock()) {
|
|
127
|
+
// GOCAVES does not implement syncDurability. See https://github.com/couchbaselabs/gocaves/issues/109
|
|
128
|
+
std::this_thread::sleep_for(std::chrono::seconds{ 1 });
|
|
129
|
+
}
|
|
130
|
+
|
|
116
131
|
{
|
|
117
132
|
auto collection =
|
|
118
133
|
couchbase::cluster(integration.cluster).bucket(integration.ctx.bucket).scope(scope_name).collection(collection_name);
|
|
@@ -128,8 +143,13 @@ TEST_CASE("integration: get all replicas with missing key", "[integration]")
|
|
|
128
143
|
{
|
|
129
144
|
test::utils::integration_test_guard integration;
|
|
130
145
|
|
|
131
|
-
if (integration.number_of_replicas() == 0
|
|
132
|
-
|
|
146
|
+
if (integration.number_of_replicas() == 0) {
|
|
147
|
+
SKIP("bucket has zero replicas");
|
|
148
|
+
}
|
|
149
|
+
if (integration.number_of_nodes() <= integration.number_of_replicas()) {
|
|
150
|
+
SKIP(fmt::format("number of nodes ({}) is less or equal to number of replicas ({})",
|
|
151
|
+
integration.number_of_nodes(),
|
|
152
|
+
integration.number_of_replicas()));
|
|
133
153
|
}
|
|
134
154
|
|
|
135
155
|
test::utils::open_bucket(integration.cluster, integration.ctx.bucket);
|
|
@@ -152,7 +172,9 @@ TEST_CASE("integration: get any replica with missing key", "[integration]")
|
|
|
152
172
|
test::utils::integration_test_guard integration;
|
|
153
173
|
|
|
154
174
|
if (integration.number_of_nodes() <= integration.number_of_replicas()) {
|
|
155
|
-
|
|
175
|
+
SKIP(fmt::format("number of nodes ({}) is less or equal to number of replicas ({})",
|
|
176
|
+
integration.number_of_nodes(),
|
|
177
|
+
integration.number_of_replicas()));
|
|
156
178
|
}
|
|
157
179
|
|
|
158
180
|
test::utils::open_bucket(integration.cluster, integration.ctx.bucket);
|
|
@@ -173,8 +195,13 @@ TEST_CASE("integration: get any replica low-level version", "[integration]")
|
|
|
173
195
|
{
|
|
174
196
|
test::utils::integration_test_guard integration;
|
|
175
197
|
|
|
176
|
-
if (integration.number_of_replicas() == 0
|
|
177
|
-
|
|
198
|
+
if (integration.number_of_replicas() == 0) {
|
|
199
|
+
SKIP("bucket has zero replicas");
|
|
200
|
+
}
|
|
201
|
+
if (integration.number_of_nodes() <= integration.number_of_replicas()) {
|
|
202
|
+
SKIP(fmt::format("number of nodes ({}) is less or equal to number of replicas ({})",
|
|
203
|
+
integration.number_of_nodes(),
|
|
204
|
+
integration.number_of_replicas()));
|
|
178
205
|
}
|
|
179
206
|
|
|
180
207
|
test::utils::open_bucket(integration.cluster, integration.ctx.bucket);
|
|
@@ -204,8 +231,12 @@ TEST_CASE("integration: get all replicas low-level version", "[integration]")
|
|
|
204
231
|
test::utils::integration_test_guard integration;
|
|
205
232
|
|
|
206
233
|
auto number_of_replicas = integration.number_of_replicas();
|
|
207
|
-
if (number_of_replicas == 0
|
|
208
|
-
|
|
234
|
+
if (number_of_replicas == 0) {
|
|
235
|
+
SKIP("bucket has zero replicas");
|
|
236
|
+
}
|
|
237
|
+
if (integration.number_of_nodes() <= number_of_replicas) {
|
|
238
|
+
SKIP(fmt::format(
|
|
239
|
+
"number of nodes ({}) is less or equal to number of replicas ({})", integration.number_of_nodes(), number_of_replicas));
|
|
209
240
|
}
|
|
210
241
|
|
|
211
242
|
test::utils::open_bucket(integration.cluster, integration.ctx.bucket);
|
|
@@ -217,10 +248,16 @@ TEST_CASE("integration: get all replicas low-level version", "[integration]")
|
|
|
217
248
|
{ "b", 2.0 },
|
|
218
249
|
};
|
|
219
250
|
couchbase::core::operations::upsert_request req{ id, couchbase::core::utils::json::generate_binary(value) };
|
|
251
|
+
req.durability_level = couchbase::durability_level::majority_and_persist_to_active;
|
|
220
252
|
auto resp = test::utils::execute(integration.cluster, req);
|
|
221
253
|
REQUIRE_SUCCESS(resp.ctx.ec());
|
|
222
254
|
}
|
|
223
255
|
|
|
256
|
+
if (integration.cluster_version().is_mock()) {
|
|
257
|
+
// GOCAVES does not implement syncDurability. See https://github.com/couchbaselabs/gocaves/issues/109
|
|
258
|
+
std::this_thread::sleep_for(std::chrono::seconds{ 1 });
|
|
259
|
+
}
|
|
260
|
+
|
|
224
261
|
{
|
|
225
262
|
couchbase::core::operations::get_all_replicas_request req{ id };
|
|
226
263
|
auto resp = test::utils::execute(integration.cluster, req);
|