public class ExecuteProcRequest extends Object implements org.apache.avro.generic.IndexedRecord
GPUdb.executeProc(ExecuteProcRequest)
.
Executes a proc. This endpoint is asynchronous and does not wait for the proc to complete before returning.
If the proc being executed is distributed, inputTableNames
&
inputColumnNames
may be passed to the proc to use for reading data,
and outputTableNames
may be passed to the proc to use for writing
data.
If the proc being executed is non-distributed, these table parameters will be ignored.
Modifier and Type | Class and Description |
---|---|
static class |
ExecuteProcRequest.Options
Optional parameters.
|
Constructor and Description |
---|
ExecuteProcRequest()
Constructs an ExecuteProcRequest object with default parameters.
|
ExecuteProcRequest(String procName,
Map<String,String> params,
Map<String,ByteBuffer> binParams,
List<String> inputTableNames,
Map<String,List<String>> inputColumnNames,
List<String> outputTableNames,
Map<String,String> options)
Constructs an ExecuteProcRequest object with the specified parameters.
|
Modifier and Type | Method and Description |
---|---|
boolean |
equals(Object obj) |
Object |
get(int index)
This method supports the Avro framework and is not intended to be called
directly by the user.
|
Map<String,ByteBuffer> |
getBinParams() |
static org.apache.avro.Schema |
getClassSchema()
This method supports the Avro framework and is not intended to be called
directly by the user.
|
Map<String,List<String>> |
getInputColumnNames() |
List<String> |
getInputTableNames() |
Map<String,String> |
getOptions() |
List<String> |
getOutputTableNames() |
Map<String,String> |
getParams() |
String |
getProcName() |
org.apache.avro.Schema |
getSchema()
This method supports the Avro framework and is not intended to be called
directly by the user.
|
int |
hashCode() |
void |
put(int index,
Object value)
This method supports the Avro framework and is not intended to be called
directly by the user.
|
ExecuteProcRequest |
setBinParams(Map<String,ByteBuffer> binParams) |
ExecuteProcRequest |
setInputColumnNames(Map<String,List<String>> inputColumnNames) |
ExecuteProcRequest |
setInputTableNames(List<String> inputTableNames) |
ExecuteProcRequest |
setOptions(Map<String,String> options) |
ExecuteProcRequest |
setOutputTableNames(List<String> outputTableNames) |
ExecuteProcRequest |
setParams(Map<String,String> params) |
ExecuteProcRequest |
setProcName(String procName) |
String |
toString() |
public ExecuteProcRequest()
public ExecuteProcRequest(String procName, Map<String,String> params, Map<String,ByteBuffer> binParams, List<String> inputTableNames, Map<String,List<String>> inputColumnNames, List<String> outputTableNames, Map<String,String> options)
procName
- Name of the proc to execute. Must be the name of a
currently existing proc.params
- A map containing named parameters to pass to the proc.
Each key/value pair specifies the name of a parameter and
its value. The default value is an empty Map
.binParams
- A map containing named binary parameters to pass to
the proc. Each key/value pair specifies the name of a
parameter and its value. The default value is an
empty Map
.inputTableNames
- Names of the tables containing data to be passed
to the
proc. Each name specified must be the name of a
currently existing table, in
[schema_name.]table_name format, using standard
name resolution rules.
If no table names are specified, no data will be
passed to the proc. This
parameter is ignored if the proc has a
non-distributed execution mode. The default
value is an empty List
.inputColumnNames
- Map of table names from inputTableNames
to lists
of names of columns from those tables that will
be passed to the proc. Each
column name specified must be the name of an
existing column in the
corresponding table. If a table name from
inputTableNames
is not
included, all columns from that table will be
passed to the proc. This
parameter is ignored if the proc has a
non-distributed execution mode. The default
value is an empty Map
.outputTableNames
- Names of the tables to which output data from
the proc will
be written, each in [schema_name.]table_name
format, using standard
name resolution rules
and meeting table naming criteria.
If a specified table does not exist, it will
automatically be created with the
same schema as the corresponding table (by
order) from
inputTableNames
, excluding any primary
and shard keys. If a specified
table is a non-persistent result table, it must
not have primary or shard keys.
If no table names are specified, no output data
can be returned from the proc.
This parameter is ignored if the proc has a
non-distributed execution mode. The default
value is an empty List
.options
- Optional parameters.
CACHE_INPUT
: A comma-delimited list of table names from
inputTableNames
from which input data will be
cached for use in subsequent calls to GPUdb.executeProc(ExecuteProcRequest)
with
the use_cached_input
option. Cached input data
will be retained until the proc status is cleared with
the clear_complete
option of GPUdb.showProcStatus(ShowProcStatusRequest)
and all proc instances using the cached data have
completed. The default value is ''.
USE_CACHED_INPUT
: A comma-delimited list of run IDs (as
returned from prior calls to GPUdb.executeProc(ExecuteProcRequest)
) of
running or completed proc instances from which input
data cached using the cache_input
option will be
used. Cached input data will not be used for any tables
specified in inputTableNames
, but data from all
other tables cached for the specified run IDs will be
passed to the proc. If the same table was cached for
multiple specified run IDs, the cached data from the
first run ID specified in the list that includes that
table will be used. The default value is ''.
RUN_TAG
: A string that, if not empty, can be used in
subsequent calls to GPUdb.showProcStatus(ShowProcStatusRequest)
or GPUdb.killProc(KillProcRequest)
to
identify the proc instance. The default value is ''.
MAX_OUTPUT_LINES
: The maximum number of lines of output
from stdout and stderr to return via GPUdb.showProcStatus(ShowProcStatusRequest)
.
If the number of lines output exceeds the maximum,
earlier lines are discarded. The default value is
'100'.
EXECUTE_AT_STARTUP
: If true
, an instance of the
proc will run when the database is started instead of
running immediately. The runId
can be retrieved
using GPUdb.showProc(ShowProcRequest)
and used in GPUdb.showProcStatus(ShowProcStatusRequest)
.
Supported values:
The default value is FALSE
.
EXECUTE_AT_STARTUP_AS
: Sets the alternate user name to
execute this proc instance as when execute_at_startup
is true
. The default value
is ''.
Map
.public static org.apache.avro.Schema getClassSchema()
public String getProcName()
public ExecuteProcRequest setProcName(String procName)
procName
- Name of the proc to execute. Must be the name of a
currently existing proc.this
to mimic the builder pattern.public Map<String,String> getParams()
Map
.public ExecuteProcRequest setParams(Map<String,String> params)
params
- A map containing named parameters to pass to the proc.
Each key/value pair specifies the name of a parameter and
its value. The default value is an empty Map
.this
to mimic the builder pattern.public Map<String,ByteBuffer> getBinParams()
Map
.public ExecuteProcRequest setBinParams(Map<String,ByteBuffer> binParams)
binParams
- A map containing named binary parameters to pass to
the proc. Each key/value pair specifies the name of a
parameter and its value. The default value is an
empty Map
.this
to mimic the builder pattern.public List<String> getInputTableNames()
List
.public ExecuteProcRequest setInputTableNames(List<String> inputTableNames)
inputTableNames
- Names of the tables containing data to be passed
to the
proc. Each name specified must be the name of a
currently existing table, in
[schema_name.]table_name format, using standard
name resolution rules.
If no table names are specified, no data will be
passed to the proc. This
parameter is ignored if the proc has a
non-distributed execution mode. The default
value is an empty List
.this
to mimic the builder pattern.public Map<String,List<String>> getInputColumnNames()
inputTableNames
to lists
of names of columns from those tables that will be passed to the
proc. Each
column name specified must be the name of an existing column in
the
corresponding table. If a table name from inputTableNames
is not
included, all columns from that table will be passed to the
proc. This
parameter is ignored if the proc has a non-distributed execution
mode. The default value is an empty Map
.public ExecuteProcRequest setInputColumnNames(Map<String,List<String>> inputColumnNames)
inputColumnNames
- Map of table names from inputTableNames
to lists
of names of columns from those tables that will
be passed to the proc. Each
column name specified must be the name of an
existing column in the
corresponding table. If a table name from
inputTableNames
is not
included, all columns from that table will be
passed to the proc. This
parameter is ignored if the proc has a
non-distributed execution mode. The default
value is an empty Map
.this
to mimic the builder pattern.public List<String> getOutputTableNames()
inputTableNames
, excluding any primary and shard keys.
If a specified
table is a non-persistent result table, it must not have primary
or shard keys.
If no table names are specified, no output data can be returned
from the proc.
This parameter is ignored if the proc has a non-distributed
execution mode. The default value is an empty List
.public ExecuteProcRequest setOutputTableNames(List<String> outputTableNames)
outputTableNames
- Names of the tables to which output data from
the proc will
be written, each in [schema_name.]table_name
format, using standard
name resolution rules
and meeting table naming criteria.
If a specified table does not exist, it will
automatically be created with the
same schema as the corresponding table (by
order) from
inputTableNames
, excluding any primary
and shard keys. If a specified
table is a non-persistent result table, it must
not have primary or shard keys.
If no table names are specified, no output data
can be returned from the proc.
This parameter is ignored if the proc has a
non-distributed execution mode. The default
value is an empty List
.this
to mimic the builder pattern.public Map<String,String> getOptions()
CACHE_INPUT
: A comma-delimited list of table names from inputTableNames
from which input data will be cached for use in
subsequent calls to GPUdb.executeProc(ExecuteProcRequest)
with the use_cached_input
option. Cached input data will be retained
until the proc status is cleared with the clear_complete
option of GPUdb.showProcStatus(ShowProcStatusRequest)
and all
proc instances using the cached data have completed. The
default value is ''.
USE_CACHED_INPUT
: A comma-delimited list of run IDs (as
returned from prior calls to GPUdb.executeProc(ExecuteProcRequest)
) of running or
completed proc instances from which input data cached using the
cache_input
option will be used. Cached input data will
not be used for any tables specified in inputTableNames
,
but data from all other tables cached for the specified run IDs
will be passed to the proc. If the same table was cached for
multiple specified run IDs, the cached data from the first run
ID specified in the list that includes that table will be used.
The default value is ''.
RUN_TAG
:
A string that, if not empty, can be used in subsequent calls to
GPUdb.showProcStatus(ShowProcStatusRequest)
or
GPUdb.killProc(KillProcRequest)
to identify
the proc instance. The default value is ''.
MAX_OUTPUT_LINES
: The maximum number of lines of output from
stdout and stderr to return via GPUdb.showProcStatus(ShowProcStatusRequest)
. If the
number of lines output exceeds the maximum, earlier lines are
discarded. The default value is '100'.
EXECUTE_AT_STARTUP
: If true
, an instance of the proc
will run when the database is started instead of running
immediately. The runId
can be retrieved using GPUdb.showProc(ShowProcRequest)
and used in GPUdb.showProcStatus(ShowProcStatusRequest)
.
Supported values:
The default value is FALSE
.
EXECUTE_AT_STARTUP_AS
: Sets the alternate user name to execute
this proc instance as when execute_at_startup
is true
. The default value is ''.
Map
.public ExecuteProcRequest setOptions(Map<String,String> options)
options
- Optional parameters.
CACHE_INPUT
: A comma-delimited list of table names from
inputTableNames
from which input data will be
cached for use in subsequent calls to GPUdb.executeProc(ExecuteProcRequest)
with
the use_cached_input
option. Cached input data
will be retained until the proc status is cleared with
the clear_complete
option of GPUdb.showProcStatus(ShowProcStatusRequest)
and all proc instances using the cached data have
completed. The default value is ''.
USE_CACHED_INPUT
: A comma-delimited list of run IDs (as
returned from prior calls to GPUdb.executeProc(ExecuteProcRequest)
) of
running or completed proc instances from which input
data cached using the cache_input
option will be
used. Cached input data will not be used for any tables
specified in inputTableNames
, but data from all
other tables cached for the specified run IDs will be
passed to the proc. If the same table was cached for
multiple specified run IDs, the cached data from the
first run ID specified in the list that includes that
table will be used. The default value is ''.
RUN_TAG
: A string that, if not empty, can be used in
subsequent calls to GPUdb.showProcStatus(ShowProcStatusRequest)
or GPUdb.killProc(KillProcRequest)
to
identify the proc instance. The default value is ''.
MAX_OUTPUT_LINES
: The maximum number of lines of output
from stdout and stderr to return via GPUdb.showProcStatus(ShowProcStatusRequest)
.
If the number of lines output exceeds the maximum,
earlier lines are discarded. The default value is
'100'.
EXECUTE_AT_STARTUP
: If true
, an instance of the
proc will run when the database is started instead of
running immediately. The runId
can be retrieved
using GPUdb.showProc(ShowProcRequest)
and used in GPUdb.showProcStatus(ShowProcStatusRequest)
.
Supported values:
The default value is FALSE
.
EXECUTE_AT_STARTUP_AS
: Sets the alternate user name to
execute this proc instance as when execute_at_startup
is true
. The default value
is ''.
Map
.this
to mimic the builder pattern.public org.apache.avro.Schema getSchema()
getSchema
in interface org.apache.avro.generic.GenericContainer
public Object get(int index)
get
in interface org.apache.avro.generic.IndexedRecord
index
- the position of the field to getIndexOutOfBoundsException
public void put(int index, Object value)
put
in interface org.apache.avro.generic.IndexedRecord
index
- the position of the field to setvalue
- the value to setIndexOutOfBoundsException
Copyright © 2024. All rights reserved.