Class RemoteProcessingRequest
java.lang.Object
com.illumon.iris.db.tables.remotequery.RemoteProcessingRequest
- All Implemented Interfaces:
Serializable
public class RemoteProcessingRequest extends Object implements Serializable
Used for specifying the characteristics of a request for remote query processing.
- See Also:
- Serialized Form
-
Field Summary
Fields Modifier and Type Field Description static int
DEFAULT_MAX_DURATION_MS
static int
DEFAULT_MAX_HEAP_SIZE_MB
static boolean
DEFAULT_WORKER_DEBUG_ENABLED
static int
MAX_MAX_DURATION_MS
static int
MAX_MAX_HEAP_SIZE_MB
static double
MINIMUM_HEAP_SIZE_GB
static int
MINIMUM_HEAP_SIZE_MB
-
Constructor Summary
Constructors Constructor Description RemoteProcessingRequest()
RemoteProcessingRequest(int maxHeapSizeMB, long maxDurationMS, String... extraJvmArgs)
RemoteProcessingRequest(RemoteProcessingRequest other)
RemoteProcessingRequest(io.deephaven.enterprise.auth.AuthToken authTokenForDispatcher, io.deephaven.enterprise.auth.AuthToken authTokenForProcessor)
RemoteProcessingRequest(io.deephaven.enterprise.auth.AuthToken authTokenForDispatcher, io.deephaven.enterprise.auth.AuthToken authTokenForProcessor, int maxHeapSizeMB, long maxDurationMS, String... extraJvmArgs)
RemoteProcessingRequest(io.deephaven.enterprise.auth.AuthToken authTokenForDispatcher, io.deephaven.enterprise.auth.AuthToken authTokenForProcessor, RemoteProcessingRequest other)
RemoteProcessingRequest(io.deephaven.enterprise.auth.AuthToken authTokenForDispatcher, io.deephaven.enterprise.auth.AuthToken authTokenForProcessor, String... extraJvmArgs)
RemoteProcessingRequest(io.deephaven.enterprise.auth.AuthToken authTokenForDispatcher, io.deephaven.enterprise.auth.AuthToken authTokenForProcessor, String description, int maxHeapSizeMB, long maxDurationMS, boolean omitDefaultGCParams, boolean detailedGCLoggingEnabled, String[] extraJvmArgs, boolean addClientClassesToClasspath, boolean enableCachedClasses, String[] classpathAdditions, int priority, Map<String,String> extraEnvironmentVars)
RemoteProcessingRequest(String... extraJvmArgs)
RemoteProcessingRequest(String description, int maxHeapSizeMB, long maxDurationMS, boolean omitDefaultGCParams, boolean detailedGCLoggingEnabled, String[] extraJvmArgs, boolean addClientClassesToClasspath, boolean enableCachedClasses, String[] classpathAdditions, int priority, Map<String,String> extraEnvironmentVars)
-
Method Summary
-
Field Details
-
DEFAULT_MAX_HEAP_SIZE_MB
public static final int DEFAULT_MAX_HEAP_SIZE_MB -
MAX_MAX_HEAP_SIZE_MB
public static final int MAX_MAX_HEAP_SIZE_MB- See Also:
- Constant Field Values
-
MINIMUM_HEAP_SIZE_MB
public static final int MINIMUM_HEAP_SIZE_MB -
MINIMUM_HEAP_SIZE_GB
public static final double MINIMUM_HEAP_SIZE_GB -
DEFAULT_MAX_DURATION_MS
public static final int DEFAULT_MAX_DURATION_MS -
MAX_MAX_DURATION_MS
public static final int MAX_MAX_DURATION_MS- See Also:
- Constant Field Values
-
DEFAULT_WORKER_DEBUG_ENABLED
public static final boolean DEFAULT_WORKER_DEBUG_ENABLED
-
-
Constructor Details
-
RemoteProcessingRequest
public RemoteProcessingRequest() -
RemoteProcessingRequest
- Parameters:
extraJvmArgs
- Extra arguments that will be passed to the processor's JVM. See note on usage atsetExtraJvmArgs(String...)
-
RemoteProcessingRequest
- Parameters:
maxHeapSizeMB
- The amount of heap needed for queries - the assigned processor will have at *least* this muchmaxDurationMS
- The maximum amount of time the query should takeextraJvmArgs
- Extra arguments that will be passed to the processor's JVM. See note on usage atsetExtraJvmArgs(String...)
-
RemoteProcessingRequest
public RemoteProcessingRequest(String description, int maxHeapSizeMB, long maxDurationMS, boolean omitDefaultGCParams, boolean detailedGCLoggingEnabled, String[] extraJvmArgs, boolean addClientClassesToClasspath, boolean enableCachedClasses, @Nullable String[] classpathAdditions, int priority, @Nullable Map<String,String> extraEnvironmentVars)- Parameters:
description
- A description for this job, to be displayed in status reports and performance logsmaxHeapSizeMB
- The amount of heap needed for queries - the assigned processor will have at *least* this muchmaxDurationMS
- The maximum amount of time the query should takeomitDefaultGCParams
- Whether the dispatcher should supply default GC parametersdetailedGCLoggingEnabled
- Whether the dispatcher should supply detailed GC logging parametersextraJvmArgs
- Extra arguments that will be passed to the processor's JVM. See note on usage atsetExtraJvmArgs(String...)
addClientClassesToClasspath
- Whether to pre-pend the client connection's pushed classes directory to the processor's classpathenableCachedClasses
- Whether to append the dispatcher's compiled class cache directory to the processor's classpathclasspathAdditions
- Extra directories on the *SERVER* to be pre-pended to the classpath for the assigned processorpriority
- User priority value to be used for processor scheduling - lower means more importantextraEnvironmentVars
- Environment variables to be set in the processor's environment. By default, environment is inherited from the dispatcher. Note: It's inadvisable to set enableCachedClasses=true if addClientClassesToClasspath==false.
-
RemoteProcessingRequest
public RemoteProcessingRequest(io.deephaven.enterprise.auth.AuthToken authTokenForDispatcher, io.deephaven.enterprise.auth.AuthToken authTokenForProcessor) -
RemoteProcessingRequest
public RemoteProcessingRequest(io.deephaven.enterprise.auth.AuthToken authTokenForDispatcher, io.deephaven.enterprise.auth.AuthToken authTokenForProcessor, String... extraJvmArgs) -
RemoteProcessingRequest
public RemoteProcessingRequest(io.deephaven.enterprise.auth.AuthToken authTokenForDispatcher, io.deephaven.enterprise.auth.AuthToken authTokenForProcessor, int maxHeapSizeMB, long maxDurationMS, String... extraJvmArgs) -
RemoteProcessingRequest
public RemoteProcessingRequest(io.deephaven.enterprise.auth.AuthToken authTokenForDispatcher, io.deephaven.enterprise.auth.AuthToken authTokenForProcessor, @NotNull String description, int maxHeapSizeMB, long maxDurationMS, boolean omitDefaultGCParams, boolean detailedGCLoggingEnabled, String[] extraJvmArgs, boolean addClientClassesToClasspath, boolean enableCachedClasses, @Nullable String[] classpathAdditions, int priority, @Nullable Map<String,String> extraEnvironmentVars)- Parameters:
authTokenForDispatcher
- An authentication token for the desired user context to be used for the new processor.description
- A description for this job, to be displayed in status reports and performance logsmaxHeapSizeMB
- The amount of heap needed for queries - the assigned processor will have at *least* this muchmaxDurationMS
- The maximum amount of time the query should takeomitDefaultGCParams
- Whether the dispatcher should supply default GC parametersdetailedGCLoggingEnabled
- Whether the dispatcher should supply detailed GC logging parametersextraJvmArgs
- Extra arguments that will be passed to the processor's JVM. See note on usage atsetExtraJvmArgs(String...)
addClientClassesToClasspath
- Whether to pre-pend the client connection's pushed classes directory to the processor's classpathenableCachedClasses
- Whether to append the dispatcher's compiled class cache directory to the processor's classpathclasspathAdditions
- Extra directories on the *SERVER* to be pre-pended to the classpath for the assigned processorpriority
- User priority value to be used for processor scheduling - lower means more importantextraEnvironmentVars
- Environment variables to be set in the processor's environment. By default, environment is inherited from the dispatcher. Note: It's inadvisable to set enableCachedClasses=true if addClientClassesToClasspath==false.
-
RemoteProcessingRequest
-
RemoteProcessingRequest
public RemoteProcessingRequest(@NotNull io.deephaven.enterprise.auth.AuthToken authTokenForDispatcher, @NotNull io.deephaven.enterprise.auth.AuthToken authTokenForProcessor, @NotNull RemoteProcessingRequest other)
-
-
Method Details
-
getId
-
getAuthTokenForDispatcher
public io.deephaven.enterprise.auth.AuthToken getAuthTokenForDispatcher() -
getAuthTokenForProcessor
public io.deephaven.enterprise.auth.AuthToken getAuthTokenForProcessor() -
getDescription
-
setDescription
-
getMaxHeapSizeMB
public int getMaxHeapSizeMB() -
setMaxHeapSizeMB
-
getMaxDurationMS
public long getMaxDurationMS() -
setMaxDurationMS
-
omitDefaultGCParams
public boolean omitDefaultGCParams() -
setOmitDefaultGCParams
-
detailedGCLoggingEnabled
public boolean detailedGCLoggingEnabled() -
setDetailedGCLoggingEnabled
-
getExtraJvmArgs
-
setExtraJvmArgs
Sets the extra JVM arguments that will be passed to the processor's JVM. Note that you may only provide one argument per String. In other words, this is OK:rpr.setExtraJvmArgs("-DclientPort=7200", "-DdebugEnabled=false");
But this is not OK:
rpr.setExtraJvmArgs("-DclientPort=7200 -DdebugEnabled=false");
- Parameters:
extraJvmArgs
- the additional JVM arguments to pass- Returns:
- this RemoteProcessingRequest for chaining
-
addClientClassesToClasspath
public boolean addClientClassesToClasspath() -
setAddClientClassesToClasspath
-
enableCachedClasses
public boolean enableCachedClasses() -
setEnableCachedClasses
-
getClasspathAdditions
-
setClasspathAdditions
-
getPriority
public int getPriority() -
setPriority
-
getExtraEnvironmentVars
-
setExtraEnvironmentVars
-
getWorkerKind
-
setWorkerKind
-
getWorkerCreationJson
-
setWorkerCreationJson
-
getExtraSystemProperties
-
addExtraSystemProperties
-
addExtraSystemProperty
-