$Header: /home/prj/pg/ipa-pgpool2/cvsroot/ipa-pgpool2/pgpool_src/TODO,v 1.2 2006/04/07 02:20:07 t-ishii Exp $

TODO

o pgoool.confreloadб

o 3ʾΥΡɿб

-o ươ֥åSERIALƱݾڤ(2.6)

o SSLΥݡ

o ⤷SQLѡǤСơ֥ñ̤Υץꥱǽ

o å٥ΥɥХ󥹤ؼǤ뵡ǽɲ
  /* BEGIN SESSION LEVEL LOAD BALANCE */Ȥ

-o /*NO STRICT*/ Ȥ /*PARALLEL*/ ȤäؼҤäƤ褤Τ
  (pgsql-jp 35304)->2.6/*NO STRICT*/

-o parameter statusͤפƤʤƤ⥨顼ˤʤʤ褦ˤ
 (USNZǥץꥱ󤷤Ƥ㤬ä)(v2.5.4)

o load balanceΨSQLʸñ̤ǥȤǻǤ褦ˤ롥

- o STRICT⡼ɤǤäƤ⡤SELECTʤnon strictˤƤϤ
  2.5.2ǼǤȯ[pgsql-jp: 35294]ȡ

o Хmaster/slave mode&load balance modeΤȤˡreset queryޥ
  ¦ˤФʤmaster_slave modeǤʤФϵʤ->
  ʤ

-o pgpoolȻ˥(v2.5.1)

o å󳫻ϻȯԤ䤤碌pgpool.confǽˤ

-o åλȯԤ䤤碌pgpool.confǽˤ(v2.4)

-o Slony-Iб(v2.5b2)
  - ޥ¦Ϥ٤Ƥ̤¦SELECTΤ̤
  - ȥ󥶥֥åϥޥ¦ˤΤ̤
  - replication modeǤʤƤload balancemodeɲ

-o no connection pooling mode(v2.5b2)

-o schedule failover/(v2.5b1)
  - ñ˥ʥ

o fail back/switch backμ

o 3ʾΥФб

-o ॹפΰǽ(v2.5b2)

o query cache(regex 䤤碌Υѥ䥭åinvalidation
  ꤬Ǥ)

o ƺǽ

-o heart beat(v2.5b2)

o 󥹤replication
  - 󥹽ؿؤǥå褦ˤOKܡ
    פϡmasterΥåsecondarynextval()ޤԤĤ褦ˤ
    ʤФʤʤΤǡȥ󥶥֥åˤʤФʤ
    ʤ->ưŪ˥ȥ󥶥򳫻ϤФ褤ɤ䤤碌
    Ȥ˥ȥ󥶥򳫻Ϥ뤫ȽǤɬפ롥->ѡĥ꡼
    äƤ뤫->ޤǤꤿʤDMLä鼫ưȡ
    ǤSELECT nextval();ʤɤϤɤ롩->Ū˥󥹤򰷤ä
    뤳Ȥؼ뤷ʤ

o OIDreplication

o ơ֥ؿ

o ̵ߥꥫХ
  1) rsync

  2) 䤤碌ǤʤСñSELECTʳϰŪ䤤碌
     Ԥ⡼ɤ˰ܹ->Ǥ褤XID󥿤Ʊʤʤ
     open transactionä饢ܡȤ->ΥǤϥ
     λɬפꡩ

  3) CHECKPOINTȯ
  4) rsync
  5) ¦postmaster restart
  6) ̾⡼ɤ˰ܹ
     - ޥȥ꤬ؤ륱Ǥϴrestartɬס->
     ʤȤʤ
     - ¸ΥͥѤ뤫ȤSETꤷͤϤɤ뤫

  7) ʣWebФưƤpgpoolƤ˺ƵưˤϤɤ
     褤ޤɤpgpool̵ߥꥫХ뤫̤Υꥫ
     ѴФΩƤ褤->ñʤġɤΤǤϡ
     pgpoolshow status֤Ūİ٤Ǥ⽼ʬ
     

o ̵ߥꥫХ V2
  1) rsync

  2) ץȥ󥶥󤬤äԤġ

  3) ץȥ󥶥󤬤ʤʤäReadyForQueryλԤ
     ֤

  4) CHECKPOINTȯ
  5) rsync
  6) ¦postmaster restart
  7) ̾⡼ɤ˰ܹ
     - ޥȥ꤬ؤ륱Ǥϴrestartɬס->
     ʤȤʤ

  8) ʣWebФưƤpgpoolƤ˺ƵưˤϤɤ
     褤ޤɤpgpool̵ߥꥫХ뤫̤Υꥫ
     ѴФΩƤ褤->ñʤġɤΤǤϡ
     pgpoolshow status֤Ūİ٤Ǥ⽼ʬ
     

  :
  PGClusterư

  1) ץȥ󥶥󤬤ϡ줬ޤǥꥫ
     ХץԤ³

  2) ޤޥޥ饹ˤĤʤäƤåϤɤʤ뤫->
     ɤSQLꤲƤ⥨顼֤ˤʤ롥

  3) ꥫХ˿ˤĤʤäåϤɤʤ뤫ޥ/ꥫ
     楯饹ʳ³ϥץꥱ󥵡Фǥ塼
     󥰤롥

-o ޥɰν

  -f config_file (default  /usr/local/etc/pgpool.conf)

-o UNIX domain/INET domainξ socketб

  ǥեȤ Unix domain Τ߼աconfig  inetdomain  true ʤ
  СINET domain ͳ³դ롥

-o ФΥǡ

-o signal Υ֥å

-o SIGCHLD Υϥɥ

-o child δ르ꥺ

  child  num_min_children 򲼲ä num_init_children ˤʤޤ
  fork 

-o child timeout

o child ϲˤʤȤ accept Ƥ(LRU 塼)

o 饤Ȥ quit 顤LRU塼鼡Υ饤ȤФ
  ->childexitȥ塼Ȥ뤬Ǥ褤

-o TRUSTǧڰʳؤб

-o ХåɤؤΥͥ timeout դ

-o fail over

-o replication

-o load balancing

-o եȥɤߥåȤʤޤexitȡбХå
  ɤȥ󥶥λԤ(:ERROR:  current transaction is
  aborted, queries ignored until end of transaction block)ˤʤäƤ
  

-o ưpidեΥåԤ

-o configurePostgreSQL includeǥ쥯ȥǤ褦ˤ.Ȥ
  PostgreSQLincludeեʤ褦ˤ٤->Ȥꤢ
   --with-pgsqlǻǤ褦ˤ(6/24)

-o template0, template1ǡ١ؤΥͥ򥭥å夷ʤ(createdb
  ERROR:  CREATE DATABASE: source database "template1" is being accessed
  by other usersˤʤ)ޤregressionǡ١ؤΥͥ
  ⥭å夷ʤ(set authorizationطΥƥȤ̤ʤ)

-o ʲΥץȥμ

  - AuthenticationCleartextPassword
  - AuthenticationCryptPassword
  - AuthenticationMD5Password
  - BinaryRow
  - NotificationResponse
  - PasswordPacket
  - FunctionCall
  - FunctionResultResponse

-o եե뤬ĤʤȤǻäƤǥեͤ
  Ȥ

-o regression test̤

- o ץȥ3(PostgreSQL 7.4)б->ȤꤢV3 request褿
  V2fallback׵եȥɤ褦˲ɤV3ץȥ
  nativeбϤޤ

  եȥɤV2->ХåɤV2ǥͥ
			- V2Хå->³
			- V3Хå->³

  եȥɤV3->ХåɤV3ǥͥ
			- V2Хå->³(ǹ˥եȥ
			  ɤV2ͥΤV2ǥХåɤ
			  ³˹ԤȤǤ)->
			- V3Хå->³

  ɡեȥɤofferץȥСФƤ
  ȤäƥХåɤ³OK

-o Unixɥᥤ󥽥åȤΥѥpgpool.confѹǽˤ(debianк)

-o cancel requestؤб
