@Generated(value="config_generator.py") public class PgxDistConfig extends AbstractPgxDistConfig
Modifier and Type | Class and Description |
---|---|
static class |
PgxDistConfig.Field
Fields of PGX.D Engine Config.
|
ENV_SEPARATOR, ENV_VARIABLE_PREFIX, SYSTEM_PROPERTY_PREFIX
Modifier and Type | Method and Description |
---|---|
boolean |
equals(java.lang.Object obj) |
java.lang.Integer |
getAdminRequestCacheTimeout()
after how many seconds admin request results get removed from the cache.
|
java.util.List<java.lang.String> |
getAllowedRemoteLoadingLocations()
(This option may reduce security, use it only if you know what you are doing!) Allow loading graphs into the PGX engine from remote locations.
|
java.util.List<AuthorizationEntityConfig> |
getAuthorization()
mapping of users and roles to resources and permissions for authorization
|
java.util.List<PgxDistConfig.Field> |
getBackendFields() |
java.lang.String |
getBackendWrapper()
Only for internal use.
|
java.lang.String |
getBuiltinsPath()
Path to the builtin algorithms directory.
|
java.lang.String |
getCommonLogConfigure()
Path to a log configuration in Log4j2 (version 2) syntax.
|
static PgxDistConfig.Field[] |
getConfigFields() |
DataMemoryLimitsConfig |
getDataMemoryLimits()
memory limits configuration parameters
|
java.util.List<java.lang.String> |
getDatasourceDirWhitelist()
Deprecated.
|
java.lang.String |
getDebugServer()
Hostname of the debug server.
|
java.lang.String |
getExecutablePath()
Path to the PGX.D executable.
|
java.util.List<AuthorizationLocationConfig> |
getFileLocations()
the file-locations that can be used in the authorization-config
|
java.lang.Integer |
getGhostMaxNodeCounts()
The maximum number of ghost vertices for each graph.
|
java.lang.Integer |
getGhostMinNeighbors()
The minimum number of neighbors a vertex must have in order to be made a ghost (which is a vertex replicated on every machine).
|
java.lang.Integer |
getHandshakePort()
a TCP port which will be used for handshaking of distributed backend processes.
|
java.util.List<java.lang.String> |
getHostnames()
A list of names or IP addresses of hosts which should be involved in a PGX.D cluster.
|
java.lang.String |
getIfEthernet()
IP network interface, used to initialize the network transport layer when using IP (Internet Protocol).
|
java.lang.String |
getIfInfiniband()
InfiniBand network interface, used to initialize the network transport layer when using InfiniBand.
|
java.lang.String |
getInstanceName()
Instance name sent as label to debug server.
|
java.lang.Integer |
getInternalCommunicationPort()
Deprecated.
|
java.lang.Integer |
getIntervalToPollMax()
Exponential backoff upper bound (in ms) to which -once reached, the job status polling interval is fixed
|
java.lang.String |
getJavaClassPath()
Path to required java libraries.
|
java.lang.Integer |
getLargeBufCount()
Number of large buffers populated in the pool.
|
java.lang.Integer |
getLargeBufSizeKb()
Size in kB of the large buffers.
|
java.util.Map<java.lang.String,java.lang.Object> |
getLeftoverValues()
Gets the values that do not belong to any field.
|
java.lang.String |
getLogConfigure()
Path to a log configuration in Log4j (version 1) syntax.
|
java.lang.String |
getLogStdRedirect()
Path to a log file into which the standard output streams (stdout, stderr) of PGX.D backend should be redirected.
|
java.lang.Long |
getMaxHttpClientRequestSize()
maximum size in bytes of any http request sent to to the PGX server over the REST API.
|
java.lang.Integer |
getMemoryCleanupInterval()
memory cleanup tick in seconds
|
java.lang.Integer |
getNumWorkerThreads()
Number of threads used for performing the main computation and for performing auxiliary functions related to remote data (e.g.
|
java.lang.String |
getPartitioningStrategy()
Partitioning strategy of the vertices of the graph.
|
RealmConfig |
getPgxRealm()
configuration parameters for the realm
|
java.util.List<PreloadGraphConfig> |
getPreloadGraphs()
list of graph configs to be registered at start-up.
|
java.lang.Integer |
getProcId()
Internal unique machine identifier in the cluster.
|
java.lang.Integer |
getRankingQueryMaxCacheSize()
Deprecated.
|
java.lang.Double |
getReleaseMemoryThreshold()
threshold percentage of used memory after which the engine starts freeing un-used graphs.
|
java.lang.Integer |
getResourceMonitor()
Frequency at which to send resource statistics to the debug server, in ms.
|
java.lang.String |
getSecureHandshakeSecretFile()
the file path of the secret in
pkcs12 format. |
java.lang.String |
getTmpDir()
Use this path as temporary directory to store compilation artifacts and other temporary data.
|
java.util.Map<PgxDistConfig.Field,java.lang.Object> |
getValues()
Gets the parsed values.
|
java.util.Map<PgxDistConfig.Field,java.lang.Object> |
getValuesWithoutDefaults()
Gets the values without defaults.
|
java.lang.Integer |
getZookeeperTimeout()
If connecting to zookeeper service (for YARN deployment), the timeout in ms the runtime waits for connecting to zookeeper.
|
boolean |
hasDefaultValue(PgxDistConfig.Field field)
Checks for default value.
|
java.lang.Boolean |
isAllowLocalFilesystem()
Deprecated.
|
java.lang.Boolean |
isAuthorizationSessionCreateAllowAll()
if
true allow all users to create a PGX session regardless of permissions granted to them |
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 |
isEnableExperimentalHeteroGraphLoader()
if
true it allows to load Heterogeneous graphs. |
java.lang.Boolean |
isEnableMemoryLimitsChecks()
if true, PGX will enforce the configured memory limits
|
java.lang.Boolean |
isEnableSecureHandshake()
if
true PGX will use TLS-PSK to establish RPC channels between remote backend processes in the cluster |
java.lang.Boolean |
isEnableShutdownCleanupHook()
if
true PGX will add a JVM shutdown hook that will automatically shutdown PGX at JVM shutdown. |
java.lang.Boolean |
isFaultTolerance()
Whether or not to enable fault tolerance in PGX.D, i.e.
|
java.lang.Boolean |
isGroupMembership()
If enabled, PGX.D will run failure detection and execute a coordinated shutdown of the cluster if any of the machines in the cluster fails.
|
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 |
isPartitioningIgnoreGhostnodes()
If set to
true , the partitioning strategy will ignore the ghost nodes. |
java.lang.Boolean |
isPartitioningShuffleVertices()
If set to
true , the vertices of the graph will be randomly shuffled among machines before partitioning. |
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. |
static PgxDistConfig |
parse(java.io.InputStream is, boolean strict, java.lang.String parentPath)
Parses an input stream.
|
static PgxDistConfig |
parse(java.util.Map<java.lang.String,java.lang.Object> raw, boolean strict, java.lang.String parentPath)
Parses a raw key/value mapping.
|
static PgxDistConfig |
parse(java.util.Properties props, boolean strict)
Parses a properties file.
|
java.lang.String |
toString() |
java.lang.String |
toString(boolean hideSensitiveData) |
java.lang.Boolean |
useBulkCommunication()
If set to
true , will use bulk communication for intermachine data transfers. |
java.lang.Boolean |
useInfiniband()
If set to
true , InfiniBand will be used. |
getInstance
getRoleMaxMemoryLimits, getUserMaxMemoryLimits, validate
getDefault, getValueFromEnvironment, getValueFromEnvironment, parseString, setSerializable
public boolean equals(java.lang.Object obj)
equals
in class java.lang.Object
public java.lang.Integer getAdminRequestCacheTimeout()
getAdminRequestCacheTimeout
in class AbstractEngineConfig
public java.util.List<java.lang.String> getAllowedRemoteLoadingLocations()
getAllowedRemoteLoadingLocations
in class AbstractEngineConfig
public java.util.List<AuthorizationEntityConfig> getAuthorization()
getAuthorization
in class AbstractEngineConfig
public java.util.List<PgxDistConfig.Field> getBackendFields()
public java.lang.String getBackendWrapper()
public java.lang.String getBuiltinsPath()
public java.lang.String getCommonLogConfigure()
public static PgxDistConfig.Field[] getConfigFields()
public DataMemoryLimitsConfig getDataMemoryLimits()
getDataMemoryLimits
in class AbstractEngineConfig
@Deprecated public java.util.List<java.lang.String> getDatasourceDirWhitelist()
getDatasourceDirWhitelist
in class AbstractEngineConfig
public java.lang.String getDebugServer()
public java.lang.String getExecutablePath()
public java.util.List<AuthorizationLocationConfig> getFileLocations()
public java.lang.Integer getGhostMaxNodeCounts()
public java.lang.Integer getGhostMinNeighbors()
public java.lang.Integer getHandshakePort()
public java.util.List<java.lang.String> getHostnames()
public java.lang.String getIfEthernet()
public java.lang.String getIfInfiniband()
public java.lang.String getInstanceName()
@Deprecated public java.lang.Integer getInternalCommunicationPort()
public java.lang.Integer getIntervalToPollMax()
getIntervalToPollMax
in class AbstractEngineConfig
public java.lang.String getJavaClassPath()
public java.lang.Integer getLargeBufCount()
public java.lang.Integer getLargeBufSizeKb()
public java.util.Map<java.lang.String,java.lang.Object> getLeftoverValues()
public java.lang.String getLogConfigure()
public java.lang.String getLogStdRedirect()
public java.lang.Long getMaxHttpClientRequestSize()
getMaxHttpClientRequestSize
in class AbstractEngineConfig
public java.lang.Integer getMemoryCleanupInterval()
public java.lang.Integer getNumWorkerThreads()
public java.lang.String getPartitioningStrategy()
public RealmConfig getPgxRealm()
public java.util.List<PreloadGraphConfig> getPreloadGraphs()
public java.lang.Integer getProcId()
@Deprecated public java.lang.Integer getRankingQueryMaxCacheSize()
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 getResourceMonitor()
public java.lang.String getSecureHandshakeSecretFile()
pkcs12
format. This is only used when enable_secure_handshaking
is true
.public java.lang.String getTmpDir()
/tmp
on Linux)getTmpDir
in class AbstractEngineConfig
public java.util.Map<PgxDistConfig.Field,java.lang.Object> getValues()
getValues
in class AbstractConfig
public java.util.Map<PgxDistConfig.Field,java.lang.Object> getValuesWithoutDefaults()
public java.lang.Integer getZookeeperTimeout()
public boolean hasDefaultValue(PgxDistConfig.Field field)
field
- the field@Deprecated public java.lang.Boolean isAllowLocalFilesystem()
isAllowLocalFilesystem
in class AbstractEngineConfig
public java.lang.Boolean isAuthorizationSessionCreateAllowAll()
true
allow all users to create a PGX session regardless of permissions granted to thempublic boolean isEmpty()
public java.lang.Boolean isEnableCsrfTokenChecks()
isEnableCsrfTokenChecks
in class AbstractEngineConfig
public java.lang.Boolean isEnableExperimentalHeteroGraphLoader()
true
it allows to load Heterogeneous graphs. Note that this is currently experimental feature.public java.lang.Boolean isEnableMemoryLimitsChecks()
public java.lang.Boolean isEnableSecureHandshake()
true
PGX will use TLS-PSK to establish RPC channels between remote backend processes in the clusterpublic java.lang.Boolean isEnableShutdownCleanupHook()
true
PGX will add a JVM shutdown hook that will automatically shutdown PGX at JVM shutdown. Notice: Having the shutdown hook deactivated and not shutting down PGX explicitly may result in pollution of your temp directory.public java.lang.Boolean isFaultTolerance()
public java.lang.Boolean isGroupMembership()
public 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 isPartitioningIgnoreGhostnodes()
true
, the partitioning strategy will ignore the ghost nodes.public java.lang.Boolean isPartitioningShuffleVertices()
true
, the vertices of the graph will be randomly shuffled among machines before partitioning. If the data source does not contain enough randomness, this could be beneficial for query and analytics performance on graphs with many properties, labels or data providers. Shuffling can however increase the time necessary to load the graph.public 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 static PgxDistConfig 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 PgxDistConfig 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 PgxDistConfig 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.String toString(boolean hideSensitiveData)
public java.lang.Boolean useBulkCommunication()
true
, will use bulk communication for intermachine data transfers.public java.lang.Boolean useInfiniband()
true
, InfiniBand will be used. Must be set to false
on systems that do not support InfiniBand.