$smwgQTemporaryTablesAutoCommitMode

From semantic-mediawiki.org


Configuration parameter details:
Name $smwgQTemporaryTablesAutoCommitMode
Description Sets whether certain types of database transactions may be performed that cannot be safely logged using global transaction identifiers (GTIDs)
Default setting
false
(Other) available settings
true

Allows to disable the requirement for database transactions to be GTID consistent

Software Semantic MediaWiki
Since version
Until version still available
Configuration Store settings · Miscellaneous
Keyword sqlstore · store · gtid


$smwgQTemporaryTablesAutoCommitMode is a configuration parameter that sets whether certain types of transactions may be performed that cannot be safely logged using global transaction identifiers (GTIDs). This parameter is specific to a relational data store and was introduced in Semantic MediaWiki 2.5.0Released on 14 March 2017 and compatible with MW 1.23.0 - 1.29.x..1 It was backported to the 2.4.x branch of Semantic MediaWiki and prereleased with Semantic MediaWiki 2.4.6Released on 15 February 2017 and compatible with MW 1.19.0 - 1.28.x..2

This configuration parameter may only be used in connection with the usage of a relational database as set with configuration parameter $smwgDefaultStoreSets the storage backend to be used for the semantic data.

Rationale[edit]

MySQL's Global transaction identifier is a unique transaction ID assigned to every transaction that happens in a MySQL database. Using it will create issues when executing queries that rely on temporary tables. According to the documentation "... the operations listed cannot be used ... CREATE TEMPORARY TABLE statements inside transactions".

This configuration parameter helps mitigate issues encountered when the MySQL variable @@GLOBAL.ENFORCE_GTID_CONSISTENCY is set to enforce GTIDs to be consistent.

Default setting[edit]

$smwgQTemporaryTablesAutoCommitMode = false;

This means that transactions are forced to be GTID consistent.

Changing the default setting[edit]

To modify the setting to this configuration parameter, add one of the following lines to your "LocalSettings.php" file after the enableSemantics() call:

Disable the display of incoming links
$smwgQTemporaryTablesAutoCommitMode = true;

This means that transactions do not need to be GTID consistent.

See also[edit]


References

  1. ^  Semantic MediaWiki: GitHub pull request gh:smw:1758
  2. ^  Semantic MediaWiki: GitHub pull request gh:smw:2235