postgres.git / summary / log / commit / refs

commit    17aa3c2d13a050a264bd3fee954ae98c0ae14ecf
Author:   Tom Lane <tgl@sss.pgh.pa.us>
Date:     Tue Aug 18 23:22:38 2015 +0000
First released in: 9.6.0, 9.0.23, 9.1.19, 9.2.14, 9.3.10, 9.4.5, 9.5.0

    Fix a few bogus statement type names in plpgsql error messages.
    
    plpgsql's error location context messages ("PL/pgSQL function fn-name line
    line-no at stmt-type") would misreport a CONTINUE statement as being an
    EXIT, and misreport a MOVE statement as being a FETCH.  These are clear
    bugs that have been there a long time, so back-patch to all supported
    branches.
    
    In addition, in 9.5 and HEAD, change the description of EXECUTE from
    "EXECUTE statement" to just plain EXECUTE; there seems no good reason why
    this statement type should be described differently from others that have
    a well-defined head keyword.  And distinguish GET STACKED DIAGNOSTICS from
    plain GET DIAGNOSTICS.  These are a bit more of a judgment call, and also
    affect existing regression-test outputs, so I did not back-patch into
    stable branches.
    
    Pavel Stehule and Tom Lane


src/pl/plpgsql/src/pl_funcs.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/pl/plpgsql/src/pl_funcs.c b/src/pl/plpgsql/src/pl_funcs.c index b79a72fddc4..75b040abc5d 100644 --- a/src/pl/plpgsql/src/pl_funcs.c +++ b/src/pl/plpgsql/src/pl_funcs.c @@ -235,7 +235,7 @@ plpgsql_stmt_typename(PLpgSQL_stmt *stmt) case PLPGSQL_STMT_FOREACH_A: return _("FOREACH over array"); case PLPGSQL_STMT_EXIT: - return "EXIT"; + return ((PLpgSQL_stmt_exit *) stmt)->is_exit ? "EXIT" : "CONTINUE"; case PLPGSQL_STMT_RETURN: return "RETURN"; case PLPGSQL_STMT_RETURN_NEXT: @@ -255,7 +255,7 @@ plpgsql_stmt_typename(PLpgSQL_stmt *stmt) case PLPGSQL_STMT_OPEN: return "OPEN"; case PLPGSQL_STMT_FETCH: - return "FETCH"; + return ((PLpgSQL_stmt_fetch *) stmt)->is_move ? "MOVE" : "FETCH"; case PLPGSQL_STMT_CLOSE: return "CLOSE"; case PLPGSQL_STMT_PERFORM: [parent: 138f76533cdc]