Support » Plugin: Yoast SEO » Update 14.1 with problems

  • Resolved magaworks

    (@magaworks)


    It is a Staging site. And I got the following error after updating the plugin:
    “DeleteDuplicateIndexables – Error executing ‘query’ with: DELETE wyi FROM wp_yoast_indexable wyi INNER JOIN wp_yoast_indexable wyi2 WHERE wyi2.object_id = wyi.object_id AND wyi2.object_type = wyi.object_type AND wyi2.id < wyi.id; Reason: Lock wait timeout exceeded; try restarting transaction”

    I am on Siteground so I do not believe there is any problem with permissions. “Lock wait timeout exceeded;” means I need to change which PHP variable?

    And then the final sentence “try restarting transaction”. Where can I restart it?

    Can you help me figure out What to do next?

Viewing 15 replies - 1 through 15 (of 24 total)
  • Plugin Support martijnvaneeghem

    (@martijnvaneeghem)

    Hi @magaworks ,

    We’re really sorry that the update to our most recent version is causing you these problems.

    Can you confirm whether or not the update was successful?

    Regarding the required permission. Can you confirm that you do have the correct permissions? Yoast SEO requires the following permissions:
    ALTER, CREATE, DELETE, INDEX, INSERT, SELECT, and UPDATE

    If you are using our Yoast Test Helper plugin, then we also require the DROP permission.

    You can also use this Yoast Test Helper plugin to recreate the indexables table. In order to do so, please take the following steps:
    1. Install & activate the Yoast Test Helper plugin

    2. On your WordPress admin page, go to Tools -> Yoast Test
    
3. Hit the “Reset indexables & migrations” button

    4. Try the ‘Speed up your site now’ again via the Yoast SEO -> Tools menu

    My DB user has All Permissions. Is this what you need to know or is it something else?
    As for the error, I do not understand it. After deactivating child theme and all plugins there are errors remaining in the debug log coming from Yoast indexable table.
    But I finally was able “Reset Indexables & Migration” and start the indexation process again. Now I have to wait because the site has 900 products and translations.

    But seems to be fine.

    Plugin Support Carl B

    (@devnihil)

    The database permissions we are referring to are the privileges that are granted to a database user, and dictate which operations they can perform on a database. You can see an example of these here.

    Please let us know whether the issue is resolved once you have completed the re-indexation.

    +1 for me: Version 14.1

    Hosted on SiteGround

    WordPress database error Lock wait timeout exceeded; try restarting transaction for query UPDATEwp_yoast_indexable

    Yoast SEO had problems creating the database tables needed to speed up your site.

    Please read this help article to find out how to resolve this problem.

    Your site will continue to work normally, but won’t take full advantage of Yoast SEO.

    Show debug information
    DeleteDuplicateIndexables - Error executing 'query' with: DELETE wyi FROM wp_yoast_indexable wyi INNER JOIN wp_yoast_indexable wyi2 WHERE wyi2.object_id = wyi.object_id AND wyi2.object_type = wyi.object_type AND wyi2.id < wyi.id; Reason: Lock wait timeout exceeded; try restarting transaction

    This comes after the Yoast update “updating database indexing” fiasco. Very disappointing

    • This reply was modified 5 months, 1 week ago by Brian_Milnes.

    Hello i can confirm this is an issue. Also happened with a website i manage and i verified with the hosting provider that user has all the required perms and also tried running the query directly from PMA with same results.

    BR,
    Alexandros

    Ok, So After updating all websites I manage with Yoast installed I will probably have this problem. This is a very big problem…

    @yoast Team: How about an update to correct this problem and give us peace of mind when updating the plugin?
    Thanks

    Plugin Support marcanor

    (@marcanor)

    Hi @magaworks , @digiwebgreece, @brian_milnes ,

    First, we want to apologize for any problems caused by the update to 14.1. Please know we are working hard on resolving these issues.

    The DeleteDuplicateIndexables error occurs when Yoast SEO plugin cannot complete the relevant MySQL query to remove the duplicate indexables objects from database and as such, it throws the relevant error. Can you please try the steps below and let us know if the problem resolves?
    1) Install the Yoast Test Helper plugin
    2) Go to the Tools → Yoast Test → Yoast SEO and click on the “Reset indexables tables & migrations” button
    3) Go to SEO → Tools and run the “Start processing and speed up your site now” function again.

    For sites with more than 10,000 posts, instead of step 3) above, we’d advise using the WP CLI command to do the indexation on the server. You can read more about this here: https://yoa.st/wp-cli-index

    Can you please let us know if this resolves the problems?

    I have 35,000+ EDD Download CPT posts

    I am running on shared service without access to the command line so cannot install via a PHAR file.

    I’ll therefore have to leave others to debug…

    As I already said here I had problema with running thise tests:
    After installing the Yoast Test Helper plugin and clicking on the “Reset indexables tables & migrations” button it did nothing but load whatever for a long time until I left the page.
    I had to deactivate everything and then run step 2).
    Only then was I able to “Reset indexables tables & migrations”.
    after that I tried activating everything again (theme and Plugins) and ran step 3) with success.
    The site has more than 900 product, all translated to English and French.
    And strangely this time it was quite quick to process Indexables.
    But I made all of this in a staging site. Now I am afraid to run it on the live site.

    Because the first time I updated the live site to version 14.0 Processing Indexables took hours and I was afraid to stop the proccess and break the live site, and also It did not come to an end the right way.
    I will check with my hosting if I can transfer to the online site only the changes in the Plugin Yoast and its tables, instead of running the update for 14.1 because I am afraid to have to deactivate all plugins and theme to correct the problem. And that is a huge problem in a live site.

    Thanks

    @marcanor I just completed the process you described successfully.

    I remember before the issue the bar went over fro 7000 objects to 14k+ and it never ended. I hope this helps you solve this issue in the future updates.

    Thank you very much!

    My re-Indexing (v. 1.4) showed 265,000 from 35,000 records
    Before timing out

    @marcanor
    A colleague of mine found a solution (one of the sites we host couldn’t get this statement to finish in over an hour and had 290,000+ records): use exists.

    delete from wp_yoast_indexable
    where exists (
        select 1 from wp_yoast_indexable wyi2
        where wyi2.object_id = wp_yoast_indexable.object_id
        and wyi2.object_type = wp_yoast_indexable.object_type
        and wyi2.id < wp_yoast_indexable.id
    );

    using where exists() the statement finished in 6 seconds.

    Also, it is a MySQL limitation you can’t use a table alias with a DELETE, which is why [table prefix]_yoast_indexable has to be fully written out in the exists clause, instead of using an alias wyi.

    • This reply was modified 5 months ago by Jan Reilink. Reason: query > statement, code tags around where exists()
    • This reply was modified 5 months ago by Jan Reilink. Reason: in stead > instead
    Plugin Support Carl B

    (@devnihil)

    @digiwebgreece Thanks for confirming that you were able to complete the indexing successfully.

    @brian_milnes @magaworks We apologize for the difficulties that you are experiencing with the plugin.

    If you find that the indexing process increases your server load too much or creates a performance issue, you can also opt to dismiss the indexing button. The plugin will then slowly perform the migration as your site starts getting traffic. Any URL on your site that gets visited will be added to the indexables tables.

    valeriovych

    (@valeriovych)

    Hi! The mySQL process loaded the processor at 100% for a week. Server’s LA reached 1.9, the delay when opening the site reached 15 sec. But just one query was actually executed: DELETE wyi FROM wp_yoast_indexable wyi INNER JOIN wp_yoast_indexable wyi2 WHERE wyi2.object_id = wyi.object_id AND wyi2.object_type = wyi.object_type AND wyi2.id < wyi.id;
    Restart plugin was no effect, after reactivate plugin query loaded my server again.
    So I need to execute TRUNCATE TABLEwp_yoast_indexable in phpMyadmin.

    Guys, 400000 records in table! For personal blog with ~200 pages it’s original way to speed up the site.

    I have LA just 0.25 now and page loading speed less then 1 sec. That’s how you need to optimize the speed of the site.

    Plugin Support Pcosta88

    (@pcosta88)

    @valeriovych

    We apologize for the difficulties the plugin is causing for you. We would love to investigate the issue you are having. Per the forum guidelines, we ask that you please create separate topics for the issues you are experiencing.

    That way it’s easier to track issues and provide assistance on your specific concerns on your specific site. Plus, you will get your own alerts for the issue rather than someone else’s. You may make a new topic here: https://wordpress.org/support/plugin/wordpress-seo/#new-post.

    Thanks!

Viewing 15 replies - 1 through 15 (of 24 total)
  • You must be logged in to reply to this topic.