Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: postgresql-cfbot/postgresql
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: cf/5044~1
Choose a base ref
...
head repository: postgresql-cfbot/postgresql
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: cf/5044
Choose a head ref
  • 4 commits
  • 7 files changed
  • 2 contributors

Commits on May 17, 2025

  1. use strict rules for parsing PL/pgSQL expressions

    Originally the rule PLpgSQL_Expr allows almost all SQL clauses. It was designed
    to allow old undocumented syntax
    
        var := col FROM tab;
    
    The reason for support of this "strange" syntax was technical. The PLpgSQL parser
    cannot use SQL parser accurately (it was really primitive), and people found
    this undocumented syntax. Lattery, when it was possible to do exact parsing, from
    compatibility reasons, the parsing of PL/pgSQL expressions allows described syntax.
    
    Unfortunately, with support almost all SQL clauses, the PLpgSQL can accept
    really broken code like
    
        DO $$
        DECLARE
          l_cnt int;
        BEGIN
          l_cnt := 1
          DELETE FROM foo3 WHERE id=1;
        END; $$;
    
    proposed patch introduce new extra error check strict_expr_check, that solve
    this issue.
    okbob@github.com authored and Commitfest Bot committed May 17, 2025
    Configuration menu
    Copy the full SHA
    611444b View commit details
    Browse the repository at this point in the history
  2. simply check of strict-expr-check on regress test

    This patch enable strict-expr-check by default to be possible to see
    the impact of this option on regress test. Next commit will revert
    this option. The strict-expr-check should not be enabled by default.
    This commit is done just for testing.
    okbob@github.com authored and Commitfest Bot committed May 17, 2025
    Configuration menu
    Copy the full SHA
    09e0543 View commit details
    Browse the repository at this point in the history
  3. set plpgsql.extra_errors to "none"

    Purpose of previous commit was to run tests with active strict_expr_check.
    Now, reset to default and revert all changes from previous commit.
    okbob@github.com authored and Commitfest Bot committed May 17, 2025
    Configuration menu
    Copy the full SHA
    354dba4 View commit details
    Browse the repository at this point in the history
  4. [CF 5044] v20250227 - new plpgsql.extra_errors check - strict_expr_check

    This branch was automatically generated by a robot using patches from an
    email thread registered at:
    
    https://commitfest.postgresql.org/patch/5044
    
    The branch will be overwritten each time a new patch version is posted to
    the thread, and also periodically to check for bitrot caused by changes
    on the master branch.
    
    Patch(es): https://www.postgresql.org/message-id/CAFj8pRBAbKe8A50MEeMg2bTJcwhBfS01bCKFaiC_z__YWsVM+Q@mail.gmail.com
    Author(s): Pavel Stehule
    Commitfest Bot committed May 17, 2025
    Configuration menu
    Copy the full SHA
    3d21683 View commit details
    Browse the repository at this point in the history
Loading