On Thu, Oct 18, 2018 at 1:04 PM Haribabu Kommi <kommi.harib...@gmail.com> wrote:
> On Tue, Oct 9, 2018 at 1:46 PM Haribabu Kommi <kommi.harib...@gmail.com> > wrote: > >> >> I also observed the failure of aggregates.sql, will look into it. >> > > The random failure of aggregates.sql is as follows > > SELECT avg(a) AS avg_32 FROM aggtest WHERE a < 100; > ! avg_32 > ! --------------------- > ! 32.6666666666666667 > (1 row) > > -- In 7.1, avg(float4) is computed using float8 arithmetic. > --- 8,16 ---- > (1 row) > > SELECT avg(a) AS avg_32 FROM aggtest WHERE a < 100; > ! avg_32 > ! -------- > ! > (1 row) > > Same NULL result for another aggregate query on column b. > > The aggtest table is accessed by two tests that are running in parallel. > i.e aggregates.sql and transactions.sql, In transactions.sql, inside a > transaction > all the records in the aggtest table are deleted and aborted the > transaction, > I suspect that some visibility checks are having some race conditions that > leads > to no records on the table aggtest, thus it returns NULL result. > > If I try the scenario manually by opening a transaction and deleting the > records, the > issue is not occurring. > > I am yet to find the cause for this problem. > I am not yet able to generate a test case where the above issue can occur easily for debugging, it is happening randomly. I will try to add some logs to find out the problem. During the checking for the above problem, I found some corrections, 1. Remove of the tableam_common.c file as it is not used. 2. Remove the extra heaptuple visibile check in heapgettup_pagemode function 3. New API for init fork. Regards, Haribabu Kommi Fujitsu Australia
0003-init-fork-API.patch
Description: Binary data
0002-Remove-the-extra-Tuple-visibility-function.patch
Description: Binary data
0001-Remove-the-old-slot-interface-file-and-also-update-t.patch
Description: Binary data