Class ExecuteSqlRequest
- java.lang.Object
-
- com.gpudb.protocol.ExecuteSqlRequest
-
- All Implemented Interfaces:
org.apache.avro.generic.GenericContainer,org.apache.avro.generic.IndexedRecord
public class ExecuteSqlRequest extends Object implements org.apache.avro.generic.IndexedRecord
A set of parameters forGPUdb.executeSql.Execute a SQL statement (query, DML, or DDL).
See SQL Support for the complete set of supported SQL commands.
When a caller wants all the results from a large query (e.g., more than max_get_records_size records), they can make multiple calls to this endpoint using the
offsetandlimitparameters to page through the results. Normally, this will execute thestatementquery each time. To avoid re-executing the query each time and to keep the results in the same order, the caller should specify aPAGING_TABLEname to hold the results of the query between calls and specify thePAGING_TABLEon subsequent calls. When this is done, the caller should clear the paging table and any other tables in theRESULT_TABLE_LIST(both returned in the response) when they are done paging through the results.pagingTable(andRESULT_TABLE_LIST) will be empty if no paging table was created (e.g., when all the query results were returned in the first call).
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classExecuteSqlRequest.EncodingA set of string constants for theExecuteSqlRequestparameterencoding.static classExecuteSqlRequest.OptionsA set of string constants for theExecuteSqlRequestparameteroptions.
-
Constructor Summary
Constructors Constructor Description ExecuteSqlRequest()Constructs an ExecuteSqlRequest object with default parameters.ExecuteSqlRequest(String statement, long offset, long limit, String encoding, String requestSchemaStr, List<ByteBuffer> data, Map<String,String> options)Constructs an ExecuteSqlRequest object with the specified parameters.ExecuteSqlRequest(String statement, long offset, long limit, String requestSchemaStr, List<ByteBuffer> data, Map<String,String> options)Constructs an ExecuteSqlRequest object with the specified parameters.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanequals(Object obj)Objectget(int index)This method supports the Avro framework and is not intended to be called directly by the user.static org.apache.avro.SchemagetClassSchema()This method supports the Avro framework and is not intended to be called directly by the user.List<ByteBuffer>getData()An array of binary-encoded data for the records to be binded to the SQL query.StringgetEncoding()Specifies the encoding for returned records; either 'binary' or 'json'.longgetLimit()A positive integer indicating the maximum number of results to be returned, or END_OF_SET (-9999) to indicate that the maximum number of results allowed by the server should be returned.longgetOffset()A positive integer indicating the number of initial results to skip (this can be useful for paging through the results).Map<String,String>getOptions()Optional parameters.StringgetRequestSchemaStr()Avro schema ofdata.org.apache.avro.SchemagetSchema()This method supports the Avro framework and is not intended to be called directly by the user.StringgetStatement()SQL statement (query, DML, or DDL) to be executedinthashCode()voidput(int index, Object value)This method supports the Avro framework and is not intended to be called directly by the user.ExecuteSqlRequestsetData(List<ByteBuffer> data)An array of binary-encoded data for the records to be binded to the SQL query.ExecuteSqlRequestsetEncoding(String encoding)Specifies the encoding for returned records; either 'binary' or 'json'.ExecuteSqlRequestsetLimit(long limit)A positive integer indicating the maximum number of results to be returned, or END_OF_SET (-9999) to indicate that the maximum number of results allowed by the server should be returned.ExecuteSqlRequestsetOffset(long offset)A positive integer indicating the number of initial results to skip (this can be useful for paging through the results).ExecuteSqlRequestsetOptions(Map<String,String> options)Optional parameters.ExecuteSqlRequestsetRequestSchemaStr(String requestSchemaStr)Avro schema ofdata.ExecuteSqlRequestsetStatement(String statement)SQL statement (query, DML, or DDL) to be executedStringtoString()
-
-
-
Constructor Detail
-
ExecuteSqlRequest
public ExecuteSqlRequest()
Constructs an ExecuteSqlRequest object with default parameters.
-
ExecuteSqlRequest
public ExecuteSqlRequest(String statement, long offset, long limit, String requestSchemaStr, List<ByteBuffer> data, Map<String,String> options)
Constructs an ExecuteSqlRequest object with the specified parameters.- Parameters:
statement- SQL statement (query, DML, or DDL) to be executedoffset- A positive integer indicating the number of initial results to skip (this can be useful for paging through the results). The default value is 0. The minimum allowed value is 0. The maximum allowed value is MAX_INT.limit- A positive integer indicating the maximum number of results to be returned, or END_OF_SET (-9999) to indicate that the maximum number of results allowed by the server should be returned. The number of records returned will never exceed the server's own limit, defined by the max_get_records_size parameter in the server configuration. UsehasMoreRecordsto see if more records exist in the result to be fetched, andoffsetandlimitto request subsequent pages of results. The default value is -9999.requestSchemaStr- Avro schema ofdata. The default value is ''.data- An array of binary-encoded data for the records to be binded to the SQL query. Or useQUERY_PARAMETERSto pass the data in JSON format. The default value is an emptyList.options- Optional parameters.COST_BASED_OPTIMIZATION: IfFALSE, disables the cost-based optimization of the given query. Supported values: The default value isFALSE.DISTRIBUTED_JOINS: IfTRUE, enables the use of distributed joins in servicing the given query. Any query requiring a distributed join will succeed, though hints can be used in the query to change the distribution of the source data to allow the query to succeed. Supported values: The default value isFALSE.DISTRIBUTED_OPERATIONS: IfTRUE, enables the use of distributed operations in servicing the given query. Any query requiring a distributed join will succeed, though hints can be used in the query to change the distribution of the source data to allow the query to succeed. Supported values: The default value isFALSE.IGNORE_EXISTING_PK: Specifies the record collision error-suppression policy for inserting into or updating a table with a primary key, only used when primary key record collisions are rejected (UPDATE_ON_EXISTING_PKisFALSE). If set toTRUE, any record insert/update that is rejected for resulting in a primary key collision with an existing table record will be ignored with no error generated. IfFALSE, the rejection of any insert/update for resulting in a primary key collision will cause an error to be reported. If the specified table does not have a primary key or ifUPDATE_ON_EXISTING_PKisTRUE, then this option has no effect. Supported values:TRUE: Ignore inserts/updates that result in primary key collisions with existing recordsFALSE: Treat as errors any inserts/updates that result in primary key collisions with existing records
FALSE.LATE_MATERIALIZATION: IfTRUE, Joins/Filters results will always be materialized ( saved to result tables format). Supported values: The default value isFALSE.PAGING_TABLE: When specified (orPAGING_TABLE_TTLis set), the system will create a paging table to hold the results of the query, when the output has more records than are in the response (i.e., whenhasMoreRecordsisTRUE). If the specified paging table exists, the records from the paging table are returned without re-evaluating the query. It is the caller's responsibility to clear thepagingTableand other tables in theRESULT_TABLE_LIST(both returned in the response) when they are done with this query.PAGING_TABLE_TTL: Sets the TTL of the paging table. -1 indicates no timeout. Setting this option will cause a paging table to be generated when needed. ThepagingTableand other tables in theRESULT_TABLE_LIST(both returned in the response) will be automatically cleared after the TTL expires, if set to a positive number. However, it is still recommended that the caller clear these tables when they are done with this query.PARALLEL_EXECUTION: IfFALSE, disables the parallel step execution of the given query. Supported values: The default value isTRUE.PLAN_CACHE: IfFALSE, disables plan caching for the given query. Supported values: The default value isTRUE.PREPARE_MODE: IfTRUE, compiles a query into an execution plan and saves it in query cache. Query execution is not performed and an empty response will be returned to user. Supported values: The default value isFALSE.PRESERVE_DICT_ENCODING: IfTRUE, then columns that were dict encoded in the source table will be dict encoded in the projection table. Supported values: The default value isTRUE.QUERY_PARAMETERS: Query parameters in JSON array or arrays (for inserting multiple rows). This can be used instead ofdataandrequestSchemaStr.RESULTS_CACHING: IfFALSE, disables caching of the results of the given query. Supported values: The default value isTRUE.RULE_BASED_OPTIMIZATION: IfFALSE, disables rule-based rewrite optimizations for the given query. Supported values: The default value isTRUE.SSQ_OPTIMIZATION: IfFALSE, scalar subqueries will be translated into joins. Supported values: The default value isTRUE.TTL: Sets the TTL of the intermediate result tables used in query execution.UPDATE_ON_EXISTING_PK: Specifies the record collision policy for inserting into or updating a table with a primary key. If set toTRUE, any existing table record with primary key values that match those of a record being inserted or updated will be replaced by that record. If set toFALSE, any such primary key collision will result in the insert/update being rejected and the error handled as determined byIGNORE_EXISTING_PK. If the specified table does not have a primary key, then this option has no effect. Supported values:TRUE: Replace the collided-into record with the record inserted or updated when a new/modified record causes a primary key collision with an existing recordFALSE: Reject the insert or update when it results in a primary key collision with an existing record
FALSE.VALIDATE_CHANGE_COLUMN: When changing a column using alter table, validate the change before applying it. IfTRUE, then validate all values. A value too large (or too long) for the new type will prevent any change. IfFALSE, then when a value is too large or long, it will be truncated. Supported values: The default value isTRUE.CURRENT_SCHEMA: Use the supplied value as the default schema when processing this SQL command.
Map.
-
ExecuteSqlRequest
public ExecuteSqlRequest(String statement, long offset, long limit, String encoding, String requestSchemaStr, List<ByteBuffer> data, Map<String,String> options)
Constructs an ExecuteSqlRequest object with the specified parameters.- Parameters:
statement- SQL statement (query, DML, or DDL) to be executedoffset- A positive integer indicating the number of initial results to skip (this can be useful for paging through the results). The default value is 0. The minimum allowed value is 0. The maximum allowed value is MAX_INT.limit- A positive integer indicating the maximum number of results to be returned, or END_OF_SET (-9999) to indicate that the maximum number of results allowed by the server should be returned. The number of records returned will never exceed the server's own limit, defined by the max_get_records_size parameter in the server configuration. UsehasMoreRecordsto see if more records exist in the result to be fetched, andoffsetandlimitto request subsequent pages of results. The default value is -9999.encoding- Specifies the encoding for returned records; either 'binary' or 'json'. Supported values: The default value isBINARY.requestSchemaStr- Avro schema ofdata. The default value is ''.data- An array of binary-encoded data for the records to be binded to the SQL query. Or useQUERY_PARAMETERSto pass the data in JSON format. The default value is an emptyList.options- Optional parameters.COST_BASED_OPTIMIZATION: IfFALSE, disables the cost-based optimization of the given query. Supported values: The default value isFALSE.DISTRIBUTED_JOINS: IfTRUE, enables the use of distributed joins in servicing the given query. Any query requiring a distributed join will succeed, though hints can be used in the query to change the distribution of the source data to allow the query to succeed. Supported values: The default value isFALSE.DISTRIBUTED_OPERATIONS: IfTRUE, enables the use of distributed operations in servicing the given query. Any query requiring a distributed join will succeed, though hints can be used in the query to change the distribution of the source data to allow the query to succeed. Supported values: The default value isFALSE.IGNORE_EXISTING_PK: Specifies the record collision error-suppression policy for inserting into or updating a table with a primary key, only used when primary key record collisions are rejected (UPDATE_ON_EXISTING_PKisFALSE). If set toTRUE, any record insert/update that is rejected for resulting in a primary key collision with an existing table record will be ignored with no error generated. IfFALSE, the rejection of any insert/update for resulting in a primary key collision will cause an error to be reported. If the specified table does not have a primary key or ifUPDATE_ON_EXISTING_PKisTRUE, then this option has no effect. Supported values:TRUE: Ignore inserts/updates that result in primary key collisions with existing recordsFALSE: Treat as errors any inserts/updates that result in primary key collisions with existing records
FALSE.LATE_MATERIALIZATION: IfTRUE, Joins/Filters results will always be materialized ( saved to result tables format). Supported values: The default value isFALSE.PAGING_TABLE: When specified (orPAGING_TABLE_TTLis set), the system will create a paging table to hold the results of the query, when the output has more records than are in the response (i.e., whenhasMoreRecordsisTRUE). If the specified paging table exists, the records from the paging table are returned without re-evaluating the query. It is the caller's responsibility to clear thepagingTableand other tables in theRESULT_TABLE_LIST(both returned in the response) when they are done with this query.PAGING_TABLE_TTL: Sets the TTL of the paging table. -1 indicates no timeout. Setting this option will cause a paging table to be generated when needed. ThepagingTableand other tables in theRESULT_TABLE_LIST(both returned in the response) will be automatically cleared after the TTL expires, if set to a positive number. However, it is still recommended that the caller clear these tables when they are done with this query.PARALLEL_EXECUTION: IfFALSE, disables the parallel step execution of the given query. Supported values: The default value isTRUE.PLAN_CACHE: IfFALSE, disables plan caching for the given query. Supported values: The default value isTRUE.PREPARE_MODE: IfTRUE, compiles a query into an execution plan and saves it in query cache. Query execution is not performed and an empty response will be returned to user. Supported values: The default value isFALSE.PRESERVE_DICT_ENCODING: IfTRUE, then columns that were dict encoded in the source table will be dict encoded in the projection table. Supported values: The default value isTRUE.QUERY_PARAMETERS: Query parameters in JSON array or arrays (for inserting multiple rows). This can be used instead ofdataandrequestSchemaStr.RESULTS_CACHING: IfFALSE, disables caching of the results of the given query. Supported values: The default value isTRUE.RULE_BASED_OPTIMIZATION: IfFALSE, disables rule-based rewrite optimizations for the given query. Supported values: The default value isTRUE.SSQ_OPTIMIZATION: IfFALSE, scalar subqueries will be translated into joins. Supported values: The default value isTRUE.TTL: Sets the TTL of the intermediate result tables used in query execution.UPDATE_ON_EXISTING_PK: Specifies the record collision policy for inserting into or updating a table with a primary key. If set toTRUE, any existing table record with primary key values that match those of a record being inserted or updated will be replaced by that record. If set toFALSE, any such primary key collision will result in the insert/update being rejected and the error handled as determined byIGNORE_EXISTING_PK. If the specified table does not have a primary key, then this option has no effect. Supported values:TRUE: Replace the collided-into record with the record inserted or updated when a new/modified record causes a primary key collision with an existing recordFALSE: Reject the insert or update when it results in a primary key collision with an existing record
FALSE.VALIDATE_CHANGE_COLUMN: When changing a column using alter table, validate the change before applying it. IfTRUE, then validate all values. A value too large (or too long) for the new type will prevent any change. IfFALSE, then when a value is too large or long, it will be truncated. Supported values: The default value isTRUE.CURRENT_SCHEMA: Use the supplied value as the default schema when processing this SQL command.
Map.
-
-
Method Detail
-
getClassSchema
public static org.apache.avro.Schema getClassSchema()
This method supports the Avro framework and is not intended to be called directly by the user.- Returns:
- The schema for the class.
-
getStatement
public String getStatement()
SQL statement (query, DML, or DDL) to be executed- Returns:
- The current value of
statement.
-
setStatement
public ExecuteSqlRequest setStatement(String statement)
SQL statement (query, DML, or DDL) to be executed- Parameters:
statement- The new value forstatement.- Returns:
thisto mimic the builder pattern.
-
getOffset
public long getOffset()
A positive integer indicating the number of initial results to skip (this can be useful for paging through the results). The default value is 0. The minimum allowed value is 0. The maximum allowed value is MAX_INT.- Returns:
- The current value of
offset.
-
setOffset
public ExecuteSqlRequest setOffset(long offset)
A positive integer indicating the number of initial results to skip (this can be useful for paging through the results). The default value is 0. The minimum allowed value is 0. The maximum allowed value is MAX_INT.- Parameters:
offset- The new value foroffset.- Returns:
thisto mimic the builder pattern.
-
getLimit
public long getLimit()
A positive integer indicating the maximum number of results to be returned, or END_OF_SET (-9999) to indicate that the maximum number of results allowed by the server should be returned. The number of records returned will never exceed the server's own limit, defined by the max_get_records_size parameter in the server configuration. UsehasMoreRecordsto see if more records exist in the result to be fetched, andoffsetandlimitto request subsequent pages of results. The default value is -9999.- Returns:
- The current value of
limit.
-
setLimit
public ExecuteSqlRequest setLimit(long limit)
A positive integer indicating the maximum number of results to be returned, or END_OF_SET (-9999) to indicate that the maximum number of results allowed by the server should be returned. The number of records returned will never exceed the server's own limit, defined by the max_get_records_size parameter in the server configuration. UsehasMoreRecordsto see if more records exist in the result to be fetched, andoffsetandlimitto request subsequent pages of results. The default value is -9999.- Parameters:
limit- The new value forlimit.- Returns:
thisto mimic the builder pattern.
-
getEncoding
public String getEncoding()
Specifies the encoding for returned records; either 'binary' or 'json'. Supported values: The default value isBINARY.- Returns:
- The current value of
encoding.
-
setEncoding
public ExecuteSqlRequest setEncoding(String encoding)
Specifies the encoding for returned records; either 'binary' or 'json'. Supported values: The default value isBINARY.- Parameters:
encoding- The new value forencoding.- Returns:
thisto mimic the builder pattern.
-
getRequestSchemaStr
public String getRequestSchemaStr()
Avro schema ofdata. The default value is ''.- Returns:
- The current value of
requestSchemaStr.
-
setRequestSchemaStr
public ExecuteSqlRequest setRequestSchemaStr(String requestSchemaStr)
Avro schema ofdata. The default value is ''.- Parameters:
requestSchemaStr- The new value forrequestSchemaStr.- Returns:
thisto mimic the builder pattern.
-
getData
public List<ByteBuffer> getData()
An array of binary-encoded data for the records to be binded to the SQL query. Or useQUERY_PARAMETERSto pass the data in JSON format. The default value is an emptyList.- Returns:
- The current value of
data.
-
setData
public ExecuteSqlRequest setData(List<ByteBuffer> data)
An array of binary-encoded data for the records to be binded to the SQL query. Or useQUERY_PARAMETERSto pass the data in JSON format. The default value is an emptyList.- Parameters:
data- The new value fordata.- Returns:
thisto mimic the builder pattern.
-
getOptions
public Map<String,String> getOptions()
Optional parameters.COST_BASED_OPTIMIZATION: IfFALSE, disables the cost-based optimization of the given query. Supported values: The default value isFALSE.DISTRIBUTED_JOINS: IfTRUE, enables the use of distributed joins in servicing the given query. Any query requiring a distributed join will succeed, though hints can be used in the query to change the distribution of the source data to allow the query to succeed. Supported values: The default value isFALSE.DISTRIBUTED_OPERATIONS: IfTRUE, enables the use of distributed operations in servicing the given query. Any query requiring a distributed join will succeed, though hints can be used in the query to change the distribution of the source data to allow the query to succeed. Supported values: The default value isFALSE.IGNORE_EXISTING_PK: Specifies the record collision error-suppression policy for inserting into or updating a table with a primary key, only used when primary key record collisions are rejected (UPDATE_ON_EXISTING_PKisFALSE). If set toTRUE, any record insert/update that is rejected for resulting in a primary key collision with an existing table record will be ignored with no error generated. IfFALSE, the rejection of any insert/update for resulting in a primary key collision will cause an error to be reported. If the specified table does not have a primary key or ifUPDATE_ON_EXISTING_PKisTRUE, then this option has no effect. Supported values:TRUE: Ignore inserts/updates that result in primary key collisions with existing recordsFALSE: Treat as errors any inserts/updates that result in primary key collisions with existing records
FALSE.LATE_MATERIALIZATION: IfTRUE, Joins/Filters results will always be materialized ( saved to result tables format). Supported values: The default value isFALSE.PAGING_TABLE: When specified (orPAGING_TABLE_TTLis set), the system will create a paging table to hold the results of the query, when the output has more records than are in the response (i.e., whenhasMoreRecordsisTRUE). If the specified paging table exists, the records from the paging table are returned without re-evaluating the query. It is the caller's responsibility to clear thepagingTableand other tables in theRESULT_TABLE_LIST(both returned in the response) when they are done with this query.PAGING_TABLE_TTL: Sets the TTL of the paging table. -1 indicates no timeout. Setting this option will cause a paging table to be generated when needed. ThepagingTableand other tables in theRESULT_TABLE_LIST(both returned in the response) will be automatically cleared after the TTL expires, if set to a positive number. However, it is still recommended that the caller clear these tables when they are done with this query.PARALLEL_EXECUTION: IfFALSE, disables the parallel step execution of the given query. Supported values: The default value isTRUE.PLAN_CACHE: IfFALSE, disables plan caching for the given query. Supported values: The default value isTRUE.PREPARE_MODE: IfTRUE, compiles a query into an execution plan and saves it in query cache. Query execution is not performed and an empty response will be returned to user. Supported values: The default value isFALSE.PRESERVE_DICT_ENCODING: IfTRUE, then columns that were dict encoded in the source table will be dict encoded in the projection table. Supported values: The default value isTRUE.QUERY_PARAMETERS: Query parameters in JSON array or arrays (for inserting multiple rows). This can be used instead ofdataandrequestSchemaStr.RESULTS_CACHING: IfFALSE, disables caching of the results of the given query. Supported values: The default value isTRUE.RULE_BASED_OPTIMIZATION: IfFALSE, disables rule-based rewrite optimizations for the given query. Supported values: The default value isTRUE.SSQ_OPTIMIZATION: IfFALSE, scalar subqueries will be translated into joins. Supported values: The default value isTRUE.TTL: Sets the TTL of the intermediate result tables used in query execution.UPDATE_ON_EXISTING_PK: Specifies the record collision policy for inserting into or updating a table with a primary key. If set toTRUE, any existing table record with primary key values that match those of a record being inserted or updated will be replaced by that record. If set toFALSE, any such primary key collision will result in the insert/update being rejected and the error handled as determined byIGNORE_EXISTING_PK. If the specified table does not have a primary key, then this option has no effect. Supported values:TRUE: Replace the collided-into record with the record inserted or updated when a new/modified record causes a primary key collision with an existing recordFALSE: Reject the insert or update when it results in a primary key collision with an existing record
FALSE.VALIDATE_CHANGE_COLUMN: When changing a column using alter table, validate the change before applying it. IfTRUE, then validate all values. A value too large (or too long) for the new type will prevent any change. IfFALSE, then when a value is too large or long, it will be truncated. Supported values: The default value isTRUE.CURRENT_SCHEMA: Use the supplied value as the default schema when processing this SQL command.
Map.- Returns:
- The current value of
options.
-
setOptions
public ExecuteSqlRequest setOptions(Map<String,String> options)
Optional parameters.COST_BASED_OPTIMIZATION: IfFALSE, disables the cost-based optimization of the given query. Supported values: The default value isFALSE.DISTRIBUTED_JOINS: IfTRUE, enables the use of distributed joins in servicing the given query. Any query requiring a distributed join will succeed, though hints can be used in the query to change the distribution of the source data to allow the query to succeed. Supported values: The default value isFALSE.DISTRIBUTED_OPERATIONS: IfTRUE, enables the use of distributed operations in servicing the given query. Any query requiring a distributed join will succeed, though hints can be used in the query to change the distribution of the source data to allow the query to succeed. Supported values: The default value isFALSE.IGNORE_EXISTING_PK: Specifies the record collision error-suppression policy for inserting into or updating a table with a primary key, only used when primary key record collisions are rejected (UPDATE_ON_EXISTING_PKisFALSE). If set toTRUE, any record insert/update that is rejected for resulting in a primary key collision with an existing table record will be ignored with no error generated. IfFALSE, the rejection of any insert/update for resulting in a primary key collision will cause an error to be reported. If the specified table does not have a primary key or ifUPDATE_ON_EXISTING_PKisTRUE, then this option has no effect. Supported values:TRUE: Ignore inserts/updates that result in primary key collisions with existing recordsFALSE: Treat as errors any inserts/updates that result in primary key collisions with existing records
FALSE.LATE_MATERIALIZATION: IfTRUE, Joins/Filters results will always be materialized ( saved to result tables format). Supported values: The default value isFALSE.PAGING_TABLE: When specified (orPAGING_TABLE_TTLis set), the system will create a paging table to hold the results of the query, when the output has more records than are in the response (i.e., whenhasMoreRecordsisTRUE). If the specified paging table exists, the records from the paging table are returned without re-evaluating the query. It is the caller's responsibility to clear thepagingTableand other tables in theRESULT_TABLE_LIST(both returned in the response) when they are done with this query.PAGING_TABLE_TTL: Sets the TTL of the paging table. -1 indicates no timeout. Setting this option will cause a paging table to be generated when needed. ThepagingTableand other tables in theRESULT_TABLE_LIST(both returned in the response) will be automatically cleared after the TTL expires, if set to a positive number. However, it is still recommended that the caller clear these tables when they are done with this query.PARALLEL_EXECUTION: IfFALSE, disables the parallel step execution of the given query. Supported values: The default value isTRUE.PLAN_CACHE: IfFALSE, disables plan caching for the given query. Supported values: The default value isTRUE.PREPARE_MODE: IfTRUE, compiles a query into an execution plan and saves it in query cache. Query execution is not performed and an empty response will be returned to user. Supported values: The default value isFALSE.PRESERVE_DICT_ENCODING: IfTRUE, then columns that were dict encoded in the source table will be dict encoded in the projection table. Supported values: The default value isTRUE.QUERY_PARAMETERS: Query parameters in JSON array or arrays (for inserting multiple rows). This can be used instead ofdataandrequestSchemaStr.RESULTS_CACHING: IfFALSE, disables caching of the results of the given query. Supported values: The default value isTRUE.RULE_BASED_OPTIMIZATION: IfFALSE, disables rule-based rewrite optimizations for the given query. Supported values: The default value isTRUE.SSQ_OPTIMIZATION: IfFALSE, scalar subqueries will be translated into joins. Supported values: The default value isTRUE.TTL: Sets the TTL of the intermediate result tables used in query execution.UPDATE_ON_EXISTING_PK: Specifies the record collision policy for inserting into or updating a table with a primary key. If set toTRUE, any existing table record with primary key values that match those of a record being inserted or updated will be replaced by that record. If set toFALSE, any such primary key collision will result in the insert/update being rejected and the error handled as determined byIGNORE_EXISTING_PK. If the specified table does not have a primary key, then this option has no effect. Supported values:TRUE: Replace the collided-into record with the record inserted or updated when a new/modified record causes a primary key collision with an existing recordFALSE: Reject the insert or update when it results in a primary key collision with an existing record
FALSE.VALIDATE_CHANGE_COLUMN: When changing a column using alter table, validate the change before applying it. IfTRUE, then validate all values. A value too large (or too long) for the new type will prevent any change. IfFALSE, then when a value is too large or long, it will be truncated. Supported values: The default value isTRUE.CURRENT_SCHEMA: Use the supplied value as the default schema when processing this SQL command.
Map.- Parameters:
options- The new value foroptions.- Returns:
thisto mimic the builder pattern.
-
getSchema
public org.apache.avro.Schema getSchema()
This method supports the Avro framework and is not intended to be called directly by the user.- Specified by:
getSchemain interfaceorg.apache.avro.generic.GenericContainer- Returns:
- The schema object describing this class.
-
get
public Object get(int index)
This method supports the Avro framework and is not intended to be called directly by the user.- Specified by:
getin interfaceorg.apache.avro.generic.IndexedRecord- Parameters:
index- the position of the field to get- Returns:
- value of the field with the given index.
- Throws:
IndexOutOfBoundsException
-
put
public void put(int index, Object value)This method supports the Avro framework and is not intended to be called directly by the user.- Specified by:
putin interfaceorg.apache.avro.generic.IndexedRecord- Parameters:
index- the position of the field to setvalue- the value to set- Throws:
IndexOutOfBoundsException
-
-