Fix possible internal overflow in numeric division.
div_var_fast() postpones propagating carries in the same way as mul_var(),
so it has the same corner-case overflow risk we fixed in 246693e5ae8a36f0,
namely that the size of the carries has to be accounted for when setting
the threshold for executing a carry propagation step. We've not devised
a test case illustrating the brokenness, but the required fix seems clear
enough. Like the previous fix, back-patch to all active branches.
Dean Rasheed
Branch
------
REL9_2_STABLE
Details
-------
http://git.postgresql.org/pg/commitdiff/c47bdb3726ba020b6e187e9279014e9a5e4df0d3
Modified Files
--------------
src/backend/utils/adt/numeric.c | 12 +++++++++---
1 file changed, 9 insertions(+), 3 deletions(-)