Attachments are not downloading right away, but showing up on the device sometime after the email has been delivered.
Emails are not syncing because of attachment backlog.
Please perform the following steps to increase the number of threads used by the GroupWise Connector for attachment handling/processing:
- Edit the GroupWise connector file located: /etc/datasync/configengine/engines/default/pipelines/pipeline1/connectors/groupwise/connector.xml
- Find and change <numWorkers>4</numWorkers> to a larger number such as 8.
Add <numAttachmentWorkers>4</numAttachmentsWorkers> inside the <custom> tag section like below
- Save the file.
- Restart DataSync by typing "rcdatasync restart" and press Enter.
Changing the <numWorkers> field, will change the amount of worker threads that the GroupWise connector uses of handling messages and attachments. The connector will use half of the threads for attachments, so by using the default value of 4, it will use only 2 threads for attachments. By increasing this to a larger number such as 8, it will allocate 4 of those threads to handling attachments.
The <numAttachmentsWorkers> field is not present by default, so by adding it Data Sync uses the number present in this setting to allocate the number of threads for attachments. So by assigning it 8 or another number, DataSync uses 8 threads purely for handling attachments to download from GroupWise, instead of the default value of 2. While modifiying this setting, numWorkers may not be changed and can be at the default as<numAttachmentsWorkers> field will take precedence
The changes made to the connector.xml will require a Data Synchronizer restart to take effect. Please take caution will changing any values in any DataSync configuration file, as raising the values too much can actually hurt performance more then increase it. The beefier the box or box with better resources, the higher values can go before performance is impacted, so please adjust values in incremental steps to find values right for the system.
When logged into the mobility database of DataSync, running commands similar to: "select count(*) from attachments where state = '1';" or "select count(*) from attachments where state = '2';" display large amounts of attachments in the thousands and the number does not appear to be going down much or at all, even after several hours.
Monitoring the default.pipeline1.mobility-AppInterface.log and grepping for attachmentMonitor, shows attachments being placed in a queue, but searching thedefault.pipeline1.groupwise-Appinterface for the attachments does not show it being downloaded right away, but some time later.