http://www.raditha.com/blog/archives/668.html indicates "Malformed file" can be a problem with specific revprops in the repo.
If we're confident it's a problem with external data, we should figure out how to handle the error more gracefully (catch & log the exception; save whatever is possible with the rest of the commit data?)
Module allura.model.repository:288 in refresh << continue ci.set_context(self) self._impl.refresh_commit(ci, seen_object_ids) if (i+1) % self.BATCH_SIZE == 0: log.info('...... flushing %d commits (%d total)', >> self._impl.refresh_commit(ci, seen_object_ids) Module forgesvn.model.svn:220 in refresh_commit << revision_start=rev, limit=1, discover_changed_paths=True)[0] # Save commit metadata ci.committed = Object( >> discover_changed_paths=True)[0] ClientError: Malformed file app: u'code' exchange: 'audit' key: u'repo.refresh' message: """{'mount_point': u'code', 'project_id': ObjectId('4d752ea9b9363c1d27000897'), 'user_id': None}""" project: u'turbogears1' user: u'*anonymous'
"fix" (as per instructions) on forge wo/1816
I tested with an svnsync'ed copy of the failing repo and was unable to reproduce the error (which is no longer happening by the way), but this code at least didn't make anything worse.
can we use log.exception() rather than log.info() so we at least get a traceback in the logs?
Originally by: *anonymous
If we want to keep the log level at INFO (probably), log.info('........' , exc_info=True) should do it
ping to update solr