This change provides a workaround and test case for a problem
in the sqlite library:
SQLite truncates strings at ASCII value 00 aka \0. Strings
containing \0 need to be represented in hexadecimal form.
Reported to PHP as bug 63419
https://bugs.php.net/bug.php?id=63419
Change-Id: I2bbc445ffebd41e181edfc3201e6e5514de06142
* Parsoid has to convert HTML to Wikitext in order to support the
Visual Editor. As part of this, it has to insert nowiki escapes
in several places wherever the text might be interpreted as
valid wikitext markup. The new tests test Parsoid's wikitext
escaping capabilities when the result HTML is serialized back to
Wikitext.
Change-Id: I392a5cbc2eeca921fcd4c44cbc37615b583240a5
The Revision object needs the Title to determine the default content model.
Providing the Title explicitely wherever possible avoids an extra database
lookup. Most importanlty, this fixes fatal errors that ocurr when the
database lookup fails due to slave lag or transaction state.
Change-Id: I516e82f7a893b274c513b128b8a46db491160b55
Undeletion was broken twice:
1) originally, it failed silently, restoring revision entries with
the wrong number in rev_page.
2) I789e45bd restores an overly zealous sanity check, causing
undeletion to fail with a fatal error.
This change fixes both issues.
Change-Id: I796fe54e81773f7982ae9bc15ba30f2a2ee3f174
The CDB tests were attemptying to write in harcoded filename
/tmp/php.cdb and /tmp/dba.cdb. Whenever two jobs were running the same
test, we would end up with a mysteriously failling test. The test now
use random temporary file names.
Change-Id: Ia1e58f0c02418e6d01d6730f97b2103ed87eb4f4
* Split claim() into claimRandom() and claimOldest().
* Added a new SELECT+UPDATE method that will automatically be used if there are slaves.
This is what claimRandom() uses, which is the claim function used for random queues.
This can handle torture testing with dozens of processes using NullJob without deadlocks.
* Made claimOldest() work using the same method as the old claim() method. Doing SELECT
first won't really work that well in this case. The useless "job_random > 0" is now gone
from the query, which actually alleviates deadlock problems too. This method is used for
"timestamp" ordered queues.
Change-Id: Iaea96ff8eba2c918376f9465b54e9bbc3124f473
* use links already present in toolbar and navigational menus
* remove all the checks that have been thus made redundant
* introduce processBottomLink()
* remove all the functions that became obsolete
* fix up CSS
* add action=info link
Change-Id: I9486649e7b34f1ee33f5d529f3af5799369b3a11
This fixes the second part of bug 41456.
We also wrap each portlet in a <div> with class=portlet and an id like in
other skins (p-<heading-name>).
These changes should make CologneBlue more compatible with gadgets
and user-scripts that expect standard sidebar structure to add new links
to it.
Change-Id: I51c022bf22b881d4bd33c8d0e36c3e3226ac8b8f
Update the order of parts in messages files. Not done for all files. Order set as:
fallback, encoding, namespace related, special pages, magic words, other (no fixed
ordering after magic words).
Change-Id: Ide5ec747ba62a8c2bca8040a14d0aeea8e6c79b9