Help:Configuration parameter "$smwgQTemporaryTablesAutoCommitMode"

From semantic-mediawiki.org
Jump to: navigation, search
edit with form


Title $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
First version supported
Last version supported still available
Configuration Store settings · Miscellaneous
Keyword sqlstore · store

$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.0.1 It was backported to the 2.4.x branch of Semantic MediaWiki.2

The default setting "false" enforces transactions to be GTID consistent. This requirement can be disabled by changing the setting to "true".

NoteNote: 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

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.

References

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