After upgrading HHVM from 3.18.2 to 3.19.1, MW 1.28.1 update script (I did `git pull` and `composer update`) fails with the following error:
```
Fatal error: Uncaught TypeError: Argument 1 passed to mysql_real_escape_string() must be an instance of string, int given in /var/www/wiki/w/includes/libs/rdbms/database/DatabaseMysqli.php:314
Stack trace:
#0 (): mysql_real_escape_string()
#1 /var/www/wiki/w/includes/libs/rdbms/database/DatabaseMysqli.php(314): mysqli->real_escape_string()
#2 /var/www/wiki/w/includes/libs/rdbms/database/DatabaseMysqlBase.php(602): DatabaseMysqli->mysqlRealEscapeString()
#3 /var/www/wiki/w/includes/libs/rdbms/database/Database.php(1985): DatabaseMysqlBase->strencode()
#4 /var/www/wiki/w/includes/libs/rdbms/database/DatabaseMysqlBase.php(618): Database->addQuotes()
#5 /var/www/wiki/w/includes/libs/rdbms/database/Database.php(1621): DatabaseMysqlBase->addQuotes()
#6 /var/www/wiki/w/includes/libs/rdbms/database/Database.php(2159): Database->makeList()
#7 /var/www/wiki/w/includes/libs/rdbms/database/DatabaseMysqlBase.php(486): Database->nativeReplace()
#8 /var/www/wiki/w/extensions/SemanticMediaWiki/src/SQLStore/TableIntegrityExaminer.php(154): DatabaseMysqlBase->replace()
#9 /var/www/wiki/w/extensions/SemanticMediaWiki/src/SQLStore/TableIntegrityExaminer.php(84): SMW\SQLStore\TableIntegrityExaminer->doCheckPredefinedPropertyIndices()
#10 /var/www/wiki/w/extensions/SemanticMediaWiki/src/SQLStore/Installer.php(115): SMW\SQLStore\TableIntegrityExaminer->checkOnPostCreation()
#11 /var/www/wiki/w/extensions/SemanticMediaWiki/includes/storage/SQLStore/SMW_SQLStore3.php(376): SMW\SQLStore\Installer->install()
#12 /var/www/wiki/w/extensions/SemanticMediaWiki/includes/storage/SMW_Store.php(439): SMWSQLStore3->setup()
#13 /var/www/wiki/w/includes/installer/DatabaseUpdater.php(472): SMW\Store::setupStore()
#14 /var/www/wiki/w/includes/installer/DatabaseUpdater.php(437): DatabaseUpdater->runUpdates()
#15 /var/www/wiki/w/maintenance/update.php(172): DatabaseUpdater->doUpdates()
#16 /var/www/wiki/w/maintenance/doMaintenance.php(111): UpdateMediaWiki->execute()
#17 /var/www/wiki/w/maintenance/update.php(217): include()
#18 {main}
[2314eb5536b4b8f0d66f4bd6] [no req] __SystemLib\TypeError from line 314 of /var/www/wiki/w/includes/libs/rdbms/database/DatabaseMysqli.php: Argument 1 passed to mysql_real_escape_string() must be an instance of string, int given
Backtrace:
#0 [internal function]: mysql_real_escape_string(integer, resource)
#1 /var/www/wiki/w/includes/libs/rdbms/database/DatabaseMysqli.php(314): mysqli->real_escape_string(integer)
#2 /var/www/wiki/w/includes/libs/rdbms/database/DatabaseMysqlBase.php(602): DatabaseMysqli->mysqlRealEscapeString(integer)
#3 /var/www/wiki/w/includes/libs/rdbms/database/Database.php(1985): DatabaseMysqlBase->strencode(integer)
#4 /var/www/wiki/w/includes/libs/rdbms/database/DatabaseMysqlBase.php(618): Database->addQuotes(integer)
#5 /var/www/wiki/w/includes/libs/rdbms/database/Database.php(1621): DatabaseMysqlBase->addQuotes(integer)
#6 /var/www/wiki/w/includes/libs/rdbms/database/Database.php(2159): Database->makeList(array)
#7 /var/www/wiki/w/includes/libs/rdbms/database/DatabaseMysqlBase.php(486): Database->nativeReplace(string, array, string)
#8 /var/www/wiki/w/extensions/SemanticMediaWiki/src/SQLStore/TableIntegrityExaminer.php(154): DatabaseMysqlBase->replace(string, array, array, string)
#9 /var/www/wiki/w/extensions/SemanticMediaWiki/src/SQLStore/TableIntegrityExaminer.php(84): SMW\SQLStore\TableIntegrityExaminer->doCheckPredefinedPropertyIndices(DatabaseMysqli)
#10 /var/www/wiki/w/extensions/SemanticMediaWiki/src/SQLStore/Installer.php(115): SMW\SQLStore\TableIntegrityExaminer->checkOnPostCreation(SMW\SQLStore\TableBuilder\MySQLTableBuilder)
#11 /var/www/wiki/w/extensions/SemanticMediaWiki/includes/storage/SQLStore/SMW_SQLStore3.php(376): SMW\SQLStore\Installer->install(MysqlUpdater)
#12 /var/www/wiki/w/extensions/SemanticMediaWiki/includes/storage/SMW_Store.php(439): SMWSQLStore3->setup(MysqlUpdater)
#13 /var/www/wiki/w/includes/installer/DatabaseUpdater.php(472): SMW\Store::setupStore(MysqlUpdater, array)
#14 /var/www/wiki/w/includes/installer/DatabaseUpdater.php(437): DatabaseUpdater->runUpdates(array, boolean)
#15 /var/www/wiki/w/maintenance/update.php(172): DatabaseUpdater->doUpdates(array)
#16 /var/www/wiki/w/maintenance/doMaintenance.php(111): UpdateMediaWiki->execute()
#17 /var/www/wiki/w/maintenance/update.php(217): include(string)
#18 {main}
```
The same error with `mysql_real_escape_string()` happened before the update sctipt when I simply tried to access the wiki with the following in `/var/log/hhvm/error.log`:
```
Fatal error: Uncaught TypeError: Argument 1 passed to mysql_real_escape_string() must be an instance of string, int given in /var/www/wiki/w/includes/libs/rdbms/database/DatabaseMysqli.php:314
Stack trace:
#0 (): mysql_real_escape_string()\n#1 /var/www/wiki/w/includes/libs/rdbms/database/DatabaseMysqli.php(314): mysqli->real_escape_string()
#2 /var/www/wiki/w/includes/libs/rdbms/database/DatabaseMysqlBase.php(602): DatabaseMysqli->mysqlRealEscapeString()
#3 /var/www/wiki/w/includes/libs/rdbms/database/Database.php(1971): DatabaseMysqlBase->strencode()
#4 /var/www/wiki/w/includes/libs/rdbms/database/DatabaseMysqlBase.php(618): Database->addQuotes()
$5 /var/www/wiki/w/includes/libs/rdbms/database/Database.php(1618): DatabaseMysqlBase->addQuotes()
#6 /var/www/wiki/w/includes/libs/rdbms/database/Database.php(1296): Database->makeList()
#7 /var/www/wiki/w/includes/libs/rdbms/database/Database.php(1252): Database->selectSQLText()
#8 /var/www/wiki/w/includes/cache/MessageCache.php(480): Database->select()
#9 /var/www/wiki/w/includes/cache/MessageCache.php(403): MessageCache->loadFromDB()
#10 /var/www/wiki/w/includes/cache/MessageCache.php(325): MessageCache->loadFromDBWithLock()
#11 /var/www/wiki/w/includes/cache/MessageCache.php(927): MessageCache->load()
#12 /var/www/wiki/w/includes/cache/MessageCache.php(858): MessageCache->getMsgFromNamespace()
#13 /var/www/wiki/w/includes/cache/MessageCache.php(826): MessageCache->getMessageForLang()
#14 /var/www/wiki/w/includes/cache/MessageCache.php(767): MessageCache->getMessageFromFallbackChain()
#15 /var/www/wiki/w/includes/Message.php(1188): MessageCache->get()
#16 /var/www/wiki/w/includes/Message.php(950): Message->fetchMessage()
#17 /var/www/wiki/w/extensions/Gadgets/includes/MediaWikiGadgetsDefinitionRepo.php(113): Message->exists()
#18 /var/www/wiki/w/extensions/Gadgets/includes/MediaWikiGadgetsDefinitionRepo.php(83): MediaWikiGadgetsDefinitionRepo->fetchStructuredList()
#19 /var/www/wiki/w/includes/libs/objectcache/WANObjectCache.php(1004): Closure$MediaWikiGadgetsDefinitionRepo::loadGadgets()
#20 /var/www/wiki/w/includes/libs/objectcache/WANObjectCache.php(906): WANObjectCache->doGetWithSetCallback()
#21 /var/www/wiki/w/extensions/Gadgets/includes/MediaWikiGadgetsDefinitionRepo.php(91): WANObjectCache->getWithSetCallback()
#22 /var/www/wiki/w/extensions/Gadgets/includes/MediaWikiGadgetsDefinitionRepo.php(23): MediaWikiGadgetsDefinitionRepo->loadGadgets()
#23 /var/www/wiki/w/extensions/Gadgets/includes/GadgetRepo.php(36): MediaWikiGadgetsDefinitionRepo->getGadgetIds()
#24 /var/www/wiki/w/extensions/Gadgets/GadgetHooks.php(52): GadgetRepo->getStructuredList()
#25 /var/www/wiki/w/includes/Hooks.php(195): GadgetHooks::userGetDefaultOptions()
#26 /var/www/wiki/w/includes/user/User.php(1552): Hooks::run()
#27 /var/www/wiki/w/includes/user/User.php(5131): User::getDefaultOptions()
#28 /var/www/wiki/w/includes/user/User.php(2768): User->loadOptions()
#29 /var/www/wiki/w/includes/context/RequestContext.php(423): User->getOption()
#30 /var/www/wiki/w/includes/context/ContextSource.php(153): RequestContext->getSkin()
#31 /var/www/wiki/w/extensions/MobileFrontend/includes/MobileFrontend.hooks.php(587): ContextSource->getSkin()
#32 /var/www/wiki/w/includes/Hooks.php(195): MobileFrontendHooks::onSpecialPageBeforeExecute()
#33 /var/www/wiki/w/includes/specialpage/SpecialPage.php(515): Hooks::run()
#34 /var/www/wiki/w/includes/specialpage/SpecialPageFactory.php(576): SpecialPage->run()
#35 /var/www/wiki/w/includes/MediaWiki.php(283): SpecialPageFactory::executePath()
#36 /var/www/wiki/w/includes/MediaWiki.php(851): MediaWiki->performRequest()
#37 /var/www/wiki/w/includes/MediaWiki.php(512): MediaWiki->main()
#38 /var/www/wiki/w/index.php(43): MediaWiki->run()
#39 {main}
Exception handler threw an object exception: TypeError: Argument 1 passed to mysql_real_escape_string() must be an instance of string, int given in /var/www/wiki/w/includes/libs/rdbms/database/DatabaseMysqli.php:314
Stack trace:
#0 (): mysql_real_escape_string()
#1 /var/www/wiki/w/includes/libs/rdbms/database/DatabaseMysqli.php(314): mysqli->real_escape_string()
#2 /var/www/wiki/w/includes/libs/rdbms/database/DatabaseMysqlBase.php(602): DatabaseMysqli->mysqlRealEscapeString()
#3 /var/www/wiki/w/includes/libs/rdbms/database/Database.php(1971): DatabaseMysqlBase->strencode()
#4 /var/www/wiki/w/includes/libs/rdbms/database/DatabaseMysqlBase.php(618): Database->addQuotes()
#5 /var/www/wiki/w/includes/libs/rdbms/database/Database.php(1618): DatabaseMysqlBase->addQuotes()
#6 /var/www/wiki/w/includes/libs/rdbms/database/Database.php(1296): Database->makeList()
#7 /var/www/wiki/w/includes/libs/rdbms/database/Database.php(1252): Database->selectSQLText()
#8 /var/www/wiki/w/includes/cache/MessageCache.php(480): Database->select()
#9 /var/www/wiki/w/includes/cache/MessageCache.php(403): MessageCache->loadFromDB()
#10 /var/www/wiki/w/includes/cache/MessageCache.php(325): MessageCache->loadFromDBWithLock()
#11 /var/www/wiki/w/includes/cache/MessageCache.php(927): MessageCache->load()
#12 /var/www/wiki/w/includes/cache/MessageCache.php(858): MessageCache->getMsgFromNamespace()
#13 /var/www/wiki/w/includes/cache/MessageCache.php(826): MessageCache->getMessageForLang()
#14 /var/www/wiki/w/includes/cache/MessageCache.php(767): MessageCache->getMessageFromFallbackChain()
#15 /var/www/wiki/w/includes/Message.php(1188): MessageCache->get()
#16 /var/www/wiki/w/includes/Message.php(802): Message->fetchMessage()
#17 /var/www/wiki/w/includes/Message.php(902): Message->toString()
#18 /var/www/wiki/w/includes/exception/MWExceptionRenderer.php(246): Message->text()
#19 /var/www/wiki/w/includes/exception/MWExceptionRenderer.php(164): MWExceptionRenderer::msg()
#20 /var/www/wiki/w/includes/exception/MWExceptionRenderer.php(50): MWExceptionRenderer::reportHTML()
#21 /var/www/wiki/w/includes/exception/MWExceptionHandler.php(71): MWExceptionRenderer::output()
#22 /var/www/wiki/w/includes/exception/MWExceptionHandler.php(137): MWExceptionHandler::report()
#23 (): MWExceptionHandler::handleException()
#24 {main}
```
BTW, why is a deprecated function used at all?