Class DatabaseOptions

  • All Implemented Interfaces:
    MetaPropertyProvider

    public final class DatabaseOptions
    extends java.lang.Object
    implements MetaPropertyProvider

    Non-structural database options. These options, unlike IndexOptions, are not relevant to reading or creating the database. This set of options is for controlling behavior of the database as it lives within a Stardog DBMS.

    Since:
    0.7
    Version:
    6.0
    Author:
    Michael Grove, Evren Sirin, Edgar Rodriguez-Diaz, Fernando Hernandez
    • Field Detail

      • OPTION_QUERY_LOG_ENABLED

        public static final java.lang.String OPTION_QUERY_LOG_ENABLED
        See Also:
        Constant Field Values
      • NATIVE_METRICS_REPORTING_INTERVAL

        public static final ConfigProperty<Duration> NATIVE_METRICS_REPORTING_INTERVAL
      • EQUALITY_REASONING

        public static final ConfigProperty<com.complexible.stardog.index.EqualityReasoningLevel> EQUALITY_REASONING
      • AUTO_SCHEMA_REASONING

        public static final ConfigProperty<java.lang.Boolean> AUTO_SCHEMA_REASONING
      • STRICT_PARSING

        public static final ConfigProperty<java.lang.Boolean> STRICT_PARSING
        Controls whether Stardog parses RDF strictly (true, the default) or loosely (false)
      • EXTENDED_COMPARISON

        public static final ConfigProperty<java.lang.Boolean> EXTENDED_COMPARISON

        Controls whether query evaluation will use extended literal comparison (true, the default). The SPARQL spec does not define an ordering relationship between literals of different types (Section 15.1 ORDER BY) and equality check between two literals will produce a type error if the literals are not same (Section 17.4.1.7 RDFterm-equal). This results in unintuitive results such as the expression "123"^^xsd:int != "ABC" evaluating to false. Stardog extends the '<' operator (17.3.1 Operator Extensibility) such that literals of different datatypes are first compared based on their string values and then based on the string value of their datatypes. If this option is disabled literal comparison will be done as to produce type errors.

      • PRESERVE_BNODE_IDS

        public static final ConfigProperty<java.lang.Boolean> PRESERVE_BNODE_IDS
        This option controls if the parser should preserve bnode identifiers specified in the source. Preserving bnode identifiers help speed parsing and loading time but it also has an important side-effect that if two distinct files using the same bnode identifier are loaded to the same database, the bnode in different files will end up pointing to the same node in the database. If the input files do not use bnode identifiers (e.g. in Turtle syntax only [] are used for bnodes) then this configuration option has no effect since such bnodes are always assigned a unique identifier. But if input files use explicit bnode identifiers (e.g. _:bnode1 in Turtle syntax) and multiple files may use same bnode identifiers then this configuration option should be turned off.

        Default value: true

      • NAME

        public static final ConfigProperty<java.lang.String> NAME
        Name of the database.
      • CREATOR

        public static final InfoProperty<java.lang.String> CREATOR
        Creator of the database.
      • TYPE

        public static final ConfigProperty<java.lang.String> TYPE
        Type of the database.
      • IGNORE_BULK_LOAD_FILE_ERRORS

        public static final ConfigProperty<java.lang.Boolean> IGNORE_BULK_LOAD_FILE_ERRORS
        Ignore file errors while doing a bulk load
      • BULK_LOAD_STREAM_FACTORY

        public static final ConfigProperty<java.lang.String> BULK_LOAD_STREAM_FACTORY
      • BULK_LOAD_STREAM_ARGS

        public static final ConfigProperty<java.lang.String> BULK_LOAD_STREAM_ARGS
      • CREATION_TX

        public static final InfoProperty<java.lang.Long> CREATION_TX
        The transaction ID at which this DB was created. Default should be null.
      • CREATION_TIME

        public static final InfoProperty<DateTime> CREATION_TIME
        Creation time of the database.
      • MODIFICATION_TIME

        public static final InfoProperty<DateTime> MODIFICATION_TIME
        Last modification time for the database.
      • TRANSACTION_LOGGING

        public static final ConfigProperty<java.lang.Boolean> TRANSACTION_LOGGING
        Option for whether or not the database logs all transactions events to disk. When a database is created in Cluster mode, the default will be true.
      • TRANSACTION_LOGGING_USE_ROTATED

        public static final ConfigProperty<java.lang.Boolean> TRANSACTION_LOGGING_USE_ROTATED
        Option for whether or not the synchronization process should use rotated log during synchronization in Cluster mode.
      • VIRTUAL_TRANSPARENCY

        public static final ConfigProperty<java.lang.Boolean> VIRTUAL_TRANSPARENCY
        Option for whether to include virtual graphs for graph variable queries. The default is false.
      • LOCAL_IRI_TEMPLATE_INCLUDES

        public static final ConfigProperty<java.util.Collection<java.lang.String>> LOCAL_IRI_TEMPLATE_INCLUDES
      • LOCAL_IRI_TEMPLATE_EXCLUDES

        public static final ConfigProperty<java.util.Collection<java.lang.String>> LOCAL_IRI_TEMPLATE_EXCLUDES
      • EDGE_PROPERTIES

        public static final ConfigProperty<java.lang.Boolean> EDGE_PROPERTIES
        Option for enabling edge properties that allows RDF statements to appear as subjects of RDF statements (aka RDF*). The default is false.
      • ONLINE

        public static final ConfigProperty<java.lang.Boolean> ONLINE
        Option for whether or not the database is online. The value for this option at database creation time determines the initial state of the database. This option cannot be modified directly after the database has been created. The special admin functions should be used to change the value of this option.
      • FAILED_INITIALIZE

        public static final ConfigProperty<java.lang.Boolean> FAILED_INITIALIZE
        Internal signaling property, if the database failed to initialize.
      • QUERY_ALL_GRAPHS

        public static final ConfigProperty<java.lang.Boolean> QUERY_ALL_GRAPHS

        This option controls the behavior for answering queries that don't specify a dataset (FROM or FROM NAMED) in the query. In such cases, the SPARQL specification says that the query should be answered only using the information in default graph (no context). However, sometimes it is desirable to answer such queries using all the information in the database including the default graph and all named graphs. Setting this option to true changes the behavior of Stardog to do this. The queries that specify a dataset are not affected by this option.

      • NAMESPACES

        public static final ConfigProperty<java.util.Collection<Namespace>> NAMESPACES
        The default namespaces for the database. Legal input is a comma-separated list of <prefix>=<namespace> values.
      • CONNECTION_TIMEOUT

        public static final ConfigProperty<Duration> CONNECTION_TIMEOUT
        The amount of time a connection to the database can be open, but inactive, before being automatically closed to reclaim the resources.
      • QUERY_TIMEOUT

        public static final ConfigProperty<Duration> QUERY_TIMEOUT
        Determines max execution time for read query evaluation.
      • QUERY_UPDATE_TIMEOUT

        public static final ConfigProperty<Duration> QUERY_UPDATE_TIMEOUT
        Determines max execution time for SPARQL update query evaluation.
      • ARCHETYPES

        public static final ConfigProperty<java.util.Collection<java.lang.String>> ARCHETYPES
        The name of one or more database archetypes, used to associate ontologies and constraints with new databases. Built-in archetypes are "PROV" and "SKOS", see the docs for instructions to create your own.
      • LUCENE_MMAP

        public static final ConfigProperty<java.lang.Boolean> LUCENE_MMAP
        Option to enable memory-mapping in lucene indices (e.g., search, spatial). Memory mapping is enabled by default.
      • QUERY_DESCRIBE_STRATEGY

        public static final ConfigProperty<java.lang.String> QUERY_DESCRIBE_STRATEGY
        Option to set the default DESCRIBE query strategy for the database. Built-in strategies include "default", "cbd" and "bidirectional.
      • PROGRESS_MONITOR_ENABLED

        public static final ConfigProperty<java.lang.Boolean> PROGRESS_MONITOR_ENABLED
        When enabled, the progress of various tasks will be printed in the server log.
      • QUERY_UPDATE_GRAPH_DIFF

        public static final ConfigProperty<java.lang.Boolean> QUERY_UPDATE_GRAPH_DIFF
        Configuration option for determining the update procedure that will be used for SPARQL update queries ADD, COPY and MOVE. By default, Stardog will compute the diff between the source and the destination graphs and only apply the diff to the destination graph.
      • QUERY_MEMORY_LIMIT

        public static final ConfigProperty<java.lang.String> QUERY_MEMORY_LIMIT
        Configuration option for determining the memory limit used by query;
      • QUERY_MM_EXCEEDS_STRATEGY

        public static final ConfigProperty<com.complexible.stardog.QueryMemoryExceedsStrategy> QUERY_MM_EXCEEDS_STRATEGY
        Configuration option for determining strategy for the query behaviour once memory limit @{#OPTION_QUERY_MM_MEMORY_LIMIT} reached;
      • QUERY_LOG_ENABLED

        public static final ConfigProperty<java.lang.Boolean> QUERY_LOG_ENABLED
        Config option to enable or disable the query logging on a per database level. Only relevant in conjunction with the query log module.
      • QUERY_DICTIONARY_SIZE_THRESHOLD

        public static final ConfigProperty<java.lang.Long> QUERY_DICTIONARY_SIZE_THRESHOLD
        Configuration option for the max number of entries in the query-local dictionary before a persistent data structure is used (which can spill data to disk). The default value is 100K.
      • GRAPH_ALIASES

        public static final ConfigProperty<java.lang.Boolean> GRAPH_ALIASES
      • SPARQL_SERVICE_RESULT_LIMIT

        public static final ConfigProperty<java.lang.Long> SPARQL_SERVICE_RESULT_LIMIT
      • SERVICE_PREFETCH_THRESHOLD

        public static final ConfigProperty<java.lang.Integer> SERVICE_PREFETCH_THRESHOLD
      • SPARQL_SERVICE_CREDENTIALS_PASSTHROUGH_REGEX

        public static final ConfigProperty<java.lang.String> SPARQL_SERVICE_CREDENTIALS_PASSTHROUGH_REGEX
      • TX_COMMIT_2P

        public static final ConfigProperty<java.lang.Boolean> TX_COMMIT_2P
      • LABEL_PROPERTIES

        public static final ConfigProperty<java.util.Collection<IRI>> LABEL_PROPERTIES
      • MEDIA_ENABLED

        public static final ConfigProperty<java.lang.Boolean> MEDIA_ENABLED
      • VOICEBOX_ENABLED

        public static final ConfigProperty<java.lang.Boolean> VOICEBOX_ENABLED
        Config option to enable or disable the Voicebox AI features on a per database level.
      • VOICEBOX_PREPROCESORS

        public static final ConfigProperty<java.util.Collection<java.lang.String>> VOICEBOX_PREPROCESORS
      • VOICEBOX_EXAMPLE_QUESTIONS

        public static final ConfigProperty<java.util.Collection<java.lang.String>> VOICEBOX_EXAMPLE_QUESTIONS
      • DEFAULT_OFFLINE_TIMEOUT

        public static final long DEFAULT_OFFLINE_TIMEOUT
        Default offline timeout (in ms)
      • PARSER_OPTION_PREFIX

        public static final java.lang.String PARSER_OPTION_PREFIX
        Any metadata property whose name starts with this prefix will be propagated to the parser.
        See Also:
        Constant Field Values
    • Method Detail

      • defaults

        public static Metadata defaults​(java.lang.String theName)
      • copyParserOptions

        public static void copyParserOptions​(Metadata theMetadata,
                                             Options theOptions)
        Copies parser properties from the metadata to the options. Parser properties are those explicitly enumerated as well as those whose name starts with PARSER_OPTION_PREFIX. Options that already exist will not be overwritten.
      • copyOption

        public static <T> void copyOption​(Metadata theMetadata,
                                          MetaProperty<T> theProp,
                                          Options theOptions,
                                          Option<T> theOption)
        Copies one option from the metadata to the options if it already does not exist in the options.