Skip to content

Get rid of sleep pauses in process #144

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
Rarst opened this issue Dec 18, 2014 · 7 comments
Open

Get rid of sleep pauses in process #144

Rarst opened this issue Dec 18, 2014 · 7 comments

Comments

@Rarst
Copy link
Contributor

Rarst commented Dec 18, 2014

I tried several times and cannot trace back to technical reasons for sleep( 3 ) every ten items.

Can someone explain what exactly it is doing? Farthest I got @rmccue said @paulgibbs (?) added it to handle race condition (??).

@Rarst Rarst self-assigned this Dec 18, 2014
@atimmer
Copy link
Member

atimmer commented May 3, 2015

Do we really need to have a sleep of 3 seconds to stop this race condition? Completely removing the sleep might break something. But if we put it at 1 second it will run a little bit faster if it parses without the --quick flag.

@Rarst
Copy link
Contributor Author

Rarst commented May 3, 2015

Personally I am yet to see something break with quick run. And yet to hear someone coherently remember and explain which race condition this is supposedly handling. :)

@atimmer
Copy link
Member

atimmer commented May 3, 2015

I have no objection to removing the sleep and I have never had any problems with quick runs, it's just that I forget the quick flag sometimes.

@paulgibbs
Copy link
Contributor

Ahoy. So, originally, @rmccue had built the first version of this parser, and for some reason I can't remember, I didn't think it was very good, so I built my own version inspired by Ryan's, for some stuff on WordPress.com. I introduced the sleeps to work around some interesting issues that the parser had, at that point in time, on the WordPress.com environment (I ran it on a huge chunk of code to test it, and it caused a lag in the replication of that database, which awoke the scary systems team!). My fork was eventually merged back into this project or replaced it (again, I can't remember), and that's the story of the sleep.

@DrewAPicture
Copy link
Member

Attached PR: #200 simply changes the $skip_sleep parameter defaults to true. We could also look at some kind of constant to force it and/or support back-compat, but this accomplishes the basic spirit of the request.

@iandunn
Copy link
Member

iandunn commented Sep 6, 2022

The sleep is also needed on w.org to avoid db replication lag.

@dd32
Copy link
Member

dd32 commented Jan 16, 2024

--quick is the default when it's used with the developer.wordpress.org theme on a local environment:

https://github.com/WordPress/wporg-developer/blob/83844d1854c8b6ed64eb02e100f50929ea5bb011/source/wp-content/themes/wporg-developer-2023/inc/cli-commands.php#L168-L171

Bringing something like that over here would be reasonable.

(You'll never replicate any issues that this was trying to solve, unless you're using a replicated mysql environment)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants