$smwg­Enabled­Http­Deferred­Job­Request

From semantic-mediawiki.org


Configuration parameter details:
Name $smwgEnabledHttpDeferredJobRequest
Description Sets whether selected jobs can be executed asynchronously to the initial transaction triggering the job
Default setting
true
(Other) available settings
false

Allows to change updates to be done with the initial transaction and parked as jobs, waiting on job scheduler to initiate the update

SMW_HTTP_DEFERRED_SYNC_JOB

Allows to change updates to be done synchronously with the update transaction, i.e. jobs are executed immediately

SMW_HTTP_DEFERRED_LAZY_JOB

Allows to change updates to be buffered, i.e. job are executed after MediaWiki has done all its transactions

Software Semantic MediaWiki
Since version
Until version
Configuration Installation
Keyword query · performance


Sketch detailing the technical process involving the "Deferred­Request­Dispatch­Manager"

$smwgEnabledHttpDeferredJobRequest is a configuration parameter to control the behaviour of "DeferredRequestDispatchManager" to manage and execute selected jobs asynchronously, i.e. in a deferred processing mode to the initial transaction triggering the job. If enabled which is the default setting for this configuration parameter those jobs are send as request to a dispatcher in order for them to be decoupled from the initial transaction. The configuration parameter was introduced in Semantic MediaWiki 2.3.0Released on 29 October 2015 and compatible with MW 1.19.0 - 1.25.x.1 and removed with Semantic MediaWiki 3.0.0Released on 11 October 2018 and compatible with MW 1.27.0 - 1.31.x. to be replaced by an software internal approach.2

Semantic MediaWiki 2.5.0Released on 14 March 2017 and compatible with MW 1.23.0 - 1.29.x. added the SMW_HTTP_DEFERRED_SYNC_JOB option to this configuration parameter to control updates to be executed synchronously to a change propagation transaction.3 This option helps to mitigate a situation where for some reason the "DeferredRequestDispatchManager" is unable to complete the request and waiting on the job scheduler is not a choice.4

Semantic MediaWiki 2.5.1Released on 22 April 2017 and compatible with MW 1.23.0 - 1.29.x. added the SMW_HTTP_DEFERRED_LAZY_JOB option to this configuration parameter to buffer updates to be executed after MediaWiki has done all its transactions.5. This option helps to mitigate a situation where for some reason the "DeferredRequestDispatchManager" lets users seeing the enqueue latency in case several calls are mode on the same queue.

This setting only takes effect if the embedded query update feature was enabled.

Default setting[edit]

$smwgEnabledHttpDeferredJobRequest = true;

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:

Change updates to be done synchronously with the update transaction (jobs are executed immediately)
$smwgEnabledHttpDeferredJobRequest = SMW_HTTP_DEFERRED_SYNC_JOB;
Change updates to be done synchronously with the update transaction (jobs are batched and executed later on idle)
$smwgEnabledHttpDeferredJobRequest = SMW_HTTP_DEFERRED_LAZY_JOB;
Change updates to be done with the initial transaction and parked as jobs, waiting on job scheduler to initiate the update
$smwgEnabledHttpDeferredJobRequest = false;

See also[edit]



References

  1. ^  Semantic MediaWiki: GitHub pull request gh:smw:1169
  2. ^  Semantic MediaWiki: GitHub pull request gh:smw:3310
  3. ^  Semantic MediaWiki: GitHub pull request gh:smw:2285
  4. ^  Semantic MediaWiki: GitHub issue gh:smw:2283
  5. ^  Semantic MediaWiki: GitHub pull request gh:smw:2356