public interface PartialResultSetOrBuilder extends MessageOrBuilder
| Modifier and Type | Method and Description |
|---|---|
boolean |
getChunkedValue()
If true, then the final value in [values][google.spanner.v1.PartialResultSet.values] is chunked, and must
be combined with more values from subsequent `PartialResultSet`s
to obtain a complete field value.
|
ResultSetMetadata |
getMetadata()
Metadata about the result set, such as row type information.
|
ResultSetMetadataOrBuilder |
getMetadataOrBuilder()
Metadata about the result set, such as row type information.
|
ByteString |
getResumeToken()
Streaming calls might be interrupted for a variety of reasons, such
as TCP connection loss.
|
ResultSetStats |
getStats()
Query plan and execution statistics for the query that produced this
streaming result set.
|
ResultSetStatsOrBuilder |
getStatsOrBuilder()
Query plan and execution statistics for the query that produced this
streaming result set.
|
Value |
getValues(int index)
A streamed result set consists of a stream of values, which might
be split into many `PartialResultSet` messages to accommodate
large rows and/or large values.
|
int |
getValuesCount()
A streamed result set consists of a stream of values, which might
be split into many `PartialResultSet` messages to accommodate
large rows and/or large values.
|
java.util.List<Value> |
getValuesList()
A streamed result set consists of a stream of values, which might
be split into many `PartialResultSet` messages to accommodate
large rows and/or large values.
|
ValueOrBuilder |
getValuesOrBuilder(int index)
A streamed result set consists of a stream of values, which might
be split into many `PartialResultSet` messages to accommodate
large rows and/or large values.
|
java.util.List<? extends ValueOrBuilder> |
getValuesOrBuilderList()
A streamed result set consists of a stream of values, which might
be split into many `PartialResultSet` messages to accommodate
large rows and/or large values.
|
boolean |
hasMetadata()
Metadata about the result set, such as row type information.
|
boolean |
hasStats()
Query plan and execution statistics for the query that produced this
streaming result set.
|
findInitializationErrors, getAllFields, getDefaultInstanceForType, getDescriptorForType, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneofisInitializedboolean hasMetadata()
Metadata about the result set, such as row type information. Only present in the first response.
.google.spanner.v1.ResultSetMetadata metadata = 1;ResultSetMetadata getMetadata()
Metadata about the result set, such as row type information. Only present in the first response.
.google.spanner.v1.ResultSetMetadata metadata = 1;ResultSetMetadataOrBuilder getMetadataOrBuilder()
Metadata about the result set, such as row type information. Only present in the first response.
.google.spanner.v1.ResultSetMetadata metadata = 1;java.util.List<Value> getValuesList()
A streamed result set consists of a stream of values, which might
be split into many `PartialResultSet` messages to accommodate
large rows and/or large values. Every N complete values defines a
row, where N is equal to the number of entries in
[metadata.row_type.fields][google.spanner.v1.StructType.fields].
Most values are encoded based on type as described
[here][google.spanner.v1.TypeCode].
It is possible that the last value in values is "chunked",
meaning that the rest of the value is sent in subsequent
`PartialResultSet`(s). This is denoted by the [chunked_value][google.spanner.v1.PartialResultSet.chunked_value]
field. Two or more chunked values can be merged to form a
complete value as follows:
* `bool/number/null`: cannot be chunked
* `string`: concatenate the strings
* `list`: concatenate the lists. If the last element in a list is a
`string`, `list`, or `object`, merge it with the first element in
the next list by applying these rules recursively.
* `object`: concatenate the (field name, field value) pairs. If a
field name is duplicated, then apply these rules recursively
to merge the field values.
Some examples of merging:
# Strings are concatenated.
"foo", "bar" => "foobar"
# Lists of non-strings are concatenated.
[2, 3], [4] => [2, 3, 4]
# Lists are concatenated, but the last and first elements are merged
# because they are strings.
["a", "b"], ["c", "d"] => ["a", "bc", "d"]
# Lists are concatenated, but the last and first elements are merged
# because they are lists. Recursively, the last and first elements
# of the inner lists are merged because they are strings.
["a", ["b", "c"]], [["d"], "e"] => ["a", ["b", "cd"], "e"]
# Non-overlapping object fields are combined.
{"a": "1"}, {"b": "2"} => {"a": "1", "b": 2"}
# Overlapping object fields are merged.
{"a": "1"}, {"a": "2"} => {"a": "12"}
# Examples of merging objects containing lists of strings.
{"a": ["1"]}, {"a": ["2"]} => {"a": ["12"]}
For a more complete example, suppose a streaming SQL query is
yielding a result set whose rows contain a single string
field. The following `PartialResultSet`s might be yielded:
{
"metadata": { ... }
"values": ["Hello", "W"]
"chunked_value": true
"resume_token": "Af65..."
}
{
"values": ["orl"]
"chunked_value": true
"resume_token": "Bqp2..."
}
{
"values": ["d"]
"resume_token": "Zx1B..."
}
This sequence of `PartialResultSet`s encodes two rows, one
containing the field value `"Hello"`, and a second containing the
field value `"World" = "W" + "orl" + "d"`.
repeated .google.protobuf.Value values = 2;Value getValues(int index)
A streamed result set consists of a stream of values, which might
be split into many `PartialResultSet` messages to accommodate
large rows and/or large values. Every N complete values defines a
row, where N is equal to the number of entries in
[metadata.row_type.fields][google.spanner.v1.StructType.fields].
Most values are encoded based on type as described
[here][google.spanner.v1.TypeCode].
It is possible that the last value in values is "chunked",
meaning that the rest of the value is sent in subsequent
`PartialResultSet`(s). This is denoted by the [chunked_value][google.spanner.v1.PartialResultSet.chunked_value]
field. Two or more chunked values can be merged to form a
complete value as follows:
* `bool/number/null`: cannot be chunked
* `string`: concatenate the strings
* `list`: concatenate the lists. If the last element in a list is a
`string`, `list`, or `object`, merge it with the first element in
the next list by applying these rules recursively.
* `object`: concatenate the (field name, field value) pairs. If a
field name is duplicated, then apply these rules recursively
to merge the field values.
Some examples of merging:
# Strings are concatenated.
"foo", "bar" => "foobar"
# Lists of non-strings are concatenated.
[2, 3], [4] => [2, 3, 4]
# Lists are concatenated, but the last and first elements are merged
# because they are strings.
["a", "b"], ["c", "d"] => ["a", "bc", "d"]
# Lists are concatenated, but the last and first elements are merged
# because they are lists. Recursively, the last and first elements
# of the inner lists are merged because they are strings.
["a", ["b", "c"]], [["d"], "e"] => ["a", ["b", "cd"], "e"]
# Non-overlapping object fields are combined.
{"a": "1"}, {"b": "2"} => {"a": "1", "b": 2"}
# Overlapping object fields are merged.
{"a": "1"}, {"a": "2"} => {"a": "12"}
# Examples of merging objects containing lists of strings.
{"a": ["1"]}, {"a": ["2"]} => {"a": ["12"]}
For a more complete example, suppose a streaming SQL query is
yielding a result set whose rows contain a single string
field. The following `PartialResultSet`s might be yielded:
{
"metadata": { ... }
"values": ["Hello", "W"]
"chunked_value": true
"resume_token": "Af65..."
}
{
"values": ["orl"]
"chunked_value": true
"resume_token": "Bqp2..."
}
{
"values": ["d"]
"resume_token": "Zx1B..."
}
This sequence of `PartialResultSet`s encodes two rows, one
containing the field value `"Hello"`, and a second containing the
field value `"World" = "W" + "orl" + "d"`.
repeated .google.protobuf.Value values = 2;int getValuesCount()
A streamed result set consists of a stream of values, which might
be split into many `PartialResultSet` messages to accommodate
large rows and/or large values. Every N complete values defines a
row, where N is equal to the number of entries in
[metadata.row_type.fields][google.spanner.v1.StructType.fields].
Most values are encoded based on type as described
[here][google.spanner.v1.TypeCode].
It is possible that the last value in values is "chunked",
meaning that the rest of the value is sent in subsequent
`PartialResultSet`(s). This is denoted by the [chunked_value][google.spanner.v1.PartialResultSet.chunked_value]
field. Two or more chunked values can be merged to form a
complete value as follows:
* `bool/number/null`: cannot be chunked
* `string`: concatenate the strings
* `list`: concatenate the lists. If the last element in a list is a
`string`, `list`, or `object`, merge it with the first element in
the next list by applying these rules recursively.
* `object`: concatenate the (field name, field value) pairs. If a
field name is duplicated, then apply these rules recursively
to merge the field values.
Some examples of merging:
# Strings are concatenated.
"foo", "bar" => "foobar"
# Lists of non-strings are concatenated.
[2, 3], [4] => [2, 3, 4]
# Lists are concatenated, but the last and first elements are merged
# because they are strings.
["a", "b"], ["c", "d"] => ["a", "bc", "d"]
# Lists are concatenated, but the last and first elements are merged
# because they are lists. Recursively, the last and first elements
# of the inner lists are merged because they are strings.
["a", ["b", "c"]], [["d"], "e"] => ["a", ["b", "cd"], "e"]
# Non-overlapping object fields are combined.
{"a": "1"}, {"b": "2"} => {"a": "1", "b": 2"}
# Overlapping object fields are merged.
{"a": "1"}, {"a": "2"} => {"a": "12"}
# Examples of merging objects containing lists of strings.
{"a": ["1"]}, {"a": ["2"]} => {"a": ["12"]}
For a more complete example, suppose a streaming SQL query is
yielding a result set whose rows contain a single string
field. The following `PartialResultSet`s might be yielded:
{
"metadata": { ... }
"values": ["Hello", "W"]
"chunked_value": true
"resume_token": "Af65..."
}
{
"values": ["orl"]
"chunked_value": true
"resume_token": "Bqp2..."
}
{
"values": ["d"]
"resume_token": "Zx1B..."
}
This sequence of `PartialResultSet`s encodes two rows, one
containing the field value `"Hello"`, and a second containing the
field value `"World" = "W" + "orl" + "d"`.
repeated .google.protobuf.Value values = 2;java.util.List<? extends ValueOrBuilder> getValuesOrBuilderList()
A streamed result set consists of a stream of values, which might
be split into many `PartialResultSet` messages to accommodate
large rows and/or large values. Every N complete values defines a
row, where N is equal to the number of entries in
[metadata.row_type.fields][google.spanner.v1.StructType.fields].
Most values are encoded based on type as described
[here][google.spanner.v1.TypeCode].
It is possible that the last value in values is "chunked",
meaning that the rest of the value is sent in subsequent
`PartialResultSet`(s). This is denoted by the [chunked_value][google.spanner.v1.PartialResultSet.chunked_value]
field. Two or more chunked values can be merged to form a
complete value as follows:
* `bool/number/null`: cannot be chunked
* `string`: concatenate the strings
* `list`: concatenate the lists. If the last element in a list is a
`string`, `list`, or `object`, merge it with the first element in
the next list by applying these rules recursively.
* `object`: concatenate the (field name, field value) pairs. If a
field name is duplicated, then apply these rules recursively
to merge the field values.
Some examples of merging:
# Strings are concatenated.
"foo", "bar" => "foobar"
# Lists of non-strings are concatenated.
[2, 3], [4] => [2, 3, 4]
# Lists are concatenated, but the last and first elements are merged
# because they are strings.
["a", "b"], ["c", "d"] => ["a", "bc", "d"]
# Lists are concatenated, but the last and first elements are merged
# because they are lists. Recursively, the last and first elements
# of the inner lists are merged because they are strings.
["a", ["b", "c"]], [["d"], "e"] => ["a", ["b", "cd"], "e"]
# Non-overlapping object fields are combined.
{"a": "1"}, {"b": "2"} => {"a": "1", "b": 2"}
# Overlapping object fields are merged.
{"a": "1"}, {"a": "2"} => {"a": "12"}
# Examples of merging objects containing lists of strings.
{"a": ["1"]}, {"a": ["2"]} => {"a": ["12"]}
For a more complete example, suppose a streaming SQL query is
yielding a result set whose rows contain a single string
field. The following `PartialResultSet`s might be yielded:
{
"metadata": { ... }
"values": ["Hello", "W"]
"chunked_value": true
"resume_token": "Af65..."
}
{
"values": ["orl"]
"chunked_value": true
"resume_token": "Bqp2..."
}
{
"values": ["d"]
"resume_token": "Zx1B..."
}
This sequence of `PartialResultSet`s encodes two rows, one
containing the field value `"Hello"`, and a second containing the
field value `"World" = "W" + "orl" + "d"`.
repeated .google.protobuf.Value values = 2;ValueOrBuilder getValuesOrBuilder(int index)
A streamed result set consists of a stream of values, which might
be split into many `PartialResultSet` messages to accommodate
large rows and/or large values. Every N complete values defines a
row, where N is equal to the number of entries in
[metadata.row_type.fields][google.spanner.v1.StructType.fields].
Most values are encoded based on type as described
[here][google.spanner.v1.TypeCode].
It is possible that the last value in values is "chunked",
meaning that the rest of the value is sent in subsequent
`PartialResultSet`(s). This is denoted by the [chunked_value][google.spanner.v1.PartialResultSet.chunked_value]
field. Two or more chunked values can be merged to form a
complete value as follows:
* `bool/number/null`: cannot be chunked
* `string`: concatenate the strings
* `list`: concatenate the lists. If the last element in a list is a
`string`, `list`, or `object`, merge it with the first element in
the next list by applying these rules recursively.
* `object`: concatenate the (field name, field value) pairs. If a
field name is duplicated, then apply these rules recursively
to merge the field values.
Some examples of merging:
# Strings are concatenated.
"foo", "bar" => "foobar"
# Lists of non-strings are concatenated.
[2, 3], [4] => [2, 3, 4]
# Lists are concatenated, but the last and first elements are merged
# because they are strings.
["a", "b"], ["c", "d"] => ["a", "bc", "d"]
# Lists are concatenated, but the last and first elements are merged
# because they are lists. Recursively, the last and first elements
# of the inner lists are merged because they are strings.
["a", ["b", "c"]], [["d"], "e"] => ["a", ["b", "cd"], "e"]
# Non-overlapping object fields are combined.
{"a": "1"}, {"b": "2"} => {"a": "1", "b": 2"}
# Overlapping object fields are merged.
{"a": "1"}, {"a": "2"} => {"a": "12"}
# Examples of merging objects containing lists of strings.
{"a": ["1"]}, {"a": ["2"]} => {"a": ["12"]}
For a more complete example, suppose a streaming SQL query is
yielding a result set whose rows contain a single string
field. The following `PartialResultSet`s might be yielded:
{
"metadata": { ... }
"values": ["Hello", "W"]
"chunked_value": true
"resume_token": "Af65..."
}
{
"values": ["orl"]
"chunked_value": true
"resume_token": "Bqp2..."
}
{
"values": ["d"]
"resume_token": "Zx1B..."
}
This sequence of `PartialResultSet`s encodes two rows, one
containing the field value `"Hello"`, and a second containing the
field value `"World" = "W" + "orl" + "d"`.
repeated .google.protobuf.Value values = 2;boolean getChunkedValue()
If true, then the final value in [values][google.spanner.v1.PartialResultSet.values] is chunked, and must be combined with more values from subsequent `PartialResultSet`s to obtain a complete field value.
bool chunked_value = 3;ByteString getResumeToken()
Streaming calls might be interrupted for a variety of reasons, such as TCP connection loss. If this occurs, the stream of results can be resumed by re-sending the original request and including `resume_token`. Note that executing any other transaction in the same session invalidates the token.
bytes resume_token = 4;boolean hasStats()
Query plan and execution statistics for the query that produced this streaming result set. These can be requested by setting [ExecuteSqlRequest.query_mode][google.spanner.v1.ExecuteSqlRequest.query_mode] and are sent only once with the last response in the stream.
.google.spanner.v1.ResultSetStats stats = 5;ResultSetStats getStats()
Query plan and execution statistics for the query that produced this streaming result set. These can be requested by setting [ExecuteSqlRequest.query_mode][google.spanner.v1.ExecuteSqlRequest.query_mode] and are sent only once with the last response in the stream.
.google.spanner.v1.ResultSetStats stats = 5;ResultSetStatsOrBuilder getStatsOrBuilder()
Query plan and execution statistics for the query that produced this streaming result set. These can be requested by setting [ExecuteSqlRequest.query_mode][google.spanner.v1.ExecuteSqlRequest.query_mode] and are sent only once with the last response in the stream.
.google.spanner.v1.ResultSetStats stats = 5;