Thread

  1. Connection remains idle for more than 15 minutes, then the connection drops by IPVS setting in k8s kube-proxy

    M Tarkeshwar Rao <m.tarkeshwar.rao@ericsson.com> — 2024-03-05T11:07:03Z

    Hi Tarkesh,
    
    "
    We are using libpq c client (Version : 14.10) of postgresql in our application to connect with postgresql database server (Version 14.10).
    For making connection we are using libpq's API "PQsetdbLogin()".
    
    Problem Statement : If our connection remains idle for more than 15 minutes, then the connection drops by IPVS setting in k8s kube-proxy.
    
    Query : Is there any way we can provide values of "keepalives_idle, keepalives_interval, keepalives_count" client parameters in the API "PQsetdbLogin()" while creating the connection.
            If yes, then can someone please provide the sample code for the same.
                                 We need these parameters support at client side only.
    "
    
    Is there any other alternative approach using some configuration files from client side?
    
    Thanks,
    Tarkeshwar
    
  2. Connection remains idle for more than 15 minutes, then the connection drops by IPVS setting in k8s kube-proxy

    M Tarkeshwar Rao <m.tarkeshwar.rao@ericsson.com> — 2024-03-05T11:08:27Z

    Hi all,
    
    "
    We are using libpq c client (Version : 14.10) of postgresql in our application to connect with postgresql database server (Version 14.10).
    For making connection we are using libpq's API "PQsetdbLogin()".
    
    Problem Statement : If our connection remains idle for more than 15 minutes, then the connection drops by IPVS setting in k8s kube-proxy.
    
    Query : Is there any way we can provide values of "keepalives_idle, keepalives_interval, keepalives_count" client parameters in the API "PQsetdbLogin()" while creating the connection.
            If yes, then can someone please provide the sample code for the same.
                                 We need these parameters support at client side only.
    "
    
    Is there any other alternative approach using some configuration files from client side?
    
    Thanks,
    Tarkeshwar
    
  3. Re: Connection remains idle for more than 15 minutes, then the connection drops by IPVS setting in k8s kube-proxy

    Matthias Apitz <guru@unixarea.de> — 2024-03-05T11:29:04Z

    El día martes, marzo 05, 2024 a las 11:08:27 +0000, M Tarkeshwar Rao escribió:
    
    > Hi all,
    > 
    > "
    > We are using libpq c client (Version : 14.10) of postgresql in our application to connect with postgresql database server (Version 14.10).
    > For making connection we are using libpq's API "PQsetdbLogin()".
    > 
    > Problem Statement : If our connection remains idle for more than 15 minutes, then the connection drops by IPVS setting in k8s kube-proxy.
    > 
    > Query : Is there any way we can provide values of "keepalives_idle, keepalives_interval, keepalives_count" client parameters in the API "PQsetdbLogin()" while creating the connection.
    >         If yes, then can someone please provide the sample code for the same.
    >                              We need these parameters support at client side only.
    > "
    > 
    > Is there any other alternative approach using some configuration files from client side?
    
    An option could be to run the connection through an SSH tunnel and use
    there the sshd(8) config parameter ClientAliveInterval.
    
    HIH
    
    	matthias
    
    -- 
    Matthias Apitz, ✉ guru@unixarea.de, http://www.unixarea.de/ +49-176-38902045
    Public GnuPG key: http://www.unixarea.de/key.pub
    
    I am not at war with Russia.  Я не воюю с Россией.
    Ich bin nicht im Krieg mit Russland.
    
    
    
    
  4. RE: Connection remains idle for more than 15 minutes, then the connection drops by IPVS setting in k8s kube-proxy

    M Tarkeshwar Rao <m.tarkeshwar.rao@ericsson.com> — 2024-03-05T11:37:25Z

    Hi Matthias,
    
    Currently many customers are using this. 
    We want to use libpq library APIs only. Is there any support of keepalive at client side?
    
    Regards
    Tarkeshwar
    
    -----Original Message-----
    From: Matthias Apitz <guru@unixarea.de> 
    Sent: Tuesday, March 5, 2024 4:59 PM
    To: M Tarkeshwar Rao <m.tarkeshwar.rao@ericsson.com>
    Cc: pgsql-general@postgresql.org; Piyush Anand <piyush.anand@ericsson.com>; Neeraj Gupta G <neeraj.g.gupta@ericsson.com>
    Subject: Re: Connection remains idle for more than 15 minutes, then the connection drops by IPVS setting in k8s kube-proxy
    
    El día martes, marzo 05, 2024 a las 11:08:27 +0000, M Tarkeshwar Rao escribió:
    
    > Hi all,
    > 
    > "
    > We are using libpq c client (Version : 14.10) of postgresql in our application to connect with postgresql database server (Version 14.10).
    > For making connection we are using libpq's API "PQsetdbLogin()".
    > 
    > Problem Statement : If our connection remains idle for more than 15 minutes, then the connection drops by IPVS setting in k8s kube-proxy.
    > 
    > Query : Is there any way we can provide values of "keepalives_idle, keepalives_interval, keepalives_count" client parameters in the API "PQsetdbLogin()" while creating the connection.
    >         If yes, then can someone please provide the sample code for the same.
    >                              We need these parameters support at client side only.
    > "
    > 
    > Is there any other alternative approach using some configuration files from client side?
    
    An option could be to run the connection through an SSH tunnel and use there the sshd(8) config parameter ClientAliveInterval.
    
    HIH
    
    	matthias
    
    --
    Matthias Apitz, ✉ guru@unixarea.de, https://protect2.fireeye.com/v1/url?k=31323334-501d5122-313273af-454445555731-8bc62051d01460c7&q=1&e=8f12e60a-aafb-44bb-8a35-b4781b90d8c1&u=http%3A%2F%2Fwww.unixarea.de%2F +49-176-38902045 Public GnuPG key: https://protect2.fireeye.com/v1/url?k=31323334-501d5122-313273af-454445555731-a831eed841ce4cbb&q=1&e=8f12e60a-aafb-44bb-8a35-b4781b90d8c1&u=http%3A%2F%2Fwww.unixarea.de%2Fkey.pub
    
    I am not at war with Russia.  Я не воюю с Россией.
    Ich bin nicht im Krieg mit Russland.
    
  5. Re: Connection remains idle for more than 15 minutes, then the connection drops by IPVS setting in k8s kube-proxy

    Laurenz Albe <laurenz.albe@cybertec.at> — 2024-03-05T11:54:59Z

    On Tue, 2024-03-05 at 11:37 +0000, M Tarkeshwar Rao wrote:
    > We want to use libpq library APIs only. Is there any support of keepalive at client side?
    
    Yes, there is.
    
    Just add "keepalives_idle=60" to the connection string.  See
    https://www.postgresql.org/docs/current/libpq-connect.html#LIBPQ-KEEPALIVES-IDLE
    
    Yours,
    Laurenz Albe