I want to apologize for the spotty gravatar syncing that has been occurring over the last two weeks. I’ve finally identified and fixed the bug that was causing the problem and your gravatar selections should propagate correctly now. I will go back and re-sync everyone just to make sure all the failed syncs get done.
The way Gravatar 2.0 deals with serving gravatar images is a multi-step process. When you assign a gravatar to an email address, the system takes your image, creates 80 scaled images from that (from 1×1 to 80×80) and puts them into a directory structure that will allow the gravatar serving lighttpd servers to serve them directly as files. Once the directory structure is created, it is tarred and gzipped to create a single compressed file that represents the images for a specific email address (based on the sha1 of the address). This file is then uploaded to Amazon S3 for distribution to the gravatar serving servers (of which there are 2). In addition, a message is placed on a queue for each server (via Amazon SQS). This completes step 1. On each gravatar serving server there is a process that pops messages off its queue, downloads the stated file from S3, and extracts it into the correct location. It is then available for serving to the internet. This completes step 2.
The problem was that the library I am using to interface with S3 (AWS/S3 in Ruby) had a bit of a quirk that seemed like it should have worked, but didn’t. For the benefit of others, I present the problem code and the solution.
The original, offending code:
AWS::S3::Base.establish_connection!( :access_key_id => '***********************', :secret_access_key => '**************************************' ) bucket = AWS::S3::Bucket.find('gravatar') archive = bucket[sha1 + ".tar.gz"]
This code connects to the S3 service, gets the ‘gravatar’ bucket, then grabs the file from it. Simple enough, but misleading. When you get the bucket, only the first 1000 items within it are returned (a byproduct of the Amazon S3 API). Then, when you try to grab your file from the bucket, the file will be returned only if the item was within those 1000 items. This explains why Gravatar worked fine at first, then degraded to where fewer and fewer successful syncs where happening. It’s a devious bug to detect, and the documentation was not forthcoming on why this might be happening.
If you know that the object you’re interested in is in S3 but it can’t be found during a lookup, you’ll want to fetch the item directly, thereby eliminating the problem of a maximum of 1000 returned items. In retrospect, this is obviously the more desirable way to do things.
Here is the fixed code:
AWS::S3::Base.establish_connection!( :access_key_id => '***********************', :secret_access_key => '**************************************' ) archive = AWS::S3::S3Object.find(sha1 + ".tar.gz", 'gravatar')
So, if your gravatar has not been appearing properly, you can reassign it to your email address and it will propogate now. As I said before, I will push the entire contents of S3 onto the queues to make sure everyone is up to date.
I’m very sorry this problem took so long to fix, and I understand your frustration. I hope you will once again be happily gravataring!
190 responses to “Gravatar Properly Syncing Again”
Thanks for the response, Tom. I re-associated my avatar and am seeing if it’s working now.
alright then the Blue G YET AGAIN
Thanks Tom! Mine has been working smoothly since Gravatar 2.0 was launched. I hope this is really the end of the problems so everyone can go on with their lives again.
The Syncing servers are fixed but still catching up from being down before. I’ll post another comment once they’ve caught up. Looks like I need *another* server.
Thank you Tom for the email and update
It is working fine now 🙂
Why is the URL still with .php? And MD5? Shouldn’t there be a new URL?
Thanks for the “catching up comment” becaseu I was wondering
Finally I didn’t want to have to send Bokeem Woodbine to your house!!!
Looking forward to seeing my avatar!
Thanks for fixing it, Tom.
Hope it works now. Just test.
Great! Refreshed my WordPress plugin cache and it came straight up. Great job! Thank you for having made a very cool web feature!
Tom, I’m still seeing an old icon that’s long-since been deleted. Have just tried re-confirming via the admin again. If it works you should see a light bulb.
This is a test to see if my Gravatar will finally work.
Testing, 1, 2, 3.
Help! My avatar is still not showing up. It is rated “G”. It has a green square around the picture both below the email address and around the address with the picture. The email address matches exactly on the site where I want the avatar. What am I doing wrong? Or is it still slow from the earlier problems???
Testing 1,2,3 🙂
Testing testing, 1 2 3 🙂
WHY DAMN MY GRATAVAR DOESN’T WORK AGAIN?
OMG YAY!!! I am so happy now 😀
It works! 🙂 Thank you so much Tom!
C’mon testing testing what will hopefully show up as my NEW gravatar… *awaits*
testing my avatar
If this works, I will be happy… Tom’s explanation certainly makes sense!
Just checking if it works.
thx for this beautiful lil work!
I tried several times to signup for a Gravatar account but every time I get this message :
Change this error message for exceptions thrown outside of an action (like in Dispatcher setups or broken Ruby code) in public/500.html»
Quite frustrating because I would really want to use Gravatar for my comments on my blog !
I also tried to see if I could get the answer by meself but the Help page seems to be “underway”.
Thanks for reading this.
Still not work!
My gravatar has stopped showing up in my blog comments (it just shows that blue on white gravatar icon) 😦 Now I’m trying to see if it works here. Let’s see…
What is the URL to pre-fill in the e-mail address?
http://site.gravatar.com/signup?email=test = doesn’t work.
http://site.gravatar.com/signup?e-mail=test = doesn’t work.
http://site.gravatar.com/signup?mail=test = doesn’t work.
Testing my gravatar
testing my gravatar
Crop is not working properly with Firefox under Linux. It says it don’t work with my browser and I should try Firefox, even tho I already use Firefox (But on Linux, maybe your browser check is bugged)
Thanks for getting this fixed!!!!
Check, check, 1, 2, 3…
Man, it’ll be nice if this works. A bit of ‘customer service’ in the form of an announcement a few weeks ago would’ve been nice.
Glad it’s (apparently) fixed!
Does it work!? Does it work?! Is Tom finally back? Testing…
Not working at my site.
Just to see if my gravatar will appear. I have registerd from 15th of Feb and no gravatar seen
Me happen something strange. I can see avatars and my friend’s avatars but my friends cannot see their avatar.
something wrong, it’s only the blue g
..is it here?
Testing as well…
Apparently the site died… get a 403 error…
It can show up here, but why not on blog?
Would be grand
Wanna test too ’cause in my blog, it doesnt work
Does it work?
Gravatar reassigned… testing…
what’s wrong if it only works here
Just a test to see if it is working here (what about an official test thread ;-))
test test test. Nope
Yeah! gravatars works in my blog!! great job Tom 😉
yay for gravatars! i’m implementing them in my blog as we speak, but i think i might have found a bug. i’ve deliberately given my gravatar a rating of X and set my src strings to accept PG or below only (with &rating=PG). i also specify a default avatar (properly url encoded of course), but that default avatar doesn’t show for my X rated gravatar, i just get the blue icon with the white g.
the default avatar DOES work for invalid gravatar IDs and valid gravatar IDs with no picture associated, but not for gravatars that are rated too high. is this expected behaviour? am i going mad?
Hi, testing but mostly wondering why my gravatar is rated x when it should be rated G.
Thanks to this it doesn’t show anywhere, could you fix it please?
Thanks for the fix Tom
Now my Gravatar works like a charm!
Well, I’m really glad if its fixed at long last. Welcome back.
This is a test.
siri e alemao
Tom: Will you sell Gravatar to Google? What guarantees do you give your users? Is it safe to implement? You never give any news.
S3 is keen. We’re using that over at CrazyEgg for our screenshots.
The whole rating thing is a mess, whoever decided a) never even point out that there ARE ratings on gravatars anywhere in the signup process, b) to make the default rating X, and more importantly c) to make the UI for seeing what it is rated, and or setting the rating completely obtuse, should be shot.
I’ve been wondering for ages why my gravatar didn’t show anywhere, just the BLUE G. Happened upon a post that mentioned ratings (never had heard of them). Stumble around here, and find that magically if I hover my mouse near my image, some cryptic X comes up. What’s that? I click on it, and it tells my I’m X rated. Choose ‘G’, and say OK. Test it. Still the BLUE G. Hmmm… so I select to make the same gravatar (now apparently G rated) the current one, and magically it works.
How about some documentation and a BIG HUGE INDICATION OF WHAT THE RATING IS, AND HOW TO SET IT?
ca marche ?!
Does it work?
Gravatar is dead…
Hmm… gravatar.com doesent seem to be working :S
my gravatar doesn’t work
Is it working now ?
I have been trying to join all day today, and keep getting an error message. Just thought I’d mention it. You know. 🙂
Why my new gravatar dont show up??
I’m consistently getting the following error when I try to add another email address to my account:
Change this error message for exceptions thrown outside of an action (like in Dispatcher setups or broken Ruby code) in public/500.html
Sorry I had to post this in the comments to a blog, but I couldn’t find any other way of notifying of the problem.
I only get the Blue G when I post to any sites…but my Gravatar is showing up in my account. Any clue why???
i’m back to test.
This service is pretty cool.
People, Liisa is correct. At this time only JPEG graphics are working for some reason. If you want to add a new Gravatar, first make sure your image is saved as a .jpg file and then add it to gravatar.com.
The image you uploaded maybe to large in pixel size or file size that the site has set for allowed perams. Check with the site(s) that you go to and ask what their limitations are. They may even not know that their image convert program is not working possibly.
Now it works. I went back into my profile and “re-confirmed” the current one. That seems to have properly forced a sync.
Gravatars are back. Thanks!!
it still don’t work for me, this is what I see when I click on the button: this page is not availeble
It still has not worked for me. What am I doing wrong?
Testing. Sorry for bothering you.
not working 😥
Checking my avatar…
At last bugfix
Finally everything seems to be working!
Schau mer mal, obs jetzt funktioniert … testing
Finally, back on 🙂
That sounds good!!!!
I didn’t see a forum where I could ask this and there is no help available yet so I thought I’d try here and see if anyone could help me. For months I’ve been having the problem that no one’s avatars show up on my site. They used to work, and then just stopped working one day suddenly. Everyone just gets my default av. And I KNOW that many of those commenters have gravatars. At first I thought it was because of the new launch coming up, but gravatars on other blogs were fine. When I check the cache everyone has NO GRAVATAR(E). No amount of cache deleting or refreshing has fixed it. My local gravatar works fine. Just not the other ones. Has this happened to anyone else? Any thoughts on why this could be? It’s driving me crazy!
How can I recognize the default Gravatar image is being returned and decide in my blog to not show it – or in my case, use another image?
Nice one. Hopefully mine should start working soon……
I signed up on Feb 16 and have not seen it working yet!
its work fine. yeah
how I can modify my password?
Curious… it appears that when a default avatar is specified, the rating gets applied too strictly. I have a G rated avatar, and it shows up when the url string says rating=G, but when it says rating=PG, the default appears.
I expect the rating specification to mean “this rating and below,” not “only this rating.” And that’s how it seems to work when no default is specified.
Yes it does 🙂
’bout time an all 😀
Not sure how long it’s supposed to take before the avatar is synced, but mine isn’t working after almost 24hrs. Also, the site randomly times out my requests (though the function actually gets performed, the browser just sits loading forever).
I have also noticed some errors in your implementation code for PHP (and Perl as well). To begin, you are encoding the ampersand symbol in your URL when it should *NOT* be encoded since it is not data, but a variable separator in it’s intended use.
I have made several fixes to your WordPress plugin as well – I’d like to give you the updated copy so just contact me on how I can do that.
Just a test
Well, since everyone is testing here, I might as well…
A more technical question: Why do you use Amazon S3 to spread the images in the first place?
Why not rent another server and let this be the host and source for the two on the front end and sync via rsync?
Is this working?
The blog seems to be online, but I went to the site.gravatar.com link it always times out with a 502 error. Anyone know anything about this?
Why this code not working??
$email = “email@example.com”;
$default = “http://www.somewhere.com/homestar.jpg”;
$size = 40;
You can construct your gravatar url with the following php code:
$grav_url = “http://www.gravatar.com/avatar.php?
png images definitely seem to be causing a problem. I uploaded a new avatar – linked it to my email – and the image has not changed in something like 3 days.
I changed my gravatar yesterday and it was switching back and forth between my old and new most of the day. Today I went in and deleted my old one from the file and now my new one is not showing up at all. Mostly I use it in Haloscan comments. Is there something I need to do to clear old cookies or temp files or something to get it to work properly?
tesing again, seems nothing ? I have added my gravatar the first day the website launched maybe 😦 so long
Curious if my avatar does work here…
Gravatars working but gravatar.com is returning a 503 since yesterday. Anyone know what’s up?
Testing my gravatar here too…
Hello everyone 🙂
On teste le gravatar hein ! Sorry, i am french because ?
oui je me soigne …
I couldn’t agree more. Thanks for arcticle.
And does this work?
@ Ian: Very good !
Please create a test page. I can’t get image link to work just yet. (Unless I post a comment here and look at the html source?)
Thanks for working on it – I’ll try the gravitar plugins now for my site. Have a good day!
test.. and thanks for this service!
I seem to still be having the wrong gravatar coming up – showing one that was deleted a day ago. If this is working then I should have a yellow background behind me.
If it does work here – is there a known issue with the 2.62 Gravatars2 plugin for WordPress (http://zenpax.com/gravatars2/)?
Gravatar svcs down? I haven’t been able to get to anything on this site except this blog all day. 😛
… and the fucking retard dies again.
Server Error –;
The main gravatar.com site is down, let alone svcs or subversion, or whatever. The server is saying:
are they back?
not so much
Doesn’t work for me … i’ve reapplied my avatar multiple times, still the old one is shown.
Interesting problem. Glad you found it. I hope that means that gravatars will start working again soon.
Works great for me, good work, love the new features!
Hi, my gravatar doesn’t show anywhere, the email is good & it’s rated g.
Any help would be great, thanks.
i signed up and altered my site only to reverse the code ;( I found that my avatar was not showing properly, i am not sure what the case may be but at the URL http://www.gravatar.com/avatar.php?gravatar_id=bf6bc93ab3eeef8996970fa8ac9895a3
it shows the gravatar logo
just testing. thanks for a great service 🙂
Hope this got fixed.
Thank you ..
[…] vom 3. März: Offensichtlich ist das Problem nun behoben, wie dieser Beitrag zeigt. Hoffentlich bleibt es […]