From: | Haribabu Kommi <kommi(dot)haribabu(at)gmail(dot)com> |
---|---|
To: | Andres Freund <andres(at)anarazel(dot)de> |
Cc: | Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>, Alexander Korotkov <a(dot)korotkov(at)postgrespro(dot)ru>, Pg Hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: Pluggable Storage - Andres's take |
Date: | 2018-10-22 07:16:47 |
Message-ID: | CAJrrPGeMbTKPa8qAKWJnQGKYzNOb_O9jS=Ee3v1=xu8mxi7-Fw@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Thu, Oct 18, 2018 at 1:04 PM Haribabu Kommi <kommi(dot)haribabu(at)gmail(dot)com>
wrote:
> On Tue, Oct 9, 2018 at 1:46 PM Haribabu Kommi <kommi(dot)haribabu(at)gmail(dot)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
Attachment | Content-Type | Size |
---|---|---|
0003-init-fork-API.patch | application/octet-stream | 6.8 KB |
0002-Remove-the-extra-Tuple-visibility-function.patch | application/octet-stream | 1.7 KB |
0001-Remove-the-old-slot-interface-file-and-also-update-t.patch | application/octet-stream | 1.1 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Fabien COELHO | 2018-10-22 08:12:28 | Re: Buildfarm failures for hash indexes: buffer leaks |
Previous Message | Michael Paquier | 2018-10-22 07:00:21 | Buildfarm failures for hash indexes: buffer leaks |