That would explain the significance of the number of transactions. > Could the file be getting opened without 'rb'? > Austine, You're probably already testing this, but if not, please test with these lines in FileStorage.__init__(): if readonly: self.fp = open(self.filename, 'rb') else: self.fp = open(self.filename, 'a+b')