Skip to content
  • Jan Wedvik's avatar
    e38fac91
    This is a fix for bug#16176006 (TUPLE WITH CHECKSUM ERROR SILENTLY DISCARDED). · e38fac91
    Jan Wedvik authored
    The fix corrects an error in an if-predicate that checks which error codes
    that should be propagated to the application (via TC). As it was, any error
    code less than 6000 would cause the current row to be skipped, even those
    codes that should have caused the query to be aborted.
    
    This commit also fixes a related issue: If the scan aborts due to an error from
    TUP and *no* rows had been sent to the API, the correct behavior is to return 
    SCAN_FRAGREF to TC right away. If one or more rows has been sent, and locking 
    is used, LQH should send a SCAN_FRAGCONF, wait for the next SCAN_NEXTREQ and 
    then release the locks and then send SCAN_FRAGREF. As it was, LQH would send 
    SCAN_FRAGCONF even when zero rows had been sent. This led to a situation where 
    TC would eventually get a timeout while waiting for the api to close the scan.
    e38fac91
    This is a fix for bug#16176006 (TUPLE WITH CHECKSUM ERROR SILENTLY DISCARDED).
    Jan Wedvik authored
    The fix corrects an error in an if-predicate that checks which error codes
    that should be propagated to the application (via TC). As it was, any error
    code less than 6000 would cause the current row to be skipped, even those
    codes that should have caused the query to be aborted.
    
    This commit also fixes a related issue: If the scan aborts due to an error from
    TUP and *no* rows had been sent to the API, the correct behavior is to return 
    SCAN_FRAGREF to TC right away. If one or more rows has been sent, and locking 
    is used, LQH should send a SCAN_FRAGCONF, wait for the next SCAN_NEXTREQ and 
    then release the locks and then send SCAN_FRAGREF. As it was, LQH would send 
    SCAN_FRAGCONF even when zero rows had been sent. This led to a situation where 
    TC would eventually get a timeout while waiting for the api to close the scan.
Loading