This morning Amir noticed a lot of entries in logstash of the form
PHP Warning: gzinflate(): data error
form snapshot1013. Full sample stack trace below:
from /srv/mediawiki/php-1.38.0-wmf.9/includes/Storage/SqlBlobStore.php(587) #0 [internal function]: MWExceptionHandler::handleError(integer, string, string, integer, array) #1 /srv/mediawiki/php-1.38.0-wmf.9/includes/Storage/SqlBlobStore.php(587): gzinflate(string) #2 /srv/mediawiki/php-1.38.0-wmf.9/includes/Storage/SqlBlobStore.php(517): MediaWiki\Storage\SqlBlobStore->decompressData(string, array) #3 /srv/mediawiki/php-1.38.0-wmf.9/includes/Storage/SqlBlobStore.php(426): MediaWiki\Storage\SqlBlobStore->expandBlob(string, array, string) #4 /srv/mediawiki/php-1.38.0-wmf.9/includes/Storage/SqlBlobStore.php(281): MediaWiki\Storage\SqlBlobStore->fetchBlobs(array, integer) #5 /srv/mediawiki/php-1.38.0-wmf.9/includes/libs/objectcache/wancache/WANObjectCache.php(1689): MediaWiki\Storage\SqlBlobStore->MediaWiki\Storage\{closure}(boolean, integer, array, NULL, array) #6 /srv/mediawiki/php-1.38.0-wmf.9/includes/libs/objectcache/wancache/WANObjectCache.php(1518): WANObjectCache->fetchOrRegenerate(string, integer, Closure, array, array) #7 /srv/mediawiki/php-1.38.0-wmf.9/includes/Storage/SqlBlobStore.php(286): WANObjectCache->getWithSetCallback(string, integer, Closure, array) #8 /srv/mediawiki/php-1.38.0-wmf.9/includes/Revision/RevisionStore.php(1182): MediaWiki\Storage\SqlBlobStore->getBlob(string, integer) #9 /srv/mediawiki/php-1.38.0-wmf.9/includes/Revision/RevisionStore.php(1456): MediaWiki\Revision\RevisionStore->loadSlotContent(MediaWiki\Revision\SlotRecord, NULL, NULL, NULL, integer) #10 [internal function]: MediaWiki\Revision\RevisionStore->MediaWiki\Revision\{closure}(MediaWiki\Revision\SlotRecord) #11 /srv/mediawiki/php-1.38.0-wmf.9/includes/Revision/SlotRecord.php(322): call_user_func(Closure, MediaWiki\Revision\SlotRecord) #12 /srv/mediawiki/php-1.38.0-wmf.9/includes/Revision/SlotRecord.php(569): MediaWiki\Revision\SlotRecord->getContent() #13 /srv/mediawiki/php-1.38.0-wmf.9/includes/Revision/RevisionSlots.php(205): MediaWiki\Revision\SlotRecord->getSha1() #14 [internal function]: MediaWiki\Revision\RevisionSlots::MediaWiki\Revision\{closure}(NULL, MediaWiki\Revision\SlotRecord) #15 /srv/mediawiki/php-1.38.0-wmf.9/includes/Revision/RevisionSlots.php(207): array_reduce(array, Closure, NULL) #16 /srv/mediawiki/php-1.38.0-wmf.9/includes/Revision/RevisionStoreRecord.php(171): MediaWiki\Revision\RevisionSlots->computeSha1() #17 /srv/mediawiki/php-1.38.0-wmf.9/includes/export/XmlDumpWriter.php(405): MediaWiki\Revision\RevisionStoreRecord->getSha1() #18 /srv/mediawiki/php-1.38.0-wmf.9/includes/export/XmlDumpWriter.php(317): XmlDumpWriter::{closure}() #19 /srv/mediawiki/php-1.38.0-wmf.9/includes/export/XmlDumpWriter.php(407): XmlDumpWriter->invokeLenient(Closure, string) #20 /srv/mediawiki/php-1.38.0-wmf.9/includes/export/WikiExporter.php(551): XmlDumpWriter->writeRevision(stdClass, array) #21 /srv/mediawiki/php-1.38.0-wmf.9/includes/export/WikiExporter.php(493): WikiExporter->outputPageStreamBatch(Wikimedia\Rdbms\MysqliResultWrapper, stdClass) #22 /srv/mediawiki/php-1.38.0-wmf.9/includes/export/WikiExporter.php(314): WikiExporter->dumpPages(string, boolean) #23 /srv/mediawiki/php-1.38.0-wmf.9/includes/export/WikiExporter.php(197): WikiExporter->dumpFrom(string, boolean) #24 /srv/mediawiki/php-1.38.0-wmf.9/maintenance/includes/BackupDumper.php(322): WikiExporter->pagesByRange(integer, integer, boolean) #25 /srv/mediawiki/php-1.38.0-wmf.9/maintenance/dumpBackup.php(82): BackupDumper->dump(integer, integer) #26 /srv/mediawiki/php-1.38.0-wmf.9/maintenance/doMaintenance.php(108): DumpBackup->execute() #27 /srv/mediawiki/php-1.38.0-wmf.9/maintenance/dumpBackup.php(144): require_once(string) #28 /srv/mediawiki/multiversion/MWScript.php(116): require_once(string) #29 {main}
I think these are likely a consequence of https://gerrit.wikimedia.org/r/c/mediawiki/core/+/731246 which can change the exception thrown when a bad blob is encountered.