Skip to content
Snippets Groups Projects
Select Git revision
  • benchmark-tools
  • postgres-lambda
  • master default
  • REL9_4_25
  • REL9_5_20
  • REL9_6_16
  • REL_10_11
  • REL_11_6
  • REL_12_1
  • REL_12_0
  • REL_12_RC1
  • REL_12_BETA4
  • REL9_4_24
  • REL9_5_19
  • REL9_6_15
  • REL_10_10
  • REL_11_5
  • REL_12_BETA3
  • REL9_4_23
  • REL9_5_18
  • REL9_6_14
  • REL_10_9
  • REL_11_4
23 results

postgres-lambda-diff

  • Clone with SSH
  • Clone with HTTPS
  • user avatar
    Jan Wieck authored
    rules to be defined with different, per session controllable, behaviors
    for replication purposes.
    
    This will allow replication systems like Slony-I and, as has been stated
    on pgsql-hackers, other products to control the firing mechanism of
    triggers and rewrite rules without modifying the system catalog directly.
    
    The firing mechanisms are controlled by a new superuser-only GUC
    variable, session_replication_role, together with a change to
    pg_trigger.tgenabled and a new column pg_rewrite.ev_enabled. Both
    columns are a single char data type now (tgenabled was a bool before).
    The possible values in these attributes are:
    
         'O' - Trigger/Rule fires when session_replication_role is "origin"
               (default) or "local". This is the default behavior.
    
         'D' - Trigger/Rule is disabled and fires never
    
         'A' - Trigger/Rule fires always regardless of the setting of
               session_replication_role
    
         'R' - Trigger/Rule fires when session_replication_role is "replica"
    
    The GUC variable can only be changed as long as the system does not have
    any cached query plans. This will prevent changing the session role and
    accidentally executing stored procedures or functions that have plans
    cached that expand to the wrong query set due to differences in the rule
    firing semantics.
    
    The SQL syntax for changing a triggers/rules firing semantics is
    
         ALTER TABLE <tabname> <when> TRIGGER|RULE <name>;
    
         <when> ::= ENABLE | ENABLE ALWAYS | ENABLE REPLICA | DISABLE
    
    psql's \d command as well as pg_dump are extended in a backward
    compatible fashion.
    
    Jan
    0fe16500
    History
    PostgreSQL Database Management System
    =====================================
      
    This directory contains the source code distribution of the PostgreSQL
    database management system.
    
    PostgreSQL is an advanced object-relational database management system
    that supports an extended subset of the SQL standard, including
    transactions, foreign keys, subqueries, triggers, user-defined types
    and functions.  This distribution also contains C language bindings.
    
    PostgreSQL has many language interfaces including some of the more
    common listed below:
    
    C++ - http://thaiopensource.org/development/libpqxx/
    JDBC - http://jdbc.postgresql.org
    ODBC - http://odbc.postgresql.org
    Perl - http://search.cpan.org/~dbdpg/
    PHP - http://www.php.net
    Python - http://www.initd.org/
    Ruby - http://ruby.scripting.ca/postgres/
    
    Other language binding are available from a variety of contributing
    parties.
    
    PostgreSQL also has a great number of procedural languages available,
    a short but not complete list is below:
    
    PL/pgSQL - included in PostgreSQL source distribution
    PL/Perl - included in PostgreSQL source distribution
    PL/PHP - http://projects.commandprompt.com/projects/public/plphp
    PL/Python - included in PostgreSQL source distribution
    PL/Java - http://gborg.postgresql.org/project/pljava/projdisplay.php
    PL/Tcl - included in PostgreSQL source distribution
    
    See the file INSTALL for instructions on how to build and install
    PostgreSQL.  That file also lists supported operating systems and
    hardware platforms and contains information regarding any other
    software packages that are required to build or run the PostgreSQL
    system.  Changes between all PostgreSQL releases are recorded in the
    file HISTORY.  Copyright and license information can be found in the
    file COPYRIGHT.  A comprehensive documentation set is included in this
    distribution; it can be read as described in the installation
    instructions.
    
    The latest version of this software may be obtained at
    http://www.postgresql.org/download/.  For more information look at our
    web site located at http://www.postgresql.org/.