Skip to content
  • Alexander Nozdrin's avatar
    a183b020
    Fix for Bug#12652873 - 61392: CONTINUE HANDLER FOR NOT FOUND BEING · a183b020
    Alexander Nozdrin authored
    TRIGGERED FROM INTERNAL STORED FUNCTION.
    
    The problem was that RETURN statement in stored programs did not
    clear the Diagnostics Area, as it should have done according to
    the SQL Standard.
    
    The user-visible problem was that in some cases an SQL-condition,
    raised in the nested function call, would be visible in the outer
    scope, which in turn would lead to incorrect handler activation.
    
    The fix is to clear the Diagnostics Area before executing RETURN
    statement.
    
    Note, that after the patch, there is no way to throw an SQL-warning
    out of a stored function. From the user's view point, he/she will not
    get any warning, even if there were warnings, raised during
    the function execution.
    
    This change is backward incompatible, but it makes the behaviour of
    stored programs more in line with The Standard.
    a183b020
    Fix for Bug#12652873 - 61392: CONTINUE HANDLER FOR NOT FOUND BEING
    Alexander Nozdrin authored
    TRIGGERED FROM INTERNAL STORED FUNCTION.
    
    The problem was that RETURN statement in stored programs did not
    clear the Diagnostics Area, as it should have done according to
    the SQL Standard.
    
    The user-visible problem was that in some cases an SQL-condition,
    raised in the nested function call, would be visible in the outer
    scope, which in turn would lead to incorrect handler activation.
    
    The fix is to clear the Diagnostics Area before executing RETURN
    statement.
    
    Note, that after the patch, there is no way to throw an SQL-warning
    out of a stored function. From the user's view point, he/she will not
    get any warning, even if there were warnings, raised during
    the function execution.
    
    This change is backward incompatible, but it makes the behaviour of
    stored programs more in line with The Standard.
Loading