Driven 2 Services Posted June 12, 2023 Posted June 12, 2023 (edited) I've run into an issue with SMF imports. I do one import from an SMF database. Works. Then I do a 2nd import from another SMF database. During the post rebuild, the following error is thrown: TypeError: Unsupported operand types: string - string (0) #0 /var/www/applications/convert/sources/Software/Forums/Smf.php(218): IPS\convert\Software\Core\_Smf::fixPostData() #1 /var/www/applications/convert/extensions/core/Queue/RebuildContent.php(219): IPS\convert\Software\Forums\_Smf::fixPostData() #2 /var/www/system/Task/Task.php(47): IPS\convert\extensions\core\Queue\_RebuildContent->run() #3 /var/www/applications/core/modules/admin/system/background.php(87): IPS\_Task::runQueue() #4 /var/www/system/Helpers/MultipleRedirect/MultipleRedirect.php(93): IPS\core\modules\admin\system\_background->IPS\core\modules\admin\system\{closure}() #5 /var/www/applications/core/modules/admin/system/background.php(138): IPS\Helpers\_MultipleRedirect->__construct() #6 /var/www/system/Dispatcher/Controller.php(107): IPS\core\modules\admin\system\_background->process() #7 /var/www/applications/core/modules/admin/system/background.php(42): IPS\Dispatcher\_Controller->execute() #8 /var/www/system/Dispatcher/Dispatcher.php(153): IPS\core\modules\admin\system\_background->execute() #9 /var/www/admin/index.php(13): IPS\_Dispatcher->run() #10 {main} Edited June 12, 2023 by Driven 2 Services double forward slashes removed.
Marc Posted June 13, 2023 Posted June 13, 2023 We would need to look further into this for you, however the access details on file appear to be incorrect or missing. Could you please update these details by visiting your client area, selecting the relevant purchase, then clicking "Review/Update Access Information" under the "Stored Access Information" section. We look forward to further assisting you.
Driven 2 Services Posted June 15, 2023 Author Posted June 15, 2023 I'll need to get back to you on that after this conversion. I couldn't wait, and moved on to a work around, so the SMF import session is no longer in the Invision install. After this conversion I'll see about replicating it and making that available to you. I would take time to setup access, since the development server would need firewall changes, and an additional account setup with access to the development area access. Thanks.
Stuart Silvester Posted June 15, 2023 Posted June 15, 2023 I did take a look at the code, nothing immediately stood out to me that could cause this. Please do let us know if you can reproduce it again.
Driven 2 Services Posted June 26, 2023 Author Posted June 26, 2023 I think I narrowed it down to bad source data because I initially had to set sql_mode to compatibility mode, or the imports failed early on. I fixed that, but I would not be surprised by other source problems. For example, this particular db is using Latin1, but also has UTF8MB4 characters in it - so most posts convert properly but there's the occasional post with mangled characters. Any attempt to use character set conversion queries or Invision's tools to fix those, ends up mangling the others. If Latin1 is used during import, one set of posts ends up with mangled characters, if UTF8MB4 is used then another set gets mangled. A solution was importing Latin1 followed by a a set of find/replace queries - not how I'd do it if I had all the time in world - but it covered 99.9% of the instances so good enough. It doesn't help that the SMF files are an earlier version than the SMF database is! (I've seen worse though) I would say bad source data is one of my biggest conversion headaches. If I can narrow it down further I'll let you know, but at this point it's unlikely to be worth the effort. Thanks. Joel R 1
Recommended Posts