Thread: Re: [HACKERS] Java LISTEN/NOTIFY client library work-around
On Wed, 30 Nov 2011, Joel Jacobson wrote: > As you know, LISTEN/NOTIFY is broken in the Java client library. You have to > do a SELECT 1 in a while-loop to receive the notifications. > > http://jdbc.postgresql.org/documentation/head/listennotify.html This documentation is out of date. Currently you can get notifications without polling the database if you are not using a SSL connection. You still must poll the driver, using PGConnection.getNotifications, but it will return new notifications received without an intermediate database query. This doesn't work over SSL and potentially some other connection types because it uses InputStream.available that not all implementations support. Kris Jurka
2011/12/1 Kris Jurka <books@ejurka.com>
This documentation is out of date. Currently you can get notifications
On Wed, 30 Nov 2011, Joel Jacobson wrote:
> As you know, LISTEN/NOTIFY is broken in the Java client library. You have to
> do a SELECT 1 in a while-loop to receive the notifications.
>
> http://jdbc.postgresql.org/documentation/head/listennotify.html
without polling the database if you are not using a SSL connection. You
still must poll the driver, using PGConnection.getNotifications, but it
will return new notifications received without an intermediate database
query. This doesn't work over SSL and potentially some other connection
types because it uses InputStream.available that not all
implementations support.
I know it works without SSL, but we need SSL for this.
If it would be possible to fix it, my company is as I said willing to pay for the cost of such a patch.
Kris Jurka
Joel Jacobson
Trustly
+46703603801
On Thu, Dec 1, 2011 at 6:21 AM, Joel Jacobson <joel@trustly.com> wrote: > 2011/12/1 Kris Jurka <books@ejurka.com> >> >> >> >> On Wed, 30 Nov 2011, Joel Jacobson wrote: >> >> > As you know, LISTEN/NOTIFY is broken in the Java client library. You >> > have to >> > do a SELECT 1 in a while-loop to receive the notifications. >> > >> > http://jdbc.postgresql.org/documentation/head/listennotify.html >> >> This documentation is out of date. Currently you can get notifications >> without polling the database if you are not using a SSL connection. You >> still must poll the driver, using PGConnection.getNotifications, but it >> will return new notifications received without an intermediate database >> query. This doesn't work over SSL and potentially some other connection >> types because it uses InputStream.available that not all >> implementations support. > > > I know it works without SSL, but we need SSL for this. > > If it would be possible to fix it, my company is as I said willing to pay > for the cost of such a patch. I certainly don't want to discourage you from cleaning up the jdbc ssl situation, but one workaround might be to use stunnel. merlin