[Pgpool-hackers] First pcp command as PostgreSQL function

Jehan-Guillaume (ioguix) de Rorthais jgdr at dalibo.com
Wed Apr 20 18:23:10 UTC 2011


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 03/04/2011 01:38, Tatsuo Ishii wrote:
>> Hello,
>>
>> Following our previous discussions I created a PostgreSQL contrib module
>> which brings pgpool's pcp command as function in PostgreSQL. I called it
>> pgpool_adm, any better ideas ?
> 
> Great! I think "pgpool_adm" is fine.
> 
>> As a first step, I decided to focus on one function only: pcp_node_info.
>> I'll add other ones as soon as this one will be committable.
> 
> I see. BTW, are you going to implement a function for "show
> pool_status"?

Here is a new version of the contrib module, including support for
pcp_pool_status.

It requires a patched version of pgpool with my 2 patches
"split_reporting_functions-1.patch" and "pcp_pool_status-2.patch".

Follow the same installation instructions than in my previous emails to
install this module and, optionally some foreign server wrapper.

Then:

  pgpool=> SELECT * FROM pcp_pool_status('127.0.0.1', 10, 9898,
'pgpool_adm', 'password');

or, if you are using foreign server capability in postgresql 8.4+:

  pgpool=> SELECT * FROM pcp_pool_status('pgpool0');

Feedbacks and comments ?

>> INSTALL: (tested against current 9.1devel HEAD)
>>
>>   $ cd $PGSRC/contrib
>>   $ tar zxf pgpool_adm.tgz
>>   $ cd pgpool_adm
>>   $ make && sudo make install
>>
>> then:
>>
>>   $ psql pgpool
>>   CREATE SCHEMA pgpool;
>>   CREATE EXTENSION pgpool_adm WITH SCHEMA pgpool ;
>>   SELECT * FROM pgpool.pcp_node_info(0, 'localhost', 10, 9898,
>> 'pgpool_adm', 'password');
>>      host    | port |             status              |   weight
>>   -----------+------+---------------------------------+-------------
>>    localhost | 5491 | Waiting for connection to start | 1.46602e+13
>>   (1 ligne)
>>
>> If you don't want/cannot test with 9.1, just adapt and run the "CREATE
>> FUNCTION" query located in pgpool_adm/pgpool_adm--1.0.sql.
>>
>> NOTE:
>> I had to mess a bit to make the compilation work out of the box because
>> of my setup of pgpool installing stuffs in /usr/local/{lib,include}.
>> Basically editing my system ldd setup and configuring postgresql with
>> "--with-libraries" and "--with-includes". Drop me a mail if you have any
>> trouble.
>>
>> TODO:
>>   * I will try to make it work with foreign server and user mappings so
>> we will not have to give all servers parameters (host, port, timeout),
>> but most importantly, not have to write in clear text authentication
>> parameters.
>>   * Why do we backend_weight/RAND_MAX in the code ?
> 
> To normalize backend weight.
> 
>> Feedback & comments ?
>> - -- 
>> Jehan-Guillaume (ioguix) de Rorthais
>> DBA
>> http://www.dalibo.com
>> -----BEGIN PGP SIGNATURE-----
>> Version: GnuPG v1.4.11 (GNU/Linux)
>> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
>>
>> iEYEARECAAYFAk2UYwoACgkQXu9L1HbaT6KjFACgxOpULoq1eiqYSZCzWi7G8drz
>> 3lQAnAqHeq5CVgHbFP2TUCInOkzfW0C0
>> =NiOA
>> -----END PGP SIGNATURE-----


- -- 
Jehan-Guillaume (ioguix) de Rorthais
DBA
http://www.dalibo.com
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAk2vJI4ACgkQXu9L1HbaT6IzugCcDb1S7nWQRV9zOuKPGCE+gzOm
Jm0An0yscfYOebOGzyRBkha1hPZYPwsE
=2rXh
-----END PGP SIGNATURE-----
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pgpool_adm_3.tgz
Type: application/x-gtar
Size: 3496 bytes
Desc: not available
URL: <http://pgfoundry.org/pipermail/pgpool-hackers/attachments/20110420/bfa033c8/attachment-0001.gtar>


More information about the Pgpool-hackers mailing list