interconnectit / Search-Replace-DB

This script was made to aid the process of migrating PHP and MySQL based websites. Works with most common CMSes.
https://interconnectit.com/products/search-and-replace-for-wordpress-databases/
GNU General Public License v3.0
3.99k stars 850 forks source link

v4.1.2 fails on one table where 3.1.0 succeeds #350

Closed jefrey1f closed 3 years ago

jefrey1f commented 3 years ago

4.1.2 fails on one specific table (attached) but reverting to v3.1.0 works just fine. The error alert is:

The script encountered an error while running an AJAX request. If you are using your hosts file to map a domain try browsing via the IP address directly. If you are still running into problems we recommend trying the CLI script bundled with this package. See the README for details.

I've attached an export of the failing table. I have renamed the table for testing purposes (this was the wp_usermeta table) and randomized some user data (while maintaining serialization lengths) but otherwise have not modified the table. Any advice is appreciated. Thanks -jeff

wp_jlrtest.zip

Blindmikey commented 3 years ago

I'm having the same issue. Reverting to 3.1.0 succeeds.

burgiuk commented 3 years ago

We are also getting a similar issue. When we tried the CLI version we got the issue mentioned in #348.

I ran 3.1 on the CLI and it worked perfectly. The debug command didn't shed any light on the exact string that was failing.

gianluigi-icit commented 3 years ago

the 3.1 has a more bare bone replacement system, the version 4.x is more careful in changing the database. Some plugins like to serialise classes and weird data in wp_options and you cannot predict what's inside for a search/replace operation. Another tool like wp-cli can avoid this but it loads the entire wordpress app in memory for the operation, try that :)

Blindmikey commented 3 years ago

3.1.0 passes on Yoast SEO's serialized classes too, so it seems safe to stick with 3.1.0 for the time being. Thank you for all your hard work.