9738860 Trac Ticket #498 - Cannot abaondon simple paged result search

Authored and Committed by Noriko Hosoi 11 years ago
    Trac Ticket #498 - Cannot abaondon simple paged result search
    
    https://fedorahosted.org/389/ticket/498
    
    Bug Description: The enhancement "Ticket #260 - 389 DS does not
    support multiple paging controls on a single connection (commit
    add880accaa28de8304da1c2c2f58fe8af002ebb)" broke the ability to
    abandon the on-going simple paged result search.
    
    1) The abandon request expects the operation exist. When sending
    an abort request, the search operation could have already finished
    and the operation object has been released.
    
    2) Plus, request page size is 0, it should be interpreted as abandoned.
    
    Fix Description:
    1) In do_abandon, this patch eliminates to check if the operation
    is a simplepaged results oriented or not, since the operation object
    is often already released.  Instead, it directly checks the internal
    paged results info in the connection object.
    
    To make sure the abandoned search won't go further, a flag value
    CONN_FLAG_PAGEDRESULTS_ABANDONED is introduced.  If it is set in
    the pagedresults structure in the connection object, it skips any
    further process of the search.
    
    2) This patch is adding a check if the given page size is 0 in the
    simple-paged-results control or not.  If it is 0, treat is as an
    abandoned operation.
    (cherry picked from commit 47c0d96ac28c0b1cc15e7bbb77648551c309ccf5)
    
        
file modified
+4 -6
file modified
+14 -3
file modified
+8 -7