couchbase 3.8.0 → 3.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (88) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -1
  3. data/ext/cache/extconf_include.rb +4 -4
  4. data/ext/cache/mozilla-ca-bundle.crt +3 -575
  5. data/ext/cache/mozilla-ca-bundle.sha256 +1 -1
  6. data/ext/couchbase/CMakeLists.txt +3 -1
  7. data/ext/couchbase/core/error_context/base_error_context.hxx +32 -0
  8. data/ext/couchbase/core/error_context/key_value.cxx +1 -0
  9. data/ext/couchbase/core/error_context/key_value.hxx +23 -0
  10. data/ext/couchbase/core/error_context/key_value_error_context.hxx +35 -0
  11. data/ext/couchbase/core/error_context/subdocument_error_context.hxx +41 -0
  12. data/ext/couchbase/core/impl/binary_collection.cxx +123 -88
  13. data/ext/couchbase/core/impl/collection.cxx +416 -189
  14. data/ext/couchbase/core/impl/error.cxx +29 -4
  15. data/ext/couchbase/core/impl/invoke_with_node_id.hxx +44 -0
  16. data/ext/couchbase/core/impl/node_id.cxx +110 -0
  17. data/ext/couchbase/core/impl/node_id.hxx +40 -0
  18. data/ext/couchbase/core/io/http_session_manager.hxx +97 -57
  19. data/ext/couchbase/core/operations/document_get_all_replicas.hxx +14 -4
  20. data/ext/couchbase/core/operations/document_get_projected.cxx +3 -4
  21. data/ext/couchbase/core/operations/document_lookup_in_all_replicas.hxx +4 -0
  22. data/ext/couchbase/core/operations/document_query.cxx +12 -12
  23. data/ext/couchbase/core/operations/management/collection_create.cxx +11 -11
  24. data/ext/couchbase/core/operations/management/collection_drop.cxx +11 -11
  25. data/ext/couchbase/core/operations/management/collection_update.cxx +11 -11
  26. data/ext/couchbase/core/operations/management/error_utils.cxx +9 -6
  27. data/ext/couchbase/core/operations/management/query_index_create.cxx +5 -4
  28. data/ext/couchbase/core/operations/management/query_index_drop.cxx +7 -6
  29. data/ext/couchbase/core/operations/management/scope_create.cxx +12 -13
  30. data/ext/couchbase/core/operations/management/scope_drop.cxx +8 -9
  31. data/ext/couchbase/core/topology/configuration.cxx +21 -0
  32. data/ext/couchbase/core/topology/configuration.hxx +28 -0
  33. data/ext/couchbase/core/utils/contains_string.cxx +61 -0
  34. data/ext/couchbase/core/utils/contains_string.hxx +26 -0
  35. data/ext/couchbase/couchbase/collection.hxx +73 -0
  36. data/ext/couchbase/couchbase/error.hxx +16 -0
  37. data/ext/couchbase/couchbase/node_id.hxx +123 -0
  38. data/ext/couchbase/couchbase/node_id_for_options.hxx +61 -0
  39. data/ext/couchbase/couchbase/node_ids_options.hxx +62 -0
  40. data/ext/couchbase/couchbase/result.hxx +42 -0
  41. data/ext/rcb_crud.cxx +2 -0
  42. data/ext/rcb_logger.cxx +15 -17
  43. data/lib/couchbase/datastructures/couchbase_list.rb +1 -0
  44. data/lib/couchbase/datastructures/couchbase_map.rb +1 -0
  45. data/lib/couchbase/datastructures/couchbase_queue.rb +1 -0
  46. data/lib/couchbase/datastructures/couchbase_set.rb +1 -0
  47. data/lib/couchbase/errors.rb +1 -1
  48. data/lib/couchbase/json_transcoder.rb +1 -1
  49. data/lib/couchbase/options.rb +2 -2
  50. data/lib/couchbase/protostellar/client.rb +0 -2
  51. data/lib/couchbase/protostellar/cluster.rb +4 -0
  52. data/lib/couchbase/protostellar/generated/admin/analytics/v1/analytics_pb.rb +54 -0
  53. data/lib/couchbase/protostellar/generated/admin/analytics/v1/analytics_services_pb.rb +51 -0
  54. data/lib/couchbase/protostellar/generated/admin/bucket/v1/bucket_pb.rb +5 -24
  55. data/lib/couchbase/protostellar/generated/admin/bucket/v1/bucket_services_pb.rb +16 -0
  56. data/lib/couchbase/protostellar/generated/admin/collection/v1/collection_pb.rb +5 -24
  57. data/lib/couchbase/protostellar/generated/admin/collection/v1/collection_services_pb.rb +16 -0
  58. data/lib/couchbase/protostellar/generated/admin/query/v1/query_pb.rb +5 -24
  59. data/lib/couchbase/protostellar/generated/admin/query/v1/query_services_pb.rb +18 -0
  60. data/lib/couchbase/protostellar/generated/admin/search/v1/search_pb.rb +2 -23
  61. data/lib/couchbase/protostellar/generated/admin/search/v1/search_services_pb.rb +23 -0
  62. data/lib/couchbase/protostellar/generated/analytics/v1/analytics_pb.rb +4 -25
  63. data/lib/couchbase/protostellar/generated/analytics/v1/analytics_services_pb.rb +10 -0
  64. data/lib/couchbase/protostellar/generated/internal/hooks/v1/hooks_pb.rb +6 -25
  65. data/lib/couchbase/protostellar/generated/internal/hooks/v1/hooks_services_pb.rb +18 -0
  66. data/lib/couchbase/protostellar/generated/internal/xdcr/v1/xdcr_pb.rb +46 -0
  67. data/lib/couchbase/protostellar/generated/internal/xdcr/v1/xdcr_services_pb.rb +56 -0
  68. data/lib/couchbase/protostellar/generated/kv/v1/kv_pb.rb +3 -26
  69. data/lib/couchbase/protostellar/generated/kv/v1/kv_services_pb.rb +47 -0
  70. data/lib/couchbase/protostellar/generated/query/v1/query_pb.rb +4 -26
  71. data/lib/couchbase/protostellar/generated/query/v1/query_services_pb.rb +10 -0
  72. data/lib/couchbase/protostellar/generated/routing/v2/routing_pb.rb +26 -0
  73. data/lib/couchbase/protostellar/generated/routing/v2/routing_services_pb.rb +43 -0
  74. data/lib/couchbase/protostellar/generated/search/v1/search_pb.rb +5 -26
  75. data/lib/couchbase/protostellar/generated/search/v1/search_services_pb.rb +11 -0
  76. data/lib/couchbase/protostellar/generated/transactions/v1/transactions_pb.rb +2 -23
  77. data/lib/couchbase/protostellar/generated/transactions/v1/transactions_services_pb.rb +30 -0
  78. data/lib/couchbase/protostellar/generated/view/v1/view_pb.rb +2 -23
  79. data/lib/couchbase/protostellar/generated/view/v1/view_services_pb.rb +9 -0
  80. data/lib/couchbase/protostellar/request_generator/admin/collection.rb +4 -2
  81. data/lib/couchbase/protostellar/request_generator/admin/query.rb +2 -0
  82. data/lib/couchbase/protostellar/request_generator/kv.rb +1 -1
  83. data/lib/couchbase/protostellar/scope.rb +4 -0
  84. data/lib/couchbase/utils/observability.rb +10 -4
  85. data/lib/couchbase/version.rb +1 -1
  86. metadata +19 -7
  87. data/lib/couchbase/protostellar/generated/routing/v1/routing_pb.rb +0 -52
  88. data/lib/couchbase/protostellar/generated/routing/v1/routing_services_pb.rb +0 -30
@@ -8,33 +8,10 @@ require 'google/protobuf/duration_pb'
8
8
  require 'google/protobuf/timestamp_pb'
9
9
 
10
10
 
11
- descriptor_data = "\n couchbase/search/v1/search.proto\x12\x13\x63ouchbase.search.v1\x1a\x1egoogle/protobuf/duration.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"^\n\x11\x42ooleanFieldQuery\x12\x12\n\x05\x62oost\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12\x12\n\x05\x66ield\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\r\n\x05value\x18\x06 \x01(\x08\x42\x08\n\x06_boostB\x08\n\x06_field\"\x81\x02\n\x0c\x42ooleanQuery\x12\x12\n\x05\x62oost\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12\x38\n\x04must\x18\x02 \x01(\x0b\x32%.couchbase.search.v1.ConjunctionQueryH\x01\x88\x01\x01\x12<\n\x08must_not\x18\x03 \x01(\x0b\x32%.couchbase.search.v1.DisjunctionQueryH\x02\x88\x01\x01\x12:\n\x06should\x18\x04 \x01(\x0b\x32%.couchbase.search.v1.DisjunctionQueryH\x03\x88\x01\x01\x42\x08\n\x06_boostB\x07\n\x05_mustB\x0b\n\t_must_notB\t\n\x07_should\"]\n\x10\x43onjunctionQuery\x12\x12\n\x05\x62oost\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12+\n\x07queries\x18\x02 \x03(\x0b\x32\x1a.couchbase.search.v1.QueryB\x08\n\x06_boost\"\xcc\x01\n\x0e\x44\x61teRangeQuery\x12\x12\n\x05\x62oost\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12\x12\n\x05\x66ield\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x1d\n\x10\x64\x61te_time_parser\x18\x03 \x01(\tH\x02\x88\x01\x01\x12\x17\n\nstart_date\x18\x04 \x01(\tH\x03\x88\x01\x01\x12\x15\n\x08\x65nd_date\x18\x05 \x01(\tH\x04\x88\x01\x01\x42\x08\n\x06_boostB\x08\n\x06_fieldB\x13\n\x11_date_time_parserB\r\n\x0b_start_dateB\x0b\n\t_end_date\"\x7f\n\x10\x44isjunctionQuery\x12\x12\n\x05\x62oost\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12+\n\x07queries\x18\x02 \x03(\x0b\x32\x1a.couchbase.search.v1.Query\x12\x14\n\x07minimum\x18\x03 \x01(\rH\x01\x88\x01\x01\x42\x08\n\x06_boostB\n\n\x08_minimum\"7\n\nDocIdQuery\x12\x12\n\x05\x62oost\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12\x0b\n\x03ids\x18\x03 \x03(\tB\x08\n\x06_boost\"-\n\x06LatLng\x12\x10\n\x08latitude\x18\x01 \x01(\x01\x12\x11\n\tlongitude\x18\x02 \x01(\x01\"\xb3\x01\n\x13GeoBoundingBoxQuery\x12\x12\n\x05\x62oost\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12\x12\n\x05\x66ield\x18\x02 \x01(\tH\x01\x88\x01\x01\x12-\n\x08top_left\x18\x03 \x01(\x0b\x32\x1b.couchbase.search.v1.LatLng\x12\x31\n\x0c\x62ottom_right\x18\x04 \x01(\x0b\x32\x1b.couchbase.search.v1.LatLngB\x08\n\x06_boostB\x08\n\x06_field\"\x8d\x01\n\x10GeoDistanceQuery\x12\x12\n\x05\x62oost\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12\x12\n\x05\x66ield\x18\x02 \x01(\tH\x01\x88\x01\x01\x12+\n\x06\x63\x65nter\x18\x03 \x01(\x0b\x32\x1b.couchbase.search.v1.LatLng\x12\x10\n\x08\x64istance\x18\x04 \x01(\tB\x08\n\x06_boostB\x08\n\x06_field\"|\n\x0fGeoPolygonQuery\x12\x12\n\x05\x62oost\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12\x12\n\x05\x66ield\x18\x02 \x01(\tH\x01\x88\x01\x01\x12-\n\x08vertices\x18\x03 \x03(\x0b\x32\x1b.couchbase.search.v1.LatLngB\x08\n\x06_boostB\x08\n\x06_field\"\x0f\n\rMatchAllQuery\"\x10\n\x0eMatchNoneQuery\"\x82\x01\n\x10MatchPhraseQuery\x12\x12\n\x05\x62oost\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12\x12\n\x05\x66ield\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x0e\n\x06phrase\x18\x03 \x01(\t\x12\x15\n\x08\x61nalyzer\x18\x04 \x01(\tH\x02\x88\x01\x01\x42\x08\n\x06_boostB\x08\n\x06_fieldB\x0b\n\t_analyzer\"\xcc\x02\n\nMatchQuery\x12\x12\n\x05\x62oost\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12\x12\n\x05\x66ield\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\r\n\x05value\x18\x03 \x01(\t\x12\x15\n\x08\x61nalyzer\x18\x04 \x01(\tH\x02\x88\x01\x01\x12\x16\n\tfuzziness\x18\x05 \x01(\x04H\x03\x88\x01\x01\x12?\n\x08operator\x18\x06 \x01(\x0e\x32(.couchbase.search.v1.MatchQuery.OperatorH\x04\x88\x01\x01\x12\x1a\n\rprefix_length\x18\x07 \x01(\x04H\x05\x88\x01\x01\"-\n\x08Operator\x12\x0f\n\x0bOPERATOR_OR\x10\x00\x12\x10\n\x0cOPERATOR_AND\x10\x01\x42\x08\n\x06_boostB\x08\n\x06_fieldB\x0b\n\t_analyzerB\x0c\n\n_fuzzinessB\x0b\n\t_operatorB\x10\n\x0e_prefix_length\"\xdf\x01\n\x11NumericRangeQuery\x12\x12\n\x05\x62oost\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12\x12\n\x05\x66ield\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x10\n\x03min\x18\x03 \x01(\x02H\x02\x88\x01\x01\x12\x10\n\x03max\x18\x04 \x01(\x02H\x03\x88\x01\x01\x12\x1a\n\rinclusive_min\x18\x05 \x01(\x08H\x04\x88\x01\x01\x12\x1a\n\rinclusive_max\x18\x06 \x01(\x08H\x05\x88\x01\x01\x42\x08\n\x06_boostB\x08\n\x06_fieldB\x06\n\x04_minB\x06\n\x04_maxB\x10\n\x0e_inclusive_minB\x10\n\x0e_inclusive_max\"X\n\x0bPhraseQuery\x12\x12\n\x05\x62oost\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12\x12\n\x05\x66ield\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\r\n\x05terms\x18\x03 \x03(\tB\x08\n\x06_boostB\x08\n\x06_field\"Y\n\x0bPrefixQuery\x12\x12\n\x05\x62oost\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12\x12\n\x05\x66ield\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x0e\n\x06prefix\x18\x03 \x01(\tB\x08\n\x06_boostB\x08\n\x06_field\"F\n\x10QueryStringQuery\x12\x12\n\x05\x62oost\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12\x14\n\x0cquery_string\x18\x03 \x01(\tB\x08\n\x06_boost\"Y\n\x0bRegexpQuery\x12\x12\n\x05\x62oost\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12\x12\n\x05\x66ield\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x0e\n\x06regexp\x18\x03 \x01(\tB\x08\n\x06_boostB\x08\n\x06_field\"\xa9\x01\n\tTermQuery\x12\x12\n\x05\x62oost\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12\x12\n\x05\x66ield\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x0c\n\x04term\x18\x03 \x01(\t\x12\x16\n\tfuzziness\x18\x04 \x01(\x04H\x02\x88\x01\x01\x12\x1a\n\rprefix_length\x18\x05 \x01(\x04H\x03\x88\x01\x01\x42\x08\n\x06_boostB\x08\n\x06_fieldB\x0c\n\n_fuzzinessB\x10\n\x0e_prefix_length\"\xdc\x01\n\x0eTermRangeQuery\x12\x12\n\x05\x62oost\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12\x12\n\x05\x66ield\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x10\n\x03min\x18\x05 \x01(\tH\x02\x88\x01\x01\x12\x10\n\x03max\x18\x06 \x01(\tH\x03\x88\x01\x01\x12\x1a\n\rinclusive_min\x18\x07 \x01(\x08H\x04\x88\x01\x01\x12\x1a\n\rinclusive_max\x18\x08 \x01(\x08H\x05\x88\x01\x01\x42\x08\n\x06_boostB\x08\n\x06_fieldB\x06\n\x04_minB\x06\n\x04_maxB\x10\n\x0e_inclusive_minB\x10\n\x0e_inclusive_max\"]\n\rWildcardQuery\x12\x12\n\x05\x62oost\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12\x12\n\x05\x66ield\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x10\n\x08wildcard\x18\x03 \x01(\tB\x08\n\x06_boostB\x08\n\x06_field\"\xd5\n\n\x05Query\x12\x45\n\x13\x62oolean_field_query\x18\x01 \x01(\x0b\x32&.couchbase.search.v1.BooleanFieldQueryH\x00\x12:\n\rboolean_query\x18\x02 \x01(\x0b\x32!.couchbase.search.v1.BooleanQueryH\x00\x12\x42\n\x11\x63onjunction_query\x18\x03 \x01(\x0b\x32%.couchbase.search.v1.ConjunctionQueryH\x00\x12?\n\x10\x64\x61te_range_query\x18\x04 \x01(\x0b\x32#.couchbase.search.v1.DateRangeQueryH\x00\x12\x42\n\x11\x64isjunction_query\x18\x05 \x01(\x0b\x32%.couchbase.search.v1.DisjunctionQueryH\x00\x12\x37\n\x0c\x64oc_id_query\x18\x06 \x01(\x0b\x32\x1f.couchbase.search.v1.DocIdQueryH\x00\x12J\n\x16geo_bounding_box_query\x18\x07 \x01(\x0b\x32(.couchbase.search.v1.GeoBoundingBoxQueryH\x00\x12\x43\n\x12geo_distance_query\x18\x08 \x01(\x0b\x32%.couchbase.search.v1.GeoDistanceQueryH\x00\x12\x41\n\x11geo_polygon_query\x18\t \x01(\x0b\x32$.couchbase.search.v1.GeoPolygonQueryH\x00\x12=\n\x0fmatch_all_query\x18\n \x01(\x0b\x32\".couchbase.search.v1.MatchAllQueryH\x00\x12?\n\x10match_none_query\x18\x0b \x01(\x0b\x32#.couchbase.search.v1.MatchNoneQueryH\x00\x12\x43\n\x12match_phrase_query\x18\x0c \x01(\x0b\x32%.couchbase.search.v1.MatchPhraseQueryH\x00\x12\x36\n\x0bmatch_query\x18\r \x01(\x0b\x32\x1f.couchbase.search.v1.MatchQueryH\x00\x12\x45\n\x13numeric_range_query\x18\x0e \x01(\x0b\x32&.couchbase.search.v1.NumericRangeQueryH\x00\x12\x38\n\x0cphrase_query\x18\x0f \x01(\x0b\x32 .couchbase.search.v1.PhraseQueryH\x00\x12\x38\n\x0cprefix_query\x18\x10 \x01(\x0b\x32 .couchbase.search.v1.PrefixQueryH\x00\x12\x43\n\x12query_string_query\x18\x11 \x01(\x0b\x32%.couchbase.search.v1.QueryStringQueryH\x00\x12\x38\n\x0cregexp_query\x18\x12 \x01(\x0b\x32 .couchbase.search.v1.RegexpQueryH\x00\x12\x34\n\nterm_query\x18\x13 \x01(\x0b\x32\x1e.couchbase.search.v1.TermQueryH\x00\x12?\n\x10term_range_query\x18\x14 \x01(\x0b\x32#.couchbase.search.v1.TermRangeQueryH\x00\x12<\n\x0ewildcard_query\x18\x15 \x01(\x0b\x32\".couchbase.search.v1.WildcardQueryH\x00\x42\x07\n\x05query\"^\n\x0c\x46ieldSorting\x12\r\n\x05\x66ield\x18\x01 \x01(\t\x12\x12\n\ndescending\x18\x02 \x01(\x08\x12\x0f\n\x07missing\x18\x03 \x01(\t\x12\x0c\n\x04mode\x18\x04 \x01(\t\x12\x0c\n\x04type\x18\x05 \x01(\t\"r\n\x12GeoDistanceSorting\x12\r\n\x05\x66ield\x18\x01 \x01(\t\x12\x12\n\ndescending\x18\x02 \x01(\x08\x12+\n\x06\x63\x65nter\x18\x03 \x01(\x0b\x32\x1b.couchbase.search.v1.LatLng\x12\x0c\n\x04unit\x18\x04 \x01(\t\"\x1f\n\tIdSorting\x12\x12\n\ndescending\x18\x01 \x01(\x08\"\"\n\x0cScoreSorting\x12\x12\n\ndescending\x18\x01 \x01(\x08\"\x8b\x02\n\x07Sorting\x12:\n\rfield_sorting\x18\x01 \x01(\x0b\x32!.couchbase.search.v1.FieldSortingH\x00\x12G\n\x14geo_distance_sorting\x18\x02 \x01(\x0b\x32\'.couchbase.search.v1.GeoDistanceSortingH\x00\x12\x34\n\nid_sorting\x18\x03 \x01(\x0b\x32\x1e.couchbase.search.v1.IdSortingH\x00\x12:\n\rscore_sorting\x18\x04 \x01(\x0b\x32!.couchbase.search.v1.ScoreSortingH\x00\x42\t\n\x07sorting\"Q\n\tDateRange\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x12\n\x05start\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x03\x65nd\x18\x03 \x01(\tH\x01\x88\x01\x01\x42\x08\n\x06_startB\x06\n\x04_end\"b\n\x0e\x44\x61teRangeFacet\x12\r\n\x05\x66ield\x18\x01 \x01(\t\x12\x0c\n\x04size\x18\x02 \x01(\r\x12\x33\n\x0b\x64\x61te_ranges\x18\x03 \x03(\x0b\x32\x1e.couchbase.search.v1.DateRange\"P\n\x0cNumericRange\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x10\n\x03min\x18\x02 \x01(\x02H\x00\x88\x01\x01\x12\x10\n\x03max\x18\x03 \x01(\x02H\x01\x88\x01\x01\x42\x06\n\x04_minB\x06\n\x04_max\"k\n\x11NumericRangeFacet\x12\r\n\x05\x66ield\x18\x01 \x01(\t\x12\x0c\n\x04size\x18\x02 \x01(\r\x12\x39\n\x0enumeric_ranges\x18\x03 \x03(\x0b\x32!.couchbase.search.v1.NumericRange\"(\n\tTermFacet\x12\r\n\x05\x66ield\x18\x01 \x01(\t\x12\x0c\n\x04size\x18\x02 \x01(\r\"\xce\x01\n\x05\x46\x61\x63\x65t\x12?\n\x10\x64\x61te_range_facet\x18\x01 \x01(\x0b\x32#.couchbase.search.v1.DateRangeFacetH\x00\x12\x45\n\x13numeric_range_facet\x18\x02 \x01(\x0b\x32&.couchbase.search.v1.NumericRangeFacetH\x00\x12\x34\n\nterm_facet\x18\x03 \x01(\x0b\x32\x1e.couchbase.search.v1.TermFacetH\x00\x42\x07\n\x05\x66\x61\x63\x65t\"\xca\x06\n\x12SearchQueryRequest\x12\x12\n\nindex_name\x18\x01 \x01(\t\x12)\n\x05query\x18\x02 \x01(\x0b\x32\x1a.couchbase.search.v1.Query\x12Q\n\x10scan_consistency\x18\x03 \x01(\x0e\x32\x37.couchbase.search.v1.SearchQueryRequest.ScanConsistency\x12\r\n\x05limit\x18\x04 \x01(\r\x12\x0c\n\x04skip\x18\x05 \x01(\r\x12\x1b\n\x13include_explanation\x18\x06 \x01(\x08\x12O\n\x0fhighlight_style\x18\x07 \x01(\x0e\x32\x36.couchbase.search.v1.SearchQueryRequest.HighlightStyle\x12\x18\n\x10highlight_fields\x18\x08 \x03(\t\x12\x0e\n\x06\x66ields\x18\t \x03(\t\x12*\n\x04sort\x18\n \x03(\x0b\x32\x1c.couchbase.search.v1.Sorting\x12\x17\n\x0f\x64isable_scoring\x18\x0b \x01(\x08\x12\x13\n\x0b\x63ollections\x18\x0c \x03(\t\x12\x19\n\x11include_locations\x18\r \x01(\x08\x12\x43\n\x06\x66\x61\x63\x65ts\x18\x0e \x03(\x0b\x32\x33.couchbase.search.v1.SearchQueryRequest.FacetsEntry\x12\x18\n\x0b\x62ucket_name\x18\x0f \x01(\tH\x00\x88\x01\x01\x12\x17\n\nscope_name\x18\x10 \x01(\tH\x01\x88\x01\x01\x1aI\n\x0b\x46\x61\x63\x65tsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12)\n\x05value\x18\x02 \x01(\x0b\x32\x1a.couchbase.search.v1.Facet:\x02\x38\x01\"3\n\x0fScanConsistency\x12 \n\x1cSCAN_CONSISTENCY_NOT_BOUNDED\x10\x00\"a\n\x0eHighlightStyle\x12\x1b\n\x17HIGHLIGHT_STYLE_DEFAULT\x10\x00\x12\x18\n\x14HIGHLIGHT_STYLE_HTML\x10\x01\x12\x18\n\x14HIGHLIGHT_STYLE_ANSI\x10\x02\x42\x0e\n\x0c_bucket_nameB\r\n\x0b_scope_name\"\x9a\x13\n\x13SearchQueryResponse\x12\x45\n\x04hits\x18\x01 \x03(\x0b\x32\x37.couchbase.search.v1.SearchQueryResponse.SearchQueryRow\x12\x44\n\x06\x66\x61\x63\x65ts\x18\x02 \x03(\x0b\x32\x34.couchbase.search.v1.SearchQueryResponse.FacetsEntry\x12I\n\tmeta_data\x18\x03 \x01(\x0b\x32\x31.couchbase.search.v1.SearchQueryResponse.MetaDataH\x00\x88\x01\x01\x1a\xd9\x03\n\x0eSearchQueryRow\x12\n\n\x02id\x18\x01 \x01(\t\x12\r\n\x05score\x18\x02 \x01(\x01\x12\r\n\x05index\x18\x03 \x01(\t\x12\x13\n\x0b\x65xplanation\x18\x04 \x01(\x0c\x12\x44\n\tlocations\x18\x05 \x03(\x0b\x32\x31.couchbase.search.v1.SearchQueryResponse.Location\x12Y\n\tfragments\x18\x06 \x03(\x0b\x32\x46.couchbase.search.v1.SearchQueryResponse.SearchQueryRow.FragmentsEntry\x12S\n\x06\x66ields\x18\x07 \x03(\x0b\x32\x43.couchbase.search.v1.SearchQueryResponse.SearchQueryRow.FieldsEntry\x1a\x63\n\x0e\x46ragmentsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12@\n\x05value\x18\x02 \x01(\x0b\x32\x31.couchbase.search.v1.SearchQueryResponse.Fragment:\x02\x38\x01\x1a-\n\x0b\x46ieldsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x0c:\x02\x38\x01\x1an\n\x08Location\x12\r\n\x05\x66ield\x18\x01 \x01(\t\x12\x0c\n\x04term\x18\x02 \x01(\t\x12\x10\n\x08position\x18\x03 \x01(\r\x12\r\n\x05start\x18\x04 \x01(\r\x12\x0b\n\x03\x65nd\x18\x05 \x01(\r\x12\x17\n\x0f\x61rray_positions\x18\x06 \x03(\r\x1a\x1b\n\x08\x46ragment\x12\x0f\n\x07\x63ontent\x18\x01 \x03(\t\x1a\xa9\x02\n\x0b\x46\x61\x63\x65tResult\x12N\n\nterm_facet\x18\x01 \x01(\x0b\x32\x38.couchbase.search.v1.SearchQueryResponse.TermFacetResultH\x00\x12Y\n\x10\x64\x61te_range_facet\x18\x02 \x01(\x0b\x32=.couchbase.search.v1.SearchQueryResponse.DateRangeFacetResultH\x00\x12_\n\x13numeric_range_facet\x18\x03 \x01(\x0b\x32@.couchbase.search.v1.SearchQueryResponse.NumericRangeFacetResultH\x00\x42\x0e\n\x0csearch_facet\x1a\x37\n\nTermResult\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05\x66ield\x18\x02 \x01(\t\x12\x0c\n\x04size\x18\x03 \x01(\x04\x1a\x99\x01\n\x0fTermFacetResult\x12\r\n\x05\x66ield\x18\x02 \x01(\t\x12\r\n\x05total\x18\x03 \x01(\x03\x12\x0f\n\x07missing\x18\x04 \x01(\x03\x12\r\n\x05other\x18\x05 \x01(\x03\x12\x42\n\x05terms\x18\x06 \x03(\x0b\x32\x33.couchbase.search.v1.SearchQueryResponse.TermResultJ\x04\x08\x01\x10\x02\x1a\x81\x01\n\x0f\x44\x61teRangeResult\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0c\n\x04size\x18\x02 \x01(\x04\x12)\n\x05start\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\'\n\x03\x65nd\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x1a\xa9\x01\n\x14\x44\x61teRangeFacetResult\x12\r\n\x05\x66ield\x18\x02 \x01(\t\x12\r\n\x05total\x18\x03 \x01(\x03\x12\x0f\n\x07missing\x18\x04 \x01(\x03\x12\r\n\x05other\x18\x05 \x01(\x03\x12M\n\x0b\x64\x61te_ranges\x18\x06 \x03(\x0b\x32\x38.couchbase.search.v1.SearchQueryResponse.DateRangeResultJ\x04\x08\x01\x10\x02\x1aJ\n\x12NumericRangeResult\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0c\n\x04size\x18\x02 \x01(\x04\x12\x0b\n\x03min\x18\x03 \x01(\x04\x12\x0b\n\x03max\x18\x04 \x01(\x04\x1a\xb2\x01\n\x17NumericRangeFacetResult\x12\r\n\x05\x66ield\x18\x02 \x01(\t\x12\r\n\x05total\x18\x03 \x01(\x03\x12\x0f\n\x07missing\x18\x04 \x01(\x03\x12\r\n\x05other\x18\x05 \x01(\x03\x12S\n\x0enumeric_ranges\x18\x06 \x03(\x0b\x32;.couchbase.search.v1.SearchQueryResponse.NumericRangeResultJ\x04\x08\x01\x10\x02\x1a\xd1\x01\n\x08MetaData\x12G\n\x07metrics\x18\x01 \x01(\x0b\x32\x36.couchbase.search.v1.SearchQueryResponse.SearchMetrics\x12M\n\x06\x65rrors\x18\x02 \x03(\x0b\x32=.couchbase.search.v1.SearchQueryResponse.MetaData.ErrorsEntry\x1a-\n\x0b\x45rrorsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a\xc8\x01\n\rSearchMetrics\x12\x31\n\x0e\x65xecution_time\x18\x01 \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x12\n\ntotal_rows\x18\x02 \x01(\x04\x12\x11\n\tmax_score\x18\x03 \x01(\x01\x12\x1d\n\x15total_partition_count\x18\x04 \x01(\x04\x12\x1f\n\x17success_partition_count\x18\x05 \x01(\x04\x12\x1d\n\x15\x65rror_partition_count\x18\x06 \x01(\x04\x1a\x63\n\x0b\x46\x61\x63\x65tsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x43\n\x05value\x18\x02 \x01(\x0b\x32\x34.couchbase.search.v1.SearchQueryResponse.FacetResult:\x02\x38\x01\x42\x0c\n\n_meta_data2u\n\rSearchService\x12\x64\n\x0bSearchQuery\x12\'.couchbase.search.v1.SearchQueryRequest\x1a(.couchbase.search.v1.SearchQueryResponse\"\x00\x30\x01\x42\xf2\x01\n+com.couchbase.client.protostellar.search.v1P\x01Z@github.com/couchbase/goprotostellar/genproto/search_v1;search_v1\xaa\x02 Couchbase.Protostellar.Search.V1\xca\x02*Couchbase\\Protostellar\\Generated\\Search\\V1\xea\x02.Couchbase::Protostellar::Generated::Search::V1b\x06proto3"
11
+ descriptor_data = "\n couchbase/search/v1/search.proto\x12\x13\x63ouchbase.search.v1\x1a\x1egoogle/protobuf/duration.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"^\n\x11\x42ooleanFieldQuery\x12\x12\n\x05\x62oost\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12\x12\n\x05\x66ield\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\r\n\x05value\x18\x06 \x01(\x08\x42\x08\n\x06_boostB\x08\n\x06_field\"\x81\x02\n\x0c\x42ooleanQuery\x12\x12\n\x05\x62oost\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12\x38\n\x04must\x18\x02 \x01(\x0b\x32%.couchbase.search.v1.ConjunctionQueryH\x01\x88\x01\x01\x12<\n\x08must_not\x18\x03 \x01(\x0b\x32%.couchbase.search.v1.DisjunctionQueryH\x02\x88\x01\x01\x12:\n\x06should\x18\x04 \x01(\x0b\x32%.couchbase.search.v1.DisjunctionQueryH\x03\x88\x01\x01\x42\x08\n\x06_boostB\x07\n\x05_mustB\x0b\n\t_must_notB\t\n\x07_should\"]\n\x10\x43onjunctionQuery\x12\x12\n\x05\x62oost\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12+\n\x07queries\x18\x02 \x03(\x0b\x32\x1a.couchbase.search.v1.QueryB\x08\n\x06_boost\"\xcc\x01\n\x0e\x44\x61teRangeQuery\x12\x12\n\x05\x62oost\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12\x12\n\x05\x66ield\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x1d\n\x10\x64\x61te_time_parser\x18\x03 \x01(\tH\x02\x88\x01\x01\x12\x17\n\nstart_date\x18\x04 \x01(\tH\x03\x88\x01\x01\x12\x15\n\x08\x65nd_date\x18\x05 \x01(\tH\x04\x88\x01\x01\x42\x08\n\x06_boostB\x08\n\x06_fieldB\x13\n\x11_date_time_parserB\r\n\x0b_start_dateB\x0b\n\t_end_date\"\x7f\n\x10\x44isjunctionQuery\x12\x12\n\x05\x62oost\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12+\n\x07queries\x18\x02 \x03(\x0b\x32\x1a.couchbase.search.v1.Query\x12\x14\n\x07minimum\x18\x03 \x01(\rH\x01\x88\x01\x01\x42\x08\n\x06_boostB\n\n\x08_minimum\"7\n\nDocIdQuery\x12\x12\n\x05\x62oost\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12\x0b\n\x03ids\x18\x03 \x03(\tB\x08\n\x06_boost\"-\n\x06LatLng\x12\x10\n\x08latitude\x18\x01 \x01(\x01\x12\x11\n\tlongitude\x18\x02 \x01(\x01\"\xb3\x01\n\x13GeoBoundingBoxQuery\x12\x12\n\x05\x62oost\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12\x12\n\x05\x66ield\x18\x02 \x01(\tH\x01\x88\x01\x01\x12-\n\x08top_left\x18\x03 \x01(\x0b\x32\x1b.couchbase.search.v1.LatLng\x12\x31\n\x0c\x62ottom_right\x18\x04 \x01(\x0b\x32\x1b.couchbase.search.v1.LatLngB\x08\n\x06_boostB\x08\n\x06_field\"\x8d\x01\n\x10GeoDistanceQuery\x12\x12\n\x05\x62oost\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12\x12\n\x05\x66ield\x18\x02 \x01(\tH\x01\x88\x01\x01\x12+\n\x06\x63\x65nter\x18\x03 \x01(\x0b\x32\x1b.couchbase.search.v1.LatLng\x12\x10\n\x08\x64istance\x18\x04 \x01(\tB\x08\n\x06_boostB\x08\n\x06_field\"|\n\x0fGeoPolygonQuery\x12\x12\n\x05\x62oost\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12\x12\n\x05\x66ield\x18\x02 \x01(\tH\x01\x88\x01\x01\x12-\n\x08vertices\x18\x03 \x03(\x0b\x32\x1b.couchbase.search.v1.LatLngB\x08\n\x06_boostB\x08\n\x06_field\"\x0f\n\rMatchAllQuery\"\x10\n\x0eMatchNoneQuery\"\x82\x01\n\x10MatchPhraseQuery\x12\x12\n\x05\x62oost\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12\x12\n\x05\x66ield\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x0e\n\x06phrase\x18\x03 \x01(\t\x12\x15\n\x08\x61nalyzer\x18\x04 \x01(\tH\x02\x88\x01\x01\x42\x08\n\x06_boostB\x08\n\x06_fieldB\x0b\n\t_analyzer\"\xcc\x02\n\nMatchQuery\x12\x12\n\x05\x62oost\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12\x12\n\x05\x66ield\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\r\n\x05value\x18\x03 \x01(\t\x12\x15\n\x08\x61nalyzer\x18\x04 \x01(\tH\x02\x88\x01\x01\x12\x16\n\tfuzziness\x18\x05 \x01(\x04H\x03\x88\x01\x01\x12?\n\x08operator\x18\x06 \x01(\x0e\x32(.couchbase.search.v1.MatchQuery.OperatorH\x04\x88\x01\x01\x12\x1a\n\rprefix_length\x18\x07 \x01(\x04H\x05\x88\x01\x01\"-\n\x08Operator\x12\x0f\n\x0bOPERATOR_OR\x10\x00\x12\x10\n\x0cOPERATOR_AND\x10\x01\x42\x08\n\x06_boostB\x08\n\x06_fieldB\x0b\n\t_analyzerB\x0c\n\n_fuzzinessB\x0b\n\t_operatorB\x10\n\x0e_prefix_length\"\xdf\x01\n\x11NumericRangeQuery\x12\x12\n\x05\x62oost\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12\x12\n\x05\x66ield\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x10\n\x03min\x18\x03 \x01(\x02H\x02\x88\x01\x01\x12\x10\n\x03max\x18\x04 \x01(\x02H\x03\x88\x01\x01\x12\x1a\n\rinclusive_min\x18\x05 \x01(\x08H\x04\x88\x01\x01\x12\x1a\n\rinclusive_max\x18\x06 \x01(\x08H\x05\x88\x01\x01\x42\x08\n\x06_boostB\x08\n\x06_fieldB\x06\n\x04_minB\x06\n\x04_maxB\x10\n\x0e_inclusive_minB\x10\n\x0e_inclusive_max\"X\n\x0bPhraseQuery\x12\x12\n\x05\x62oost\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12\x12\n\x05\x66ield\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\r\n\x05terms\x18\x03 \x03(\tB\x08\n\x06_boostB\x08\n\x06_field\"Y\n\x0bPrefixQuery\x12\x12\n\x05\x62oost\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12\x12\n\x05\x66ield\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x0e\n\x06prefix\x18\x03 \x01(\tB\x08\n\x06_boostB\x08\n\x06_field\"F\n\x10QueryStringQuery\x12\x12\n\x05\x62oost\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12\x14\n\x0cquery_string\x18\x03 \x01(\tB\x08\n\x06_boost\"Y\n\x0bRegexpQuery\x12\x12\n\x05\x62oost\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12\x12\n\x05\x66ield\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x0e\n\x06regexp\x18\x03 \x01(\tB\x08\n\x06_boostB\x08\n\x06_field\"\xa9\x01\n\tTermQuery\x12\x12\n\x05\x62oost\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12\x12\n\x05\x66ield\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x0c\n\x04term\x18\x03 \x01(\t\x12\x16\n\tfuzziness\x18\x04 \x01(\x04H\x02\x88\x01\x01\x12\x1a\n\rprefix_length\x18\x05 \x01(\x04H\x03\x88\x01\x01\x42\x08\n\x06_boostB\x08\n\x06_fieldB\x0c\n\n_fuzzinessB\x10\n\x0e_prefix_length\"\xdc\x01\n\x0eTermRangeQuery\x12\x12\n\x05\x62oost\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12\x12\n\x05\x66ield\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x10\n\x03min\x18\x05 \x01(\tH\x02\x88\x01\x01\x12\x10\n\x03max\x18\x06 \x01(\tH\x03\x88\x01\x01\x12\x1a\n\rinclusive_min\x18\x07 \x01(\x08H\x04\x88\x01\x01\x12\x1a\n\rinclusive_max\x18\x08 \x01(\x08H\x05\x88\x01\x01\x42\x08\n\x06_boostB\x08\n\x06_fieldB\x06\n\x04_minB\x06\n\x04_maxB\x10\n\x0e_inclusive_minB\x10\n\x0e_inclusive_max\"]\n\rWildcardQuery\x12\x12\n\x05\x62oost\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12\x12\n\x05\x66ield\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x10\n\x08wildcard\x18\x03 \x01(\tB\x08\n\x06_boostB\x08\n\x06_field\"\xd5\n\n\x05Query\x12\x45\n\x13\x62oolean_field_query\x18\x01 \x01(\x0b\x32&.couchbase.search.v1.BooleanFieldQueryH\x00\x12:\n\rboolean_query\x18\x02 \x01(\x0b\x32!.couchbase.search.v1.BooleanQueryH\x00\x12\x42\n\x11\x63onjunction_query\x18\x03 \x01(\x0b\x32%.couchbase.search.v1.ConjunctionQueryH\x00\x12?\n\x10\x64\x61te_range_query\x18\x04 \x01(\x0b\x32#.couchbase.search.v1.DateRangeQueryH\x00\x12\x42\n\x11\x64isjunction_query\x18\x05 \x01(\x0b\x32%.couchbase.search.v1.DisjunctionQueryH\x00\x12\x37\n\x0c\x64oc_id_query\x18\x06 \x01(\x0b\x32\x1f.couchbase.search.v1.DocIdQueryH\x00\x12J\n\x16geo_bounding_box_query\x18\x07 \x01(\x0b\x32(.couchbase.search.v1.GeoBoundingBoxQueryH\x00\x12\x43\n\x12geo_distance_query\x18\x08 \x01(\x0b\x32%.couchbase.search.v1.GeoDistanceQueryH\x00\x12\x41\n\x11geo_polygon_query\x18\t \x01(\x0b\x32$.couchbase.search.v1.GeoPolygonQueryH\x00\x12=\n\x0fmatch_all_query\x18\n \x01(\x0b\x32\".couchbase.search.v1.MatchAllQueryH\x00\x12?\n\x10match_none_query\x18\x0b \x01(\x0b\x32#.couchbase.search.v1.MatchNoneQueryH\x00\x12\x43\n\x12match_phrase_query\x18\x0c \x01(\x0b\x32%.couchbase.search.v1.MatchPhraseQueryH\x00\x12\x36\n\x0bmatch_query\x18\r \x01(\x0b\x32\x1f.couchbase.search.v1.MatchQueryH\x00\x12\x45\n\x13numeric_range_query\x18\x0e \x01(\x0b\x32&.couchbase.search.v1.NumericRangeQueryH\x00\x12\x38\n\x0cphrase_query\x18\x0f \x01(\x0b\x32 .couchbase.search.v1.PhraseQueryH\x00\x12\x38\n\x0cprefix_query\x18\x10 \x01(\x0b\x32 .couchbase.search.v1.PrefixQueryH\x00\x12\x43\n\x12query_string_query\x18\x11 \x01(\x0b\x32%.couchbase.search.v1.QueryStringQueryH\x00\x12\x38\n\x0cregexp_query\x18\x12 \x01(\x0b\x32 .couchbase.search.v1.RegexpQueryH\x00\x12\x34\n\nterm_query\x18\x13 \x01(\x0b\x32\x1e.couchbase.search.v1.TermQueryH\x00\x12?\n\x10term_range_query\x18\x14 \x01(\x0b\x32#.couchbase.search.v1.TermRangeQueryH\x00\x12<\n\x0ewildcard_query\x18\x15 \x01(\x0b\x32\".couchbase.search.v1.WildcardQueryH\x00\x42\x07\n\x05query\"^\n\x0c\x46ieldSorting\x12\r\n\x05\x66ield\x18\x01 \x01(\t\x12\x12\n\ndescending\x18\x02 \x01(\x08\x12\x0f\n\x07missing\x18\x03 \x01(\t\x12\x0c\n\x04mode\x18\x04 \x01(\t\x12\x0c\n\x04type\x18\x05 \x01(\t\"r\n\x12GeoDistanceSorting\x12\r\n\x05\x66ield\x18\x01 \x01(\t\x12\x12\n\ndescending\x18\x02 \x01(\x08\x12+\n\x06\x63\x65nter\x18\x03 \x01(\x0b\x32\x1b.couchbase.search.v1.LatLng\x12\x0c\n\x04unit\x18\x04 \x01(\t\"\x1f\n\tIdSorting\x12\x12\n\ndescending\x18\x01 \x01(\x08\"\"\n\x0cScoreSorting\x12\x12\n\ndescending\x18\x01 \x01(\x08\"\x8b\x02\n\x07Sorting\x12:\n\rfield_sorting\x18\x01 \x01(\x0b\x32!.couchbase.search.v1.FieldSortingH\x00\x12G\n\x14geo_distance_sorting\x18\x02 \x01(\x0b\x32\'.couchbase.search.v1.GeoDistanceSortingH\x00\x12\x34\n\nid_sorting\x18\x03 \x01(\x0b\x32\x1e.couchbase.search.v1.IdSortingH\x00\x12:\n\rscore_sorting\x18\x04 \x01(\x0b\x32!.couchbase.search.v1.ScoreSortingH\x00\x42\t\n\x07sorting\"Q\n\tDateRange\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x12\n\x05start\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x03\x65nd\x18\x03 \x01(\tH\x01\x88\x01\x01\x42\x08\n\x06_startB\x06\n\x04_end\"b\n\x0e\x44\x61teRangeFacet\x12\r\n\x05\x66ield\x18\x01 \x01(\t\x12\x0c\n\x04size\x18\x02 \x01(\r\x12\x33\n\x0b\x64\x61te_ranges\x18\x03 \x03(\x0b\x32\x1e.couchbase.search.v1.DateRange\"P\n\x0cNumericRange\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x10\n\x03min\x18\x02 \x01(\x02H\x00\x88\x01\x01\x12\x10\n\x03max\x18\x03 \x01(\x02H\x01\x88\x01\x01\x42\x06\n\x04_minB\x06\n\x04_max\"k\n\x11NumericRangeFacet\x12\r\n\x05\x66ield\x18\x01 \x01(\t\x12\x0c\n\x04size\x18\x02 \x01(\r\x12\x39\n\x0enumeric_ranges\x18\x03 \x03(\x0b\x32!.couchbase.search.v1.NumericRange\"(\n\tTermFacet\x12\r\n\x05\x66ield\x18\x01 \x01(\t\x12\x0c\n\x04size\x18\x02 \x01(\r\"\xce\x01\n\x05\x46\x61\x63\x65t\x12?\n\x10\x64\x61te_range_facet\x18\x01 \x01(\x0b\x32#.couchbase.search.v1.DateRangeFacetH\x00\x12\x45\n\x13numeric_range_facet\x18\x02 \x01(\x0b\x32&.couchbase.search.v1.NumericRangeFacetH\x00\x12\x34\n\nterm_facet\x18\x03 \x01(\x0b\x32\x1e.couchbase.search.v1.TermFacetH\x00\x42\x07\n\x05\x66\x61\x63\x65t\"R\n\x08KnnQuery\x12\r\n\x05\x66ield\x18\x01 \x01(\t\x12\t\n\x01k\x18\x02 \x01(\x03\x12\x0e\n\x06vector\x18\x03 \x03(\x02\x12\x12\n\x05\x62oost\x18\x04 \x01(\x02H\x00\x88\x01\x01\x42\x08\n\x06_boost\"\xc4\x07\n\x12SearchQueryRequest\x12\x12\n\nindex_name\x18\x01 \x01(\t\x12)\n\x05query\x18\x02 \x01(\x0b\x32\x1a.couchbase.search.v1.Query\x12Q\n\x10scan_consistency\x18\x03 \x01(\x0e\x32\x37.couchbase.search.v1.SearchQueryRequest.ScanConsistency\x12\r\n\x05limit\x18\x04 \x01(\r\x12\x0c\n\x04skip\x18\x05 \x01(\r\x12\x1b\n\x13include_explanation\x18\x06 \x01(\x08\x12O\n\x0fhighlight_style\x18\x07 \x01(\x0e\x32\x36.couchbase.search.v1.SearchQueryRequest.HighlightStyle\x12\x18\n\x10highlight_fields\x18\x08 \x03(\t\x12\x0e\n\x06\x66ields\x18\t \x03(\t\x12*\n\x04sort\x18\n \x03(\x0b\x32\x1c.couchbase.search.v1.Sorting\x12\x17\n\x0f\x64isable_scoring\x18\x0b \x01(\x08\x12\x13\n\x0b\x63ollections\x18\x0c \x03(\t\x12\x19\n\x11include_locations\x18\r \x01(\x08\x12\x43\n\x06\x66\x61\x63\x65ts\x18\x0e \x03(\x0b\x32\x33.couchbase.search.v1.SearchQueryRequest.FacetsEntry\x12*\n\x03knn\x18\x11 \x03(\x0b\x32\x1d.couchbase.search.v1.KnnQuery\x12;\n\x0cknn_operator\x18\x12 \x01(\x0e\x32 .couchbase.search.v1.KnnOperatorH\x00\x88\x01\x01\x12\x18\n\x0b\x62ucket_name\x18\x0f \x01(\tH\x01\x88\x01\x01\x12\x17\n\nscope_name\x18\x10 \x01(\tH\x02\x88\x01\x01\x1aI\n\x0b\x46\x61\x63\x65tsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12)\n\x05value\x18\x02 \x01(\x0b\x32\x1a.couchbase.search.v1.Facet:\x02\x38\x01\"3\n\x0fScanConsistency\x12 \n\x1cSCAN_CONSISTENCY_NOT_BOUNDED\x10\x00\"a\n\x0eHighlightStyle\x12\x1b\n\x17HIGHLIGHT_STYLE_DEFAULT\x10\x00\x12\x18\n\x14HIGHLIGHT_STYLE_HTML\x10\x01\x12\x18\n\x14HIGHLIGHT_STYLE_ANSI\x10\x02\x42\x0f\n\r_knn_operatorB\x0e\n\x0c_bucket_nameB\r\n\x0b_scope_name\"\x9a\x13\n\x13SearchQueryResponse\x12\x45\n\x04hits\x18\x01 \x03(\x0b\x32\x37.couchbase.search.v1.SearchQueryResponse.SearchQueryRow\x12\x44\n\x06\x66\x61\x63\x65ts\x18\x02 \x03(\x0b\x32\x34.couchbase.search.v1.SearchQueryResponse.FacetsEntry\x12I\n\tmeta_data\x18\x03 \x01(\x0b\x32\x31.couchbase.search.v1.SearchQueryResponse.MetaDataH\x00\x88\x01\x01\x1a\xd9\x03\n\x0eSearchQueryRow\x12\n\n\x02id\x18\x01 \x01(\t\x12\r\n\x05score\x18\x02 \x01(\x01\x12\r\n\x05index\x18\x03 \x01(\t\x12\x13\n\x0b\x65xplanation\x18\x04 \x01(\x0c\x12\x44\n\tlocations\x18\x05 \x03(\x0b\x32\x31.couchbase.search.v1.SearchQueryResponse.Location\x12Y\n\tfragments\x18\x06 \x03(\x0b\x32\x46.couchbase.search.v1.SearchQueryResponse.SearchQueryRow.FragmentsEntry\x12S\n\x06\x66ields\x18\x07 \x03(\x0b\x32\x43.couchbase.search.v1.SearchQueryResponse.SearchQueryRow.FieldsEntry\x1a\x63\n\x0e\x46ragmentsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12@\n\x05value\x18\x02 \x01(\x0b\x32\x31.couchbase.search.v1.SearchQueryResponse.Fragment:\x02\x38\x01\x1a-\n\x0b\x46ieldsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x0c:\x02\x38\x01\x1an\n\x08Location\x12\r\n\x05\x66ield\x18\x01 \x01(\t\x12\x0c\n\x04term\x18\x02 \x01(\t\x12\x10\n\x08position\x18\x03 \x01(\r\x12\r\n\x05start\x18\x04 \x01(\r\x12\x0b\n\x03\x65nd\x18\x05 \x01(\r\x12\x17\n\x0f\x61rray_positions\x18\x06 \x03(\r\x1a\x1b\n\x08\x46ragment\x12\x0f\n\x07\x63ontent\x18\x01 \x03(\t\x1a\xa9\x02\n\x0b\x46\x61\x63\x65tResult\x12N\n\nterm_facet\x18\x01 \x01(\x0b\x32\x38.couchbase.search.v1.SearchQueryResponse.TermFacetResultH\x00\x12Y\n\x10\x64\x61te_range_facet\x18\x02 \x01(\x0b\x32=.couchbase.search.v1.SearchQueryResponse.DateRangeFacetResultH\x00\x12_\n\x13numeric_range_facet\x18\x03 \x01(\x0b\x32@.couchbase.search.v1.SearchQueryResponse.NumericRangeFacetResultH\x00\x42\x0e\n\x0csearch_facet\x1a\x37\n\nTermResult\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05\x66ield\x18\x02 \x01(\t\x12\x0c\n\x04size\x18\x03 \x01(\x04\x1a\x99\x01\n\x0fTermFacetResult\x12\r\n\x05\x66ield\x18\x02 \x01(\t\x12\r\n\x05total\x18\x03 \x01(\x03\x12\x0f\n\x07missing\x18\x04 \x01(\x03\x12\r\n\x05other\x18\x05 \x01(\x03\x12\x42\n\x05terms\x18\x06 \x03(\x0b\x32\x33.couchbase.search.v1.SearchQueryResponse.TermResultJ\x04\x08\x01\x10\x02\x1a\x81\x01\n\x0f\x44\x61teRangeResult\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0c\n\x04size\x18\x02 \x01(\x04\x12)\n\x05start\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\'\n\x03\x65nd\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x1a\xa9\x01\n\x14\x44\x61teRangeFacetResult\x12\r\n\x05\x66ield\x18\x02 \x01(\t\x12\r\n\x05total\x18\x03 \x01(\x03\x12\x0f\n\x07missing\x18\x04 \x01(\x03\x12\r\n\x05other\x18\x05 \x01(\x03\x12M\n\x0b\x64\x61te_ranges\x18\x06 \x03(\x0b\x32\x38.couchbase.search.v1.SearchQueryResponse.DateRangeResultJ\x04\x08\x01\x10\x02\x1aJ\n\x12NumericRangeResult\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0c\n\x04size\x18\x02 \x01(\x04\x12\x0b\n\x03min\x18\x03 \x01(\x04\x12\x0b\n\x03max\x18\x04 \x01(\x04\x1a\xb2\x01\n\x17NumericRangeFacetResult\x12\r\n\x05\x66ield\x18\x02 \x01(\t\x12\r\n\x05total\x18\x03 \x01(\x03\x12\x0f\n\x07missing\x18\x04 \x01(\x03\x12\r\n\x05other\x18\x05 \x01(\x03\x12S\n\x0enumeric_ranges\x18\x06 \x03(\x0b\x32;.couchbase.search.v1.SearchQueryResponse.NumericRangeResultJ\x04\x08\x01\x10\x02\x1a\xd1\x01\n\x08MetaData\x12G\n\x07metrics\x18\x01 \x01(\x0b\x32\x36.couchbase.search.v1.SearchQueryResponse.SearchMetrics\x12M\n\x06\x65rrors\x18\x02 \x03(\x0b\x32=.couchbase.search.v1.SearchQueryResponse.MetaData.ErrorsEntry\x1a-\n\x0b\x45rrorsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a\xc8\x01\n\rSearchMetrics\x12\x31\n\x0e\x65xecution_time\x18\x01 \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x12\n\ntotal_rows\x18\x02 \x01(\x04\x12\x11\n\tmax_score\x18\x03 \x01(\x01\x12\x1d\n\x15total_partition_count\x18\x04 \x01(\x04\x12\x1f\n\x17success_partition_count\x18\x05 \x01(\x04\x12\x1d\n\x15\x65rror_partition_count\x18\x06 \x01(\x04\x1a\x63\n\x0b\x46\x61\x63\x65tsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x43\n\x05value\x18\x02 \x01(\x0b\x32\x34.couchbase.search.v1.SearchQueryResponse.FacetResult:\x02\x38\x01\x42\x0c\n\n_meta_data*8\n\x0bKnnOperator\x12\x13\n\x0fKNN_OPERATOR_OR\x10\x00\x12\x14\n\x10KNN_OPERATOR_AND\x10\x01\x32u\n\rSearchService\x12\x64\n\x0bSearchQuery\x12\'.couchbase.search.v1.SearchQueryRequest\x1a(.couchbase.search.v1.SearchQueryResponse\"\x00\x30\x01\x42\xf2\x01\n+com.couchbase.client.protostellar.search.v1P\x01Z@github.com/couchbase/goprotostellar/genproto/search_v1;search_v1\xaa\x02 Couchbase.Protostellar.Search.V1\xca\x02*Couchbase\\Protostellar\\Generated\\Search\\V1\xea\x02.Couchbase::Protostellar::Generated::Search::V1b\x06proto3"
12
12
 
13
- pool = Google::Protobuf::DescriptorPool.generated_pool
14
-
15
- begin
16
- pool.add_serialized_file(descriptor_data)
17
- rescue TypeError => e
18
- # Compatibility code: will be removed in the next major version.
19
- require 'google/protobuf/descriptor_pb'
20
- parsed = Google::Protobuf::FileDescriptorProto.decode(descriptor_data)
21
- parsed.clear_dependency
22
- serialized = parsed.class.encode(parsed)
23
- file = pool.add_serialized_file(serialized)
24
- warn "Warning: Protobuf detected an import path issue while loading generated file #{__FILE__}"
25
- imports = [
26
- ["google.protobuf.Timestamp", "google/protobuf/timestamp.proto"],
27
- ["google.protobuf.Duration", "google/protobuf/duration.proto"],
28
- ]
29
- imports.each do |type_name, expected_filename|
30
- import_file = pool.lookup(type_name).file_descriptor
31
- if import_file.name != expected_filename
32
- warn "- #{file.name} imports #{expected_filename}, but that import was loaded as #{import_file.name}"
33
- end
34
- end
35
- warn "Each proto file must use a consistent fully-qualified name."
36
- warn "This will become an error in the next major version."
37
- end
13
+ pool = ::Google::Protobuf::DescriptorPool.generated_pool
14
+ pool.add_serialized_file(descriptor_data)
38
15
 
39
16
  module Couchbase
40
17
  module Protostellar
@@ -76,6 +53,7 @@ module Couchbase
76
53
  NumericRangeFacet = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("couchbase.search.v1.NumericRangeFacet").msgclass
77
54
  TermFacet = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("couchbase.search.v1.TermFacet").msgclass
78
55
  Facet = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("couchbase.search.v1.Facet").msgclass
56
+ KnnQuery = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("couchbase.search.v1.KnnQuery").msgclass
79
57
  SearchQueryRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("couchbase.search.v1.SearchQueryRequest").msgclass
80
58
  SearchQueryRequest::ScanConsistency = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("couchbase.search.v1.SearchQueryRequest.ScanConsistency").enummodule
81
59
  SearchQueryRequest::HighlightStyle = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("couchbase.search.v1.SearchQueryRequest.HighlightStyle").enummodule
@@ -92,6 +70,7 @@ module Couchbase
92
70
  SearchQueryResponse::NumericRangeFacetResult = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("couchbase.search.v1.SearchQueryResponse.NumericRangeFacetResult").msgclass
93
71
  SearchQueryResponse::MetaData = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("couchbase.search.v1.SearchQueryResponse.MetaData").msgclass
94
72
  SearchQueryResponse::SearchMetrics = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("couchbase.search.v1.SearchQueryResponse.SearchMetrics").msgclass
73
+ KnnOperator = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("couchbase.search.v1.KnnOperator").enummodule
95
74
  end
96
75
  end
97
76
  end
@@ -1,5 +1,11 @@
1
1
  # Generated by the protocol buffer compiler. DO NOT EDIT!
2
2
  # Source: couchbase/search/v1/search.proto for package 'Couchbase.Protostellar.Generated.Search.V1'
3
+ # Original file comments:
4
+ # Search (Full-Text Search) Service
5
+ #
6
+ # Provides full-text search (FTS) queries against Couchbase search indexes.
7
+ # Supports 21 query types, geo queries, KNN vector search, sorting, facets,
8
+ # and highlighting. Results are server-streamed.
3
9
 
4
10
  require 'grpc'
5
11
  require 'couchbase/protostellar/generated/search/v1/search_pb'
@@ -10,6 +16,9 @@ module Couchbase
10
16
  module Search
11
17
  module V1
12
18
  module SearchService
19
+ # ---- Service ----
20
+ #
21
+ # SearchService provides full-text search query execution.
13
22
  class Service
14
23
 
15
24
  include ::GRPC::GenericService
@@ -18,6 +27,8 @@ module Couchbase
18
27
  self.unmarshal_class_method = :decode
19
28
  self.service_name = 'couchbase.search.v1.SearchService'
20
29
 
30
+ # SearchQuery executes a search query against a named index and streams
31
+ # back hits, facet results, and metadata.
21
32
  rpc :SearchQuery, ::Couchbase::Protostellar::Generated::Search::V1::SearchQueryRequest, stream(::Couchbase::Protostellar::Generated::Search::V1::SearchQueryResponse)
22
33
  end
23
34
 
@@ -7,29 +7,8 @@ require 'google/protobuf'
7
7
 
8
8
  descriptor_data = "\n,couchbase/transactions/v1/transactions.proto\x12\x19\x63ouchbase.transactions.v1\"e\n\x1eTransactionBeginAttemptRequest\x12\x13\n\x0b\x62ucket_name\x18\x01 \x01(\t\x12\x1b\n\x0etransaction_id\x18\x02 \x01(\tH\x00\x88\x01\x01\x42\x11\n\x0f_transaction_id\"M\n\x1fTransactionBeginAttemptResponse\x12\x16\n\x0etransaction_id\x18\x01 \x01(\t\x12\x12\n\nattempt_id\x18\x02 \x01(\t\"[\n\x18TransactionCommitRequest\x12\x13\n\x0b\x62ucket_name\x18\x01 \x01(\t\x12\x16\n\x0etransaction_id\x18\x02 \x01(\t\x12\x12\n\nattempt_id\x18\x03 \x01(\t\"\x1b\n\x19TransactionCommitResponse\"]\n\x1aTransactionRollbackRequest\x12\x13\n\x0b\x62ucket_name\x18\x01 \x01(\t\x12\x16\n\x0etransaction_id\x18\x02 \x01(\t\x12\x12\n\nattempt_id\x18\x03 \x01(\t\"\x1d\n\x1bTransactionRollbackResponse\"\x92\x01\n\x15TransactionGetRequest\x12\x13\n\x0b\x62ucket_name\x18\x01 \x01(\t\x12\x16\n\x0etransaction_id\x18\x02 \x01(\t\x12\x12\n\nattempt_id\x18\x03 \x01(\t\x12\x12\n\nscope_name\x18\x04 \x01(\t\x12\x17\n\x0f\x63ollection_name\x18\x05 \x01(\t\x12\x0b\n\x03key\x18\x06 \x01(\t\"4\n\x16TransactionGetResponse\x12\x0b\n\x03\x63\x61s\x18\x01 \x01(\x04\x12\r\n\x05value\x18\x02 \x01(\x0c\"\xa4\x01\n\x18TransactionInsertRequest\x12\x13\n\x0b\x62ucket_name\x18\x01 \x01(\t\x12\x16\n\x0etransaction_id\x18\x02 \x01(\t\x12\x12\n\nattempt_id\x18\x03 \x01(\t\x12\x12\n\nscope_name\x18\x04 \x01(\t\x12\x17\n\x0f\x63ollection_name\x18\x05 \x01(\t\x12\x0b\n\x03key\x18\x06 \x01(\t\x12\r\n\x05value\x18\x07 \x01(\x0c\"(\n\x19TransactionInsertResponse\x12\x0b\n\x03\x63\x61s\x18\x01 \x01(\x04\"\xb2\x01\n\x19TransactionReplaceRequest\x12\x13\n\x0b\x62ucket_name\x18\x01 \x01(\t\x12\x16\n\x0etransaction_id\x18\x02 \x01(\t\x12\x12\n\nattempt_id\x18\x03 \x01(\t\x12\x12\n\nscope_name\x18\x04 \x01(\t\x12\x17\n\x0f\x63ollection_name\x18\x05 \x01(\t\x12\x0b\n\x03key\x18\x06 \x01(\t\x12\x0b\n\x03\x63\x61s\x18\x07 \x01(\x04\x12\r\n\x05value\x18\x08 \x01(\x0c\")\n\x1aTransactionReplaceResponse\x12\x0b\n\x03\x63\x61s\x18\x01 \x01(\x04\"\xa2\x01\n\x18TransactionRemoveRequest\x12\x13\n\x0b\x62ucket_name\x18\x01 \x01(\t\x12\x16\n\x0etransaction_id\x18\x02 \x01(\t\x12\x12\n\nattempt_id\x18\x03 \x01(\t\x12\x12\n\nscope_name\x18\x04 \x01(\t\x12\x17\n\x0f\x63ollection_name\x18\x05 \x01(\t\x12\x0b\n\x03key\x18\x06 \x01(\t\x12\x0b\n\x03\x63\x61s\x18\x07 \x01(\x04\"(\n\x19TransactionRemoveResponse\x12\x0b\n\x03\x63\x61s\x18\x01 \x01(\x04\x32\xbb\x07\n\x13TransactionsService\x12\x92\x01\n\x17TransactionBeginAttempt\x12\x39.couchbase.transactions.v1.TransactionBeginAttemptRequest\x1a:.couchbase.transactions.v1.TransactionBeginAttemptResponse\"\x00\x12\x80\x01\n\x11TransactionCommit\x12\x33.couchbase.transactions.v1.TransactionCommitRequest\x1a\x34.couchbase.transactions.v1.TransactionCommitResponse\"\x00\x12\x86\x01\n\x13TransactionRollback\x12\x35.couchbase.transactions.v1.TransactionRollbackRequest\x1a\x36.couchbase.transactions.v1.TransactionRollbackResponse\"\x00\x12w\n\x0eTransactionGet\x12\x30.couchbase.transactions.v1.TransactionGetRequest\x1a\x31.couchbase.transactions.v1.TransactionGetResponse\"\x00\x12\x80\x01\n\x11TransactionInsert\x12\x33.couchbase.transactions.v1.TransactionInsertRequest\x1a\x34.couchbase.transactions.v1.TransactionInsertResponse\"\x00\x12\x83\x01\n\x12TransactionReplace\x12\x34.couchbase.transactions.v1.TransactionReplaceRequest\x1a\x35.couchbase.transactions.v1.TransactionReplaceResponse\"\x00\x12\x80\x01\n\x11TransactionRemove\x12\x33.couchbase.transactions.v1.TransactionRemoveRequest\x1a\x34.couchbase.transactions.v1.TransactionRemoveResponse\"\x00\x42\x96\x02\n1com.couchbase.client.protostellar.transactions.v1P\x01ZLgithub.com/couchbase/goprotostellar/genproto/transactions_v1;transactions_v1\xaa\x02&Couchbase.Protostellar.Transactions.V1\xca\x02\x30\x43ouchbase\\Protostellar\\Generated\\Transactions\\V1\xea\x02\x34\x43ouchbase::Protostellar::Generated::Transactions::V1b\x06proto3"
9
9
 
10
- pool = Google::Protobuf::DescriptorPool.generated_pool
11
-
12
- begin
13
- pool.add_serialized_file(descriptor_data)
14
- rescue TypeError => e
15
- # Compatibility code: will be removed in the next major version.
16
- require 'google/protobuf/descriptor_pb'
17
- parsed = Google::Protobuf::FileDescriptorProto.decode(descriptor_data)
18
- parsed.clear_dependency
19
- serialized = parsed.class.encode(parsed)
20
- file = pool.add_serialized_file(serialized)
21
- warn "Warning: Protobuf detected an import path issue while loading generated file #{__FILE__}"
22
- imports = [
23
- ]
24
- imports.each do |type_name, expected_filename|
25
- import_file = pool.lookup(type_name).file_descriptor
26
- if import_file.name != expected_filename
27
- warn "- #{file.name} imports #{expected_filename}, but that import was loaded as #{import_file.name}"
28
- end
29
- end
30
- warn "Each proto file must use a consistent fully-qualified name."
31
- warn "This will become an error in the next major version."
32
- end
10
+ pool = ::Google::Protobuf::DescriptorPool.generated_pool
11
+ pool.add_serialized_file(descriptor_data)
33
12
 
34
13
  module Couchbase
35
14
  module Protostellar
@@ -1,5 +1,15 @@
1
1
  # Generated by the protocol buffer compiler. DO NOT EDIT!
2
2
  # Source: couchbase/transactions/v1/transactions.proto for package 'Couchbase.Protostellar.Generated.Transactions.V1'
3
+ # Original file comments:
4
+ # Transactions Service
5
+ #
6
+ # Provides server-managed distributed ACID transactions against a
7
+ # Couchbase cluster. The transaction lifecycle is:
8
+ # 1. BeginAttempt — start a new transaction attempt.
9
+ # 2. Perform data operations (Get, Insert, Replace, Remove) within
10
+ # the transaction context.
11
+ # 3. Commit or Rollback the transaction attempt.
12
+ # Each attempt is identified by a (transaction_id, attempt_id) pair.
3
13
 
4
14
  require 'grpc'
5
15
  require 'couchbase/protostellar/generated/transactions/v1/transactions_pb'
@@ -10,6 +20,9 @@ module Couchbase
10
20
  module Transactions
11
21
  module V1
12
22
  module TransactionsService
23
+ # TransactionsService provides distributed ACID transactions.
24
+ # All data operations must reference a valid transaction_id and attempt_id
25
+ # obtained from TransactionBeginAttempt.
13
26
  class Service
14
27
 
15
28
  include ::GRPC::GenericService
@@ -18,12 +31,29 @@ module Couchbase
18
31
  self.unmarshal_class_method = :decode
19
32
  self.service_name = 'couchbase.transactions.v1.TransactionsService'
20
33
 
34
+ # TransactionBeginAttempt starts a new transaction attempt. Returns
35
+ # a transaction_id and attempt_id to use for all subsequent operations.
36
+ # If transaction_id is provided, this begins a retry attempt for an
37
+ # existing transaction.
21
38
  rpc :TransactionBeginAttempt, ::Couchbase::Protostellar::Generated::Transactions::V1::TransactionBeginAttemptRequest, ::Couchbase::Protostellar::Generated::Transactions::V1::TransactionBeginAttemptResponse
39
+ # TransactionCommit commits all mutations made within the transaction
40
+ # attempt, making them visible to other operations.
22
41
  rpc :TransactionCommit, ::Couchbase::Protostellar::Generated::Transactions::V1::TransactionCommitRequest, ::Couchbase::Protostellar::Generated::Transactions::V1::TransactionCommitResponse
42
+ # TransactionRollback aborts the transaction attempt and discards
43
+ # all uncommitted mutations.
23
44
  rpc :TransactionRollback, ::Couchbase::Protostellar::Generated::Transactions::V1::TransactionRollbackRequest, ::Couchbase::Protostellar::Generated::Transactions::V1::TransactionRollbackResponse
45
+ # TransactionGet retrieves a document within the transaction context.
46
+ # The returned CAS must be used for subsequent Replace or Remove
47
+ # operations on this document within the same transaction.
24
48
  rpc :TransactionGet, ::Couchbase::Protostellar::Generated::Transactions::V1::TransactionGetRequest, ::Couchbase::Protostellar::Generated::Transactions::V1::TransactionGetResponse
49
+ # TransactionInsert creates a new document within the transaction.
50
+ # Fails if the document already exists.
25
51
  rpc :TransactionInsert, ::Couchbase::Protostellar::Generated::Transactions::V1::TransactionInsertRequest, ::Couchbase::Protostellar::Generated::Transactions::V1::TransactionInsertResponse
52
+ # TransactionReplace replaces an existing document within the transaction.
53
+ # Requires the CAS from a prior TransactionGet.
26
54
  rpc :TransactionReplace, ::Couchbase::Protostellar::Generated::Transactions::V1::TransactionReplaceRequest, ::Couchbase::Protostellar::Generated::Transactions::V1::TransactionReplaceResponse
55
+ # TransactionRemove removes a document within the transaction.
56
+ # Requires the CAS from a prior TransactionGet.
27
57
  rpc :TransactionRemove, ::Couchbase::Protostellar::Generated::Transactions::V1::TransactionRemoveRequest, ::Couchbase::Protostellar::Generated::Transactions::V1::TransactionRemoveResponse
28
58
  end
29
59
 
@@ -7,29 +7,8 @@ require 'google/protobuf'
7
7
 
8
8
  descriptor_data = "\n\x1c\x63ouchbase/view/v1/view.proto\x12\x11\x63ouchbase.view.v1\"\xa0\t\n\x10ViewQueryRequest\x12\x13\n\x0b\x62ucket_name\x18\x08 \x01(\t\x12\x1c\n\x14\x64\x65sign_document_name\x18\x01 \x01(\t\x12\x11\n\tview_name\x18\x02 \x01(\t\x12\x11\n\x04skip\x18\x03 \x01(\rH\x00\x88\x01\x01\x12\x12\n\x05limit\x18\x04 \x01(\rH\x01\x88\x01\x01\x12R\n\x10scan_consistency\x18\x05 \x01(\x0e\x32\x33.couchbase.view.v1.ViewQueryRequest.ScanConsistencyH\x02\x88\x01\x01\x12\x13\n\x06reduce\x18\x06 \x01(\x08H\x03\x88\x01\x01\x12\x12\n\x05group\x18\x07 \x01(\x08H\x04\x88\x01\x01\x12\x18\n\x0bgroup_level\x18\t \x01(\rH\x05\x88\x01\x01\x12\x10\n\x03key\x18\n \x01(\x0cH\x06\x88\x01\x01\x12\x0c\n\x04keys\x18\x0b \x03(\x0c\x12\x16\n\tstart_key\x18\x0c \x01(\x0cH\x07\x88\x01\x01\x12\x14\n\x07\x65nd_key\x18\r \x01(\x0cH\x08\x88\x01\x01\x12\x1a\n\rinclusive_end\x18\x0e \x01(\x08H\t\x88\x01\x01\x12\x1d\n\x10start_key_doc_id\x18\x0f \x01(\tH\n\x88\x01\x01\x12\x1b\n\x0e\x65nd_key_doc_id\x18\x10 \x01(\tH\x0b\x88\x01\x01\x12\x44\n\x08on_error\x18\x11 \x01(\x0e\x32-.couchbase.view.v1.ViewQueryRequest.ErrorModeH\x0c\x88\x01\x01\x12\x12\n\x05\x64\x65\x62ug\x18\x12 \x01(\x08H\r\x88\x01\x01\x12\x45\n\tnamespace\x18\x13 \x01(\x0e\x32-.couchbase.view.v1.ViewQueryRequest.NamespaceH\x0e\x88\x01\x01\x12=\n\x05order\x18\x14 \x01(\x0e\x32).couchbase.view.v1.ViewQueryRequest.OrderH\x0f\x88\x01\x01\"y\n\x0fScanConsistency\x12 \n\x1cSCAN_CONSISTENCY_NOT_BOUNDED\x10\x00\x12!\n\x1dSCAN_CONSISTENCY_REQUEST_PLUS\x10\x01\x12!\n\x1dSCAN_CONSISTENCY_UPDATE_AFTER\x10\x02\"9\n\tErrorMode\x12\x17\n\x13\x45RROR_MODE_CONTINUE\x10\x00\x12\x13\n\x0f\x45RROR_MODE_STOP\x10\x01\"@\n\tNamespace\x12\x18\n\x14NAMESPACE_PRODUCTION\x10\x00\x12\x19\n\x15NAMESPACE_DEVELOPMENT\x10\x01\"2\n\x05Order\x12\x13\n\x0fORDER_ASCENDING\x10\x00\x12\x14\n\x10ORDER_DESCENDING\x10\x01\x42\x07\n\x05_skipB\x08\n\x06_limitB\x13\n\x11_scan_consistencyB\t\n\x07_reduceB\x08\n\x06_groupB\x0e\n\x0c_group_levelB\x06\n\x04_keyB\x0c\n\n_start_keyB\n\n\x08_end_keyB\x10\n\x0e_inclusive_endB\x13\n\x11_start_key_doc_idB\x11\n\x0f_end_key_doc_idB\x0b\n\t_on_errorB\x08\n\x06_debugB\x0c\n\n_namespaceB\x08\n\x06_order\"\xfe\x01\n\x11ViewQueryResponse\x12\x36\n\x04rows\x18\x01 \x03(\x0b\x32(.couchbase.view.v1.ViewQueryResponse.Row\x12\x45\n\tmeta_data\x18\x02 \x01(\x0b\x32-.couchbase.view.v1.ViewQueryResponse.MetaDataH\x00\x88\x01\x01\x1a-\n\x03Row\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0b\n\x03key\x18\x02 \x01(\x0c\x12\r\n\x05value\x18\x03 \x01(\x0c\x1a-\n\x08MetaData\x12\x12\n\ntotal_rows\x18\x01 \x01(\x04\x12\r\n\x05\x64\x65\x62ug\x18\x02 \x01(\x0c\x42\x0c\n\n_meta_data2i\n\x0bViewService\x12Z\n\tViewQuery\x12#.couchbase.view.v1.ViewQueryRequest\x1a$.couchbase.view.v1.ViewQueryResponse\"\x00\x30\x01\x42\xe6\x01\n)com.couchbase.client.protostellar.view.v1P\x01Z<github.com/couchbase/goprotostellar/genproto/view_v1;view_v1\xaa\x02\x1e\x43ouchbase.Protostellar.View.V1\xca\x02(Couchbase\\Protostellar\\Generated\\View\\V1\xea\x02,Couchbase::Protostellar::Generated::View::V1b\x06proto3"
9
9
 
10
- pool = Google::Protobuf::DescriptorPool.generated_pool
11
-
12
- begin
13
- pool.add_serialized_file(descriptor_data)
14
- rescue TypeError => e
15
- # Compatibility code: will be removed in the next major version.
16
- require 'google/protobuf/descriptor_pb'
17
- parsed = Google::Protobuf::FileDescriptorProto.decode(descriptor_data)
18
- parsed.clear_dependency
19
- serialized = parsed.class.encode(parsed)
20
- file = pool.add_serialized_file(serialized)
21
- warn "Warning: Protobuf detected an import path issue while loading generated file #{__FILE__}"
22
- imports = [
23
- ]
24
- imports.each do |type_name, expected_filename|
25
- import_file = pool.lookup(type_name).file_descriptor
26
- if import_file.name != expected_filename
27
- warn "- #{file.name} imports #{expected_filename}, but that import was loaded as #{import_file.name}"
28
- end
29
- end
30
- warn "Each proto file must use a consistent fully-qualified name."
31
- warn "This will become an error in the next major version."
32
- end
10
+ pool = ::Google::Protobuf::DescriptorPool.generated_pool
11
+ pool.add_serialized_file(descriptor_data)
33
12
 
34
13
  module Couchbase
35
14
  module Protostellar
@@ -1,5 +1,11 @@
1
1
  # Generated by the protocol buffer compiler. DO NOT EDIT!
2
2
  # Source: couchbase/view/v1/view.proto for package 'Couchbase.Protostellar.Generated.View.V1'
3
+ # Original file comments:
4
+ # View Service
5
+ #
6
+ # Provides MapReduce view query execution against a Couchbase cluster.
7
+ # Views are defined in design documents and produce key-value results
8
+ # via map and optional reduce functions. Results are server-streamed.
3
9
 
4
10
  require 'grpc'
5
11
  require 'couchbase/protostellar/generated/view/v1/view_pb'
@@ -10,6 +16,7 @@ module Couchbase
10
16
  module View
11
17
  module V1
12
18
  module ViewService
19
+ # ViewService provides MapReduce view query execution.
13
20
  class Service
14
21
 
15
22
  include ::GRPC::GenericService
@@ -18,6 +25,8 @@ module Couchbase
18
25
  self.unmarshal_class_method = :decode
19
26
  self.service_name = 'couchbase.view.v1.ViewService'
20
27
 
28
+ # ViewQuery executes a MapReduce view query and streams back result rows
29
+ # and metadata. The final streamed response contains MetaData.
21
30
  rpc :ViewQuery, ::Couchbase::Protostellar::Generated::View::V1::ViewQueryRequest, stream(::Couchbase::Protostellar::Generated::View::V1::ViewQueryResponse)
22
31
  end
23
32
 
@@ -52,11 +52,13 @@ module Couchbase
52
52
  end
53
53
 
54
54
  def create_collection_request(scope_name, collection_name, settings, options)
55
- proto_opts = {}
56
- proto_opts[:max_expiry_secs] = settings.max_expiry unless settings.max_expiry.nil?
57
55
  unless settings.history.nil?
58
56
  raise Couchbase::Error::FeatureNotAvailable, "The #{Protostellar::NAME} protocol does not support the history setting"
59
57
  end
58
+ raise Couchbase::Error::InvalidArgument, "max_expiry must be a non-negative integer" if settings.max_expiry&.negative?
59
+
60
+ proto_opts = {}
61
+ proto_opts[:max_expiry_secs] = settings.max_expiry unless settings.max_expiry.nil?
60
62
 
61
63
  proto_req = Generated::Admin::Collection::V1::CreateCollectionRequest.new(
62
64
  bucket_name: @bucket_name,
@@ -41,6 +41,7 @@ module Couchbase
41
41
  def create_primary_index_request(options, bucket_name = nil)
42
42
  proto_opts = {
43
43
  deferred: options.deferred,
44
+ ignore_if_exists: options.ignore_if_exists,
44
45
  }
45
46
  proto_opts[:name] = options.index_name unless options.index_name.nil?
46
47
  proto_opts[:num_replicas] = options.num_replicas unless options.num_replicas.nil?
@@ -58,6 +59,7 @@ module Couchbase
58
59
  def create_index_request(index_name, fields, options, bucket_name = nil)
59
60
  proto_opts = {
60
61
  deferred: options.deferred,
62
+ ignore_if_exists: options.ignore_if_exists,
61
63
  }
62
64
  proto_opts[:num_replicas] = options.num_replicas unless options.num_replicas.nil?
63
65
 
@@ -110,7 +110,7 @@ module Couchbase
110
110
  proto_req = Generated::KV::V1::GetAndLockRequest.new(
111
111
  **location,
112
112
  key: id,
113
- lock_time: lock_time.respond_to?(:in_seconds) ? lock_time.in_seconds : lock_time,
113
+ lock_time_secs: lock_time.respond_to?(:in_seconds) ? lock_time.in_seconds : lock_time,
114
114
  )
115
115
 
116
116
  create_kv_request(proto_req, :get_and_lock, options)
@@ -52,6 +52,10 @@ module Couchbase
52
52
  def search(...)
53
53
  raise Error::FeatureNotAvailable, "scope search not supported in #{Protostellar::NAME} mode"
54
54
  end
55
+
56
+ def search_indexes(...)
57
+ raise Error::FeatureNotAvailable, "scope search indexes not supported in #{Protostellar::NAME} mode"
58
+ end
55
59
  end
56
60
  end
57
61
  end
@@ -16,6 +16,8 @@
16
16
 
17
17
  require "couchbase/tracing/request_span"
18
18
  require "couchbase/tracing/request_tracer"
19
+ require "couchbase/tracing/noop_tracer"
20
+ require "couchbase/metrics/noop_meter"
19
21
 
20
22
  require_relative "observability_constants"
21
23
 
@@ -30,7 +32,7 @@ module Couchbase
30
32
  attr_accessor :tracer
31
33
  attr_accessor :meter
32
34
 
33
- def initialize(backend:, tracer: nil, meter: nil)
35
+ def initialize(backend: nil, tracer: nil, meter: nil)
34
36
  @backend = backend
35
37
  @tracer = tracer
36
38
  @meter = meter
@@ -67,10 +69,14 @@ module Couchbase
67
69
  def initialize(backend, op_name, parent_span, receiver, tracer, meter)
68
70
  @tracer = tracer
69
71
  @meter = meter
72
+ @tracer = Tracing::NoopTracer.new if @tracer.nil?
73
+ @meter = Metrics::NoopMeter.new if @meter.nil?
70
74
 
71
- cluster_labels = backend.cluster_labels
72
- @cluster_name = cluster_labels[:cluster_name]
73
- @cluster_uuid = cluster_labels[:cluster_uuid]
75
+ unless backend.nil?
76
+ cluster_labels = backend.cluster_labels
77
+ @cluster_name = cluster_labels[:cluster_name]
78
+ @cluster_uuid = cluster_labels[:cluster_uuid]
79
+ end
74
80
 
75
81
  @op_span = create_span(op_name, parent_span)
76
82
  @meter_attributes = create_meter_attributes
@@ -21,5 +21,5 @@ module Couchbase
21
21
  # $ ruby -rcouchbase -e 'pp Couchbase::VERSION'
22
22
  # {:sdk=>"3.4.0", :ruby_abi=>"3.1.0", :revision=>"416fe68e6029ec8a4c40611cf6e6b30d3b90d20f"}
23
23
  VERSION = {} unless defined?(VERSION) # rubocop:disable Style/MutableConstant
24
- VERSION.update(:sdk => "3.8.0")
24
+ VERSION.update(:sdk => "3.8.1")
25
25
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: couchbase
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.8.0
4
+ version: 3.8.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sergey Avseyev
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2026-03-31 00:00:00.000000000 Z
11
+ date: 2026-07-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: concurrent-ruby
@@ -2486,6 +2486,7 @@ files:
2486
2486
  - ext/couchbase/core/impl/internal_search_row_locations.hxx
2487
2487
  - ext/couchbase/core/impl/internal_term_facet_result.cxx
2488
2488
  - ext/couchbase/core/impl/internal_term_facet_result.hxx
2489
+ - ext/couchbase/core/impl/invoke_with_node_id.hxx
2489
2490
  - ext/couchbase/core/impl/key_value_error_category.cxx
2490
2491
  - ext/couchbase/core/impl/key_value_error_context.cxx
2491
2492
  - ext/couchbase/core/impl/lookup_in_all_replicas.hxx
@@ -2498,6 +2499,8 @@ files:
2498
2499
  - ext/couchbase/core/impl/match_phrase_query.cxx
2499
2500
  - ext/couchbase/core/impl/match_query.cxx
2500
2501
  - ext/couchbase/core/impl/network_error_category.cxx
2502
+ - ext/couchbase/core/impl/node_id.cxx
2503
+ - ext/couchbase/core/impl/node_id.hxx
2501
2504
  - ext/couchbase/core/impl/numeric_range.cxx
2502
2505
  - ext/couchbase/core/impl/numeric_range_facet.cxx
2503
2506
  - ext/couchbase/core/impl/numeric_range_facet_result.cxx
@@ -3154,6 +3157,8 @@ files:
3154
3157
  - ext/couchbase/core/utils/concurrent_fixed_priority_queue.hxx
3155
3158
  - ext/couchbase/core/utils/connection_string.cxx
3156
3159
  - ext/couchbase/core/utils/connection_string.hxx
3160
+ - ext/couchbase/core/utils/contains_string.cxx
3161
+ - ext/couchbase/core/utils/contains_string.hxx
3157
3162
  - ext/couchbase/core/utils/crc32.hxx
3158
3163
  - ext/couchbase/core/utils/duration_parser.cxx
3159
3164
  - ext/couchbase/core/utils/duration_parser.hxx
@@ -3346,6 +3351,9 @@ files:
3346
3351
  - ext/couchbase/couchbase/mutation_state.hxx
3347
3352
  - ext/couchbase/couchbase/mutation_token.hxx
3348
3353
  - ext/couchbase/couchbase/network_options.hxx
3354
+ - ext/couchbase/couchbase/node_id.hxx
3355
+ - ext/couchbase/couchbase/node_id_for_options.hxx
3356
+ - ext/couchbase/couchbase/node_ids_options.hxx
3349
3357
  - ext/couchbase/couchbase/numeric_range.hxx
3350
3358
  - ext/couchbase/couchbase/numeric_range_facet.hxx
3351
3359
  - ext/couchbase/couchbase/numeric_range_facet_result.hxx
@@ -3570,6 +3578,8 @@ files:
3570
3578
  - lib/couchbase/protostellar/connect_options.rb
3571
3579
  - lib/couchbase/protostellar/error_handling.rb
3572
3580
  - lib/couchbase/protostellar/generated.rb
3581
+ - lib/couchbase/protostellar/generated/admin/analytics/v1/analytics_pb.rb
3582
+ - lib/couchbase/protostellar/generated/admin/analytics/v1/analytics_services_pb.rb
3573
3583
  - lib/couchbase/protostellar/generated/admin/bucket/v1/bucket_pb.rb
3574
3584
  - lib/couchbase/protostellar/generated/admin/bucket/v1/bucket_services_pb.rb
3575
3585
  - lib/couchbase/protostellar/generated/admin/collection/v1/collection_pb.rb
@@ -3582,12 +3592,14 @@ files:
3582
3592
  - lib/couchbase/protostellar/generated/analytics/v1/analytics_services_pb.rb
3583
3593
  - lib/couchbase/protostellar/generated/internal/hooks/v1/hooks_pb.rb
3584
3594
  - lib/couchbase/protostellar/generated/internal/hooks/v1/hooks_services_pb.rb
3595
+ - lib/couchbase/protostellar/generated/internal/xdcr/v1/xdcr_pb.rb
3596
+ - lib/couchbase/protostellar/generated/internal/xdcr/v1/xdcr_services_pb.rb
3585
3597
  - lib/couchbase/protostellar/generated/kv/v1/kv_pb.rb
3586
3598
  - lib/couchbase/protostellar/generated/kv/v1/kv_services_pb.rb
3587
3599
  - lib/couchbase/protostellar/generated/query/v1/query_pb.rb
3588
3600
  - lib/couchbase/protostellar/generated/query/v1/query_services_pb.rb
3589
- - lib/couchbase/protostellar/generated/routing/v1/routing_pb.rb
3590
- - lib/couchbase/protostellar/generated/routing/v1/routing_services_pb.rb
3601
+ - lib/couchbase/protostellar/generated/routing/v2/routing_pb.rb
3602
+ - lib/couchbase/protostellar/generated/routing/v2/routing_services_pb.rb
3591
3603
  - lib/couchbase/protostellar/generated/search/v1/search_pb.rb
3592
3604
  - lib/couchbase/protostellar/generated/search/v1/search_services_pb.rb
3593
3605
  - lib/couchbase/protostellar/generated/transactions/v1/transactions_pb.rb
@@ -3658,9 +3670,9 @@ metadata:
3658
3670
  homepage_uri: https://docs.couchbase.com/ruby-sdk/current/hello-world/start-using-sdk.html
3659
3671
  bug_tracker_uri: https://jira.issues.couchbase.com/browse/RCBC
3660
3672
  mailing_list_uri: https://www.couchbase.com/forums/c/ruby-sdk
3661
- source_code_uri: https://github.com/couchbase/couchbase-ruby-client/tree/3.8.0
3662
- changelog_uri: https://github.com/couchbase/couchbase-ruby-client/releases/tag/3.8.0
3663
- documentation_uri: https://docs.couchbase.com/sdk-api/couchbase-ruby-client-3.8.0/index.html
3673
+ source_code_uri: https://github.com/couchbase/couchbase-ruby-client/tree/3.8.1
3674
+ changelog_uri: https://github.com/couchbase/couchbase-ruby-client/releases/tag/3.8.1
3675
+ documentation_uri: https://docs.couchbase.com/sdk-api/couchbase-ruby-client-3.8.1/index.html
3664
3676
  github_repo: https://github.com/couchbase/couchbase-ruby-client
3665
3677
  rubygems_mfa_required: 'true'
3666
3678
  post_install_message:
@@ -1,52 +0,0 @@
1
- # frozen_string_literal: true
2
- # Generated by the protocol buffer compiler. DO NOT EDIT!
3
- # source: couchbase/routing/v1/routing.proto
4
-
5
- require 'google/protobuf'
6
-
7
-
8
- descriptor_data = "\n\"couchbase/routing/v1/routing.proto\x12\x14\x63ouchbase.routing.v1\"D\n\x0fRoutingEndpoint\x12\n\n\x02id\x18\x01 \x01(\t\x12\x14\n\x0cserver_group\x18\x02 \x01(\t\x12\x0f\n\x07\x61\x64\x64ress\x18\x03 \x01(\t\"[\n\x13\x44\x61taRoutingEndpoint\x12\x14\n\x0c\x65ndpoint_idx\x18\x01 \x01(\r\x12\x16\n\x0elocal_vbuckets\x18\x02 \x03(\r\x12\x16\n\x0egroup_vbuckets\x18\x03 \x03(\r\"p\n\x1aVbucketDataRoutingStrategy\x12<\n\tendpoints\x18\x01 \x03(\x0b\x32).couchbase.routing.v1.DataRoutingEndpoint\x12\x14\n\x0cnum_vbuckets\x18\x03 \x01(\r\",\n\x14QueryRoutingEndpoint\x12\x14\n\x0c\x65ndpoint_idx\x18\x01 \x01(\r\"M\n\x0cQueryRouting\x12=\n\tendpoints\x18\x01 \x03(\x0b\x32*.couchbase.routing.v1.QueryRoutingEndpoint\",\n\x14ViewsRoutingEndpoint\x12\x14\n\x0c\x65ndpoint_idx\x18\x01 \x01(\r\"M\n\x0cViewsRouting\x12=\n\tendpoints\x18\x01 \x03(\x0b\x32*.couchbase.routing.v1.ViewsRoutingEndpoint\"?\n\x13WatchRoutingRequest\x12\x18\n\x0b\x62ucket_name\x18\x01 \x01(\tH\x00\x88\x01\x01\x42\x0e\n\x0c_bucket_name\"\xe8\x02\n\x14WatchRoutingResponse\x12\x10\n\x08revision\x18\x01 \x03(\x04\x12\x38\n\tendpoints\x18\x02 \x03(\x0b\x32%.couchbase.routing.v1.RoutingEndpoint\x12P\n\x14vbucket_data_routing\x18\x03 \x01(\x0b\x32\x30.couchbase.routing.v1.VbucketDataRoutingStrategyH\x00\x12>\n\rquery_routing\x18\x04 \x01(\x0b\x32\".couchbase.routing.v1.QueryRoutingH\x01\x88\x01\x01\x12>\n\rviews_routing\x18\x05 \x01(\x0b\x32\".couchbase.routing.v1.ViewsRoutingH\x02\x88\x01\x01\x42\x0e\n\x0c\x64\x61ta_routingB\x10\n\x0e_query_routingB\x10\n\x0e_views_routing2{\n\x0eRoutingService\x12i\n\x0cWatchRouting\x12).couchbase.routing.v1.WatchRoutingRequest\x1a*.couchbase.routing.v1.WatchRoutingResponse\"\x00\x30\x01\x42\xf8\x01\n,com.couchbase.client.protostellar.routing.v1P\x01ZBgithub.com/couchbase/goprotostellar/genproto/routing_v1;routing_v1\xaa\x02!Couchbase.Protostellar.Routing.V1\xca\x02+Couchbase\\Protostellar\\Generated\\Routing\\V1\xea\x02/Couchbase::Protostellar::Generated::Routing::V1b\x06proto3"
9
-
10
- pool = Google::Protobuf::DescriptorPool.generated_pool
11
-
12
- begin
13
- pool.add_serialized_file(descriptor_data)
14
- rescue TypeError => e
15
- # Compatibility code: will be removed in the next major version.
16
- require 'google/protobuf/descriptor_pb'
17
- parsed = Google::Protobuf::FileDescriptorProto.decode(descriptor_data)
18
- parsed.clear_dependency
19
- serialized = parsed.class.encode(parsed)
20
- file = pool.add_serialized_file(serialized)
21
- warn "Warning: Protobuf detected an import path issue while loading generated file #{__FILE__}"
22
- imports = [
23
- ]
24
- imports.each do |type_name, expected_filename|
25
- import_file = pool.lookup(type_name).file_descriptor
26
- if import_file.name != expected_filename
27
- warn "- #{file.name} imports #{expected_filename}, but that import was loaded as #{import_file.name}"
28
- end
29
- end
30
- warn "Each proto file must use a consistent fully-qualified name."
31
- warn "This will become an error in the next major version."
32
- end
33
-
34
- module Couchbase
35
- module Protostellar
36
- module Generated
37
- module Routing
38
- module V1
39
- RoutingEndpoint = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("couchbase.routing.v1.RoutingEndpoint").msgclass
40
- DataRoutingEndpoint = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("couchbase.routing.v1.DataRoutingEndpoint").msgclass
41
- VbucketDataRoutingStrategy = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("couchbase.routing.v1.VbucketDataRoutingStrategy").msgclass
42
- QueryRoutingEndpoint = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("couchbase.routing.v1.QueryRoutingEndpoint").msgclass
43
- QueryRouting = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("couchbase.routing.v1.QueryRouting").msgclass
44
- ViewsRoutingEndpoint = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("couchbase.routing.v1.ViewsRoutingEndpoint").msgclass
45
- ViewsRouting = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("couchbase.routing.v1.ViewsRouting").msgclass
46
- WatchRoutingRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("couchbase.routing.v1.WatchRoutingRequest").msgclass
47
- WatchRoutingResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("couchbase.routing.v1.WatchRoutingResponse").msgclass
48
- end
49
- end
50
- end
51
- end
52
- end
@@ -1,30 +0,0 @@
1
- # Generated by the protocol buffer compiler. DO NOT EDIT!
2
- # Source: couchbase/routing/v1/routing.proto for package 'Couchbase.Protostellar.Generated.Routing.V1'
3
-
4
- require 'grpc'
5
- require 'couchbase/protostellar/generated/routing/v1/routing_pb'
6
-
7
- module Couchbase
8
- module Protostellar
9
- module Generated
10
- module Routing
11
- module V1
12
- module RoutingService
13
- class Service
14
-
15
- include ::GRPC::GenericService
16
-
17
- self.marshal_class_method = :encode
18
- self.unmarshal_class_method = :decode
19
- self.service_name = 'couchbase.routing.v1.RoutingService'
20
-
21
- rpc :WatchRouting, ::Couchbase::Protostellar::Generated::Routing::V1::WatchRoutingRequest, stream(::Couchbase::Protostellar::Generated::Routing::V1::WatchRoutingResponse)
22
- end
23
-
24
- Stub = Service.rpc_stub_class
25
- end
26
- end
27
- end
28
- end
29
- end
30
- end