Skip to content
  • Krzysztof Nowicki's avatar
    Split multiple-item modification jobs into chunks · dd8d63ff
    Krzysztof Nowicki authored and Laurent Montel's avatar Laurent Montel committed
    
    
    The EWS server is only able to handle around 100 items inside a
    request at a time. This applies to all requests that accept multiple
    items. To allow mass item updates it is necessary to split large
    series into chunks.
    
    This change applies this modification to the mail item update job.
    
    Updates are split into 10-item chunks. While it is well under the
    limit, such a small chunk size does not increase overhead too much and
    it allows more responsive progress reporting.
    
    The modification also adds progress reporting, now that the
    infrastructure is there. This should additionally fix the Akonadi
    socket timeout errors that could have been caused by the resource
    being busy for long periods of time without any message sent to/from
    the resource.
    
    A dedicated helper template class has been added to help reduce
    boilerplate when adding chunk splitting into more request types.
    
    Signed-off-by: default avatarKrzysztof Nowicki <krissn@op.pl>
    dd8d63ff