@Generated(value="config_generator.py") public class PgxConfig extends AbstractPgxConfig
Modifier and Type | Class and Description |
---|---|
static class |
PgxConfig.Field
Fields of PGX Engine Config
|
ENV_VARIABLE_PREFIX, SYSTEM_PROPERTY_PREFIX
Modifier and Type | Method and Description |
---|---|
java.lang.Integer |
getAdminRequestCacheTimeout()
after how many seconds admin request results get removed from the cache.
|
BasicSchedulerConfig |
getBasicSchedulerConfig()
configuration parameters for the fork join pool backend
|
java.lang.Integer |
getBfsIterateQueTaskSize()
task size for BFS iterate QUE phase
|
java.lang.Integer |
getBfsThresholdReadBased()
threshold of BFS traversal level items to switch to read-based visiting strategy
|
java.lang.Integer |
getBfsThresholdSingleThreaded()
until what number of BFS traversal level items vertices are visited single-threaded
|
java.lang.String |
getCc()
(only relevant if native analysis is enabled) C++ compiler executable (either absolute path or resolvable via
$PATH ) |
java.lang.String |
getCctraceOut()
[relevant for cctrace] when cctrace is enabled, specifies a path to a file where cctrace should log to.
|
java.lang.String |
getCflags()
(only relevant if native analysis is enabled) flags for C++ compiler
|
java.lang.String |
getCharacterSet()
standard charset to use throughout PGX, UTF-8 will be used as default.
|
java.lang.Integer |
getCniDiffFactorDefault()
default diff factor value used in the common neighbor iterator implementations.
|
java.lang.Integer |
getCniSmallDefault()
default value used in the common neighbor iterator implementations, to indicate below which threshold a subarray is considered small.
|
java.lang.Integer |
getCniStopRecursionDefault()
default value used in the common neighbor iterator implementations, to indicate the minimum size where the binary search approach is applied.
|
java.lang.Integer |
getDfsThresholdLarge()
value that determines at which number of visited vertices the DFS implementation will switch to data-structures that are more optimized for larger numbers of vertices.
|
EnterpriseSchedulerConfig |
getEnterpriseSchedulerConfig()
configuration parameters for the enterprise scheduler
|
EnterpriseSchedulerFlagsConfig |
getEnterpriseSchedulerFlags()
[relevant for enterprise_scheduler] enterprise scheduler specific settings.
|
java.util.List<java.lang.String> |
getGraphs()
list of paths to graph configs to be registered at start-up
|
java.lang.Integer |
getLargeArrayThreshold()
threshold when the size of an array is too big to use a normal Java array.
|
java.lang.String |
getLflags()
(only relevant if native analysis is enabled) linker flags for C++ compiler
|
java.lang.Integer |
getMaxActiveSessions()
the maximum number of sessions allowed to be active at a time
|
java.lang.Integer |
getMaxOffHeapSize()
maximum amount of off-heap memory PGX is allowed to allocate in megabytes, before an OutOfMemoryError will be thrown.
|
java.lang.Integer |
getMaxQueueSizePerSession()
the maximum number of pending tasks allowed to be in the queue, per session.
|
java.lang.Integer |
getMaxSnapshotCount()
Number of snapshots that may be loaded in the engine at the same time.
|
MemoryAllocationStrategy |
getMemoryAllocator()
which memory allocator to use
|
java.lang.Integer |
getMemoryCleanupInterval()
memory cleanup tick in seconds
|
FrontierTypeStrategy |
getMsBfsFrontierTypeStrategy()
the type strategy to use for MS-BFS frontiers
|
java.lang.Integer |
getNumSpinLocks()
how many spin locks each generated app will create at instantiation.
|
java.lang.Integer |
getNumWorkersAnalysis()
Deprecated.
|
java.lang.Integer |
getNumWorkersFastTrackAnalysis()
Deprecated.
|
java.lang.Integer |
getNumWorkersIo()
Deprecated.
|
java.lang.Integer |
getParallelism()
number of worker threads to be used in thread pool.
|
oracle.pgx.config.ParallelizationStrategy |
getParallelizationStrategy()
Deprecated.
|
java.lang.String |
getPathToGmCompiler()
if set, use this path to
gm_comp binary for dynamic compilations. |
PatternMatchingSemantic |
getPatternMatchingSemantic()
the graph pattern matching semantic which is either homomorphism or isomorphism
|
java.lang.Integer |
getPatternMatchingSupernodeCacheThreshold()
minimum number of a node's neighbor to be a supernode.
|
RandomGeneratorStrategy |
getRandomGeneratorStrategy()
method of generating random numbers in pgx
|
java.lang.Long |
getRandomSeed()
[relevant for deterministic random number generator only] seed for the deterministic random number generator used in pgx.
|
java.lang.Double |
getReleaseMemoryThreshold()
threshold percentage of used memory after which the engine starts freeing un-used graphs.
|
java.lang.Integer |
getRevisitThreshold()
maximum number of matched results from a node to be cached
|
SchedulerStrategy |
getScheduler()
which scheduler to use.
|
java.lang.Integer |
getSessionIdleTimeoutSecs()
timeout of idling sessions in seconds.
|
java.lang.Integer |
getSessionTaskTimeoutSecs()
timeout to interrupt long-running tasks submitted by sessions (algorithms, I/O tasks) in seconds.
|
java.lang.Integer |
getSmallTaskLength()
task length if total amount of work is small than default task length (only relevant for task-stealing strategies)
|
java.lang.String |
getSparkStreamsInterface()
the name of an interface will be used spark data communication
|
java.lang.Integer |
getTaskLength()
default task length (only relevant for task-stealing strategies).
|
java.lang.String |
getTmpDir()
Use this path as temporary directory to store compilation artifacts and other temporary data.
|
java.util.Map<PgxConfig.Field,java.lang.Object> |
getValues()
Gets the parsed values.
|
java.util.Map<PgxConfig.Field,java.lang.Object> |
getValuesWithoutDefaults()
Gets the values without defaults.
|
boolean |
hasDefaultValue(PgxConfig.Field field)
Checks for default value.
|
java.lang.Boolean |
isAllowIdleTimeoutOverwrite()
if
true , sessions can overwrite default idle timeout |
java.lang.Boolean |
isAllowLocalFilesystem()
(This flag reduces security, enable only if you know what you're doing!) Allow loading from local filesystem, if in client/server mode.
|
java.lang.Boolean |
isAllowOverrideSchedulingInformation()
if
true allow all users to override scheduling information like task weight, task priority and number of threads |
java.lang.Boolean |
isAllowTaskTimeoutOverwrite()
if
true , sessions can overwrite default task timeout |
java.lang.Boolean |
isAllowUserAutoRefresh()
if
true users may enable auto refresh for graphs they load. |
java.lang.Boolean |
isCctrace()
if
true log every call to a Control or Core interface |
java.lang.Boolean |
isCctracePrintStacktraces()
[relevant for cctrace] when cctrace is enabled, print the stacktrace for each request and result
|
boolean |
isEmpty()
Checks if it's empty.
|
java.lang.Boolean |
isEnableCsrfTokenChecks()
if true, the PGX webapp will verify CSRF token cookie and request parameters sent by the client exist and match.
|
java.lang.Boolean |
isEnableGmCompiler()
if
true , enable dynamic compilation of Green-Marl code during runtime. |
java.lang.Boolean |
isEnableSolarisStudioLabeling()
[relevant when profiling with solaris studio] when enabled, label experiments using the 'er_label' command
|
java.lang.Boolean |
isExplicitSpinLocks()
true means spin explicitly in a loop until lock becomes available. |
java.lang.Boolean |
isIgnoreIncompatibleBackendOperations()
if
true only log when encountering incompatible operations and configuration values in RTS or FJ pool. |
java.lang.Boolean |
isInitPgqlOnStartup()
if
true PGQL is directly initialized on start-up of PGX. |
java.lang.Boolean |
isLaunchWatchdogs()
(for debugging) if
true , additional watch-dog threads will be launched which monitor and log engine health stats |
java.lang.Boolean |
isStrictMode()
if
true , exceptions are thrown and logged with ERROR level whenever engine encounters configuration problems, such as invalid keys, mismatches and other potential errors. |
java.lang.Boolean |
isUnsafeAllowForeignSyntax()
(This flag reduces security, enable only if you know what you're doing!) Allow foreign syntax in user-provided Green-Marl programs
|
static PgxConfig |
parse(java.io.InputStream is, boolean strict, java.lang.String parentPath)
Parses an input stream.
|
static PgxConfig |
parse(java.util.Map<java.lang.String,java.lang.Object> raw, boolean strict, java.lang.String parentPath)
Parses a raw key/value mapping.
|
static PgxConfig |
parse(java.util.Properties props, boolean strict)
Parses a properties file.
|
java.lang.String |
toString() |
java.lang.Boolean |
useNativeAnalysis()
execute analyses using Java (
false ) or C++ (true ) runtime |
java.lang.Boolean |
useNativeLoaders()
use Java (
false ) or C++ (true ) graph loader framework |
java.lang.Boolean |
useStringPool()
If
true , PGX will store string properties in a pool in order to consume less memory on string properties |
getInstance, getInstance, getRuntimeConfig
getValueFromEnvironment, getValueFromEnvironment, parseString, setSerializable
public java.lang.Integer getAdminRequestCacheTimeout()
public BasicSchedulerConfig getBasicSchedulerConfig()
public java.lang.Integer getBfsIterateQueTaskSize()
public java.lang.Integer getBfsThresholdReadBased()
public java.lang.Integer getBfsThresholdSingleThreaded()
public java.lang.String getCc()
$PATH
)public java.lang.String getCctraceOut()
null
it will use the default PGX logger on level TRACE. If it is the special value :stderr:
it will log to stderrpublic java.lang.String getCflags()
public java.lang.String getCharacterSet()
public java.lang.Integer getCniDiffFactorDefault()
public java.lang.Integer getCniSmallDefault()
public java.lang.Integer getCniStopRecursionDefault()
public java.lang.Integer getDfsThresholdLarge()
public EnterpriseSchedulerConfig getEnterpriseSchedulerConfig()
public EnterpriseSchedulerFlagsConfig getEnterpriseSchedulerFlags()
public java.util.List<java.lang.String> getGraphs()
public java.lang.Integer getLargeArrayThreshold()
Integer.MAX_VALUE - 3
)public java.lang.String getLflags()
public java.lang.Integer getMaxActiveSessions()
public java.lang.Integer getMaxOffHeapSize()
public java.lang.Integer getMaxQueueSizePerSession()
public java.lang.Integer getMaxSnapshotCount()
public MemoryAllocationStrategy getMemoryAllocator()
public java.lang.Integer getMemoryCleanupInterval()
public FrontierTypeStrategy getMsBfsFrontierTypeStrategy()
public java.lang.Integer getNumSpinLocks()
@Deprecated public java.lang.Integer getNumWorkersAnalysis()
@Deprecated public java.lang.Integer getNumWorkersFastTrackAnalysis()
@Deprecated public java.lang.Integer getNumWorkersIo()
public java.lang.Integer getParallelism()
@Deprecated public oracle.pgx.config.ParallelizationStrategy getParallelizationStrategy()
public java.lang.String getPathToGmCompiler()
gm_comp
binary for dynamic compilations. If not set and enable_gm_compiler is true
, PGX will try to utilize one of the built-in compiler binaries.public PatternMatchingSemantic getPatternMatchingSemantic()
public java.lang.Integer getPatternMatchingSupernodeCacheThreshold()
public RandomGeneratorStrategy getRandomGeneratorStrategy()
public java.lang.Long getRandomSeed()
public java.lang.Double getReleaseMemoryThreshold()
0.0
means graphs get freed as soon as their reference count becomes zero. That is, all sessions which loaded that graph were destroyed/timed out. A value of 1.0
means graphs get never freed. Engine will throw OutOfMemoryError
s as soon as a graph is needed which doesn't fit in memory anymore. A value of 0.7
means the engine keeps all graphs in memory as long as total memory consumption is below 70% of total available memory, even if there is currently no session using them. Once the 70% are surpassed and another graph needs to get loaded, un-used graphs get freed until memory consumption is below 70% again.public java.lang.Integer getRevisitThreshold()
public SchedulerStrategy getScheduler()
public java.lang.Integer getSessionIdleTimeoutSecs()
public java.lang.Integer getSessionTaskTimeoutSecs()
public java.lang.Integer getSmallTaskLength()
public java.lang.String getSparkStreamsInterface()
public java.lang.Integer getTaskLength()
public java.lang.String getTmpDir()
/tmp
on Linux)public java.util.Map<PgxConfig.Field,java.lang.Object> getValues()
getValues
in class AbstractPgxConfig
public java.util.Map<PgxConfig.Field,java.lang.Object> getValuesWithoutDefaults()
public boolean hasDefaultValue(PgxConfig.Field field)
field
- the fieldpublic java.lang.Boolean isAllowIdleTimeoutOverwrite()
true
, sessions can overwrite default idle timeoutpublic java.lang.Boolean isAllowLocalFilesystem()
public java.lang.Boolean isAllowOverrideSchedulingInformation()
true
allow all users to override scheduling information like task weight, task priority and number of threadspublic java.lang.Boolean isAllowTaskTimeoutOverwrite()
true
, sessions can overwrite default task timeoutpublic java.lang.Boolean isAllowUserAutoRefresh()
true
users may enable auto refresh for graphs they load. If false
only graphs mentioned in graphs
can have auto refresh enabledpublic java.lang.Boolean isCctrace()
true
log every call to a Control or Core interfacepublic java.lang.Boolean isCctracePrintStacktraces()
public boolean isEmpty()
public java.lang.Boolean isEnableCsrfTokenChecks()
public java.lang.Boolean isEnableGmCompiler()
true
, enable dynamic compilation of Green-Marl code during runtime. Note: the built-in Green-Marl compilers don't support all platforms. Find the list of supported platforms in the installation section. You can also use your own version of the compiler by setting the path_to_gm_compiler field.public java.lang.Boolean isEnableSolarisStudioLabeling()
public java.lang.Boolean isExplicitSpinLocks()
true
means spin explicitly in a loop until lock becomes available. false
means using JDK locks which rely on the JVM to decide whether to context switch or spin. Our experiments showed that setting this value to true
results in better performance.public java.lang.Boolean isIgnoreIncompatibleBackendOperations()
true
only log when encountering incompatible operations and configuration values in RTS or FJ pool. If false
throw exceptionspublic java.lang.Boolean isInitPgqlOnStartup()
true
PGQL is directly initialized on start-up of PGX. Otherwise, it is initialized during the first use of PGQL.public java.lang.Boolean isLaunchWatchdogs()
true
, additional watch-dog threads will be launched which monitor and log engine health statspublic java.lang.Boolean isStrictMode()
true
, exceptions are thrown and logged with ERROR
level whenever engine encounters configuration problems, such as invalid keys, mismatches and other potential errors. If false
, engine logs problems with ERROR
/WARN
level (depending on severity) and makes best guesses / uses sensible defaults instead of throwing exceptions.public java.lang.Boolean isUnsafeAllowForeignSyntax()
public static PgxConfig parse(java.io.InputStream is, boolean strict, java.lang.String parentPath) throws java.io.IOException
is
- the input streamstrict
- if true, parses in strict modeparentPath
- if not null, resolves relative paths against this parentPathjava.io.IOException
- Signals that an I/O exception has occurred.public static PgxConfig parse(java.util.Map<java.lang.String,java.lang.Object> raw, boolean strict, java.lang.String parentPath)
raw
- the raw key/value mapping to parsestrict
- if true, parses in strict modeparentPath
- if not null, resolves relative paths against this parentPathpublic static PgxConfig parse(java.util.Properties props, boolean strict)
props
- the properties to parsestrict
- if true, parses in strict modepublic java.lang.String toString()
toString
in class java.lang.Object
public java.lang.Boolean useNativeAnalysis()
false
) or C++ (true
) runtimepublic java.lang.Boolean useNativeLoaders()
false
) or C++ (true
) graph loader frameworkpublic java.lang.Boolean useStringPool()
true
, PGX will store string properties in a pool in order to consume less memory on string propertiesCopyright © 2017 Oracle Corp. All Rights Reserved.