Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,10 +46,10 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
- Bump `actions/upload-artifact` from 5 to 6 ([#20333](https://github.com/opensearch-project/OpenSearch/pull/20333))
- Bump `com.google.http-client:google-http-client-appengine` from 2.0.2 to 2.0.3 ([#20332](https://github.com/opensearch-project/OpenSearch/pull/20332))
- Bump `jackson` from 2.18.1 to 2.20.1 ([#20343](https://github.com/opensearch-project/OpenSearch/pull/20343))
- Bump `opensearch-protobufs` from 0.24.0 to 1.0.0 and update transport-grpc module compatibility ([#20335](https://github.com/opensearch-project/OpenSearch/pull/20335))

### Removed

- Remove identity-shiro from plugins folder ([#20305](https://github.com/opensearch-project/OpenSearch/pull/20305))

[Unreleased 3.x]: https://github.com/opensearch-project/OpenSearch/compare/3.4...main

2 changes: 1 addition & 1 deletion gradle/libs.versions.toml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ kotlin = "1.7.10"
antlr4 = "4.13.1"
guava = "33.2.1-jre"
gson = "2.13.2"
opensearchprotobufs = "0.24.0"
opensearchprotobufs = "1.0.0"
protobuf = "3.25.8"
jakarta_annotation = "1.3.5"
google_http_client = "1.44.1"
Expand Down

This file was deleted.

1 change: 1 addition & 0 deletions modules/transport-grpc/licenses/protobufs-1.0.0.jar.sha1
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
495727dc62f515bd34e37dcdda976026b0aaf33a

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
495727dc62f515bd34e37dcdda976026b0aaf33a
Original file line number Diff line number Diff line change
Expand Up @@ -308,11 +308,14 @@ private static HighlightBuilder.BoundaryScannerType parseBoundaryScanner(Boundar
*/
private static void applyTagsSchemaToField(HighlightBuilder.Field fieldBuilder, HighlighterTagsSchema tagsSchema) {
switch (tagsSchema) {
// TODO add HIGHLIGHTER_TAGS_SCHEMA_DEFAULT once new protobufs are published after spec fix
case HIGHLIGHTER_TAGS_SCHEMA_STYLED:
fieldBuilder.preTags(HighlightBuilder.DEFAULT_STYLED_PRE_TAG);
fieldBuilder.postTags(HighlightBuilder.DEFAULT_STYLED_POST_TAGS);
break;
case HIGHLIGHTER_TAGS_SCHEMA_DEFAULT:
fieldBuilder.preTags(HighlightBuilder.DEFAULT_PRE_TAGS);
fieldBuilder.postTags(HighlightBuilder.DEFAULT_POST_TAGS);
break;
default:
throw new IllegalArgumentException("Unknown tags schema: " + tagsSchema);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -152,20 +152,24 @@ private static void parseNonQueryFields(
}
}

// TODO support aggregations
// Aggregations field was removed in protobufs 1.0.0
// TODO: Support aggregations when they are re-added to the proto
/*
if (protoRequest.getAggregationsCount() > 0) {
throw new UnsupportedOperationException("aggregations param is not supported yet");
}

*/
if (protoRequest.hasHighlight()) {
searchSourceBuilder.highlighter(HighlightBuilderProtoUtils.fromProto(protoRequest.getHighlight(), registry));
}

// TODO support suggest
// TODO support suggest once added back to the protos
/*
if (protoRequest.hasSuggest()) {
throw new UnsupportedOperationException("suggest param is not supported yet");
// searchSourceBuilder.suggest(SuggestBuilderProtoUtils.fromProto(protoRequest.getSuggest()));
}
*/
if (protoRequest.getRescoreCount() > 0) {
for (Rescore rescore : protoRequest.getRescoreList()) {
searchSourceBuilder.addRescorer(RescorerBuilderProtoUtils.parseFromProto(rescore));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,7 @@
import org.opensearch.index.query.AbstractQueryBuilder;
import org.opensearch.index.query.FuzzyQueryBuilder;
import org.opensearch.protobufs.FuzzyQuery;
import org.opensearch.protobufs.MultiTermQueryRewrite;
import org.opensearch.transport.grpc.proto.response.common.FieldValueProtoUtils;
import org.opensearch.transport.grpc.util.ProtobufEnumUtils;

/**
* Utility class for converting FuzzyQuery Protocol Buffers to OpenSearch objects.
Expand Down Expand Up @@ -74,10 +72,7 @@ static FuzzyQueryBuilder fromProto(FuzzyQuery fuzzyQueryProto) {
}

if (fuzzyQueryProto.hasRewrite()) {
MultiTermQueryRewrite rewriteEnum = fuzzyQueryProto.getRewrite();
if (rewriteEnum != MultiTermQueryRewrite.MULTI_TERM_QUERY_REWRITE_UNSPECIFIED) {
rewrite = ProtobufEnumUtils.convertToString(rewriteEnum);
}
rewrite = fuzzyQueryProto.getRewrite();
}

if (fuzzyQueryProto.hasXName()) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,7 @@
import org.opensearch.index.query.MatchBoolPrefixQueryBuilder;
import org.opensearch.index.query.Operator;
import org.opensearch.protobufs.MatchBoolPrefixQuery;
import org.opensearch.protobufs.MultiTermQueryRewrite;
import org.opensearch.transport.grpc.proto.request.search.OperatorProtoUtils;
import org.opensearch.transport.grpc.util.ProtobufEnumUtils;

/**
* Utility class for converting MatchBoolPrefixQuery Protocol Buffers to OpenSearch objects.
Expand Down Expand Up @@ -93,10 +91,7 @@ static MatchBoolPrefixQueryBuilder fromProto(MatchBoolPrefixQuery matchBoolPrefi
}

if (matchBoolPrefixQueryProto.hasFuzzyRewrite()) {
MultiTermQueryRewrite rewriteEnum = matchBoolPrefixQueryProto.getFuzzyRewrite();
if (rewriteEnum != MultiTermQueryRewrite.MULTI_TERM_QUERY_REWRITE_UNSPECIFIED) {
fuzzyRewrite = ProtobufEnumUtils.convertToString(rewriteEnum);
}
fuzzyRewrite = matchBoolPrefixQueryProto.getFuzzyRewrite();
}

if (matchBoolPrefixQueryProto.hasBoost()) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,9 @@
import org.opensearch.index.query.MatchQueryBuilder;
import org.opensearch.index.query.Operator;
import org.opensearch.index.search.MatchQuery;
import org.opensearch.protobufs.MultiTermQueryRewrite;
import org.opensearch.protobufs.ZeroTermsQuery;
import org.opensearch.transport.grpc.proto.request.search.OperatorProtoUtils;
import org.opensearch.transport.grpc.proto.response.common.FieldValueProtoUtils;
import org.opensearch.transport.grpc.util.ProtobufEnumUtils;

/**
* Utility class for converting MatchQuery Protocol Buffers to OpenSearch objects.
Expand Down Expand Up @@ -101,10 +99,7 @@ static MatchQueryBuilder fromProto(org.opensearch.protobufs.MatchQuery matchQuer
}

if (matchQueryProto.hasFuzzyRewrite()) {
MultiTermQueryRewrite rewriteEnum = matchQueryProto.getFuzzyRewrite();
if (rewriteEnum != MultiTermQueryRewrite.MULTI_TERM_QUERY_REWRITE_UNSPECIFIED) {
fuzzyRewrite = ProtobufEnumUtils.convertToString(rewriteEnum);
}
fuzzyRewrite = matchQueryProto.getFuzzyRewrite();
}

if (matchQueryProto.hasFuzzyTranspositions()) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,6 @@
import org.opensearch.index.search.MatchQuery;
import org.opensearch.protobufs.MultiMatchQuery;
import org.opensearch.transport.grpc.proto.request.search.OperatorProtoUtils;
import org.opensearch.transport.grpc.util.ProtobufEnumUtils;

import java.util.HashMap;
import java.util.Map;
Expand Down Expand Up @@ -134,10 +133,8 @@ static MultiMatchQueryBuilder fromProto(MultiMatchQuery multiMatchQueryProto) {
}
}

if (multiMatchQueryProto.hasFuzzyRewrite()
&& multiMatchQueryProto
.getFuzzyRewrite() != org.opensearch.protobufs.MultiTermQueryRewrite.MULTI_TERM_QUERY_REWRITE_UNSPECIFIED) {
fuzzyRewrite = ProtobufEnumUtils.convertToString(multiMatchQueryProto.getFuzzyRewrite());
if (multiMatchQueryProto.hasFuzzyRewrite()) {
fuzzyRewrite = multiMatchQueryProto.getFuzzyRewrite();
}

if (multiMatchQueryProto.hasTieBreaker()) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,7 @@

import org.opensearch.index.query.AbstractQueryBuilder;
import org.opensearch.index.query.PrefixQueryBuilder;
import org.opensearch.protobufs.MultiTermQueryRewrite;
import org.opensearch.protobufs.PrefixQuery;
import org.opensearch.transport.grpc.util.ProtobufEnumUtils;

/**
* Utility class for converting PrefixQuery Protocol Buffers to OpenSearch objects.
Expand Down Expand Up @@ -52,10 +50,7 @@ static PrefixQueryBuilder fromProto(PrefixQuery prefixQueryProto) {
}

if (prefixQueryProto.hasRewrite()) {
MultiTermQueryRewrite rewriteEnum = prefixQueryProto.getRewrite();
if (rewriteEnum != MultiTermQueryRewrite.MULTI_TERM_QUERY_REWRITE_UNSPECIFIED) {
rewrite = ProtobufEnumUtils.convertToString(rewriteEnum);
}
rewrite = prefixQueryProto.getRewrite();
}
if (prefixQueryProto.hasCaseInsensitive()) {
caseInsensitive = prefixQueryProto.getCaseInsensitive();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,7 @@
import org.opensearch.core.xcontent.XContentParser;
import org.opensearch.index.query.AbstractQueryBuilder;
import org.opensearch.index.query.RegexpQueryBuilder;
import org.opensearch.protobufs.MultiTermQueryRewrite;
import org.opensearch.protobufs.RegexpQuery;
import org.opensearch.transport.grpc.util.ProtobufEnumUtils;

/**
* Utility class for converting RegexpQuery Protocol Buffers to OpenSearch objects.
Expand Down Expand Up @@ -51,11 +49,7 @@ static RegexpQueryBuilder fromProto(RegexpQuery regexpQueryProto) {
}

if (regexpQueryProto.hasRewrite()) {
MultiTermQueryRewrite rewriteEnum = regexpQueryProto.getRewrite();
// Skip setting rewrite method if it's UNSPECIFIED
if (rewriteEnum != MultiTermQueryRewrite.MULTI_TERM_QUERY_REWRITE_UNSPECIFIED) {
rewrite = ProtobufEnumUtils.convertToString(rewriteEnum);
}
rewrite = regexpQueryProto.getRewrite();
}

if (regexpQueryProto.hasFlags()) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,6 @@

import org.opensearch.core.xcontent.XContentParser;
import org.opensearch.indices.TermsLookup;
import org.opensearch.protobufs.TermsLookupField;

/**
* Utility class for converting TermsLookup Protocol Buffers to OpenSearch objects.
Expand All @@ -23,26 +22,26 @@ private TermsLookupProtoUtils() {
}

/**
* Converts a Protocol Buffer TermsLookupField to an OpenSearch TermsLookup object.
* Converts a Protocol Buffer TermsLookup to an OpenSearch TermsLookup object.
* Similar to {@link TermsLookup#parseTermsLookup(XContentParser)}
*
* @param termsLookupFieldProto The Protocol Buffer TermsLookupField object containing index, id, path, and optional routing/store values
* @param termsLookupProto The Protocol Buffer TermsLookup object containing index, id, path, and optional routing/store values
* @return A configured TermsLookup instance with the appropriate settings
*/
protected static TermsLookup parseTermsLookup(TermsLookupField termsLookupFieldProto) {
protected static TermsLookup parseTermsLookup(org.opensearch.protobufs.TermsLookup termsLookupProto) {

String index = termsLookupFieldProto.getIndex();
String id = termsLookupFieldProto.getId();
String path = termsLookupFieldProto.getPath();
String index = termsLookupProto.getIndex();
String id = termsLookupProto.getId();
String path = termsLookupProto.getPath();

TermsLookup termsLookup = new TermsLookup(index, id, path);

if (termsLookupFieldProto.hasRouting()) {
termsLookup.routing(termsLookupFieldProto.getRouting());
if (termsLookupProto.hasRouting()) {
termsLookup.routing(termsLookupProto.getRouting());
}

if (termsLookupFieldProto.hasStore()) {
termsLookup.store(termsLookupFieldProto.getStore());
if (termsLookupProto.hasStore()) {
termsLookup.store(termsLookupProto.getStore());
}

return termsLookup;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@
import org.opensearch.index.query.TermsQueryBuilder;
import org.opensearch.indices.TermsLookup;
import org.opensearch.protobufs.TermsQueryField;
import org.opensearch.protobufs.ValueType;
import org.opensearch.transport.grpc.proto.response.common.FieldValueProtoUtils;

import java.util.ArrayList;
Expand Down Expand Up @@ -178,27 +177,6 @@ static TermsQueryBuilder fromProto(
return termsQueryBuilder.valueType(valueType);
}

/**
* Parses a protobuf ScriptLanguage to a String representation
*
* See {@link org.opensearch.index.query.TermsQueryBuilder.ValueType#fromString(String)} }
* *
* @param valueType the Protocol Buffer ValueType to convert
* @return the string representation of the script language
* @throws UnsupportedOperationException if no language was specified
*/
public static TermsQueryBuilder.ValueType parseValueType(ValueType valueType) {
switch (valueType) {
case VALUE_TYPE_BITMAP:
return TermsQueryBuilder.ValueType.BITMAP;
case VALUE_TYPE_DEFAULT:
return TermsQueryBuilder.ValueType.DEFAULT;
case VALUE_TYPE_UNSPECIFIED:
default:
return TermsQueryBuilder.ValueType.DEFAULT;
}
}

/**
* Parses a protobuf TermsQueryValueType to OpenSearch TermsQueryBuilder.ValueType
* @param valueTypeProto the Protocol Buffer TermsQueryValueType to convert
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,7 @@
import org.opensearch.core.xcontent.XContentParser;
import org.opensearch.index.query.AbstractQueryBuilder;
import org.opensearch.index.query.WildcardQueryBuilder;
import org.opensearch.protobufs.MultiTermQueryRewrite;
import org.opensearch.protobufs.WildcardQuery;
import org.opensearch.transport.grpc.util.ProtobufEnumUtils;

/**
* Utility class for converting wildcardQueryProto Protocol Buffers to OpenSearch objects.
Expand Down Expand Up @@ -58,11 +56,7 @@ static WildcardQueryBuilder fromProto(WildcardQuery wildcardQueryProto) {
}

if (wildcardQueryProto.hasRewrite()) {
MultiTermQueryRewrite rewriteEnum = wildcardQueryProto.getRewrite();
// Skip setting rewrite method if it's UNSPECIFIED
if (rewriteEnum != MultiTermQueryRewrite.MULTI_TERM_QUERY_REWRITE_UNSPECIFIED) {
rewrite = ProtobufEnumUtils.convertToString(rewriteEnum);
}
rewrite = wildcardQueryProto.getRewrite();
}

if (wildcardQueryProto.hasCaseInsensitive()) {
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -120,6 +120,8 @@ public static Object fromProto(FieldValue fieldValue, boolean convertStringsToBy
return generalNumber.getFloatValue();
case DOUBLE_VALUE:
return generalNumber.getDoubleValue();
case UINT64_VALUE:
return generalNumber.getUint64Value();
default:
throw new IllegalArgumentException("Unsupported general number type: " + generalNumber.getValueCase());
}
Expand Down
Loading
Loading