From: | "Hayato Kuroda (Fujitsu)" <kuroda(dot)hayato(at)fujitsu(dot)com> |
---|---|
To: | 'Katsuragi Yuta' <katsuragiy(at)oss(dot)nttdata(dot)com> |
Cc: | 'Ted Yu' <yuzhihong(at)gmail(dot)com>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, vignesh C <vignesh21(at)gmail(dot)com>, "pgsql-hackers(at)lists(dot)postgresql(dot)org" <pgsql-hackers(at)lists(dot)postgresql(dot)org>, Önder Kalacı <onderkalaci(at)gmail(dot)com>, Fujii Masao <masao(dot)fujii(at)oss(dot)nttdata(dot)com>, "Shinya11(dot)Kato(at)oss(dot)nttdata(dot)com" <Shinya11(dot)Kato(at)oss(dot)nttdata(dot)com>, Kyotaro Horiguchi <horikyota(dot)ntt(at)gmail(dot)com> |
Subject: | RE: [Proposal] Add foreign-server health checks infrastructure |
Date: | 2023-02-09 14:39:34 |
Message-ID: | TYAPR01MB58669EAAC02493BFF9F39B06F5D99@TYAPR01MB5866.jpnprd01.prod.outlook.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Dear Katsuragi-san,
Thank you for reviewing! PSA new version patches.
> 0001:
> + while (result < 0 && errno == EINTR);
> +
> + if (result < 0)
> + return -1;
>
> this `return -1` is not indented properly.
This part is no longer needed. Please see another discussion[1].
> 0002:
> + <term><function>postgres_fdw_verify_connection_states(server_name
> text) returns boolean</function></term>
> ...
> + extension to the <symbol>poll</symbol> system call, including
> Linux. This
> + returns <literal>true</literal> if checked connections are still
> valid,
> + or the checking is not supported on this platform.
> <literal>false</literal>
> + is returned if the local session seems to be disconnected from
> other
> + servers. Example usage of the function:
>
> Here, 'still valid' seems a little bit confusing because this 'valid' is
> not
> the same as postgres_fdw_get_connections's 'valid' [1].
>
> Should 'still valid' be 'existing connection is not closed by the remote
> peer'?
> But this description does not cover all the cases where this function
> returns true...
> I think one choice is to write all the cases like 'returns true if any
> of the
> following condition is satisfied. 1) existing connection is not closed
> by the
> remote peer 2) there is no connection for specified server yet 3) the
> checking
> is not supported...'. If my understanding is not correct, please point
> it out.
Modified like you pointed out.
> BTW, is it reasonable to return true if ConnectionHash is not
> initialized or
> there is no ConnCacheEntry for specified remote server? What do you
> think
> about returning NULL in that case?
I'm not sure which one is better, but modified accordingly.
> 0003:
> I think it is better that the test covers all the new functions.
> How about adding a test for postgres_fdw_verify_connection_states_all?
>
>
> +--
> ===================================================
> ================
> +-- test for postgres_fdw_verify_foreign_servers function
> +--
> ===================================================
> ================
>
> Writing all the functions' name like 'test for
> postgres_fdw_verify_connection_states
> and postgres_fdw_can_verify_connection_states' looks straightforward.
> What do you think about this?
Added.
> 0004:
> Sorry, I have not read 0004. I will read.
No problem:-).
Best Regards,
Hayato Kuroda
FUJITSU LIMITED
Attachment | Content-Type | Size |
---|---|---|
v31-0001-Add-PQconnCheck-and-PQcanConnCheck-to-libpq.patch | application/octet-stream | 7.1 KB |
v31-0002-postgres_fdw-add-postgres_fdw_verify_connection_.patch | application/octet-stream | 11.7 KB |
v31-0003-add-test.patch | application/octet-stream | 5.3 KB |
v31-0004-add-kqueue-support-for-PQconnCheck-and-PQcanConn.patch | application/octet-stream | 8.8 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Peter Eisentraut | 2023-02-09 14:44:56 | Re: ICU locale validation / canonicalization |
Previous Message | Hayato Kuroda (Fujitsu) | 2023-02-09 14:38:30 | RE: [Proposal] Add foreign-server health checks infrastructure |