Package org.h2.engine
Class SysProperties
java.lang.Object
org.h2.engine.SysProperties
The constants defined in this class are initialized from system properties.
Some system properties are per machine settings, and others are as a last
resort and temporary solution to work around a problem in the application or
database engine. Also, there are system properties to enable features that
are not yet fully tested or that are not backward compatible.
System properties can be set when starting the virtual machine:
java -Dh2.baseDir=/tempThey can be set within the application, but this must be done before loading any classes of this database (before loading the JDBC driver):
System.setProperty("h2.baseDir", "/temp");
-
Field Summary
Modifier and TypeFieldDescriptionstatic final String
System propertyh2.allowedClasses
(default: *).static final String
System propertyh2.authConfigFile
(default: null).static final String
System propertyh2.bindAddress
(default: null).static final boolean
System propertyh2.check
(default: true for JDK/JRE, false for Android).static final String
System propertyh2.clientTraceDirectory
(default: trace.db/).static final int
System propertyh2.collatorCacheSize
(default: 3 2000).static final int
System propertyh2.consoleProcedureColumns
(default: 500).static final int
System propertyh2.consoleTableColumns
(default: 500).static final int
System propertyh2.consoleTableIndexes
(default: 100).static final boolean
System propertyh2.consoleStream
(default: true).static final int
System propertyh2.consoleTimeout
(default: 1800000).static final int
System propertyh2.dataSourceTraceLevel
(default: 1).static final int
System propertyh2.delayWrongPasswordMax
(default: 4000).static final int
System propertyh2.delayWrongPasswordMin
(default: 250).static boolean
System propertyh2.forceAutoCommitOffOnCommit
(default: false).static final String
INTERNALstatic final String
INTERNALstatic final String
System propertyh2.javaObjectSerializer
(default: null).static final boolean
System propertyh2.javaSystemCompiler
(default: true).static final int
System propertyh2.lobClientMaxSizeMemory
(default: 1048576).static boolean
System propertyh2.lobCloseBetweenReads
(default: false).static final int
System propertyh2.maxFileRetry
(default: 16).static final int
System propertyh2.maxMemoryRows
(default: 40000 per GB of available RAM).static final int
System propertyh2.maxReconnect
(default: 3).static final long
System propertyh2.maxTraceDataLength
(default: 65535).static final boolean
System propertyh2.nioCleanerHack
(default: false).static final boolean
System propertyh2.nioLoadMapped
(default: false).static final boolean
System propertyh2.objectCache
(default: true).static final int
System propertyh2.objectCacheMaxPerElementSize
(default: 4096).static final int
System propertyh2.objectCacheSize
(default: 1024).static final String
System propertyh2.pgClientEncoding
(default: UTF-8).static final String
System propertyh2.prefixTempFile
(default: h2.temp).static final int
System propertyh2.serverCachedObjects
(default: 64).static final int
System propertyh2.serverResultSetFetchSize
(default: 100).static final int
System propertyh2.socketConnectRetry
(default: 16).static final int
System propertyh2.socketConnectTimeout
(default: 2000).static final long
System propertyh2.splitFileSizeShift
(default: 30).static final boolean
System propertyh2.threadDeadlockDetector
(default: false).static final boolean
System propertyh2.traceIO
(default: false).static final String
System propertyh2.urlMap
(default: null).static final boolean
System propertyh2.useThreadContextClassLoader
(default: false).static final String
System propertyuser.home
(empty string if not set). -
Method Summary
Modifier and TypeMethodDescriptionstatic String
INTERNALstatic String
System propertyh2.scriptDirectory
(default: empty string).static void
setBaseDir
(String dir) INTERNAL
-
Field Details
-
H2_SCRIPT_DIRECTORY
INTERNAL- See Also:
-
H2_BROWSER
INTERNAL- See Also:
-
USER_HOME
System propertyuser.home
(empty string if not set). It is usually set by the system, and used as a replacement for ~ in file names. -
ALLOWED_CLASSES
System propertyh2.allowedClasses
(default: *). Comma separated list of class names or prefixes. -
BIND_ADDRESS
System propertyh2.bindAddress
(default: null). The bind address to use. -
CHECK
public static final boolean CHECKSystem propertyh2.check
(default: true for JDK/JRE, false for Android). Optional additional checks in the database engine. -
CLIENT_TRACE_DIRECTORY
System propertyh2.clientTraceDirectory
(default: trace.db/). Directory where the trace files of the JDBC client are stored (only for client / server). -
COLLATOR_CACHE_SIZE
public static final int COLLATOR_CACHE_SIZESystem propertyh2.collatorCacheSize
(default: 3 2000). The cache size for collation keys (in elements). Used when a collator has been set for the database. -
CONSOLE_MAX_TABLES_LIST_INDEXES
public static final int CONSOLE_MAX_TABLES_LIST_INDEXESSystem propertyh2.consoleTableIndexes
(default: 100). Up to this many tables, the column type and indexes are listed. -
CONSOLE_MAX_TABLES_LIST_COLUMNS
public static final int CONSOLE_MAX_TABLES_LIST_COLUMNSSystem propertyh2.consoleTableColumns
(default: 500). Up to this many tables, the column names are listed. -
CONSOLE_MAX_PROCEDURES_LIST_COLUMNS
public static final int CONSOLE_MAX_PROCEDURES_LIST_COLUMNSSystem propertyh2.consoleProcedureColumns
(default: 500). Up to this many procedures, the column names are listed. -
CONSOLE_STREAM
public static final boolean CONSOLE_STREAMSystem propertyh2.consoleStream
(default: true). H2 Console: stream query results. -
CONSOLE_TIMEOUT
public static final int CONSOLE_TIMEOUTSystem propertyh2.consoleTimeout
(default: 1800000). H2 Console: session timeout in milliseconds. The default is 30 minutes. -
DATASOURCE_TRACE_LEVEL
public static final int DATASOURCE_TRACE_LEVELSystem propertyh2.dataSourceTraceLevel
(default: 1). The trace level of the data source implementation. Default is 1 for error. -
DELAY_WRONG_PASSWORD_MIN
public static final int DELAY_WRONG_PASSWORD_MINSystem propertyh2.delayWrongPasswordMin
(default: 250). The minimum delay in milliseconds before an exception is thrown for using the wrong user name or password. This slows down brute force attacks. The delay is reset to this value after a successful login. Unsuccessful logins will double the time until DELAY_WRONG_PASSWORD_MAX. To disable the delay, set this system property to 0. -
DELAY_WRONG_PASSWORD_MAX
public static final int DELAY_WRONG_PASSWORD_MAXSystem propertyh2.delayWrongPasswordMax
(default: 4000). The maximum delay in milliseconds before an exception is thrown for using the wrong user name or password. This slows down brute force attacks. The delay is reset after a successful login. The value 0 means there is no maximum delay. -
JAVA_SYSTEM_COMPILER
public static final boolean JAVA_SYSTEM_COMPILERSystem propertyh2.javaSystemCompiler
(default: true). Whether to use the Java system compiler (ToolProvider.getSystemJavaCompiler()) if it is available to compile user defined functions. If disabled or if the system compiler is not available, the com.sun.tools.javac compiler is used if available, and "javac" (as an external process) is used if not. -
lobCloseBetweenReads
public static boolean lobCloseBetweenReadsSystem propertyh2.lobCloseBetweenReads
(default: false). Close LOB files between read operations. -
LOB_CLIENT_MAX_SIZE_MEMORY
public static final int LOB_CLIENT_MAX_SIZE_MEMORYSystem propertyh2.lobClientMaxSizeMemory
(default: 1048576). The maximum size of a LOB object to keep in memory on the client side when using the server mode. -
MAX_FILE_RETRY
public static final int MAX_FILE_RETRYSystem propertyh2.maxFileRetry
(default: 16). Number of times to retry file delete and rename. in Windows, files can't be deleted if they are open. Waiting a bit can help (sometimes the Windows Explorer opens the files for a short time) may help. Sometimes, running garbage collection may close files if the user forgot to call Connection.close() or InputStream.close(). -
MAX_RECONNECT
public static final int MAX_RECONNECTSystem propertyh2.maxReconnect
(default: 3). The maximum number of tries to reconnect in a row. -
MAX_MEMORY_ROWS
public static final int MAX_MEMORY_ROWSSystem propertyh2.maxMemoryRows
(default: 40000 per GB of available RAM). The default maximum number of rows to be kept in memory in a result set. -
MAX_TRACE_DATA_LENGTH
public static final long MAX_TRACE_DATA_LENGTHSystem propertyh2.maxTraceDataLength
(default: 65535). The maximum size of a LOB value that is written as data to the trace system. -
NIO_LOAD_MAPPED
public static final boolean NIO_LOAD_MAPPEDSystem propertyh2.nioLoadMapped
(default: false). If the mapped buffer should be loaded when the file is opened. This can improve performance. -
NIO_CLEANER_HACK
public static final boolean NIO_CLEANER_HACKSystem propertyh2.nioCleanerHack
(default: false). If enabled, use the reflection hack to un-map the mapped file if possible. If disabled, System.gc() is called in a loop until the object is garbage collected. See also https://bugs.openjdk.java.net/browse/JDK-4724038 -
OBJECT_CACHE
public static final boolean OBJECT_CACHESystem propertyh2.objectCache
(default: true). Cache commonly used values (numbers, strings). There is a shared cache for all values. -
OBJECT_CACHE_MAX_PER_ELEMENT_SIZE
public static final int OBJECT_CACHE_MAX_PER_ELEMENT_SIZESystem propertyh2.objectCacheMaxPerElementSize
(default: 4096). The maximum size (precision) of an object in the cache. -
OBJECT_CACHE_SIZE
public static final int OBJECT_CACHE_SIZESystem propertyh2.objectCacheSize
(default: 1024). The maximum number of objects in the cache. This value must be a power of 2. -
PG_DEFAULT_CLIENT_ENCODING
System propertyh2.pgClientEncoding
(default: UTF-8). Default client encoding for PG server. It is used if the client does not sends his encoding. -
PREFIX_TEMP_FILE
System propertyh2.prefixTempFile
(default: h2.temp). The prefix for temporary files in the temp directory. -
FORCE_AUTOCOMMIT_OFF_ON_COMMIT
public static boolean FORCE_AUTOCOMMIT_OFF_ON_COMMITSystem propertyh2.forceAutoCommitOffOnCommit
(default: false). Throw error if transaction's auto-commit property is true when a commit is executed. -
SERVER_CACHED_OBJECTS
public static final int SERVER_CACHED_OBJECTSSystem propertyh2.serverCachedObjects
(default: 64). TCP Server: number of cached objects per session. -
SERVER_RESULT_SET_FETCH_SIZE
public static final int SERVER_RESULT_SET_FETCH_SIZESystem propertyh2.serverResultSetFetchSize
(default: 100). The default result set fetch size when using the server mode. -
SOCKET_CONNECT_RETRY
public static final int SOCKET_CONNECT_RETRYSystem propertyh2.socketConnectRetry
(default: 16). The number of times to retry opening a socket. Windows sometimes fails to open a socket, see bug https://bugs.openjdk.java.net/browse/JDK-6213296 -
SOCKET_CONNECT_TIMEOUT
public static final int SOCKET_CONNECT_TIMEOUTSystem propertyh2.socketConnectTimeout
(default: 2000). The timeout in milliseconds to connect to a server. -
SPLIT_FILE_SIZE_SHIFT
public static final long SPLIT_FILE_SIZE_SHIFTSystem propertyh2.splitFileSizeShift
(default: 30). The maximum file size of a split file is 1L << x. -
TRACE_IO
public static final boolean TRACE_IOSystem propertyh2.traceIO
(default: false). Trace all I/O operations. -
THREAD_DEADLOCK_DETECTOR
public static final boolean THREAD_DEADLOCK_DETECTORSystem propertyh2.threadDeadlockDetector
(default: false). Detect thread deadlocks in a background thread. -
URL_MAP
System propertyh2.urlMap
(default: null). A properties file that contains a mapping between database URLs. New connections are written into the file. An empty value in the map means no redirection is used for the given URL. -
USE_THREAD_CONTEXT_CLASS_LOADER
public static final boolean USE_THREAD_CONTEXT_CLASS_LOADERSystem propertyh2.useThreadContextClassLoader
(default: false). Instead of using the default class loader when deserializing objects, the current thread-context class loader will be used. -
JAVA_OBJECT_SERIALIZER
System propertyh2.javaObjectSerializer
(default: null). The JavaObjectSerializer class name for java objects being stored in column of type OTHER. It must be the same on client and server to work correctly. -
AUTH_CONFIG_FILE
System propertyh2.authConfigFile
(default: null). authConfigFile define the URL of configuration file ofDefaultAuthenticator
-
-
Method Details
-
setBaseDir
INTERNAL- Parameters:
dir
- base directory
-
getBaseDir
INTERNAL- Returns:
- base directory
-
getScriptDirectory
System propertyh2.scriptDirectory
(default: empty string). Relative or absolute directory where the script files are stored to or read from.- Returns:
- the current value
-