How to advance the retention or item store flags regardless of errors

  • 7019156
  • 13-Apr-2016
  • 07-Aug-2017

Environment


Retain
GroupWise

Situation


I have a few mailboxes that are getting errors on some items that I don't care about or the error is something I'm not concerned about.  I just want to archive all that I can and not have to intervene when there are errors.  Is there a way to have Retain advance the retention or item store flag even if there are errors so the next job starts where the last one left off (rather than where the first error occurred)?

Resolution


Yes, there are a couple of ways to approach this.  In both instances, you'll be changing a properties file for every Retain Worker associated with a job that you want to behave this way.  Note that some systems have multiple Workers installed on the same server; in such cases, each Worker directory is distinguished by a number after the name "RetainWorker".  This article references that fact with an "X" for the number.

attachment.properties solution

Edit .../RetainWorkerX/WEB-INF/classes/config/attachment.properties:

  1. Look for job.advance.errors=0
  2. Change the value to "1"
  3. Save changes
  4. Restart Tomcat

This option will cause Retain to advance the retention and/or item store flag even if there are errors.  The downside to this option is that Retain's default error handling (set it errors.properties, which will be explained next) is to abort processing the message and move on to the next one.  If there are other attachments that haven't been processed, they will not get archived.

You may also want to set max.errors.total to "-1".  The default is 10.  On the 11th error, the job will abort the mailbox and move on to the next mailbox.  Setting it to "-1" instructs Retain to continue processing the entire mailbox despite any errors; in other words, there is no max error limit with this setting in place.

errors.properties solution

Edit .../RetainWorkerX/WEB-INF/classes/config/errors.properties:

  1. Look for default.gw=total,abort,adderror,preventadvance,lognormal,throw,emptyblob
  2. Change it to read: default.gw=total,noabort,adderror,nopreventadvance,logspecial,nothrow,replaceblob
  3. Save changes
  4. Restart Tomcat

This option will cause Retain to:

  • Throw a warning, not an error
  • Advance the flag(s)
  • Process all of the message content that it can rather than aborting the message.
  • Replace the attachment that cannot be archived with a text file that lists the error received so you have a historical record of what happened with the attachment.

For more information on the meaning of each option specified in that line, see "How to Configure Error Handling in the ERRORS.PROPERTIES File".

The downside to both of these options is if the issue on the attachment were the result of a bug in GroupWise or in Retain.  Although not likely, there is always that chance that some environmental factor not seen before surfaces that the code had not been built to consider.

Additional Information

This article was originally published in the GWAVA knowledgebase as article ID 2787.