Enum PgxConfig.Field

    • Enum Constant Summary

      Enum Constants 
      Enum Constant Description
      ADMIN_REQUEST_CACHE_TIMEOUT
      after how many seconds admin request results get removed from the cache.
      ALLOW_IDLE_TIMEOUT_OVERWRITE
      if true, sessions can overwrite default idle timeout
      ALLOW_LAZY_LOADING_FOR_DATABASE_GRAPHS
      if true, PGX will automatically load graphs from the database when they are first referenced in graph queries
      ALLOW_OVERRIDE_SCHEDULING_INFORMATION
      if true allow all users to override scheduling information like task weight, task priority and number of threads
      ALLOW_TASK_TIMEOUT_OVERWRITE
      if true, sessions can overwrite default task timeout
      ALLOW_USER_AUTO_REFRESH
      if true users may enable auto refresh for graphs they load.
      ALLOWED_REMOTE_LOADING_LOCATIONS
      (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.
      AUTHORIZATION
      mapping of users and roles to resources and permissions for authorization
      AUTHORIZATION_SESSION_CREATE_ALLOW_ALL
      if true allow all users to create a PGX session regardless of permissions granted to them
      BACKEND_WRAPPER
      Only for internal use.
      BASIC_SCHEDULER_CONFIG
      configuration parameters for the fork join pool backend
      BFS_ITERATE_QUE_TASK_SIZE
      task size for BFS iterate QUE phase
      BFS_THRESHOLD_PARENT_READ_BASED
      threshold of BFS traversal level items above which to switch to parent-read-based visiting strategy
      BFS_THRESHOLD_READ_BASED
      threshold of BFS traversal level items above which to switch to read-based visiting strategy
      BFS_THRESHOLD_SINGLE_THREADED
      until what number of BFS traversal level items vertices are visited single-threaded
      BUILTINS_PATH
      Path to the builtin algorithms directory.
      CHARACTER_SET
      standard charset to use throughout PGX, UTF-8 will be used as default.
      CNI_DIFF_FACTOR_DEFAULT
      default diff factor value used in the common neighbor iterator implementations.
      CNI_SMALL_DEFAULT
      default value used in the common neighbor iterator implementations, to indicate below which threshold a subarray is considered small.
      CNI_STOP_RECURSION_DEFAULT
      default value used in the common neighbor iterator implementations, to indicate the minimum size where the binary search approach is applied.
      COMMON_LOG_CONFIGURE
      Path to a log configuration in Logback syntax.
      DATA_MEMORY_LIMITS
      memory limits configuration parameters
      DEBUG_SERVER
      Hostname of the debug server.
      DFS_THRESHOLD_LARGE
      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.
      ENABLE_CSRF_TOKEN_CHECKS
      if true, the PGX webapp will verify CSRF token cookie and request parameters sent by the client exist and match.
      ENABLE_ENGINE_TLS
      If true, the engine enables transport layer security (TLS) for connections between engine processes.
      ENABLE_GM_COMPILER
      if true, enable dynamic compilation of Green-Marl code during runtime
      ENABLE_GRAPH_LOADING_CACHE
      if true, activate the graph loading cache that will accelerate loading of graphs that were previously loaded (can only be disabled in embedded mode)
      ENABLE_MEMORY_LIMITS_CHECKS
      if true, PGX will enforce the configured memory limits
      ENABLE_ML_ACCELERATORS
      if true, will utilize available ML accelerators to run machine learning trainings faster.
      ENABLE_SHUTDOWN_CLEANUP_HOOK
      if true PGX will add a JVM shutdown hook that will automatically shutdown PGX at JVM shutdown.
      ENABLE_SNAPSHOT_PROPERTIES_PUBLISH_STATE_PROPAGATION
      if true, properties in a new snapshot will inherit the publishing state of properties in the parent snapshot
      ENGINE_CONNECTION_TIMEOUT_SECS
      Timeout in seconds to setup the initial connections among PGX.D processes.
      ENGINE_TLS_CIPHER
      Cipher suite name (in OpenSSL syntax) to be used by the engine for securing TLS connections.
      ENGINE_TLS_EXPECTED_DN
      If non empty, the engine will verify that the peer's certificate's Subject Distinguished Name matches exactly the given string.
      ENGINE_TLS_KEYSTORE
      Path to the PKCS12 keystore to be used by the engine for securing mutual TLS connections between engine processes.
      ENGINE_TLS_TRUSTSTORE
      Path to the PEM truststore to be used by the engine for securing mutual TLS connections between engine processes.
      ENGINE_TLS_VERIFY_HOSTNAME
      If true, the engine will verify that the hostname contained in the peer's certificate matches the hostname of the peer.
      ENTERPRISE_SCHEDULER_CONFIG
      configuration parameters for the enterprise scheduler
      ENTERPRISE_SCHEDULER_FLAGS
      [relevant for enterprise_scheduler] enterprise scheduler specific settings.
      EXECUTABLE_PATH
      Path to the PGX.D executable.
      EXISTING_HOSTNAMES
      A list of names or IP addresses of hosts that are already part of an existing PGX.D cluster.
      EXPLICIT_SPIN_LOCKS
      true means spin explicitly in a loop until lock becomes available.
      FILE_LOCATIONS
      the file-locations that can be used in the authorization-config
      GRAPH_ALGORITHM_LANGUAGE
      Frontend compiler to use.
      GRAPH_SHARING_OPTION
      control if a graph can be published and shared with other users
      GRAPH_VALIDATION_LEVEL
      level of validation performed on newly loaded or created graphs
      HANDSHAKE_PORT
      a TCP port which will be used for handshaking of distributed backend processes.
      HOSTNAMES
      A list of names or IP addresses of hosts which should be involved in initial bootstrapping of a PGX.D cluster.
      IF_ETHERNET
      Ethernet network interface, used to initialize the network transport layer when using Ethernet.
      IF_INFINIBAND
      InfiniBand network interface, used to initialize the network transport layer when using InfiniBand.
      IGNORE_INCOMPATIBLE_BACKEND_OPERATIONS
      if true only log when encountering incompatible operations and configuration values in RTS or FJ pool.
      IN_PLACE_UPDATE_CONSISTENCY_MODEL
      Consistency model used when in-place updates occur.
      INIT_PGQL_ON_STARTUP
      if true PGQL is directly initialized on start-up of PGX.
      INSTANCE_NAME
      Instance name sent as label to debug server.
      INTERVAL_TO_POLL_MAX
      Exponential backoff upper bound (in ms) to which -once reached, the job status polling interval is fixed
      JAVA_CLASS_PATH
      Path to required java libraries.
      JAVA_HOME_DIR
      The path to Java's home directory.
      LARGE_ARRAY_THRESHOLD
      threshold when the size of an array is too big to use a normal Java array.
      LARGE_BUF_COUNT
      Number of large buffers populated in the pool.
      LARGE_BUF_SIZE_KB
      Size in kB of the large buffers.
      LAUNCH_WATCHDOGS
      (for debugging) if true, additional watch-dog threads will be launched which monitor and log engine health stats
      LIVENESS_CHECK_DELAY_SECS
      Liveness check interval, i.e., how often to check that the PGX.D server is alive and that it can accept and execute commands.
      LIVENESS_CHECK_TIMEOUT_SECS
      Fails liveness check task if it cannot complete the liveness task in the period of time.
      LOG_CONFIGURE
      Path to a log configuration in Log4j (version 1) syntax.
      LOG_STD_REDIRECT
      Path to a log file into which the standard output streams (stdout, stderr) of PGX.D backend should be redirected.
      MAX_ACTIVE_SESSIONS
      the maximum number of sessions allowed to be active at a time
      MAX_DISTINCT_STRINGS_PER_POOL
      [only relevant if string_pooling_strategy is indexed] amount of distinct strings per property after which to stop pooling.
      MAX_HTTP_CLIENT_REQUEST_SIZE
      maximum size in bytes of any http request sent to to the PGX server over the REST API.
      MAX_OFF_HEAP_SIZE
      maximum amount of off-heap memory PGX is allowed to allocate in megabytes, before an OutOfMemoryError will be thrown.
      MAX_ON_HEAP_MEMORY_USAGE_RATIO
      maximum ratio of on-heap memory that PGX is allowed to use, between 0 and 1.
      MAX_QUEUE_SIZE_PER_SESSION
      the maximum number of pending tasks allowed to be in the queue, per session.
      MAX_SNAPSHOT_COUNT
      Number of snapshots that may be loaded in the engine at the same time.
      MAXIMUM_ATTAINABLE_MEMORY
      The maximum memory that can ever be made available to this PGX.D cluster.
      MAXIMUM_COMMAND_BUFFERS_POSTED
      The max number of posted buffers in an MQL channel for incoming command messages from all remotes.
      MAXIMUM_DATA_BUFFERS_POSTED
      The max number of large buffers posted in an MQL channel for incoming data messages from all remotes.
      MAXIMUM_RECEIVED_MESSAGES_BUFFER
      The max size of per remote received message queue.
      MAXIMUM_SEND_BUFFERS_IN_FLIGHT
      The max number of in-flight messages can be sent globally at the same time.
      MEMORY_ALLOCATOR
      which memory allocator to use
      MEMORY_CLEANUP_INTERVAL
      memory cleanup tick in seconds
      MIN_ARRAY_COMPACTION_THRESHOLD
      [only relevant for graphs optimized for updates] minimum value that can be used for the array_compaction_threshold value in graph configuration.
      MIN_FETCH_INTERVAL_SEC
      (only relevant if the graph format supports delta updates) for delta-refresh, the lowest interval at which a graph source is queried for changes.
      MIN_UPDATE_INTERVAL_SEC
      for auto-refresh, the lowest interval after which a new snapshot is created, either by reloading the entire graph or if the format supports delta-updates, out of the cached changes (only relevant if the format supports delta updates).
      MS_BFS_FRONTIER_TYPE_STRATEGY
      the type strategy to use for MS-BFS frontiers
      NETWORK_CREDITS
      The number of network credits will be provided to MQL (per MQL remote queue).
      NEW_FOLLOWER_CONNECTION_TIMEOUT_SECS
      Timeout in seconds for existing PGX.D processes to wait for the new follower to join the cluster in elastic scenarios.
      NUM_SPIN_LOCKS
      how many spin locks each generated app will create at instantiation.
      OBFUSCATE_LOG
      If set to true and if log_sensitive_data is disabled (by default in release mode), the engine will irreversibly hash any remaining parameters of the log messages.
      ON_HOLD_JOB_TIMEOUT_SECS
      Timeout in seconds to keep the job waiting in case it is put on hold due to lack of memory resources.
      PARALLELISM
      number of worker threads to be used in thread pool.
      PARTITIONING_SHUFFLE_VERTICES
      If set to true, the vertices of the graph will be randomly shuffled among machines before partitioning.
      PARTITIONING_STRATEGY
      Partitioning strategy of the vertices of the graph.
      PATTERN_MATCHING_SUPERNODE_CACHE_THRESHOLD
      minimum number of a node's neighbor to be a supernode.
      PERMISSION_CHECKS_INTERVAL
      interval in seconds to perform permission checks on source graphs
      PGQL_MAXIMUM_NUM_BUFFERS
      The max number of large buffers used by the PGQL engine per query.
      PGX_REALM
      configuration parameters for the realm
      PGX_SERVER_BASE_URL
      should be used when deploying pgx server behind a load balancer to make clients before 21.3 backward compatible, the value should be set to the load balancer address
      POOLING_FACTOR
      [only relevant if string_pooling_strategy is on_heap] this value prevents the string pool to grow as big as the property size which could render the pooling ineffective
      PRELOAD_GRAPHS
      list of graph configs to be registered at start-up.
      PROC_ID
      Internal unique machine identifier in the cluster.
      RANDOM_GENERATOR_STRATEGY
      method of generating random numbers in pgx
      RANDOM_SEED
      [relevant for deterministic random number generator only] seed for the deterministic random number generator used in pgx.
      READINESS_MEMORY_USAGE_RATIO
      memory limit ratio that should be considered to detect if PGX server is ready, used by isReady API, default value is 1.0
      RELEASE_MEMORY_THRESHOLD
      threshold percentage of used memory after which the engine starts freeing un-used graphs.
      RESOURCE_MONITOR
      Frequency at which to send resource statistics to the debug server, in ms.
      REVISIT_THRESHOLD
      maximum number of matched results from a node to be cached
      RUNNING_MEMORY_USAGE_RATIO
      memory limit ratio that should be considered to detect if PGX server is running, used by isRunning API default value is 1.0
      SCHEDULER
      which scheduler to use.
      SESSION_IDLE_TIMEOUT_SECS
      timeout of idling sessions in seconds.
      SESSION_TASK_TIMEOUT_SECS
      timeout to interrupt long-running tasks submitted by sessions (algorithms, I/O tasks) in seconds.
      SMALL_TASK_LENGTH
      task length if total amount of work is small than default task length (only relevant for task-stealing strategies)
      STRICT_MODE
      if true, exceptions are thrown and logged with ERROR level whenever engine encounters configuration problems, such as invalid keys, mismatches and other potential errors.
      STRING_POOLING_STRATEGY
      which string pooling strategy to use
      SYSTEM_IDLE_DELAY_BEFORE_IDLING_MSECS
      When the system is idle for longer than `system_idle_delay_before_idling_msecs`, start placing active background threads to sleep to reduce CPU usage and power consumption.
      SYSTEM_IDLE_SLEEP_INCREMENT_INTERVAL_MSECS
      Idling will start with system_idle_sleep_increment_msecs sleep duration and will increment this much every system_idle_sleep_increment_interval_msecs to a maximum sleep of system_idle_sleep_max_msecs.
      SYSTEM_IDLE_SLEEP_INCREMENT_MSECS
      Idling will start with system_idle_sleep_increment_msecs sleep duration and will increment this much every system_idle_sleep_increment_interval_msecs to a maximum sleep of system_idle_sleep_max_msecs.
      SYSTEM_IDLE_SLEEP_MAX_MSECS
      Idling will start with system_idle_sleep_increment_msecs sleep duration and will increment this much every system_idle_sleep_increment_interval_msecs to a maximum sleep of system_idle_sleep_max_msecs.
      TASK_LENGTH
      default task length (only relevant for task-stealing strategies).
      TMP_DIR
      Use this path as temporary directory to store compilation artifacts and other temporary data.
      UDF_CONFIG_DIRECTORY
      directory path containing udf config files
      USE_DEDICATED_POLLER_THREADS
      If true, the engine will use dedicated RTS poller threads that will always be scheduled, whereas if set to code>false, IO threads will be used and will share RTS slots with other worker threads.
      USE_INDEX_FOR_REACHABILITY_QUERIES
      create index for reachability queries
      USE_INFINIBAND
      If set to true, an InfiniBand network interface will be used.
      USE_MEMORY_MAPPER_FOR_READING_PGB
      if true, use memory mapped files for reading graphs in PGB format if possible; false always use s stream based implementation
      USE_MEMORY_MAPPER_FOR_STORING_PGB
      if true, use memory mapped files for storing in PGB format if possible; if false always use a stream based implementation
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.Object getDefaultVal()
      Gets the default value of this field.
      java.util.List<java.lang.String> getKeyAliases()
      Gets the key aliases of this field which are also recognized during parsing.
      java.util.List<java.lang.String> getSingletonListKeyAliases()
      Gets the key aliases of this field which contain single values for lists and are also recognized during parsing.
      java.lang.Class<?> getType()
      Gets the type of this field.
      boolean isArray()
      Checks if this field is an array.
      boolean isHidden()
      Checks if this field should be hidden.
      boolean isPath()
      Checks if this field is a path.
      boolean isRequired()
      Checks if this field is required.
      boolean isSensitive()
      Checks if this field holds a sensitive data.
      java.lang.String toKey()
      Get the key of this field, which is how this field is represented in serialized form.
      java.lang.String toString()  
      static PgxConfig.Field valueOf​(java.lang.String name)
      Returns the enum constant of this type with the specified name.
      static PgxConfig.Field[] values()
      Returns an array containing the constants of this enum type, in the order they are declared.
      • Methods inherited from class java.lang.Enum

        compareTo, equals, getDeclaringClass, hashCode, name, ordinal, valueOf
      • Methods inherited from class java.lang.Object

        getClass, notify, notifyAll, wait, wait, wait
    • Enum Constant Detail

      • ENABLE_GRAPH_LOADING_CACHE

        public static final PgxConfig.Field ENABLE_GRAPH_LOADING_CACHE
        if true, activate the graph loading cache that will accelerate loading of graphs that were previously loaded (can only be disabled in embedded mode)
      • BASIC_SCHEDULER_CONFIG

        public static final PgxConfig.Field BASIC_SCHEDULER_CONFIG
        configuration parameters for the fork join pool backend
      • ENTERPRISE_SCHEDULER_CONFIG

        public static final PgxConfig.Field ENTERPRISE_SCHEDULER_CONFIG
        configuration parameters for the enterprise scheduler
      • MIN_FETCH_INTERVAL_SEC

        public static final PgxConfig.Field MIN_FETCH_INTERVAL_SEC
        (only relevant if the graph format supports delta updates) for delta-refresh, the lowest interval at which a graph source is queried for changes. You can tune this value to prevent PGX from hanging due to too frequent graph delta-refreshing.
      • MIN_UPDATE_INTERVAL_SEC

        public static final PgxConfig.Field MIN_UPDATE_INTERVAL_SEC
        for auto-refresh, the lowest interval after which a new snapshot is created, either by reloading the entire graph or if the format supports delta-updates, out of the cached changes (only relevant if the format supports delta updates). You can tune this value to prevent PGX from hanging due to too frequent graph auto-refreshing.
      • IN_PLACE_UPDATE_CONSISTENCY_MODEL

        public static final PgxConfig.Field IN_PLACE_UPDATE_CONSISTENCY_MODEL
        Consistency model used when in-place updates occur. Only relevant if in-place updates are enabled. Currently updates are only applied in place if the updates are not structural (Only modifies properties). Two models are currently implemented, one only delays new tasks when an update occurs, the other also running tasks.
      • MIN_ARRAY_COMPACTION_THRESHOLD

        public static final PgxConfig.Field MIN_ARRAY_COMPACTION_THRESHOLD
        [only relevant for graphs optimized for updates] minimum value that can be used for the array_compaction_threshold value in graph configuration. If a graph configuration attempts to use a value lower than the one specified by min_array_compaction_threshold, it will use min_array_compaction_threshold instead
      • MAX_SNAPSHOT_COUNT

        public static final PgxConfig.Field MAX_SNAPSHOT_COUNT
        Number of snapshots that may be loaded in the engine at the same time. New snapshots can be created via auto or forced update. If the number of snapshots of a graph reaches this threshold, no more auto-updates will be performed and a forced-updated will result in an exception until one or more snapshots are removed from memory. A value of zero indicates to support an unlimited amount of snapshots.
      • JAVA_HOME_DIR

        public static final PgxConfig.Field JAVA_HOME_DIR
        The path to Java's home directory. If set to <system-java-home-dir>, use the java.home system property.
      • ENABLE_GM_COMPILER

        public static final PgxConfig.Field ENABLE_GM_COMPILER
        if true, enable dynamic compilation of Green-Marl code during runtime
      • GRAPH_ALGORITHM_LANGUAGE

        public static final PgxConfig.Field GRAPH_ALGORITHM_LANGUAGE
        Frontend compiler to use.
      • ALLOW_USER_AUTO_REFRESH

        public static final PgxConfig.Field ALLOW_USER_AUTO_REFRESH
        if true users may enable auto refresh for graphs they load. If false only graphs mentioned in preload_graphs can have auto refresh enabled
      • IGNORE_INCOMPATIBLE_BACKEND_OPERATIONS

        public static final PgxConfig.Field IGNORE_INCOMPATIBLE_BACKEND_OPERATIONS
        if true only log when encountering incompatible operations and configuration values in RTS or FJ pool. If false throw exceptions
      • ALLOW_OVERRIDE_SCHEDULING_INFORMATION

        public static final PgxConfig.Field ALLOW_OVERRIDE_SCHEDULING_INFORMATION
        if true allow all users to override scheduling information like task weight, task priority and number of threads
      • UDF_CONFIG_DIRECTORY

        public static final PgxConfig.Field UDF_CONFIG_DIRECTORY
        directory path containing udf config files
      • HOSTNAMES

        public static final PgxConfig.Field HOSTNAMES
        A list of names or IP addresses of hosts which should be involved in initial bootstrapping of a PGX.D cluster. The first host specified in the list will become the leader host. This parameter should not be set when joining an existing cluster.
      • EXISTING_HOSTNAMES

        public static final PgxConfig.Field EXISTING_HOSTNAMES
        A list of names or IP addresses of hosts that are already part of an existing PGX.D cluster. The new follower machine uses this list to join the cluster. This parameter should not be set when initially bootstrapping a cluster.
      • EXECUTABLE_PATH

        public static final PgxConfig.Field EXECUTABLE_PATH
        Path to the PGX.D executable.
      • BUILTINS_PATH

        public static final PgxConfig.Field BUILTINS_PATH
        Path to the builtin algorithms directory.
      • LOG_CONFIGURE

        public static final PgxConfig.Field LOG_CONFIGURE
        Path to a log configuration in Log4j (version 1) syntax. Contents in the file only affects a PGX.D backend. Note: This parameter is set automatically by `start-server.sh`, do not change it.
      • COMMON_LOG_CONFIGURE

        public static final PgxConfig.Field COMMON_LOG_CONFIGURE
        Path to a log configuration in Logback syntax. Contents in the file only affects PGX.D backend components shared with PGX.SM via JNI. Note: This parameter is set automatically by `start-server.sh`, do not change it.
      • LOG_STD_REDIRECT

        public static final PgxConfig.Field LOG_STD_REDIRECT
        Path to a log file into which the standard output streams (stdout, stderr) of PGX.D backend should be redirected. No redirection happens when the path is null.
      • OBFUSCATE_LOG

        public static final PgxConfig.Field OBFUSCATE_LOG
        If set to true and if log_sensitive_data is disabled (by default in release mode), the engine will irreversibly hash any remaining parameters of the log messages.
      • MAXIMUM_COMMAND_BUFFERS_POSTED

        public static final PgxConfig.Field MAXIMUM_COMMAND_BUFFERS_POSTED
        The max number of posted buffers in an MQL channel for incoming command messages from all remotes.
      • MAXIMUM_RECEIVED_MESSAGES_BUFFER

        public static final PgxConfig.Field MAXIMUM_RECEIVED_MESSAGES_BUFFER
        The max size of per remote received message queue.
      • MAXIMUM_SEND_BUFFERS_IN_FLIGHT

        public static final PgxConfig.Field MAXIMUM_SEND_BUFFERS_IN_FLIGHT
        The max number of in-flight messages can be sent globally at the same time. PGX.D can send maximum_send_buffers_in_flight / (# of remote hosts - 1) messages per remote at maximum.
      • MAXIMUM_DATA_BUFFERS_POSTED

        public static final PgxConfig.Field MAXIMUM_DATA_BUFFERS_POSTED
        The max number of large buffers posted in an MQL channel for incoming data messages from all remotes.
      • NETWORK_CREDITS

        public static final PgxConfig.Field NETWORK_CREDITS
        The number of network credits will be provided to MQL (per MQL remote queue). Larger value, more message sent at the same time by MQL.
      • NEW_FOLLOWER_CONNECTION_TIMEOUT_SECS

        public static final PgxConfig.Field NEW_FOLLOWER_CONNECTION_TIMEOUT_SECS
        Timeout in seconds for existing PGX.D processes to wait for the new follower to join the cluster in elastic scenarios. Unless the new follower does the handshake with existing processes within the timeout, the joining operation is considered failed by the existing PGX.D processes.
      • PGQL_MAXIMUM_NUM_BUFFERS

        public static final PgxConfig.Field PGQL_MAXIMUM_NUM_BUFFERS
        The max number of large buffers used by the PGQL engine per query. This value limits the memory used per machine for intermediate results during pattern matching to pgql_maximum_num_buffers * large_buf_size_kb.
      • ON_HOLD_JOB_TIMEOUT_SECS

        public static final PgxConfig.Field ON_HOLD_JOB_TIMEOUT_SECS
        Timeout in seconds to keep the job waiting in case it is put on hold due to lack of memory resources. Unless additional followers join the cluster within the timeout or the required memory becomes free, the job will get cancelled. In case multiple followers are necessary to cover the required memory of the job, the timeout will be internally reset whenever a new follower joins.
      • ENGINE_CONNECTION_TIMEOUT_SECS

        public static final PgxConfig.Field ENGINE_CONNECTION_TIMEOUT_SECS
        Timeout in seconds to setup the initial connections among PGX.D processes. Should be lower than liveness_check_interval_secs to avoid false negative liveness detection during system startup. The time needed to establish connections is proportional to the cluster size, so very large PGX.D clusters might need to increase this parameter.
      • MAXIMUM_ATTAINABLE_MEMORY

        public static final PgxConfig.Field MAXIMUM_ATTAINABLE_MEMORY
        The maximum memory that can ever be made available to this PGX.D cluster. The value is used by PGX.D to identify whether it should elastically expand when faced with memory pressure, or whether it should cancel the command that exceeded this value altogether. This should be configured to be equal to sum of memory of all machines in the machine pool available for cluster growth. The invariant it sets is that there will never be more memory available to the PGX.D cluster than this value. The value can also be changed at runtime. If set to 0 PGX.D assumes elasticity is not enabled. Allowed values can be specified with memory units (e.g., 1m -> 1 megabyte, 1g -> 1 gigabyte, 1t -> 1 terabyte).
      • LIVENESS_CHECK_DELAY_SECS

        public static final PgxConfig.Field LIVENESS_CHECK_DELAY_SECS
        Liveness check interval, i.e., how often to check that the PGX.D server is alive and that it can accept and execute commands. Should be larger than engine_connection_timeout_secs to avoid false negative liveness detection during system startup. Should be meaningfully larger than (((system_idle_sleep_max_msecs / system_idle_sleep_increment_msecs) * system_idle_sleep_increment_interval_msecs) + system_idle_delay_before_idling_msecs) to avoid preventing system idleness.
      • LIVENESS_CHECK_TIMEOUT_SECS

        public static final PgxConfig.Field LIVENESS_CHECK_TIMEOUT_SECS
        Fails liveness check task if it cannot complete the liveness task in the period of time. Should be lower than liveness_check_interval_secs. Setting this parameter too low will cause false negative liveness detection.
      • SYSTEM_IDLE_DELAY_BEFORE_IDLING_MSECS

        public static final PgxConfig.Field SYSTEM_IDLE_DELAY_BEFORE_IDLING_MSECS
        When the system is idle for longer than `system_idle_delay_before_idling_msecs`, start placing active background threads to sleep to reduce CPU usage and power consumption. Should be adjusted with respect to liveness_check_interval_secs, otherwise liveness checks will prevent system to ever go idle.
      • SYSTEM_IDLE_SLEEP_INCREMENT_MSECS

        public static final PgxConfig.Field SYSTEM_IDLE_SLEEP_INCREMENT_MSECS
        Idling will start with system_idle_sleep_increment_msecs sleep duration and will increment this much every system_idle_sleep_increment_interval_msecs to a maximum sleep of system_idle_sleep_max_msecs. Should be adjusted with respect to liveness_check_interval_secs, otherwise liveness checks will prevent system to ever go idle.
      • SYSTEM_IDLE_SLEEP_INCREMENT_INTERVAL_MSECS

        public static final PgxConfig.Field SYSTEM_IDLE_SLEEP_INCREMENT_INTERVAL_MSECS
        Idling will start with system_idle_sleep_increment_msecs sleep duration and will increment this much every system_idle_sleep_increment_interval_msecs to a maximum sleep of system_idle_sleep_max_msecs. Should be adjusted with respect to liveness_check_interval_secs, otherwise liveness checks will prevent system to ever go idle.
      • SYSTEM_IDLE_SLEEP_MAX_MSECS

        public static final PgxConfig.Field SYSTEM_IDLE_SLEEP_MAX_MSECS
        Idling will start with system_idle_sleep_increment_msecs sleep duration and will increment this much every system_idle_sleep_increment_interval_msecs to a maximum sleep of system_idle_sleep_max_msecs. Determines the largest latency to detect activity in case the system is idle. If set too low, system will not save much resources during idleness. Should be adjusted with respect to liveness_check_interval_secs, otherwise liveness checks will prevent system to ever go idle.
      • JAVA_CLASS_PATH

        public static final PgxConfig.Field JAVA_CLASS_PATH
        Path to required java libraries.
      • USE_INFINIBAND

        public static final PgxConfig.Field USE_INFINIBAND
        If set to true, an InfiniBand network interface will be used. Must be set to false on systems that do not support InfiniBand.
      • IF_INFINIBAND

        public static final PgxConfig.Field IF_INFINIBAND
        InfiniBand network interface, used to initialize the network transport layer when using InfiniBand.
      • IF_ETHERNET

        public static final PgxConfig.Field IF_ETHERNET
        Ethernet network interface, used to initialize the network transport layer when using Ethernet.
      • LARGE_BUF_COUNT

        public static final PgxConfig.Field LARGE_BUF_COUNT
        Number of large buffers populated in the pool.
      • LARGE_BUF_SIZE_KB

        public static final PgxConfig.Field LARGE_BUF_SIZE_KB
        Size in kB of the large buffers.
      • PARTITIONING_SHUFFLE_VERTICES

        public static final PgxConfig.Field PARTITIONING_SHUFFLE_VERTICES
        If set to 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.
      • PARTITIONING_STRATEGY

        public static final PgxConfig.Field PARTITIONING_STRATEGY
        Partitioning strategy of the vertices of the graph. Valid values are 'out' (the vertices will be attributed to each machine so that every machine has the same total number of outgoing edges), 'in' (similar, but for incoming edges) and 'out_in' (same number of outgoing plus incoming edges).
      • PROC_ID

        public static final PgxConfig.Field PROC_ID
        Internal unique machine identifier in the cluster.
      • RESOURCE_MONITOR

        public static final PgxConfig.Field RESOURCE_MONITOR
        Frequency at which to send resource statistics to the debug server, in ms.
      • DEBUG_SERVER

        public static final PgxConfig.Field DEBUG_SERVER
        Hostname of the debug server.
      • INSTANCE_NAME

        public static final PgxConfig.Field INSTANCE_NAME
        Instance name sent as label to debug server.
      • ENABLE_ENGINE_TLS

        public static final PgxConfig.Field ENABLE_ENGINE_TLS
        If true, the engine enables transport layer security (TLS) for connections between engine processes.
      • ENGINE_TLS_KEYSTORE

        public static final PgxConfig.Field ENGINE_TLS_KEYSTORE
        Path to the PKCS12 keystore to be used by the engine for securing mutual TLS connections between engine processes. The keystore must contain exactly one pair of private key and public certificate for the engine. If the certificate is not self-signed, the keystore should also contain the intermediate chain of CA certificates used for signing the engine public certificate.
      • ENGINE_TLS_TRUSTSTORE

        public static final PgxConfig.Field ENGINE_TLS_TRUSTSTORE
        Path to the PEM truststore to be used by the engine for securing mutual TLS connections between engine processes. The truststore must contain top-level CA certificates used for signing the content of the keystore.
      • ENGINE_TLS_CIPHER

        public static final PgxConfig.Field ENGINE_TLS_CIPHER
        Cipher suite name (in OpenSSL syntax) to be used by the engine for securing TLS connections.
      • ENGINE_TLS_VERIFY_HOSTNAME

        public static final PgxConfig.Field ENGINE_TLS_VERIFY_HOSTNAME
        If true, the engine will verify that the hostname contained in the peer's certificate matches the hostname of the peer. Note that this parameter is completely independent from engine_tls_expected_dn: using none, only one of them or both of them at the same time is allowed.
      • ENGINE_TLS_EXPECTED_DN

        public static final PgxConfig.Field ENGINE_TLS_EXPECTED_DN
        If non empty, the engine will verify that the peer's certificate's Subject Distinguished Name matches exactly the given string. The format of this string must match the one given to the `openssl req` command when creating the certificate, without whitespaces between the equal signs. For instance, the following should be used for an organization in France called My Company with example.com as a hostname: /C=FR/O=My Company/CN=example.com. Note that this parameter is completely independent from engine_tls_verify_hostname: using none, only one of them or both of them at the same time is allowed.
      • BACKEND_WRAPPER

        public static final PgxConfig.Field BACKEND_WRAPPER
        Only for internal use.
      • HANDSHAKE_PORT

        public static final PgxConfig.Field HANDSHAKE_PORT
        a TCP port which will be used for handshaking of distributed backend processes.
      • USE_DEDICATED_POLLER_THREADS

        public static final PgxConfig.Field USE_DEDICATED_POLLER_THREADS
        If true, the engine will use dedicated RTS poller threads that will always be scheduled, whereas if set to code>false, IO threads will be used and will share RTS slots with other worker threads.
      • ENABLE_CSRF_TOKEN_CHECKS

        public static final PgxConfig.Field ENABLE_CSRF_TOKEN_CHECKS
        if true, the PGX webapp will verify CSRF token cookie and request parameters sent by the client exist and match. This is to prevent CSRF attacks.
      • TMP_DIR

        public static final PgxConfig.Field TMP_DIR
        Use this path as temporary directory to store compilation artifacts and other temporary data. If set to <system-tmp-dir>, use standard tmp directory of underlying system (/tmp on Linux)
      • ALLOWED_REMOTE_LOADING_LOCATIONS

        public static final PgxConfig.Field ALLOWED_REMOTE_LOADING_LOCATIONS
        (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. If empty, as by default, no remote location is allowed. Any of the following locations can be listed: "https", "ftps", "hdfs" (deprecated) (all without colon ":"). Alternatively, "*" can be used to enable all locations at once; no other value is allowed with "*". Note that pre-loaded graphs are loaded from any location, regardless of the value of this setting
      • INIT_PGQL_ON_STARTUP

        public static final PgxConfig.Field INIT_PGQL_ON_STARTUP
        if true PGQL is directly initialized on start-up of PGX. Otherwise, it is initialized during the first use of PGQL.
      • MAX_HTTP_CLIENT_REQUEST_SIZE

        public static final PgxConfig.Field MAX_HTTP_CLIENT_REQUEST_SIZE
        maximum size in bytes of any http request sent to to the PGX server over the REST API. Setting it to -1 allows requests of any size.
      • PGX_REALM

        public static final PgxConfig.Field PGX_REALM
        configuration parameters for the realm
      • FILE_LOCATIONS

        public static final PgxConfig.Field FILE_LOCATIONS
        the file-locations that can be used in the authorization-config
      • AUTHORIZATION_SESSION_CREATE_ALLOW_ALL

        public static final PgxConfig.Field AUTHORIZATION_SESSION_CREATE_ALLOW_ALL
        if true allow all users to create a PGX session regardless of permissions granted to them
      • AUTHORIZATION

        public static final PgxConfig.Field AUTHORIZATION
        mapping of users and roles to resources and permissions for authorization
      • ENABLE_MEMORY_LIMITS_CHECKS

        public static final PgxConfig.Field ENABLE_MEMORY_LIMITS_CHECKS
        if true, PGX will enforce the configured memory limits
      • DATA_MEMORY_LIMITS

        public static final PgxConfig.Field DATA_MEMORY_LIMITS
        memory limits configuration parameters
      • ENABLE_SHUTDOWN_CLEANUP_HOOK

        public static final PgxConfig.Field ENABLE_SHUTDOWN_CLEANUP_HOOK
        if 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.
      • SESSION_IDLE_TIMEOUT_SECS

        public static final PgxConfig.Field SESSION_IDLE_TIMEOUT_SECS
        timeout of idling sessions in seconds. Set to zero for infinity/no timeout
      • SESSION_TASK_TIMEOUT_SECS

        public static final PgxConfig.Field SESSION_TASK_TIMEOUT_SECS
        timeout to interrupt long-running tasks submitted by sessions (algorithms, I/O tasks) in seconds. Set to zero for infinity/no timeout
      • ALLOW_IDLE_TIMEOUT_OVERWRITE

        public static final PgxConfig.Field ALLOW_IDLE_TIMEOUT_OVERWRITE
        if true, sessions can overwrite default idle timeout
      • ALLOW_TASK_TIMEOUT_OVERWRITE

        public static final PgxConfig.Field ALLOW_TASK_TIMEOUT_OVERWRITE
        if true, sessions can overwrite default task timeout
      • MAX_ACTIVE_SESSIONS

        public static final PgxConfig.Field MAX_ACTIVE_SESSIONS
        the maximum number of sessions allowed to be active at a time
      • MAX_QUEUE_SIZE_PER_SESSION

        public static final PgxConfig.Field MAX_QUEUE_SIZE_PER_SESSION
        the maximum number of pending tasks allowed to be in the queue, per session. If a session reaches the maximum, new incoming requests of that sesssion get rejected. A negative value means infinity / unlimited.
      • INTERVAL_TO_POLL_MAX

        public static final PgxConfig.Field INTERVAL_TO_POLL_MAX
        Exponential backoff upper bound (in ms) to which -once reached, the job status polling interval is fixed
      • ADMIN_REQUEST_CACHE_TIMEOUT

        public static final PgxConfig.Field ADMIN_REQUEST_CACHE_TIMEOUT
        after how many seconds admin request results get removed from the cache. Requests which are not done or not yet consumed are excluded from this timeout. Note: this is only relevant if PGX is deployed as a webapp.
      • LAUNCH_WATCHDOGS

        public static final PgxConfig.Field LAUNCH_WATCHDOGS
        (for debugging) if true, additional watch-dog threads will be launched which monitor and log engine health stats
      • STRICT_MODE

        public static final PgxConfig.Field STRICT_MODE
        if 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.
      • PRELOAD_GRAPHS

        public static final PgxConfig.Field PRELOAD_GRAPHS
        list of graph configs to be registered at start-up. Each item includes path to a graph config, the name of the graph and whether it should be published.
      • MEMORY_CLEANUP_INTERVAL

        public static final PgxConfig.Field MEMORY_CLEANUP_INTERVAL
        memory cleanup tick in seconds
      • RELEASE_MEMORY_THRESHOLD

        public static final PgxConfig.Field RELEASE_MEMORY_THRESHOLD
        threshold percentage of used memory after which the engine starts freeing un-used graphs. Examples: A value of 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 OutOfMemoryErrors 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.
      • READINESS_MEMORY_USAGE_RATIO

        public static final PgxConfig.Field READINESS_MEMORY_USAGE_RATIO
        memory limit ratio that should be considered to detect if PGX server is ready, used by isReady API, default value is 1.0
      • RUNNING_MEMORY_USAGE_RATIO

        public static final PgxConfig.Field RUNNING_MEMORY_USAGE_RATIO
        memory limit ratio that should be considered to detect if PGX server is running, used by isRunning API default value is 1.0
      • PGX_SERVER_BASE_URL

        public static final PgxConfig.Field PGX_SERVER_BASE_URL
        should be used when deploying pgx server behind a load balancer to make clients before 21.3 backward compatible, the value should be set to the load balancer address
      • PERMISSION_CHECKS_INTERVAL

        public static final PgxConfig.Field PERMISSION_CHECKS_INTERVAL
        interval in seconds to perform permission checks on source graphs
      • GRAPH_SHARING_OPTION

        public static final PgxConfig.Field GRAPH_SHARING_OPTION
        control if a graph can be published and shared with other users
      • ENABLE_SNAPSHOT_PROPERTIES_PUBLISH_STATE_PROPAGATION

        public static final PgxConfig.Field ENABLE_SNAPSHOT_PROPERTIES_PUBLISH_STATE_PROPAGATION
        if true, properties in a new snapshot will inherit the publishing state of properties in the parent snapshot
      • ENABLE_ML_ACCELERATORS

        public static final PgxConfig.Field ENABLE_ML_ACCELERATORS
        if true, will utilize available ML accelerators to run machine learning trainings faster.
      • NUM_SPIN_LOCKS

        public static final PgxConfig.Field NUM_SPIN_LOCKS
        how many spin locks each generated app will create at instantiation. Trade-off: small number implies less memory consumption. Big number implies faster execution (if algorithm uses spin locks)
      • EXPLICIT_SPIN_LOCKS

        public static final PgxConfig.Field EXPLICIT_SPIN_LOCKS
        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.
      • SCHEDULER

        public static final PgxConfig.Field SCHEDULER
        which scheduler to use.
        basic_scheduler = use scheduler with basic features.
        enterprise_scheduler = use scheduler with advanced, enterprise features for running multiple tasks concurrently and increased performance.
        low_latency_scheduler = use scheduler that privileges latency of tasks over throughput or fairness across multiple sessions. The low_latency_scheduler is only available in embedded mode
      • TASK_LENGTH

        public static final PgxConfig.Field TASK_LENGTH
        default task length (only relevant for task-stealing strategies). F/J pool documentation says this value should be between 100 and 10000. Trade-off: small number implies more fine-grained tasks are generated, higher stealing throughput. High number implies less memory consumption and GC activity
      • SMALL_TASK_LENGTH

        public static final PgxConfig.Field SMALL_TASK_LENGTH
        task length if total amount of work is small than default task length (only relevant for task-stealing strategies)
      • MS_BFS_FRONTIER_TYPE_STRATEGY

        public static final PgxConfig.Field MS_BFS_FRONTIER_TYPE_STRATEGY
        the type strategy to use for MS-BFS frontiers
      • BFS_THRESHOLD_SINGLE_THREADED

        public static final PgxConfig.Field BFS_THRESHOLD_SINGLE_THREADED
        until what number of BFS traversal level items vertices are visited single-threaded
      • BFS_THRESHOLD_READ_BASED

        public static final PgxConfig.Field BFS_THRESHOLD_READ_BASED
        threshold of BFS traversal level items above which to switch to read-based visiting strategy
      • BFS_ITERATE_QUE_TASK_SIZE

        public static final PgxConfig.Field BFS_ITERATE_QUE_TASK_SIZE
        task size for BFS iterate QUE phase
      • BFS_THRESHOLD_PARENT_READ_BASED

        public static final PgxConfig.Field BFS_THRESHOLD_PARENT_READ_BASED
        threshold of BFS traversal level items above which to switch to parent-read-based visiting strategy
      • DFS_THRESHOLD_LARGE

        public static final PgxConfig.Field DFS_THRESHOLD_LARGE
        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.
      • CNI_STOP_RECURSION_DEFAULT

        public static final PgxConfig.Field CNI_STOP_RECURSION_DEFAULT
        default value used in the common neighbor iterator implementations, to indicate the minimum size where the binary search approach is applied.
      • CNI_SMALL_DEFAULT

        public static final PgxConfig.Field CNI_SMALL_DEFAULT
        default value used in the common neighbor iterator implementations, to indicate below which threshold a subarray is considered small.
      • CNI_DIFF_FACTOR_DEFAULT

        public static final PgxConfig.Field CNI_DIFF_FACTOR_DEFAULT
        default diff factor value used in the common neighbor iterator implementations.
      • LARGE_ARRAY_THRESHOLD

        public static final PgxConfig.Field LARGE_ARRAY_THRESHOLD
        threshold when the size of an array is too big to use a normal Java array. This depends on the used JVM. (defaults to Integer.MAX_VALUE - 3)
      • MAX_OFF_HEAP_SIZE

        public static final PgxConfig.Field MAX_OFF_HEAP_SIZE
        maximum amount of off-heap memory PGX is allowed to allocate in megabytes, before an OutOfMemoryError will be thrown. Note: this limit is not guaranteed to never be exceeded because of rounding and synchronization trade-offs. It only serves as threshold when PGX starts to reject new memory allocation requests.
      • MAX_ON_HEAP_MEMORY_USAGE_RATIO

        public static final PgxConfig.Field MAX_ON_HEAP_MEMORY_USAGE_RATIO
        maximum ratio of on-heap memory that PGX is allowed to use, between 0 and 1.
      • CHARACTER_SET

        public static final PgxConfig.Field CHARACTER_SET
        standard charset to use throughout PGX, UTF-8 will be used as default. Note: Some formats may not be compatible.
      • PARALLELISM

        public static final PgxConfig.Field PARALLELISM
        number of worker threads to be used in thread pool. Note: if caller thread is part of another thread-pool, this value is ignored and parallelism of parent pool is used.
      • RANDOM_GENERATOR_STRATEGY

        public static final PgxConfig.Field RANDOM_GENERATOR_STRATEGY
        method of generating random numbers in pgx
      • RANDOM_SEED

        public static final PgxConfig.Field RANDOM_SEED
        [relevant for deterministic random number generator only] seed for the deterministic random number generator used in pgx. The default is -24466691093057031
      • PATTERN_MATCHING_SUPERNODE_CACHE_THRESHOLD

        public static final PgxConfig.Field PATTERN_MATCHING_SUPERNODE_CACHE_THRESHOLD
        minimum number of a node's neighbor to be a supernode. This is for pattern matching engine.
      • USE_INDEX_FOR_REACHABILITY_QUERIES

        public static final PgxConfig.Field USE_INDEX_FOR_REACHABILITY_QUERIES
        create index for reachability queries
      • REVISIT_THRESHOLD

        public static final PgxConfig.Field REVISIT_THRESHOLD
        maximum number of matched results from a node to be cached
      • ENTERPRISE_SCHEDULER_FLAGS

        public static final PgxConfig.Field ENTERPRISE_SCHEDULER_FLAGS
        [relevant for enterprise_scheduler] enterprise scheduler specific settings.
      • MEMORY_ALLOCATOR

        public static final PgxConfig.Field MEMORY_ALLOCATOR
        which memory allocator to use
      • MAX_DISTINCT_STRINGS_PER_POOL

        public static final PgxConfig.Field MAX_DISTINCT_STRINGS_PER_POOL
        [only relevant if string_pooling_strategy is indexed] amount of distinct strings per property after which to stop pooling. If the limit is reached an exception is thrown
      • STRING_POOLING_STRATEGY

        public static final PgxConfig.Field STRING_POOLING_STRATEGY
        which string pooling strategy to use
      • USE_MEMORY_MAPPER_FOR_STORING_PGB

        public static final PgxConfig.Field USE_MEMORY_MAPPER_FOR_STORING_PGB
        if true, use memory mapped files for storing in PGB format if possible; if false always use a stream based implementation
      • USE_MEMORY_MAPPER_FOR_READING_PGB

        public static final PgxConfig.Field USE_MEMORY_MAPPER_FOR_READING_PGB
        if true, use memory mapped files for reading graphs in PGB format if possible; false always use s stream based implementation
      • POOLING_FACTOR

        public static final PgxConfig.Field POOLING_FACTOR
        [only relevant if string_pooling_strategy is on_heap] this value prevents the string pool to grow as big as the property size which could render the pooling ineffective
      • GRAPH_VALIDATION_LEVEL

        public static final PgxConfig.Field GRAPH_VALIDATION_LEVEL
        level of validation performed on newly loaded or created graphs
      • ALLOW_LAZY_LOADING_FOR_DATABASE_GRAPHS

        public static final PgxConfig.Field ALLOW_LAZY_LOADING_FOR_DATABASE_GRAPHS
        if true, PGX will automatically load graphs from the database when they are first referenced in graph queries
    • Method Detail

      • values

        public static PgxConfig.Field[] values()
        Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:
        for (PgxConfig.Field c : PgxConfig.Field.values())
            System.out.println(c);
        
        Returns:
        an array containing the constants of this enum type, in the order they are declared
      • valueOf

        public static PgxConfig.Field valueOf​(java.lang.String name)
        Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
        Parameters:
        name - the name of the enum constant to be returned.
        Returns:
        the enum constant with the specified name
        Throws:
        java.lang.IllegalArgumentException - if this enum type has no constant with the specified name
        java.lang.NullPointerException - if the argument is null
      • getKeyAliases

        public java.util.List<java.lang.String> getKeyAliases()
        Description copied from interface: ConfigField
        Gets the key aliases of this field which are also recognized during parsing.
        Specified by:
        getKeyAliases in interface ConfigField
        Returns:
        the key aliases
      • getSingletonListKeyAliases

        public java.util.List<java.lang.String> getSingletonListKeyAliases()
        Description copied from interface: ConfigField
        Gets the key aliases of this field which contain single values for lists and are also recognized during parsing.
        Specified by:
        getSingletonListKeyAliases in interface ConfigField
        Returns:
        the singleton list key aliases
      • getType

        public java.lang.Class<?> getType()
        Description copied from interface: ConfigField
        Gets the type of this field.
        Specified by:
        getType in interface ConfigField
        Returns:
        the type
      • isRequired

        public boolean isRequired()
        Description copied from interface: ConfigField
        Checks if this field is required.
        Specified by:
        isRequired in interface ConfigField
        Returns:
        true, if required
      • isArray

        public boolean isArray()
        Description copied from interface: ConfigField
        Checks if this field is an array.
        Specified by:
        isArray in interface ConfigField
        Returns:
        true, if array
      • isPath

        public boolean isPath()
        Description copied from interface: ConfigField
        Checks if this field is a path.
        Specified by:
        isPath in interface ConfigField
        Returns:
        true, if path
      • getDefaultVal

        public java.lang.Object getDefaultVal()
        Description copied from interface: ConfigField
        Gets the default value of this field.
        Specified by:
        getDefaultVal in interface ConfigField
        Returns:
        the default value
      • toKey

        public java.lang.String toKey()
        Description copied from interface: ConfigField
        Get the key of this field, which is how this field is represented in serialized form.
        Specified by:
        toKey in interface ConfigField
        Returns:
        the key.
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Enum<PgxConfig.Field>
      • isSensitive

        public boolean isSensitive()
        Description copied from interface: ConfigField
        Checks if this field holds a sensitive data.
        Specified by:
        isSensitive in interface ConfigField
        Returns:
        true, if use for sensitive data
      • isHidden

        public boolean isHidden()
        Description copied from interface: ConfigField
        Checks if this field should be hidden. Hidden fields are used to hid desired field from the user and only allow it for internal usage.
        Specified by:
        isHidden in interface ConfigField
        Returns:
        true if field should be hidden, false otherwise