pgsql: Improve performance of pg_strtointNN functions

2022-12-03 Thread David Rowley
Improve performance of pg_strtointNN functions Experiments have shown that modern versions of both gcc and clang are unable to fully optimize the multiplication by 10 that we're doing in the pg_strtointNN functions. Both compilers seem to be making use of "imul", which is not the most efficient w

pgsql: Doc: flesh out fmgr/README's description of context-node usage.

2022-12-03 Thread Tom Lane
Doc: flesh out fmgr/README's description of context-node usage. I wrote this to provide a home for a planned discussion of error return conventions for non-error-throwing functions. But it seems useful as documentation of existing code no matter what becomes of that proposal, so commit separately

pgsql: Fix DEFAULT handling for multi-row INSERT rules.

2022-12-03 Thread Dean Rasheed
Fix DEFAULT handling for multi-row INSERT rules. When updating a relation with a rule whose action performed an INSERT from a multi-row VALUES list, the rewriter might skip processing the VALUES list, and therefore fail to replace any DEFAULTs in it. This would lead to an "unrecognized node type"

pgsql: Fix DEFAULT handling for multi-row INSERT rules.

2022-12-03 Thread Dean Rasheed
Fix DEFAULT handling for multi-row INSERT rules. When updating a relation with a rule whose action performed an INSERT from a multi-row VALUES list, the rewriter might skip processing the VALUES list, and therefore fail to replace any DEFAULTs in it. This would lead to an "unrecognized node type"

pgsql: Fix DEFAULT handling for multi-row INSERT rules.

2022-12-03 Thread Dean Rasheed
Fix DEFAULT handling for multi-row INSERT rules. When updating a relation with a rule whose action performed an INSERT from a multi-row VALUES list, the rewriter might skip processing the VALUES list, and therefore fail to replace any DEFAULTs in it. This would lead to an "unrecognized node type"

pgsql: Fix DEFAULT handling for multi-row INSERT rules.

2022-12-03 Thread Dean Rasheed
Fix DEFAULT handling for multi-row INSERT rules. When updating a relation with a rule whose action performed an INSERT from a multi-row VALUES list, the rewriter might skip processing the VALUES list, and therefore fail to replace any DEFAULTs in it. This would lead to an "unrecognized node type"

pgsql: Fix DEFAULT handling for multi-row INSERT rules.

2022-12-03 Thread Dean Rasheed
Fix DEFAULT handling for multi-row INSERT rules. When updating a relation with a rule whose action performed an INSERT from a multi-row VALUES list, the rewriter might skip processing the VALUES list, and therefore fail to replace any DEFAULTs in it. This would lead to an "unrecognized node type"

pgsql: Fix DEFAULT handling for multi-row INSERT rules.

2022-12-03 Thread Dean Rasheed
Fix DEFAULT handling for multi-row INSERT rules. When updating a relation with a rule whose action performed an INSERT from a multi-row VALUES list, the rewriter might skip processing the VALUES list, and therefore fail to replace any DEFAULTs in it. This would lead to an "unrecognized node type"