• Dmitry Lenev's avatar
    MDEV-5997 - MySQL bug#11759114 - '51401: GRANT TREATS NONEXISTENT · a6ab8ef9
    Dmitry Lenev authored
    FUNCTIONS/PRIVILEGES DIFFERENTLY'
    
    Fix for bug#11759114 - '51401: GRANT TREATS NONEXISTENT
    FUNCTIONS/PRIVILEGES DIFFERENTLY'.
    
    The problem was that attempt to grant EXECUTE or ALTER
    ROUTINE privilege on stored procedure which didn't exist
    succeed instead of returning an appropriate error like
    it happens in similar situation for stored functions or
    tables.
    
    The code which handles granting of privileges on individual
    routine calls sp_exist_routines() function to check if routine
    exists and assumes that the 3rd parameter of the latter
    specifies whether it should check for existence of stored
    procedure or function. In practice, this parameter had
    completely different meaning and, as result, this check was
    not done properly for stored procedures.
    
    This fix addresses this problem by bringing sp_exist_routines()
    signature and code in line with expectation of its caller.
    Conflicts:
    	mysql-test/r/grant.result
    	mysql-test/t/grant.test
    	sql/sp.cc
    a6ab8ef9
sp.h 6.52 KB