CtrlZvi added a comment.

  Digging a bit more, the type mismatch comes from loading the wbt_type table 
into the cache using the NameTableStore::loadTable() function. This function 
stores the returned values into an associative array by their key, and although 
PostgreSQL, MySQL, and SQLite prior to PHP 8.1 returned the ids as strings, the 
use of them as keys in the associate array results in them being cast to int 
<https://www.php.net/manual/en/language.types.array.php>. This is almost 
certainly why DatabaseTermInLangIdsAcquirer::acquireTermInLangIdsInner was 
casting back to a string.
  
  It seems like this might be caused by using PDO for SQLite and not the 
SQLite3 type, though I don't know if that type would return strings or not.

TASK DETAIL
  https://phabricator.wikimedia.org/T316487

EMAIL PREFERENCES
  https://phabricator.wikimedia.org/settings/panel/emailpreferences/

To: CtrlZvi
Cc: CtrlZvi, Aklapper, Astuthiodit_1, karapayneWMDE, Invadibot, maantietaja, 
ItamarWMDE, Akuckartz, darthmon_wmde, Nandana, Lahi, Gq86, GoranSMilovanovic, 
QZanden, LawExplorer, _jensen, rosalieper, Scott_WUaS, Wikidata-bugs, aude, 
waldyrious, Lydia_Pintscher, Nikerabbit, Mbch331
_______________________________________________
Wikidata-bugs mailing list -- wikidata-bugs@lists.wikimedia.org
To unsubscribe send an email to wikidata-bugs-le...@lists.wikimedia.org

Reply via email to