[Spambayes-checkins] spambayes/Outlook2000 manager.py, 1.85,
1.86 addin.py, 1.107, 1.108
Mark Hammond
mhammond at users.sourceforge.net
Sun Sep 7 17:42:22 EDT 2003
Update of /cvsroot/spambayes/spambayes/Outlook2000
In directory sc8-pr-cvs1:/tmp/cvs-serv15530
Modified Files:
manager.py addin.py
Log Message:
When processing a hotmail inbox, we could see "object changed" exceptions
reported by MAPI. Simply starting again on this exception seems to work.
Index: manager.py
===================================================================
RCS file: /cvsroot/spambayes/spambayes/Outlook2000/manager.py,v
retrieving revision 1.85
retrieving revision 1.86
diff -C2 -d -r1.85 -r1.86
*** manager.py 5 Sep 2003 11:54:19 -0000 1.85
--- manager.py 7 Sep 2003 23:42:19 -0000 1.86
***************
*** 457,464 ****
return
print "ERROR:", repr(msg)
- traceback.print_exc()
if key in self.reported_error_map:
print "(this error has already been reported - not displaying it again)"
else:
self.reported_error_map[key] = True
ReportError(msg, title)
--- 457,464 ----
return
print "ERROR:", repr(msg)
if key in self.reported_error_map:
print "(this error has already been reported - not displaying it again)"
else:
+ traceback.print_exc()
self.reported_error_map[key] = True
ReportError(msg, title)
***************
*** 786,789 ****
--- 786,791 ----
"must re-train the system via the SpamBayes manager."
self.ReportErrorOnce(msg)
+ # and disable the addin, as we are hosed!
+ self.config.filter.enabled = False
raise
Index: addin.py
===================================================================
RCS file: /cvsroot/spambayes/spambayes/Outlook2000/addin.py,v
retrieving revision 1.107
retrieving revision 1.108
diff -C2 -d -r1.107 -r1.108
*** addin.py 4 Sep 2003 12:14:11 -0000 1.107
--- addin.py 7 Sep 2003 23:42:19 -0000 1.108
***************
*** 373,383 ****
if not self.use_timer or not item.UnRead:
ms = self.manager.message_store
! try:
! msgstore_message = ms.GetMessage(item)
! ProcessMessage(msgstore_message, self.manager)
! except ms.MsgStoreException, details:
! print "Unexpected error fetching message"
! traceback.print_exc()
! print details
else:
self._StartTimer()
--- 373,397 ----
if not self.use_timer or not item.UnRead:
ms = self.manager.message_store
! # The object can sometimes change underneath us (most noticably
! # with hotmail, which presumably has greater 'synchronization'
! # issues than tightly bound stores. We accept this error exactly
! # 2 times (once as we have seen it, and twice as it can't hurt ;)
! for i in range(3):
! try:
! msgstore_message = ms.GetMessage(item)
! ProcessMessage(msgstore_message, self.manager)
! break
! except ms.ObjectChangedException:
! # try again.
! self.manager.LogDebug(1, "Got object changed error - trying again...")
! continue
! except ms.MsgStoreException, details:
! print "Unexpected error fetching message"
! traceback.print_exc()
! print details
! break
! else:
! print "WARNING: Could not filter a message, as we got an " \
! "'object changed' exception 3 times!"
else:
self._StartTimer()
More information about the Spambayes-checkins
mailing list