I was looking at prototyping a write once file service, a bit like Plan9s Venti system. I delete files a lot :) As usual, my grand designs are thwarted by the basics... I'm at the 'get the unit tests of the simplest possible implementation to pass' stage, and need something like an append-only file of fixed size records (data blocks). Have we got classes or methods to do record-based file IO? I dont mind reinventing a wheel otherwise. Next problem (I learned to never look more than 1 problem ahead or I never start anything). I need an index that gets dynamically updated as the record file is written to. The ideal solution would be a hash that was backed by a file somehow- then I realised I could implement the data blocks themselves the same way. I looked through pickAxe and RAA for these two and found a lot of SQL persistence APIs, but that feels like overkill.... Does anyone know of a more lightweight solution? -- I don't care who does the electing as long as I get to do the nominating. -- Boss Tweed Rasputin :: Jack of All Trades - Master of Nuns