The new generation of EventStoreDB began with version 20.6 with new versions released each year following the release schedule.
The following is a log of the changes in configuration options from v5 to the latest versions of EventStoreDB, including options that are removed, added, or renamed.
Option name | Current status | Additional comments |
---|---|---|
defines |
Removed | Removed before 23.10. |
mono-min-threadpool-size |
Removed | Removed before 23.10. |
force |
Removed | Removed before 23.10. |
commit-count |
Removed | Removed before 23.10. |
prepare-count |
Removed | Removed before 23.10. |
better-ordering |
Removed | Removed before 23.10. |
structured-log |
Removed | Removed before 23.10. |
int-secure-tcp-port |
Removed | Removed before 23.10. |
ext-tcp-port |
Removed | Removed in 24.2 |
ext-secure-tcp-port-advertise-as |
Removed | Removed before 23.10. |
ext-secure-tcp-port |
Removed | Removed before 23.10. |
ext-tcp-port-advertise-as |
Removed | Removed in 24.2 |
int-ip-advertise-as |
Removed | Removed before 23.10. |
int-secure-tcp-port-advertise-as |
Removed | Removed before 23.10. |
int-http-port-advertise-as |
Removed | Removed before 23.10. |
ext-tcp-heartbeat-timeout |
Removed | Removed in v24.2. |
ext-tcp-heartbeat-interval |
Removed | Removed in v24.2. |
int-http-prefixes |
Removed | Removed before 23.10. |
ext-http-prefixes |
Removed | Removed before 23.10. |
add-interface-prefixes |
Removed | Removed before 23.10. |
use-internal-ssl |
Removed | Removed before 23.10. |
disable-insecure-tcp |
Removed | Removed before 23.10. |
ssl-target-host |
Removed | Removed before 23.10. |
ssl-validate-server |
Removed | Removed before 23.10. |
advertise-tcp-port-to-client-as |
Removed | Removed in v24.2. |
disable-external-tcp-tls |
Removed | Removed in v24.2. |
enable-external-tcp |
Removed | Removed in v24.2. |
node-heartbeat-interval |
Removed | Removed in v24.2. |
node-heartbeat-timeout |
Removed | Removed in v24.2. |
node-tcp-port |
Removed | Removed in v24.2. |
node-tcp-port-advertise-as |
Removed | Removed in v24.2. |
ext-host-advertise-as |
Removed | Removed in v24.2. |
ext-ip-advertise-as |
Renamed | New option name: ExtHostAdvertiseAs |
int-ip |
Renamed | The int-ip parameter was renamed to IntIp which was deprecated as of version 23.10.0. The ReplicationIp parameter is recommended instead. |
ext-ip |
Renamed | The ext-ip parameter was renamed to ExtIp which was deprecated as of version 23.10.0. The NodeIp parameter is recommended instead. |
int-http-port |
Renamed | The int-http-port parameter was renamed to HttpPort which was deprecated as of version 23.10.0. The NodePort parameter is recommended instead. |
ext-http-port |
Renamed | The ext-http-port parameter was renamed to HttpPort which was deprecated as of version 23.10.0. The NodePort parameter is recommended instead. |
int-tcp-port |
Renamed | The int-tcp-port parameter was renamed to IntTcpPort which was deprecated as of version 23.10.0. The ReplicationPort parameter is recommended instead. |
int-tcp-port-advertise-as |
Renamed | The int-tcp-port-advertise-as parameter was renamed to IntTcpPortAdvertiseAs which was deprecated as of version 23.10.0. The ReplicationTcpPortAdvertiseAs parameter is recommended instead. |
int-tcp-heartbeat-timeout |
Renamed | The int-tcp-heartbeat-timeout parameter was renamed to IntTcpHeartbeatTimeout which was deprecated as of version 23.10.0. The ReplicationHeartbeatTimeout parameter is recommended instead. |
int-tcp-heartbeat-interval |
Renamed | The int-tcp-heartbeat-interval parameter was renamed to IntTcpHeartbeatInterval which was deprecated as of version 23.10.0. The ReplicationHeartbeatInterval parameter is recommended instead. |
int-host-advertise-as |
Renamed | The int-host-advertise-as parameter was renamed to IntHostAdvertiseAs which was deprecated as of version 23.10.0. The ReplicationHostAdvertiseAs parameter is recommended instead. |
ext-http-port-advertise-as |
Renamed | The ext-http-port-advertise-as parameter was renamed to HttpPortAdvertiseAs which was deprecated as of version 23.10.0. The NodePortAdvertiseAs parameter is recommended instead. |
admin-on-ext |
Renamed | New option name: DisableAdminUI |
stats-on-ext |
Renamed | New option name: DisableStatsOnHttp |
gossip-on-ext |
Renamed | New option name: DisableGossipOnHttp |
allow-anonymous-stream-access |
Added | Allows anonymous access to streams. Default: false |
allow-unknown-options |
Added | Allows EventStoreDB to run with unknown configuration options present. Default: false |
insecure |
Added | Disables authentication, authorization, and TLS on all TCP/HTTP interfaces. Default: false . Not suitable for production projects. |
max-append-size |
Added | The maximum size of appends, in bytes. May not exceed 16MB. Default: 1048576 |
override-anonymous-endpoint-access-for-gossip |
Added | Overrides anonymous access for the gossip endpoint. If set to true , the gossip endpoint will accept anonymous access. Otherwise, anonymous access will be set based on the value of the AllowAnonymousEndpointAccess option. Default: true |
telemetry-output |
Added | Opting out of telemetry is only available using the environment variable EVENTSTORE_TELEMETRY_OPTOUT . |
authorization-config |
Added | Path to the configuration file for authorization configuration (if applicable). |
authorization-type |
Added | The type of authorization to use. Default: Internal |
certificate-reserved-node-common-name |
Added | The pattern the Common Name (CN) of a connecting EventStoreDB node must match to be authenticated. A wildcard FQDN can be specified if using wildcard certificates or if the CN is not the same on all nodes. Leave empty to automatically use the CN of this node's certificate. |
trusted-root-certificates-path |
Added | The path to a directory which contains trusted X.509 (.pem, .crt, .cer, .der) root certificate files. |
certificate-private-key-file |
Added | The path to the certificate private key file (.key) if an X.509 (.pem, .crt, .cer, .der) certificate file is provided. |
certificate-private-key-password |
Added | The password to the certificate private key file if an encrypted PKCS #8 private key files are provided. |
trusted-root-certificate-store-location |
Added | The certificate store location that contains the trusted root certificate. |
trusted-root-certificate-store-name |
Added | The name of the certificate store that contains the trusted root certificate. |
trusted-root-certificate-subject-name |
Added | The trusted root certificate subject name. |
trusted-root-certificate-thumbprint |
Added | The trusted root certificate fingerprint/thumbprint. |
dead-member-removal-period-sec |
Added | The number of seconds a dead node will remain in the gossip before being pruned. Default: 1800 |
leader-election-timeout-ms |
Added | The timeout, in milliseconds, on election messages to other nodes. Default: 1000 |
quorum-size |
Added | EventStoreDB uses a quorum-based replication model, in which a majority of nodes in the cluster must acknowledge that they have received a copy of the write before the write is acknowledged to the client. This means that to be able to tolerate the failure of n nodes, the cluster must be of size (2n + 1). A three node cluster can continue to accept writes if one node is unavailable. A five node cluster can continue to accept writes if two nodes are unavailable, and so forth. Default: 1 |
read-only-replica |
Added | Sets this node as a read-only replica that is not allowed to participate in elections or accept writes from clients. Default: false |
stream-info-cache-capacity |
Added | The maximum number of entries to keep in the stream info cache. Default: 0 |
unsafe-allow-surplus-nodes |
Added | Allows more nodes than the cluster size to join the cluster as clones. This is a risky option that can cause data loss if a clone is promoted to leader. Default: false |
chunk-size |
Added | The size of the database chunk in bytes. Default: 268435456 |
db-log-format |
Added | The log format version to use for storing the event log. V3 is currently in development and should only be used for testing purposes. Default: V2 |
index-cache-size |
Added | The maximum number of entries to keep in each index cache. Default: 0 |
max-truncation |
Added | When truncate.chk is set, the database will be truncated on startup. This is a safety check to ensure large amounts of data truncation does not happen accidentally. This value should be set in the low 10,000s for allow for standard cluster recovery operations. A value of -1 is no max. Default: 268435456 bytes |
scavenge-backend-cache-size |
Added | The amount of memory to use for backend caching in bytes. Default: 67108864 |
scavenge-backend-page-size |
Added | The page size of the scavenge database. Default: 16384 |
scavenge-hash-users-cache-capacity |
Added | The number of stream hashes to remember when checking for collisions. Default: 100000 |
stats-storage |
Added | Type of storage to use for statistics. Allowed values are None , Stream , File , or StreamAndFile . Default: File |
stream-existence-filter-size |
Added | The amount of memory and disk space, in bytes, to use for the stream existence filter. This should be set to roughly the maximum number of streams you expect to have in your database, i.e if you expect to have a max of 500 million streams, use a value of 500 megabytes. The value you select should also fit entirely in memory to avoid any performance degradation. Use 0 to disable the filter. Resizing the filter will cause a full rebuild. Default: 256000000 |
use-index-bloom-filters |
Added | Creates a Bloom filter file for each new index file to speed up index reads. Default: true |
write-timeout-ms |
Added | Timeout for write operations (in milliseconds). Default: 2000 |
default-admin-password |
Added | The Admin user password can only be set using the environment variable EVENTSTORE_DEFAULT_ADMIN_PASSWORD |
default-ops-password |
Added | The Ops user password can only be set using the environment variable EVENTSTORE_DEFAULT_OPS_PASSWORD |
dev |
Added | Runs EventStoreDB in dev mode. This will create and add dev certificates to your certificate store, enable atompub over http, and run standard projections. Default: false |
remove-dev-certs |
Added | Removes any dev certificates installed on this computer without starting EventStoreDB. Default: false |
keep-alive-interval |
Added | Sets the period (in milliseconds) after which a keepalive ping is sent on the transport. Default: 10000 |
keep-alive-timeout |
Added | Sets the amount of time (in milliseconds) the sender of the keepalive ping waits for an acknowledgement. If it does not receive an acknowledgment within this time, it will close the connection. Default: 10000 |
advertise-host-to-client-as |
Added | Advertised name of the host used in Client gossip. |
advertise-node-port-to-client-as |
Added | Advertised Node port to be used in Client gossip. Default: 0 |
enable-unix-socket |
Added | Whether to allow local connections via a UNIX domain socket. Default: false |
node-host-advertise-as |
Added | Advertised node hostname to other nodes and external clients. |
node-ip |
Added | The IP Address for the node. Default: 127.0.0.1 |
node-port |
Added | The port to run the HTTP server on. Default: 2113 |
node-port-advertise-as |
Added | By default, a cluster node will advertise its port as the node-port , but you can override the advertised HTTP port with this option. Default: 0 |
replication-heartbeat-interval |
Added | Heartbeat interval for replication TCP sockets. Default: 700 |
replication-heartbeat-timeout |
Added | Heartbeat timeout for replication TCP sockets. Default: 700 |
replication-host-advertise-as |
Added | Name of the replication host advertised to other nodes in the cluster. |
replication-ip |
Added | The IP Address used by internal replication between nodes in the cluster. Default: 127.0.01 |
replication-port |
Added | The TCP port used by internal replication between nodes in the cluster. Default: 1112 |
replication-tcp-port-advertise-as |
Added | TCP port advertised as the replication port. Default: 0 |
disable-log-file |
Added | Disable logging to disk. Default: false |
log-config |
Added | The name of the log configuration file. Default: logconfig.json |
log-console-format |
Added | Which format to use when writing logs to the console. Allowed values are Plain or Json . Default: Plain |
log-file-interval |
Added | How often to rotate logs. Allowed values are Infinite , Year , Month , Day , Hour , or Minute . Default: Day |
log-file-retention-count |
Added | How many log files to keep. Default: 31 |
log-file-size |
Added | Maximum size (in bytes) of each log file. Default: 1073741824 |
log-level |
Added | Sets the minimum log level. For more granular settings, please edit logconfig.json . Allowed values are Default , Verbose , Debug , Information , Warning , Error , or Fatal . Default: Default |
projection-compilation-timeout |
Added | The time in milliseconds allowed for the compilation phase of user projections. Default: 500 |
projection-execution-timeout |
Added | The maximum execution time in milliseconds for executing a handler in a user projection. It can be overridden for a specific projection by setting ProjectionExecutionTimeout config for that projection. Default: 250 |
disable-internal-tcp-tls |
Deprecated | The DisableInternalTcpTls option has been deprecated as of version 20.6.1 and currently has no effect. It is recommended to use the Insecure parameter instead. |
enable-atom-pub-over-http |
Deprecated | AtomPub over HTTP interface has been deprecated as of version 20.6.0. It is recommend to use gRPC instead. |
gossip-on-single-node |
Deprecated | This option has been deprecated as of version 21.2. |
unsafe-ignore-hard-delete |
Deprecated | This setting is unsafe and not recommended. |
optimize-index-merge |
Deprecated | This setting is ignored by the new scavenge algorithm and will be removed in future versions. |
always-keep-scavenged |
Deprecated | This setting is ignored by the new scavenge algorithm and will be removed in future versions. |
Apart from the above, there are three options in the EventStoreDB that dynamically resizes according to the amount of free memory available.
The option is set to 0
by default, which enables dynamic resizing. The default on previous versions of EventStoreDB was 100000
entries.
The option is set to 0
by default, which enables autoconfiguration. The default on previous versions of EventStoreDB was 4 threads.
The option is set to 0
by default, which enables autoconfiguration. The default on previous versions of EventStoreDb was 5 threads.