Archive for June, 2010

Quasar – using git to manage your reports

Tuesday, June 29th, 2010

So after a recent minor bug I got mailed a new report.xml file … and now have to sift through the changes manually, or do I?

I realized that had I had an “upstream” git repository from which the changes came, I would simply have been able to “merge” this into my existing reports. And then came the idea … and then the simplification

Soccer Fever and those (horrid) Vuvuzelas

Friday, June 18th, 2010

So I got stuck on some mathematical calculations to get some multi-level paging system done. And getting the breakdowns right. And someone discovered … well, some may recall the blue-bulls hack we pulled on google a whilst back. Well, by now I reckon you can add the two together.

bash file descriptors, pipes and … lockf.

Monday, June 14th, 2010

Bash and long-standing file descriptors is a pain, to put it politely. For example, I’d like to spawn a sub-process into which I can “write” stuff at arbitrary points in time by doing echo fneh >&4 … sounds simple enough right? But how to spawn that sub process?

bash, lockf and flock

Sunday, June 13th, 2010

So after having had enough I decided it’s time to make torpage integrate better into the portage locking. The current state isn’t bad, it’s just not complete. The fact of the matter is that it is possible should torpage initiate the fetch that portage will (permitting it attempts to fetch the same file) ignore the fact that torpage is busy downloading the file and kick off a dual download. What’s happening is that torpage (currently) treats the mere existence of the file as a lock, whereas portage takes out a fcntl (lockf) based lock on the file. Using the existince/lack of existence of files as the basis for a lock is a bad idea anyway, so I decided it’s time I took what I learned in the last six years and fix it. (more…)