(16 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 29:
Zeile 29:
* by adding a "''Finish with Success''" action, which is triggered somehow
* by adding a "''Finish with Success''" action, which is triggered somehow
[[Datei:ActionVariableUI.png|mini]]
Typical GUIs will contain some button labelled "OK", "Accept" or "Save". This should be pressed by an operator, once all relevant fields have been filled with data, and the UI should be closed. For this,
Typical GUIs will contain some button labelled "OK", "Accept" or "Save". This should be pressed by an operator, once all relevant fields have been filled with data, and the UI should be closed. For this,
* drag the button labelled "OK" from the gallery into the UI,
* drag the button labelled "OK" from the gallery into the UI,
* change its label as desired (select the button in the widget hierarchy, and type the label into the "Label" field).
* change its label as desired (select the button in the widget hierarchy, and type the label into the "Label" field).
* (optionally) change the name of the "Action" variable, which defaults to "doAccept".This is the name of the variable, which will get a value stored into, whenever the button is pressed.
* (optionally) change the name of the "Action" variable, which defaults to "doAccept".<br>This is the name of the variable, which will get a value stored into, whenever the button is pressed.
* if such a variable does not yet exist, pres the "create variable" icon beside the action name field (the yellow star icon)
* if such a variable does not yet exist, pres the "create variable" icon beside the action name field (the yellow star icon)
* press save and close the GUI editor
* press save and close the GUI editor
[[Datei:ActionVariable1.png|mini]]
Now, yyour environment will contain another variable named "doAccept" (or whatever name you have chosen).
Now, your environment will contain another variable named "doAccept" (or whatever name you have chosen).
Goto the network and add a new step "Wait for Variable to Change", and freeze its input from the "doAccept" variable. Make sure it has the autostart flag set, so it will start to execute whenever the UI action is triggered.
Goto the network and add a new step "''Wait for Variable to Change''", and freeze its input from the "doAccept" variable. Make sure it has the autostart flag set, so it will start to execute whenever the UI action is triggered.
[[Datei:ActionVariable2.png|mini]]
This action will wait for the given variable to change and whenever that happens, will send the variable's value to its output.
This action will wait for the given variable to change and whenever that happens, will send the variable's value to its output.
So this output can be used to trigger whatever is to be done after that GUI button press.<br>As a first experiment, let it trigger a "Success" action (which terminates the UI action).
So this output can be used to trigger whatever is to be done after that GUI button press.<br>As a first experiment, let it trigger a "OK (Success)" action (which terminates the UI action).
Now, if you execute the UI action, its GUI will remain open until the "OK" button is clicked.
Notice that many other widgets will update a variable if configured to do so. For example, the List-Selection widgets or Textedit widgets will do so. By adding a "Wait for Change" step, input validations or other steps can be triggered inside your GUI actions network.
== Connecting the Widgets with Data ==
== Connecting the Widgets with Data ==
The widgets interact with the action via special environment variables. For example, the list-widget will present the list as held by a ''list'' variable and place the selection into another ''selection'' variable. These variables are to be defined in the action block's private environment, and should have the special initializer-type "GUIValue".
Widgets interact with the action via special environment variables. For example, the list-widget will present the list as held by a ''list'' variable and place the selection into another ''selection'' variable. These variables are to be defined in the action block's private environment, and should have the special initializer-type [[Environment_Editor/en#GUI-Value | "GUI-Value"]] or [[Environment_Editor/en#GUI-Action | "GUI-Action"]] (otherwise, the widget will not react to changes of the variable's value, only taking its initial contents as a constant).
Let's do this in our concrete example:
Let's do this in our concrete example:
[[Datei:ListWidget1.png|mini]]
* reopen the UI-builder by selecting the schema tab and there clicking again on "''Edit GUI''" at the bottom
* reopen the UI-builder by selecting the schema tab and there clicking again on "''Edit GUI''" at the bottom
* select the listwidget- either in the widget tree or in the drawing canvas view
* from the gallery's "Lists" tab, drag a List widget either into the widget tree or in the drawing canvas view
* beside the widget tree, you'll find the selected widget's attributes, arranged in multiple tabs. Make sure the "''Basics''" tab is selected. There, enter the name of the variable which will hold the list, into the field named: 'List'.
* beside the widget tree, you'll find the selected widget's attributes, arranged in multiple tabs. Make sure the "''Basics''" tab is selected. There, enter the name of the variable which will hold the list, into the field named: 'List'. Press the "Create Variable" icon (the star) beside the name field. [[Datei:ListWidget2.png|mini]]
* save and close the GUI editor
* provide some input to the list widget, by writing to the corresponding variable (in this case, "myList"). In the simple example here, the value comes from a freeze value containing multiple strings. In practive, this may come from a database, a file or an input pin to the GUI action.[[Datei:ListWidget3.png|mini]]
Expecco can be configured to present a custom dynamic GUI (graphical user interface) while executing. This user interface is defined and controlled by the action being executed, and can vary (i.e. changed) dynamically. Useful scenarios for this are test stands, where you want to hide the internals of the execution from the test operator, or to present additional data (monitoring) or to ask interactively for parameters or other input values.
Of course, the simple dialog requests can also be used for parameter questions, but a custom UI can both provide a better look and allow for more complex user interaction to be defined.
The general mechanism is based on attaching a user interface to individual (compound) actions. This UI is then shown whenever the action is active.
Getting Started
First, create a new compound action, and go to its schema tab.
at the bottom, find the button named "GUI" and click on it. A UI-editor will open, showing 3 views:
the main view, containing the widget hierarchy and attributes,
a drawing canvas, which shows how the UI will look
and a widget gallery, from which UI elements can be dragged into the widget hierarchy to into the drawing canvas.
now - for a simple example, drag a simple "OK" button (found in the "Buttons" section of the gallery) and a ListView (in the "Lists" section) from the gallery into the canvas. Don't care for layout details now - we'll fix this later.
press the "Save" button in the main view and close the editor.
the UI will later be shown during the action's execution; therefore, we make sure that it will run for some time. Place a simple "Delay for a few seconds" action into the action's activity diagram, so the UI will not be closed immediately.
press "Run"
You will now probably get an error outcome, stating the the UI was disabled in the project 1). This is the default, and you should enable this first in the project's "Execution" tab: select "Window" in the combo list of the "User Interface" section near the bottom).
Run it again.
Your UI should now show up, while the compound action is active, and disappear later. Of course, we did not yet connect any data or callback actions with the UI's elements.
Keeping the UI open
In the above setup, the actions network only contained a single Delay action. Thus, the network finished after the specified time.
There are multiple possible setups to control when the UI should be closed, by controlling how long the action is active:
by adding a "Wait Forever" action which gets cancelled after some time, or by a variable change
by adding a "Finish with Success" action, which is triggered somehow
Typical GUIs will contain some button labelled "OK", "Accept" or "Save". This should be pressed by an operator, once all relevant fields have been filled with data, and the UI should be closed. For this,
drag the button labelled "OK" from the gallery into the UI,
change its label as desired (select the button in the widget hierarchy, and type the label into the "Label" field).
(optionally) change the name of the "Action" variable, which defaults to "doAccept". This is the name of the variable, which will get a value stored into, whenever the button is pressed.
if such a variable does not yet exist, pres the "create variable" icon beside the action name field (the yellow star icon)
press save and close the GUI editor
Now, your environment will contain another variable named "doAccept" (or whatever name you have chosen).
Goto the network and add a new step "Wait for Variable to Change", and freeze its input from the "doAccept" variable. Make sure it has the autostart flag set, so it will start to execute whenever the UI action is triggered.
This action will wait for the given variable to change and whenever that happens, will send the variable's value to its output.
So this output can be used to trigger whatever is to be done after that GUI button press. As a first experiment, let it trigger a "OK (Success)" action (which terminates the UI action).
Now, if you execute the UI action, its GUI will remain open until the "OK" button is clicked.
Notice that many other widgets will update a variable if configured to do so. For example, the List-Selection widgets or Textedit widgets will do so. By adding a "Wait for Change" step, input validations or other steps can be triggered inside your GUI actions network.
Connecting the Widgets with Data
Widgets interact with the action via special environment variables. For example, the list-widget will present the list as held by a list variable and place the selection into another selection variable. These variables are to be defined in the action block's private environment, and should have the special initializer-type "GUI-Value" or "GUI-Action" (otherwise, the widget will not react to changes of the variable's value, only taking its initial contents as a constant).
Let's do this in our concrete example:
reopen the UI-builder by selecting the schema tab and there clicking again on "Edit GUI" at the bottom
from the gallery's "Lists" tab, drag a List widget either into the widget tree or in the drawing canvas view
beside the widget tree, you'll find the selected widget's attributes, arranged in multiple tabs. Make sure the "Basics" tab is selected. There, enter the name of the variable which will hold the list, into the field named: 'List'. Press the "Create Variable" icon (the star) beside the name field.
save and close the GUI editor
provide some input to the list widget, by writing to the corresponding variable (in this case, "myList"). In the simple example here, the value comes from a freeze value containing multiple strings. In practive, this may come from a database, a file or an input pin to the GUI action.Datei:ListWidget3.png
1) why is it disabled by default? We assume that the test suite will be executed automated once you finished developing it. And then, you will probably not want any popup windows to appear, which need user interaction (think of an automatic run overnight).
Instead of waiting for a never happening user input and thus blocking the machine for other scheduled automatic tests, the will instead report an error then ("User Interface Disabled") so that either the next test case will be executed, or the testplan be finished (and other automated tests can be executed afterwards).
[session] SessionBackend "cqtjeeag5jh6bv2diia7jnj68u7b0feq" data dirty due to dirty(): MediaWiki\Session\SessionManager->getSessionForRequest/MediaWiki\Session\SessionManager->getInitialSession/MediaWiki\Session\Session->getToken/MediaWiki\Session\Session->set/MediaWiki\Session\SessionBackend->dirty
[rdbms] Wikimedia\Rdbms\LoadBalancer::reallyOpenConnection: opened new connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(global:rdbms-server-readonly:localhost): miss, new value computed
MediaWiki\Parser\ParserFactory: using default preprocessor
[SQLBagOStuff] MicroStash using store SqlBagOStuff
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(global:revision-row-1.29:expeccowikiV2:4063:28981): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(global:NameTableSqlStore:slot_roles:expeccowikiV2): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(global:NameTableSqlStore:content_models:expeccowikiV2): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:page-content-model:28981): miss, new value computed
[ContentHandler] Registered handler for wikitext: MediaWiki\Content\WikitextContentHandler
[objectcache] getWithSetCallback(expeccowikiV2:page-content-model:28981): process cache hit
[objectcache] getWithSetCallback(expeccowikiV2:page-content-model:28981): process cache hit
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
MediaWiki\Page\Article::view: showing diff page
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
DifferenceEngine old '28956' new 'cur' rcid '0'
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[MessageCache] MessageCache using store SqlBagOStuff
[rdbms] Wikimedia\Rdbms\LoadBalancer::reallyOpenConnection: opened new connection for 0/expeccowikiV2
[objectcache] getWithSetCallback(global:rdbms-server-readonly:localhost): process cache hit
[SQLBagOStuff] SqlBagOStuff debug: SqlBagOStuff::fetchBlobs: retrieved expeccowikiV2:messages:de; expiry time is 99991231235959
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[ContentHandler] Registered handler for css: MediaWiki\Content\CssContentHandler
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[MessageCache] MessageCache::loadUnguarded: Loading de... local cache is empty, global cache is expired/volatile, loading from DB
[SQLBagOStuff] MainObjectStash using store SqlBagOStuff
[MessageParser] MediaWiki\Language\MessageParser::acquireParser: Creating a new parser with index 0
[silenced-error] [6434502c3bf433feee7e4632] /index.php?diff=cur&oldid=28956&title=Test_Execution_Monitor_Window%2Fen PHP Deprecated: Use of MediaWiki\Permissions\PermissionStatus::toLegacyErrorArray was deprecated in MediaWiki 1.43. [Called from MediaWiki\Permissions\PermissionManager::getPermissionStatus]
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
Unstubbing $wgLang on call of $wgLang::getDatePreferenceMigrationMap from MediaWiki\Language\Language->internalUserTimeAndDate
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[SQLBagOStuff] SqlBagOStuff debug: SqlBagOStuff::fetchBlobs: retrieved expeccowikiV2:messages:en; expiry time is 99991231235959
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\Database::lock: failed to acquire lock 'expeccowikiV2:messages:en'
[MessageCache] MessageCache::loadUnguarded: Loading en... local cache is empty, global cache is expired/volatile, loading from DB, could not acquire main lock, using stale cache
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(global:SqlBlobStore-blob:expeccowikiV2:tt%3A28009): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(global:SqlBlobStore-blob:expeccowikiV2:tt%3A28034): miss, new value computed
DifferenceEngine old '0' new '0' rcid '0'
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] getWithSetCallback(expeccowikiV2:page-content-model:28981): process cache hit
[objectcache] getWithSetCallback(expeccowikiV2:page-content-model:28981): process cache hit
[ParserCache] Creating ParserCache instance for pcache
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[SQLBagOStuff] SqlBagOStuff debug: SqlBagOStuff::fetchBlobs: retrieved expeccowikiV2:pcache:4063:|#|:idoptions; expiry time is 20260224160321
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[ParserCache] Parser cache options found
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[SQLBagOStuff] SqlBagOStuff debug: SqlBagOStuff::fetchBlobs: retrieved expeccowikiV2:pcache:4063:|#|:idhash:canonical; expiry time is 20260224160321
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[ParserCache] ParserOutput cache found
[objectcache] getWithSetCallback(expeccowikiV2:page-content-model:28981): process cache hit
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] getWithSetCallback(global:rdbms-server-readonly:localhost): process cache hit
[objectcache] getWithSetCallback(global:rdbms-server-readonly:localhost): process cache hit
MediaWiki\Output\OutputPage::haveCacheVaryCookies: no cache-varying cookies found
[objectcache] getWithSetCallback(global:rdbms-server-readonly:localhost): process cache hit
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:e9a5ae1c8c14bbc49a89895e7bf7a1e87f3b4a45): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:66942507ef2581b24d387ae97d6faecc:Tooltip-footer-info): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:1711c98fbe1de00fb239b19929ba9ecac5a783a9): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:f6c4f725a607bfe8fa0cf0c05ee4f470:Tooltip-footer-info/en): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:1c1cc4e608f675b94b51380fbe902d9fdd571be8): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:66942507ef2581b24d387ae97d6faecc:Footer-info): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:7c884738a1447c613365d30262adcf80613e474e): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:f6c4f725a607bfe8fa0cf0c05ee4f470:Footer-info/en): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:7a4fa4f552247124e5865f44c2e43a02086610b0): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:66942507ef2581b24d387ae97d6faecc:Tooltip-footer-places): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:e7e87efb06ddf8ade150ba6f42dcca11adcc281e): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:f6c4f725a607bfe8fa0cf0c05ee4f470:Tooltip-footer-places/en): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:734c4078759c2292be9e9795c7a74ef87d074779): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:66942507ef2581b24d387ae97d6faecc:Tooltip-footer-places-privacy): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:23552a3ca236e7629145d4f57940119a49c7ac76): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:f6c4f725a607bfe8fa0cf0c05ee4f470:Tooltip-footer-places-privacy/en): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:3864a0b0b2a1fc783bea1bd0e914723d5aff38d4): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:66942507ef2581b24d387ae97d6faecc:Accesskey-footer-places-privacy): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:0922464e28792821d9c259ca5972d46aed04e8d8): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:f6c4f725a607bfe8fa0cf0c05ee4f470:Accesskey-footer-places-privacy/en): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:5eb3e91a5322a3d53da9855ca4156afc735f1427): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:66942507ef2581b24d387ae97d6faecc:Tooltip-footer-places-about): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:bdaf5c5045563865b2f167859ab3c7e7d69f6745): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:f6c4f725a607bfe8fa0cf0c05ee4f470:Tooltip-footer-places-about/en): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:9bcd402c7633c2cfe82486d8d4d8d6e8ed30731d): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:66942507ef2581b24d387ae97d6faecc:Accesskey-footer-places-about): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:b2df5c39f26060f7a30f4e628d4c44ff5aa92d74): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:f6c4f725a607bfe8fa0cf0c05ee4f470:Accesskey-footer-places-about/en): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:51b1aadd5a7b5330bc5634704893b47aa8c62780): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:66942507ef2581b24d387ae97d6faecc:Tooltip-footer-places-disclaimers): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:799cb9df1828705ab6c247ea3b46ff273b7efcdf): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:f6c4f725a607bfe8fa0cf0c05ee4f470:Tooltip-footer-places-disclaimers/en): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:ccad5b2df7a19fe5198c6859b9f78206905cbe11): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:66942507ef2581b24d387ae97d6faecc:Accesskey-footer-places-disclaimers): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:db9e2723e7e7922c26d7466c3a432b3d5a87d64a): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:f6c4f725a607bfe8fa0cf0c05ee4f470:Accesskey-footer-places-disclaimers/en): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:bbc89cc33a3921f2442aea81be6c21aaab524797): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:66942507ef2581b24d387ae97d6faecc:Footer-places): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:2e17a206bb7330ffdf12c654b339a7fee71b575e): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:f6c4f725a607bfe8fa0cf0c05ee4f470:Footer-places/en): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:a22833dd52ee6cc8a01cb69d745018b36897d9ac): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:66942507ef2581b24d387ae97d6faecc:Tooltip-footer-icons): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:bc41d488f60f07cade00e2e965f37fa831ad3ebb): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:f6c4f725a607bfe8fa0cf0c05ee4f470:Tooltip-footer-icons/en): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:8cfd80862e4b8e189c23a54d71d2ad28022f3dac): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:66942507ef2581b24d387ae97d6faecc:Footer-icons): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:2f97380969e0e95587df2339e08c67a7ee89c408): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:f6c4f725a607bfe8fa0cf0c05ee4f470:Footer-icons/en): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:bed9db6016ee14f1ae7f119f7924d1dd4c35531f): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:66942507ef2581b24d387ae97d6faecc:View-view): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:76756e3a55de52130a013d18e5d841968bf2bea3): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:f6c4f725a607bfe8fa0cf0c05ee4f470:View-view/en): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:0f728b29afe93d8b9ca4d39e06100265375bc05d): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:66942507ef2581b24d387ae97d6faecc:Vector-action-viewsource): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:dd1164fd05c422e63cc07c6139bced4e2a74b0f5): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:f6c4f725a607bfe8fa0cf0c05ee4f470:Vector-action-viewsource/en): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:ce3928cd1066d2f87bed618aecc1366df686b008): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:66942507ef2581b24d387ae97d6faecc:Tooltip-n-specialpages): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:a89d3a701e8ba8f38aded1f64261e2e1148d4164): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:f6c4f725a607bfe8fa0cf0c05ee4f470:Tooltip-n-specialpages/en): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:d48c7193272614666684a3e4127f71eeb4f80733): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:66942507ef2581b24d387ae97d6faecc:Accesskey-n-specialpages): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:29dc0b20877823be730258319cd837096605bd87): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:f6c4f725a607bfe8fa0cf0c05ee4f470:Accesskey-n-specialpages/en): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:8870e00d8b86b0bd424ac558b8693be7134292ba): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:66942507ef2581b24d387ae97d6faecc:Tooltip-p-coll-print_export): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:c0977dceec729c45aa5a8e6139e812c30244015f): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:f6c4f725a607bfe8fa0cf0c05ee4f470:Tooltip-p-coll-print_export/en): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:05ccbe636f3cb5d3132f54f5f886a79abab04779): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:66942507ef2581b24d387ae97d6faecc:Tooltip-coll-create_a_book): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:0a4766f5f68c4b0984083216383c4a443a2d9013): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:f6c4f725a607bfe8fa0cf0c05ee4f470:Tooltip-coll-create_a_book/en): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:c4a28b7d811b244622321a355490eb2326d1e9af): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:66942507ef2581b24d387ae97d6faecc:Accesskey-coll-create_a_book): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:83dbc055a23a543b7ba390f8a946a703954b209b): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:f6c4f725a607bfe8fa0cf0c05ee4f470:Accesskey-coll-create_a_book/en): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:bcf8e477b1abfd3aa5760350aa57c41ce3b9e6d6): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:66942507ef2581b24d387ae97d6faecc:Tooltip-coll-download-as-rl): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:5da12a6355557aa5e686c58139964c04f21f52ae): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:f6c4f725a607bfe8fa0cf0c05ee4f470:Tooltip-coll-download-as-rl/en): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:5821a1f0db34d5d827889896967604ff263a7fbb): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:66942507ef2581b24d387ae97d6faecc:Accesskey-coll-download-as-rl): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:66d3576623232846f6c4cab829767074db8df2ad): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:f6c4f725a607bfe8fa0cf0c05ee4f470:Accesskey-coll-download-as-rl/en): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:47821a5e153071609c65b59131af93083b49e736): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:66942507ef2581b24d387ae97d6faecc:Tooltip-p-category-normal): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:2e8b27ea36e91d81490de9497b622414c89aacab): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:f6c4f725a607bfe8fa0cf0c05ee4f470:Tooltip-p-category-normal/en): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:3ddfaea77026fd74c0c4844a5be47785440ca8b3): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:66942507ef2581b24d387ae97d6faecc:Category-normal): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:b93dc848b025ffd6fdff56ef765f2e4d459c8669): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:f6c4f725a607bfe8fa0cf0c05ee4f470:Category-normal/en): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:cc55e312a5aa3b8484b6bc564e3edba47c592500): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:66942507ef2581b24d387ae97d6faecc:User-interface-preferences): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:adc85083e250d07ac258145247958f05fc5f98c4): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:f6c4f725a607bfe8fa0cf0c05ee4f470:User-interface-preferences/en): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:5e89b9c18080b9e1a98fafc0da774d0eec80a023): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:66942507ef2581b24d387ae97d6faecc:Tooltip-p-notifications): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:73efbe170fc384b4040efc0fc9d960a8ff65f4fb): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:f6c4f725a607bfe8fa0cf0c05ee4f470:Tooltip-p-notifications/en): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:753a22b2eb617204efee4644795034b8ace1ee14): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:66942507ef2581b24d387ae97d6faecc:Notifications): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:1843f382d04ef6a3619173956c3cc63851b8b8c2): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:f6c4f725a607bfe8fa0cf0c05ee4f470:Notifications/en): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:ef738cc53166fcf45692d0ade99df069e848dfb2): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:66942507ef2581b24d387ae97d6faecc:Tooltip-p-associated-pages): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:87e8b8a2c721123e51b2798517f2a79c09e4240c): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:f6c4f725a607bfe8fa0cf0c05ee4f470:Tooltip-p-associated-pages/en): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:cb7b37d2da1ced2fadc11aa3317c1a8efcf39648): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:66942507ef2581b24d387ae97d6faecc:Associated-pages): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:aef90612e49a7c0b8252e72958a5573f375cf6f4): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:f6c4f725a607bfe8fa0cf0c05ee4f470:Associated-pages/en): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:285b17001f2e63982e2ffae299934708c44c7ba8): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:66942507ef2581b24d387ae97d6faecc:Tooltip-p-dock-bottom): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:530bfabe3a56fd751c4d413cc674b209df8ff52d): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:f6c4f725a607bfe8fa0cf0c05ee4f470:Tooltip-p-dock-bottom/en): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:f25e850f97f42ad589a99a0aa3202ba9b09bc48b): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:66942507ef2581b24d387ae97d6faecc:Dock-bottom): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:6d8406b7c131358118e65d52222d0a182100a7a9): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:f6c4f725a607bfe8fa0cf0c05ee4f470:Dock-bottom/en): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:b01460d8c89cf849d2b7522b3412fd750ddf368b): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:66942507ef2581b24d387ae97d6faecc:Namespacenotice-0): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:c4e686ae0519865082e1925d32fd092f75ab5495): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:f6c4f725a607bfe8fa0cf0c05ee4f470:Namespacenotice-0/en): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:9982b311b55c194b086451104420b2fd94ade12e): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:66942507ef2581b24d387ae97d6faecc:Variantname-de): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page:8:e1c8d84c83434bfb0ae16c0e8e959be2c63145c9): miss, new value computed
[objectcache] fetchOrRegenerate(expeccowikiV2:messages-big:f6c4f725a607bfe8fa0cf0c05ee4f470:Variantname-de/en): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(global:resourceloader-titleinfo:expeccowikiV2:e13a4c6012b98731f23f3a3a185dc3aa663155e7): miss, new value computed
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(global:resourceloader-titleinfo:expeccowikiV2:da39a3ee5e6b4b0d3255bfef95601890afd80709): miss, new value computed
MediaWiki\Output\OutputPage::getContentLangForJS has to guess ParserOutput language
[rdbms] Wikimedia\Rdbms\LoadBalancer::reuseOrOpenConnectionForNewRef: reusing connection for 0/expeccowikiV2
[objectcache] fetchOrRegenerate(expeccowikiV2:page-restrictions:v1:4063:28981): miss, new value computed