Skip to content

Commit

Permalink
Merge 9.3 beta 2
Browse files Browse the repository at this point in the history
  • Loading branch information
gleu committed Aug 15, 2013
1 parent 7024aa5 commit 1ab1971
Show file tree
Hide file tree
Showing 39 changed files with 373 additions and 246 deletions.
2 changes: 1 addition & 1 deletion postgresql/arch-dev.xml
Original file line number Diff line number Diff line change
Expand Up @@ -176,7 +176,7 @@

<para>
L'analyseur doit vérifier que la syntaxe de la chaîne de la requête
(arrivant comme un texte ASCII) est valide. Si la syntaxe est correcte, un
(arrivant comme un texte) est valide. Si la syntaxe est correcte, un
<firstterm>arbre d'analyse</firstterm> est construit et renvoyé, sinon
une erreur est retournée. Les analyseur et vérificateur syntaxiques sont
développés à l'aide des outils Unix bien connus
Expand Down
21 changes: 21 additions & 0 deletions postgresql/auto-explain.xml
Original file line number Diff line number Diff line change
Expand Up @@ -148,6 +148,27 @@

<varlistentry>
<term>
<varname>auto_explain.log_timing</varname> (<type>boolean</type>)
</term>
<indexterm>
<primary><varname>auto_explain.log_timing</varname> configuration parameter</primary>
</indexterm>
<listitem>
<para>
<varname>auto_explain.log_timing</varname> causes <command>EXPLAIN
(ANALYZE, TIMING off)</command> output, rather than just <command>EXPLAIN (ANALYZE)</command>
output. The overhead of repeatedly reading the system clock can slow down the
query significantly on some systems, so it may be useful to set this
parameter to <literal>FALSE</literal> when only actual row counts, and not
exact times, are needed.
This parameter is only effective when <varname>auto_explain.log_analyze</varname>
is also enabled. It defaults to <literal>TRUE</literal>.
</para>
</listitem>
</varlistentry>

<varlistentry>
<term>
<varname>auto_explain.log_nested_statements</varname> (<type>boolean</type>)
</term>
<indexterm>
Expand Down
6 changes: 5 additions & 1 deletion postgresql/backup.xml
Original file line number Diff line number Diff line change
Expand Up @@ -870,6 +870,8 @@ archive_command = 'copy "%p" "C:\\serveur\\repertoire_archive\\%f"' # Windows</
<filename>backup_label</filename> dans
le répertoire du cluster. Ce fichier contient les informations de la
sauvegarde, ceci incluant le moment du démarrage et le label.
The file is critical to the integrity of the backup, should
you need to restore from it.
</para>

<para>
Expand Down Expand Up @@ -1004,7 +1006,9 @@ SELECT pg_start_backup('label', true);
laquelle <function>pg_start_backup</function> a été exécuté et le nom du fichier
WAL initial. En cas de confusion, il est ainsi possible de regarder
dans le fichier sauvegarde et de déterminer avec précision de quelle session
de sauvegarde provient ce fichier.
de sauvegarde provient ce fichier. However, this file is not merely for your information; its
presence and contents are critical to the proper operation of the system's
recovery process.
</para>

<para>
Expand Down
2 changes: 1 addition & 1 deletion postgresql/catalogs.xml
Original file line number Diff line number Diff line change
Expand Up @@ -5272,7 +5272,7 @@ lourd ! -->
<entry></entry>
<entry>
Colonne sur laquelle porte la règle. Actuellement, cette colonne
vaut toujours 0 pour indiquer qu'il s'agit de la table entière.
vaut toujours -1 pour indiquer qu'il s'agit de la table entière.
</entry>
</row>

Expand Down
6 changes: 3 additions & 3 deletions postgresql/config.xml
Original file line number Diff line number Diff line change
Expand Up @@ -240,7 +240,7 @@ include 'filename'
<secondary>in configuration file</secondary>
</indexterm>
The <filename>postgresql.conf</filename> file can also contain
<firstterm>include_dir directives</firstterm>, which specify an entire directory
<literal>include_dir directives</literal>, which specify an entire directory
of configuration files to include. It is used similarly:
<programlisting>
include_dir 'directory'
Expand Down Expand Up @@ -3588,7 +3588,7 @@ local0.* /var/log/postgresql
<para>
Lorsque <varname>logging_collector</varname> est activé, ce paramètre
indique les noms des journaux applicatifs créés. La valeur est
traitée comme un motif <systemitem>strftime</systemitem>. Ainsi
traitée comme un motif <function>strftime</function>. Ainsi
les échappements <literal>%</literal> peuvent être utilisés pour
indiquer des noms de fichiers horodatés. (S'il y a des
échappements <literal>%</literal> dépendant des fuseaux horaires, le
Expand All @@ -3598,7 +3598,7 @@ local0.* /var/log/postgresql
la spécification de <ulink
url="http://pubs.opengroup.org/onlinepubs/009695399/functions/strftime.html">strftime</ulink>
par l'Open Group.
Notez que la fonction <systemitem>strftime</systemitem> du système n'est
Notez que la fonction <function>strftime</function> du système n'est
pas utilisée directement, ce qui entraîne que les extensions spécifiques
à la plateforme (non-standard) ne fonctionneront pas.
</para>
Expand Down
18 changes: 9 additions & 9 deletions postgresql/ddl.xml
Original file line number Diff line number Diff line change
Expand Up @@ -267,7 +267,7 @@ DROP TABLE produits;</programlisting>
valeur par défaut.
</para>

<sect2>
<sect2 id="ddl-constraints-check-constraints">
<title>Contraintes de vérification</title>

<indexterm>
Expand Down Expand Up @@ -479,7 +479,7 @@ DROP TABLE produits;</programlisting>
</tip>
</sect2>

<sect2>
<sect2 id="ddl-constraints-unique-constraints">
<title>Contraintes d'unicité</title>

<indexterm>
Expand Down Expand Up @@ -557,7 +557,7 @@ DROP TABLE produits;</programlisting>
</para>
</sect2>

<sect2>
<sect2 id="ddl-constraints-primary-keys">
<title>Clés primaires</title>

<indexterm>
Expand Down Expand Up @@ -1162,7 +1162,7 @@ CREATE TABLE cercles (
dont la page de référence est bien plus détaillée.
</para>

<sect2>
<sect2 id="ddl-alter-adding-a-column">
<title>Ajouter une colonne</title>

<indexterm>
Expand Down Expand Up @@ -1205,12 +1205,12 @@ CREATE TABLE cercles (

</sect2>

<sect2>
<title>Retirer une colonne</title>
<sect2 id="ddl-alter-removing-a-column">
<title>Supprimer une colonne</title>

<indexterm>
<primary>colonne</primary>
<secondary>retirer</secondary>
<secondary>supprimer</secondary>
</indexterm>

<para>
Expand All @@ -1227,7 +1227,7 @@ CREATE TABLE cercles (
</para>
</sect2>

<sect2>
<sect2 id="ddl-alter-adding-a-constraint">
<title>Ajouter une contrainte</title>

<indexterm>
Expand All @@ -1252,7 +1252,7 @@ ALTER TABLE produits ADD FOREIGN KEY (id_groupe_produit) REFERENCES groupes_prod
</para>
</sect2>

<sect2>
<sect2 id="ddl-alter-removing-a-constraint">
<title>Supprimer une contrainte</title>

<indexterm>
Expand Down
2 changes: 1 addition & 1 deletion postgresql/extend.xml
Original file line number Diff line number Diff line change
Expand Up @@ -148,7 +148,7 @@
</para>
</sect2>

<sect2>
<sect2 id="extend-type-system-domains">
<title>Les domaines</title>

<para>
Expand Down
27 changes: 27 additions & 0 deletions postgresql/fdwhandler.xml
Original file line number Diff line number Diff line change
Expand Up @@ -614,6 +614,33 @@ EndForeignModify (EState *estate,
l'exécuteur.
</para>

<para>
<programlisting>
int
IsForeignRelUpdatable (Relation rel);
</programlisting>

Report which update operations the specified foreign table supports.
The return value should be a bitmask of rule event numbers indicating
which operations are supported by the foreign table, using the
<literal>CmdType</literal> enumeration; that is,
<literal>(1 << CMD_UPDATE) = 4</literal> for <command>UPDATE</command>,
<literal>(1 << CMD_INSERT) = 8</literal> for <command>INSERT</command>, and
<literal>(1 << CMD_DELETE) = 16</literal> for <command>DELETE</command>.
</para>

<para>
If the <function>IsForeignRelUpdatable</function> pointer is set to
<literal>NULL</literal>, foreign tables are assumed to be insertable, updatable,
or deletable if the FDW provides <function>ExecForeignInsert</function>,
<function>ExecForeignUpdate</function>, or <function>ExecForeignDelete</function>
respectively. This function is only needed if the FDW supports some
tables that are updatable and some that are not. (Even then, it's
permissible to throw an error in the execution routine instead of
checking in this function. However, this function is used to determine
updatability for display in the <literal>information_schema</literal> views.)
</para>

</sect2>

<sect2 id="fdw-callbacks-explain">
Expand Down
67 changes: 44 additions & 23 deletions postgresql/func.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4130,24 +4130,24 @@ SELECT col1, (SELECT regexp_matches(col2, '(bar)(beque)')) FROM tab;
<!-- SAS 20080723 : les exemples suivants fonctionnent avec E'\\\s+' ou
E'\\s+'. Quelle est la différence ? N'y en a-t-il simplement pas un de trop
dans le premier exemple ?-->
SELECT foo FROM regexp_split_to_table('the quick brown fox jumped over the lazy dog', E'\\s+') AS foo;
SELECT foo FROM regexp_split_to_table('the quick brown fox jumps over the lazy dog', E'\\s+') AS foo;
foo
--------
the
quick
brown
fox
jumped
jumps
over
the
lazy
dog
(9 rows)

SELECT regexp_split_to_array('the quick brown fox jumped over the lazy dog', E'\\s+');
SELECT regexp_split_to_array('the quick brown fox jumps over the lazy dog', E'\\s+');
regexp_split_to_array
------------------------------------------------
{the,quick,brown,fox,jumped,over,the,lazy,dog}
{the,quick,brown,fox,jumps,over,the,lazy,dog}
(1 row)

SELECT foo FROM regexp_split_to_table('the quick brown fox', E'\\s*') AS foo;
Expand Down Expand Up @@ -10145,7 +10145,7 @@ transformation-table2
<tbody>
<row>
<entry><literal>-&gt;</literal></entry>
<entry>int</entry>
<entry><type>int</type></entry>
<entry>Obtient un élément du tableau JSON</entry>
<entry><literal>'[1,2,3]'::json-&gt;2</literal></entry>
</row>
Expand All @@ -10157,7 +10157,7 @@ transformation-table2
</row>
<row>
<entry><literal>-&gt;&gt;</literal></entry>
<entry>int</entry>
<entry><type>int</type></entry>
<entry>Obtient un élément du tableau JSON sous sa forme textuelle</entry>
<entry><literal>'[1,2,3]'::json-&gt;&gt;2</literal></entry>
</row>
Expand Down Expand Up @@ -10210,7 +10210,7 @@ transformation-table2
</indexterm>
<literal>array_to_json(anyarray [, pretty_bool])</literal>
</entry>
<entry>json</entry>
<entry><type>json</type></entry>
<entry>
Renvoie le tableau au format JSON. Un tableau PostgreSQL multi-dimensionnel
devient un tableau JSON de tableaux. Des retours à la ligne seront
Expand All @@ -10227,7 +10227,7 @@ transformation-table2
</indexterm>
<literal>row_to_json(record [, pretty_bool])</literal>
</entry>
<entry>json</entry>
<entry><type>json</type></entry>
<entry>
Renvoie la ligne au format JSON. Des retours à la ligne seront
ajoutés entre les éléments du niveau 1 si <parameter>pretty_bool</parameter>
Expand All @@ -10243,10 +10243,10 @@ transformation-table2
</indexterm>
<literal>to_json(anyelement)</literal>
</entry>
<entry>json</entry>
<entry><type>json</type></entry>
<entry>
Renvoie la valeur en tant que JSON. Si le type de données n'est pas
interne et qu'il existe une conversion du type vers JSON, la fonction
interne et qu'il existe une conversion du type vers <type>json</type>, la fonction
de conversion sera utilisée pour réaliser la conversion. Dans les autres
cas, pour toute valeur autre qu'un nombre, un booléen ou un NULL, la
représentation textuelle sera utilisée, échappée et placée entre
Expand All @@ -10262,7 +10262,7 @@ transformation-table2
</indexterm>
<literal>json_array_length(json)</literal>
</entry>
<entry>int</entry>
<entry><type>int</type></entry>
<entry>
Renvoie le nombre d'éléments dans le tableau JSON extérieur.
</entry>
Expand All @@ -10276,7 +10276,7 @@ transformation-table2
</indexterm>
<literal>json_each(json)</literal>
</entry>
<entry>SETOF key text, value json</entry>
<entry><type>SETOF key text, value json</type></entry>
<entry>
Étend l'objet JSON extérieur en un ensemble de paires clé/valeur.
</entry>
Expand Down Expand Up @@ -10319,7 +10319,7 @@ transformation-table2
</indexterm>
<literal>json_extract_path(from_json json, VARIADIC path_elems text[])</literal>
</entry>
<entry>json</entry>
<entry><type>json</type></entry>
<entry>
Renvoie l'objet JSON pointé par <parameter>path_elems</parameter>.
</entry>
Expand Down Expand Up @@ -10347,9 +10347,9 @@ transformation-table2
</indexterm>
<literal>json_object_keys(json)</literal>
</entry>
<entry>SETOF text</entry>
<entry><type>SETOF text</type></entry>
<entry>
Renvoie l'ensemble de clés de l'objet JSON. Seul l'objet externe sera
Renvoie l'ensemble de clés de l'objet JSON. Seul l'objet <quote>externe</quote> sera
affiché.
</entry>
<entry><literal>json_object_keys('{"f1":"abc","f2":{"f3":"a", "f4":"b"}}')</literal></entry>
Expand All @@ -10369,12 +10369,12 @@ transformation-table2
</indexterm>
<literal>json_populate_record(base anyelement, from_json json, [, use_json_as_text bool=false]</literal>
</entry>
<entry>anyelement</entry>
<entry><type>anyelement</type></entry>
<entry>
Étend l'objet from_json en une ligne dont les colonnes correspondent
Étend l'objet <replaceable>from_json</replaceable> en une ligne dont les colonnes correspondent
au type de l'enregistrement défini par base. La conversion fera de
gros efforts. Les colonnes dans base sans clé correspondante dans
from_json seront laissées NULL. Une colonne peut n'être spécifiée
<replaceable>from_json</replaceable> seront laissées NULL. Une colonne peut n'être spécifiée
qu'une seule fois.
</entry>
<entry><literal>select * from json_populate_record(null::x, '{"a":1,"b":2}')</literal></entry>
Expand All @@ -10393,7 +10393,7 @@ transformation-table2
</indexterm>
<literal>json_populate_recordset(base anyelement, from_json json, [, use_json_as_text bool=false]</literal>
</entry>
<entry>SETOF anyelement</entry>
<entry><type>SETOF anyelement</type></entry>
<entry>
Étend l'ensemble externe d'objets from_json en un ensemble dont les
colonnes correspondent au type d'enregistrement défini par base.
Expand All @@ -10419,7 +10419,7 @@ transformation-table2
</indexterm>
<literal>json_array_elements(json)</literal>
</entry>
<entry>SETOF json</entry>
<entry><type>SETOF json</type></entry>
<entry>
Étend un tableau JSON en un ensemble d'éléments JSON.
</entry>
Expand All @@ -10440,9 +10440,30 @@ transformation-table2

<note>
<para>
L'extension <xref linkend="hstore"/> a une conversion de hstore vers
json, pour que les valeurs hstore converties soient représentées sous
leur forme d'objet JSON, et non pas sous leur forme textuelle.
The <type>json</type> functions and operators can impose stricter validity requirements
than the type's input functions. In particular, they check much more closely that any use
of Unicode surrogate pairs to designate characters outside the Unicode Basic Multilingual
Plane is correct.
</para>
</note>

<note>
<para>
Many of these functions and operators will convert Unicode escapes
in the JSON text to the appropriate UTF8 character when the database encoding is UTF8. In
other encodings the escape sequence must be for an ASCII character, and any other code point
in a Unicode escape sequence will result in an error.
In general, it is best to avoid mixing Unicode escapes in JSON with a non-UTF8 database
encoding, if possible.
</para>
</note>

<note>
<para>
L'extension <xref linkend="hstore"/> a une conversion de <type>hstore</type>
vers <type>json</type>, pour que les valeurs <type>hstore</type>
converties soient représentées sous leur forme d'objet JSON, et non pas
sous leur forme textuelle.
</para>
</note>

Expand Down

0 comments on commit 1ab1971

Please sign in to comment.