te_engine

The MarketGrid matching engine.

Required options

NameTypeDescriptionDefault
basedirnameStringThe MarketGrid install directory
instancekeyStringThe unique shared memory key for this instance of MarketGrid

All options

NameTypeDescriptionDefault
service_nameStringThe name of this service - used for logging.
basedirnameStringThe MarketGrid install directory
instancekeyStringThe unique shared memory key for this instance of MarketGrid
showsmsizesInteger (unsigned)Display the table sizes
timeoutInteger (unsigned)
stopattransactionInteger (unsigned)When reading a transactionlog, stop reading at the transaction number provided.
suspendafterrestartInteger (unsigned)Suspend the system after replaying a transaction log.
continueafterrestartInteger (unsigned)Used when we have finished reading from a log and wish to continue the time from that point. If set, then time will begin from last time read from log file.
freezeclockInteger (unsigned)When using continueafterrestart, if this option is set, the clock will be frozen at the time of the last-read transaction
wait_for_debuggerInteger (unsigned)If set, the engine will pause early in the start process (by raising SIGSTOP) and wait for a debugger to attach. Once attached, SIGCONT must be sent in order to continue execution.
debugSet of DebugPrint debug messages that have number >= level to log file
quietInteger (unsigned)Don't print informational messages to stdout
dateInteger (signed)The date for which we are running (omit for today's date, which is the default)
runexpiredsessiontimesInteger (unsigned)
baseportInteger (unsigned)The base port number from which all other port numbers are offset
enginelistenaddrString0.0.0.0
engineconnectaddr1String
engineconnectaddr2String
engineconnectaddr3String
engineconnectaddr4String
engineinternaladdrString0.0.0.0
tserverlistenaddrString0.0.0.0
dotimingsInteger (unsigned)
syncbeforeexecuteInteger (unsigned)Ensure the backup instance is synchronised with main before executing the next transaction on the main instance.
buffersInteger (unsigned)
versionedlogsInteger (unsigned)
demomodeOne of DemoMode
fixedeeidsInteger (unsigned)If true, use generate fixed EEIDs starting from 1 and increasing monotonically.
machinemodeOne of MachineMode
mainenginelistenaddrString
mainengineconnectaddrString
nogovernorInteger (unsigned)If the connection to the backup instance goes down, continue running without consulting the governor.
governorconnectaddrStringAddress to connect to the governor.0.0.0.0
logstreamerlistenaddrStringAddress on which to listen for connections from replica/backup engines0.0.0.0
upstreamconnectaddr1StringFirst address for the LogStreamer to connect upstream. Will connect to subsequent addresses if this fails.
upstreamconnectaddr2StringFirst backup address for the LogStreamer to connect upstream.
upstreamconnectaddr3StringSecond backup address for the LogStreamer to connect upstream.
upstreamconnectaddr4StringThird backup address for the LogStreamer to connect upstream.
logstreamerInteger (unsigned)Instance number of the LogStreamer, usually starting from 1. Must be supplied to enable LogStreamer.
replicarelayInteger (unsigned)Enable a second LogStreamer thread for a replica instance, permitting a downstream connection from a replica. Only applicable to a replica instance.
logstreamermaxsendInteger (unsigned)Max transaction number to send to downstream connections (TBC)
logstreamerdefaultsendInteger (unsigned)Default number of transactions to send downstream in each block.
broadcastreplyackInteger (unsigned)
nobroadcastreplynackInteger (unsigned)
nobroadcastInteger (unsigned)Do not create or publish any change records. Useful for replaying a log and creating cache files (for example) faster & with much lower memory consumption.
logstreamertimeoutInteger (unsigned)
enginebroadcasttimeoutInteger (signed)
tserverretriesInteger (unsigned)
broadcastconnectaddr1String
broadcastconnectaddr2String
broadcastconnectaddr3String
broadcastconnectaddr4String
slowresponseInteger (unsigned)Microseconds to wait between processing transactions
noholdingsInteger (unsigned)
systemtimezoneString
systemstarttimestampStringStart the engine with a specific start time. e.g. 2021-01-01T08:30:00
infobcintervalInteger (unsigned)
heartbeatrateInteger (signed)
backuptimeoutInteger (unsigned)
governortimeoutInteger (unsigned)
backupwaittimeInteger (unsigned)
keeptradedaysInteger (signed)Maximum number of days to reload orders/trades into memory during cycle (currently disabled)
maxtradehistoryreloadInteger (signed)Maximum number of TimeSales records to reload for each InstrumentMarket during a cycle.
engineidInteger (unsigned)
enginecyclelagInteger (unsigned)
nomd5sumcheckInteger (unsigned)
nosavefileInteger (unsigned)
colourInteger (unsigned)Whether or not to colourise log output (default true)
savefileString
savepathString
loadStringThe directory or file containing the initial dataset to load. If this option is used, the --autoload option will be ignored.
autoloadInteger (unsigned)On startup, the engine will search for suitable data to start from: 1. Suitable cache files 2. Transaction log to replay 3. TSV files If the --load option is used, this option will be ignored, unless autoloadpriority is true.
autoloadpriorityInteger (unsigned)If true, always try autoload before load.
writecacheonsigtermInteger (unsigned)On receiving sigterm, cache files will be automatically written before terminating the engine.
forcetranslogInteger (unsigned)
ignorekafkaidInteger (unsigned)
nokafkaonrestartInteger (unsigned)
haltfkerrorsInteger (unsigned)
noautotimereventsInteger (unsigned)
nologpasswordsInteger (unsigned)
optimisedchangetablesInteger (unsigned)
nowaitpollInteger (unsigned)Use no-wait polling (consumes full CPU per thread).
dotransactiontimingInteger (unsigned)If true, the matching engine will time all transactions.
accountcodeonlyInteger (unsigned)Set to true for V1 migration testing where we only use AccountCode for order validate.
customerStringUsed in the Matching Engine for customer-specific conditional execution of code.
monitorkafkaInteger (unsigned)Set to inform engine that Kafka is not being used.
max_recsInteger (unsigned)Set the initial size for a shared memory table. May be repeated to set sizes for multiple tables. Each instance of the argument should be of the form '--max_recs table=N' where N is the initial size of the table in number of records (except for the TransactionLog table, which is sized in terms of 5K blocks).
cache_permissionsInteger (unsigned)Enable or disable record-level permissions on a per-table basis.
on_diskInteger (unsigned)Store a table memory-mapped on disk, instead of in shared memory.
operating_modeOne of OperatingModeThe mode to run this te_engine process in.0
jwt_audienceStringIf set, specifies that any JWT used to login to this engine must contain an 'aud' claim with this value. If unset, any JWT with an 'aud' claim will be rejected.