Search Postgresql Archives

Re: LISTEN/NOTIFY and python

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Tom Lane wrote:

The standard approach when using libpq directly is to get the file
descriptor number of the backend connection with PQsocket(), then
include that in the set of FDs that the client app's idle loop
select()s or poll()s on.

And Tino Wildenhain, in off-list mail, described getting the socket- fd from the PyGreSQL connection object and doing something analogous.

It turns out that Python's listen() takes ints =or= objects with a fileno() method, whence it gets the int, and PyGreSQL's connection objects qualify. So I can do this:

  import pg, select

  con = pg.connect(...)
  con.query("listen foo")

  while True:
    select.select([con], [], [])  # Wait for it ...
    print con.getnotify()

I wish I could do this with the more "standard" pgdb module, but, then again, LISTEN/NOTIFY aren't standard. Thanks, Tino and Tom, for the pointers toward this solution.

- John D. Burger
  MITRE



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux