I had this problem while updating a theme and might have a different solution. Instead of deleting the .maintenance file, I looked inside it and recognized a unix timedate stamp 1287155241. I used an online unix time conversion tool and it translates to sometime after 3pm this afternoon. It was 10:36am, so I used the same time conversion tool to create a unix time of 10:37am and pasted that into the .maintenace file. 30 seconds later my site was back online.
here is a copy of my .maintenance timestamp for 10/15/2010 10:37am
<?php $upgrading = 1287139020; ?>
and here’s the url to the conversion tool I used
https://www.onlineconversion.com/unix_time.htm
I hope this helps!