Wandering Thoughts archives


Google Desktop and conditional GET (part 2)

When I start grumpily thinking of ways to punish a program's bad behavior is about when it sinks in that I don't like it. Which means that Google Desktop has a problem.

Back in December I wrote about Google Desktop and conditional GET and concluded that I didn't have enough evidence to really know what the heck was going on. Well, I have several months more data and more people using Google Desktop against me, and I've reached a conclusion: Google Desktop doesn't do conditional GET.

Most of the time it doesn't even bother trying, never sending If-Modified-Since: and If-None-Match: headers despite making repeated requests for the same Atom feed. A few clients sent the headers, but never updated them when DWiki returned updated information. One client has been sending an I-M-S header of 'Sun, 19 Feb 2006 10:44:42 GMT' for the past month, all the while getting updates; interestingly, it did change the If-None-Match: header, but now hasn't updated it since February 25th.

Here's a table about the requests since February 21st:

Total requests 304 result 200 result Even tried
3180 5 3175 715

(The 'even tried' category is any request that had an I-M-S or I-N-M, no matter how crazy.)

These are not casual visitors; 19 different IP addresses requested at least one feed ten times or more. The most prolific one asked for one feed 597 times, and never included an I-M-S or I-N-M header.

Not supporting conditional GET when fetching syndication feeds is bad. Not supporting it in something you expect to be widely deployed is really bad. I really had hoped for more from Google.

(As always, the disclaimer: I like having readers and we have plenty of bandwidth. This is absolutely not a request for people using Google Desktop to stop reading WanderingThoughts.)

web/GoogleDesktopAndCondGetII written at 02:55:31; Add Comment

Page tools: See As Normal.
Login: Password:
Atom Syndication: Recent Pages, Recent Comments.

This dinky wiki is brought to you by the Insane Hackers Guild, Python sub-branch.