pgsql: Improve div_var_fast(), mostly by making comments better. - Mailing list pgsql-committers

From Tom Lane
Subject pgsql: Improve div_var_fast(), mostly by making comments better.
Date
Msg-id E1a1hGM-0006iw-JN@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Improve div_var_fast(), mostly by making comments better.

The integer overflow situation in div_var_fast() is a great deal more
complicated than the pre-existing comments would suggest.  Moreover, the
comments were also flat out incorrect as to the precise statement of the
maxdiv loop invariant.  Upon clarifying that, it becomes apparent that the
way in which we updated maxdiv after a carry propagation pass was overly
slow, complex, and conservative: we can just reset it to one, which is much
easier and also reduces the number of times carry propagation occurs.
Fix that and improve the relevant comments.

Since this is mostly a comment fix, with only a rather marginal performance
boost, no need for back-patch.

Tom Lane and Dean Rasheed

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/46166197c3b3748c3266c694d7c2f5a312ea928e

Modified Files
--------------
src/backend/utils/adt/numeric.c |   64 +++++++++++++++++++++++++++++++--------
1 file changed, 52 insertions(+), 12 deletions(-)


pgsql-committers by date:

Previous
From: Teodor Sigaev
Date:
Subject: Re: pgsql: Improve pageinspect module
Next
From: Tom Lane
Date:
Subject: pgsql: Be more paranoid about null return values from libpq status func