WordPress putting the real time web to a halt?

by Christian Bolstad on 19 juli 2009

in In english, Internet, Wordpress

Alert to all bloggers!

We have a  serious problem:

In an attempt to reduce the numbers of outbound pings a new undocumented ”feature” was introduced in Wordpress 2.8 (this change is not mentioned in the WP 2.8 release notes).

Instead of notifing ping services every time a post is published or edited, pings are now sent once every hour, at the most. Every time a new post is published, Wordpress checks if there is a ping batch queued to be sent within the next hour.  If so, the ping is added to that batch. If there is nothing in the queue, a ping is sheduled to be sent after 3600 seconds (one hour).

Ping is not sent instantly. Instead it is added to the list of scheduled jobs.
From the Cron View-plugin panel: Ping is not sent instantly. Instead it is added to the list of scheduled jobs.

This has a huge inpact on the speed of post announcements to services such as Google Reader and is effectively sabotaging the steps towards real time search and initatives such as FeedBurner’s support for PubSubHubBub.

The solution:

If you want your posts to be announced as soon as possible and don’t want manually ping services such as Technorati, Twingly or FeedBurner you should install the Wordpress plugin MaxBlogPress Ping Optimizer. It will override the new default behavour. Not only does it instantly send a ping when a new post is published, it also corrects the initial problem that the new feature in Wordpress tries to solve, by not pinging when you publish future posts or edit previously published posts, as WordPress used to do by default.

I learned this while digging in the Wordpress code after debugging my FeedBurner connection to FriendFeed. Big thanks to Brett Slatkin/Google for the initial assistance and Nikke Lindqvist for proof-reading.

Update: Kristoffer Forsgren/Twingly notes that to be able to activate the plugin MaxBlogPress Ping Optimizer you need to sign up on the developers mailing list. To me, that is not a big problem (I publish my email adress publicly on this page anyway), but if you are paranoid: be warned.

Since the plugin is licensed under GPL, it is possible for whoever got the time to deal with it to ”clean” the plugin (drop me a mail if you do and I will link to your version here).

Update 2: If you think that the new setup is flawed, please make yourself heard and leave  a comment at the Wordpress development ticket system (thanks Pelle Wessman!).

Update 3: Denis de Bernardy, the developer who submitted the patch that changed the behaviour of Wordpress’ pinging, has left a comment in which he dismiss my critique as ranting. Denis says that this change are off less importance, and that it easily can be overridden by third party plugins. Commenters at Digg and Reddit are saying things like: ”If once per hour isn’t real-time enough for you, maybe you should be using Twitter!” and ”If you think the world cannot possibly wait an hour for your next post…you are probably wrong”.

Clearly these people don’t value the new web and it’s rapidness as I do. I even doubt that we see the same web. When I look at the blogosphere I see a revolutionary democratization of the media landscape. In  the last decade people all over the world have become their own publishers and  have connected themself with other blogs and portals. In recent years, newspapers has showed inbound links with offsite comments using services like Twingly. During the last year big players like Google and FriendFeed has worked together and established near real time announcements with PubSubHubBub. All this communcation between different platforms could not be possible without rapid pingbacks. Pings simply need to be sent out from blogs as soon as possible.

If the change in Wordpress itself is one problem, the lack of information of it is another. People can not, like Denis suggest, change the behavior of Wordpress with a plugin if they don’t know that they need to. Since this change was not clearly communicated from the head developers I can only assume that the patch was accepted by a misstake in a stressed situation before the release of Wordpress 2.8.

I would love get some official comments from Automattic (or some of the ”victims” like FeedBurner or Twingly ), but I guess I have to wait until monday for that.

Anyway, Pelle Wessman has submitted a counter-patch that change this behavior , it will be exciting to see how it is recived by the Wordpress community.

Update 4: Wordpress core developer Ryan has reverted the code back to the default ”ping often” behaviour. It look like everything will be as usual in the 2.8.3 release. More on this later on …

  • @frankhmadsen Her var den: http://bit.ly/CwPI2


    This comment was originally posted on Twitter

  • That’s a pretty strange WP ”feature” -> WordPress putting the real time web to a halt? http://twurl.nl/d8fjrh


    This comment was originally posted on Twitter

  • As I wrote about recently, delays in pings of updates to posts can be a liability.
    Stories can change in minutes, and this titles need to be updated, an pings sent, otherwise meme trackers will have the wrong headlines.

    If people continue retweeting the wrong story because WP refuses to update Tweetmeme, there is a problem, as it is not expected behaviour.

    In many ways it is a bigger problem constantly changing date headers, as that can annoy your subscribers.

    I would suggest not using MaxBlogPress if you blog about anything news related.

    Also add to whis Feedburner delay - whilst they will update your cached feed almost immediately, they make up their own mind on further notifications.
  • RT @tdhedengren: #WordPress no longer pings directly, it pings by the hour instead. More here: http://bit.ly/sPfHO


    This comment was originally posted on Twitter

  • RT @tdhedengren: #WordPress no longer pings directly, it pings by the hour instead. More here: http://bit.ly/sPfHO


    This comment was originally posted on Twitter

  • Intressant och rätt störande:

    RT @tdhedengren: #WordPress no longer pings directly, it pings by the hour instead. http://bit.ly/sPfHO


    This comment was originally posted on Twitter

  • Why? RT @tdhedengren #WordPress no longer pings directly, it pings by the hour instead. This change makes no sense to me http://bit.ly/sPfHO


    This comment was originally posted on Twitter

  • #WordPress no longer pings directly, it pings by the hour instead. This change makes no sense to me. More here: http://bit.ly/sPfHO


    This comment was originally posted on Twitter

  • WordPress 2.8 will not ping instantly. Putting the real time web to a halt? http://tr.im/taAd


    This comment was originally posted on Twitter

  • Vigtigt for WordPress-brugere: http://bit.ly/i7rDz

    Tak til @demib for linket


    This comment was originally posted on Twitter

  • RT @demib: WordPress putting the real time web to a halt? http://twurl.nl/d8fjrh


    This comment was originally posted on Twitter

  • Interesting – RT @demib: WordPress putting the real time web to a halt? http://twurl.nl/d8fjrh


    This comment was originally posted on Twitter

  • WordPress putting the real time web to a halt? http://twurl.nl/d8fjrh


    This comment was originally posted on Twitter

  • @agaton De vill ha kommentar från Twingly rörande detta, http://bit.ly/zjFn4

    :)


    This comment was originally posted on Twitter

  • @Denis Thank you for the explanation here. Apperantly we have different opinions about this and that's ok.

    I will never agree with you because I think that direct ping is crucial for a blog platform like Wordpress.

    As you probably have seen here this is quite important for many people. Regarding the "rant" language that's actually a sign when people are upset and quite angry. I don't say it's ok but it's an explanation.

    One thing though that I've learned personally it's that I have to be more aware of the changes made to Wordpress. I'm not familiar at all with the ticket system but seems that I have to learn it.

    So yes - you will see more of me there :)
  • Why is it so hard for people to see that it’s a problem for a news blog to get their posts indexed one hour later than their competitors? No, I’m not talking about cat blogs here…


    This comment was originally posted on Reddit

  • RT @tweetmeme WordPress putting the real time web to a halt? | En sur karamell http://twurl.nl/d8fjrh (via @jensulrik)


    This comment was originally posted on Twitter

  • @Simon: Yes. I disagree.

    WP is an open source software. Leaving Ryan and Andrew aside, all of the contributors offer patches on a voluntary basis. We don't get paid for doing so.

    If an end user with no coding skills can't write a patch, he can always submit a comment in trac, and suggest things to be done otherwise. That's fine.

    The same from a coder is not fine. Add an alarmist post on top, and things become intolerable. If a coder isn't not happy with a behavior, he can and should write a patch. If he doesn't, he should put up with the behavior.

    As to why this wasn't added in the release notes, it's a Wiki. It occurred to nobody who contributed to them (without getting paid either) that it was worth a mention. Go right ahead and add the note yourself if you think it's so important.
  • RT @tweetmeme WordPress putting the real time web to a halt? | En sur karamell http://twurl.nl/d8fjrh


    This comment was originally posted on Twitter

  • When major news sites start relaying pings, like Twingly do for example, a ping delay of an hour is a real issue. We all want real time search these days and not the crappy, half broken and limited search that Twitter gives us, but full a full fledged picture of what is really going on in the blogs, and in commentary to the blogs. Then an hours delay is 3599 more seconds than I am prepared to wait.Now there has been patches to fix this, and dubious plugins. But they shouldn’t be needed. Wordpress shouldn’t put a build-in delay on the pings, and espesially not without informing people about it.


    This comment was originally posted on Digg

  • What’s the problem here? They even provided a solution if you want to bypass this.


    This comment was originally posted on Reddit

  • Just replied @ddebernandy comment on @bolstad blog post (http://tr.im/t5gX). In Sweden the #Wordpress change is a big issue.


    This comment was originally posted on Twitter

  • When I see Denis de Bernandy comment I get a bit confused.

    I have not followed every change for Wordpress and the development for 2.8, but it's quite clear that there is an attitude of "Just fix it, stupid" here that I don't like.

    Well - everyone does not know how to exactly fix this. Everyone does not read this blog. I had no idea of this change before Christian Bolstad brought it up.

    As Christian said - this is not unimportant because it is important for the real time web.

    Here in Sweden we have a lot of bloggers (some figures say 350 000 active blogs for a population of 9 million). A lot of bloggers with Wordpress and most of them have no clue how to add a plugin with a "trivial 3-liner".

    We also have a lot of services depending on direct ping like Knuff.se, Aitellu, Twingly, Bloggportalen - services that almost every major newspaper in Sweden counts on. If you don't know every major newspaper have blog comments to their articles with direct link to the blogs. A bit reason why blogging is big in Sweden.

    So if you change this to a 1 hour delay - well, for important and for fast news your blog comments will be delayed.

    I would say that this is not good - anyone disagree?
  • Call the WHAAAAAAMBULANCE!!!!!


    This comment was originally posted on Reddit

  • @Goblinkiller:Good on you for submitting a patch.


    This comment was originally posted on Digg

  • There are sometimes a reason to throttle the ping – but for most blogs that throttling can be very small and for no blogs is there a reason for it to be one hour.And yes – I know the reasons and the history – and now I’ve also submitted a patch for it ;)


    This comment was originally posted on Digg

  • I truly fail to see the point of your rant. Overriding the behavior in a plugin is a trivial 3-liner.

    if (wp_next_scheduled('do_generic_ping') ) {
    wp_clear_scheduled_hook('do_generic_ping');
    do_action('do_generic_ping');
    }
  • Obviously there was a reason.In fact, it’s stated here:http://core.trac.wordpress.org/changeset/11410That it fixes problem #6698 here:http://core.trac.wordpress.org/ticket/6698Stop making mountains out of molehills. As much as you insist that there is "no reason" and there aren’t "any drawbacks"… I don’t see "any drawbacks" to pinging once an hour. And apparently neither do the Wordpress developers.If you want that changed, either use the hack in this article, change it yourself, or contact the devs. This isn’t a conspiracy.


    This comment was originally posted on Digg

  • All of the web are moving to become more realtime and a blog tool like WordPress can be practically realtime without any drawbacks – no reason to not let it be that


    This comment was originally posted on Digg

  • Nope – it’s a bugfix that has a bug in it – if all bugfixes would be mention in the release notes it would’nt be useful – instead they’re linking to the ticket list and changelog.


    This comment was originally posted on Digg

  • If once per hour isn’t real-time enough for you, maybe you should be using Twitter :|99% of the posts made are NOT important enough to justify instant notification.


    This comment was originally posted on Digg

  • I fail to see the problem here. Are all the FIRST P0ST!!1!ers flipping out because they now have to manually monitor everything they want to FIRST P0ST!!1! or something? I can see no situation where being notified of your blog posts an hour or so after they occur would be a serious issue.


    This comment was originally posted on Reddit

  • If you think the world cannot possibly wait an hour for your next post…you are probably wrong


    This comment was originally posted on Reddit

  • @bolstad I think it’s @ddebernardy who created the patch you’re mentioning in http://bit.ly/sPfHO


    This comment was originally posted on Twitter

  • OH NO our precious posts!


    This comment was originally posted on Reddit

  • RT #WordPress putting the real time web to a halt? http://bit.ly/1aDH9e


    This comment was originally posted on Twitter

  • RT #WordPress putting the real time web to a halt? http://bit.ly/1aDH9e


    This comment was originally posted on Twitter

  • WordPress putting the real time web to a halt? http://bit.ly/1aDH9e


    This comment was originally posted on Twitter

  • RT @techdelight WordPress putting the real time web to a halt? #technology http://bit.ly/OWwT3


    This comment was originally posted on Twitter

  • RT @agaton: RT @tweetmeme WordPress putting the real time web to a halt? | En sur karamell http://twurl.nl/d8fjrh


    This comment was originally posted on Twitter

  • WordPress putting the real time web to a halt? | En sur karamell http://twurl.nl/d8fjrh (via @joinsimon)


    This comment was originally posted on Twitter

  • WordPress putting the real time web to a halt? #technology http://bit.ly/OWwT3


    This comment was originally posted on Twitter

  • Sick that Wordpress doesn’t mention this in their release of Wordpress 2.8.


    This comment was originally posted on Digg

  • Shared: WordPress putting the real time web to a halt? http://bit.ly/zjfEr


    This comment was originally posted on Twitter

  • Thanks for highlighting this !
  • Alert all bloggers! #wordpress 2.8 Putting The Real Time Web To A Halt! #wp – http://tr.im/t1Xa by @bolstad


    This comment was originally posted on Twitter

  • RT @tweetmeme WordPress putting the real time web to a halt? | En sur karamell http://twurl.nl/d8fjrh


    This comment was originally posted on Twitter

  • @bgardner did you know?

    RT @MattKern Alert all bloggers! #wordpress 2.8 Putting The Real Time Web To A Halt! #wp – http://tr.im/t1Xa


    This comment was originally posted on Twitter

  • RT @jocke: RT @bolstad: Alert all bloggers! #wordpress 2.8 Putting The Real Time Web To A Halt! #wp – http://tr.im/t1Xa


    This comment was originally posted on Twitter

  • Alert all bloggers! #wordpress 2.8 Putting The Real Time Web To A Halt! #wp – http://tr.im/t1Xa (via @bolstad)


    This comment was originally posted on Twitter

  • RT @nikkelin: RT @joinsimon: [SWE] – Wordpress 2.8 smygändrar utan att säga till (!) http://tr.im/t24D (apropå http://tr.im/t25w)


    This comment was originally posted on Twitter

  • RT @joinsimon: [SWE] – Wordpress 2.8 smygändrar utan att säga till (!) http://tr.im/t24D (apropå http://tr.im/t25w)


    This comment was originally posted on Twitter

  • @PHOTOMATT Why is Wordpress 2.8.x pinging Twingly etc first 1 h after the post is published? http://tr.im/t20K


    This comment was originally posted on Twitter

  • RT @bolstad: Alert all bloggers! #wordpress 2.8 Putting The Real Time Web To A Halt! #wp – http://tr.im/t1Xa


    This comment was originally posted on Twitter

  • WordPress putting the real time web to a halt? | En sur karamell http://twurl.nl/d8fjrh (via @bolstad)


    This comment was originally posted on Twitter

blog comments powered by Disqus

Previous post:

Next post: