summaryrefslogtreecommitdiff
path: root/src/backend/executor/nodeModifyTable.c
diff options
context:
space:
mode:
authorAshutosh Bapat2012-04-02 10:09:32 +0000
committerAshutosh Bapat2012-04-02 10:09:32 +0000
commita40e4ef8d222bf9cdc3952e7af668864949b0d00 (patch)
treeeca0d806a9d9b7b452f855b03f78cb40419066d7 /src/backend/executor/nodeModifyTable.c
parentd7134501525dd2a3d7c8fc30a8f29fdaab110d98 (diff)
Any data exchange between coordinator and datanode happens in the form of text,
obtained by calling I/O functions for datatypes. For float4 and float8 we used float*out function which limit the number of digits in the string to DBL_DIG/FLT_DIG (both 16) + extra_float_digits (GUC). By default the later value is 0. Rest of the digits are truncated. Thus we see a difference at the 16th digit when we add up truncated floating point transition results from datanodes. The fix here is really to move from text based data exchange to binary data exchange between coordinator and datanode, which will preserve the precision of floating point. This is basic change and might be risky to apply just before the release. Hence adding alternate output file. The test aggregates has EXPLAIN outputs specific to PostgreSQL. Those outputs are not valid in Postgres-XC. Hence updating the expected output with EXPLAIN outputs obtained in Postgres-XC.
Diffstat (limited to 'src/backend/executor/nodeModifyTable.c')
0 files changed, 0 insertions, 0 deletions