diff --git a/doc/src/sgml/gin.sgml b/doc/src/sgml/gin.sgml index 6b382230fd01d4263550cee40478e744d0b74e14..0e4296872f3d8e1b08c7fa1ecae5125d11ad10e6 100644 --- a/doc/src/sgml/gin.sgml +++ b/doc/src/sgml/gin.sgml @@ -1,4 +1,4 @@ -<!-- $PostgreSQL: pgsql/doc/src/sgml/gin.sgml,v 2.4 2006/09/18 12:11:36 teodor Exp $ --> +<!-- $PostgreSQL: pgsql/doc/src/sgml/gin.sgml,v 2.5 2006/11/23 05:58:01 neilc Exp $ --> <chapter id="GIN"> <title>GIN Indexes</title> @@ -31,14 +31,13 @@ This is much the same advantage as using <acronym>GiST</acronym>. </para> - <para> - The <acronym>GIN</acronym> - implementation in <productname>PostgreSQL</productname> is primarily - maintained by Teodor Sigaev and Oleg Bartunov, and there is more - information on their - <ulink url="http://www.sai.msu.su/~megera/oddmuse/index.cgi/Gin">website</ulink>. - </para> - + <para> + The <acronym>GIN</acronym> + implementation in <productname>PostgreSQL</productname> is primarily + maintained by Teodor Sigaev and Oleg Bartunov. There is more + information about <acronym>GIN</acronym> on their + <ulink url="http://www.sai.msu.su/~megera/oddmuse/index.cgi/Gin">website</ulink>. + </para> </sect1> <sect1 id="gin-extensibility"> @@ -78,7 +77,7 @@ <variablelist> <varlistentry> - <term>int compare( Datum a, Datum b )</term> + <term>int compare(Datum a, Datum b)</term> <listitem> <para> Compares keys (not indexed values!) and returns an integer less than @@ -103,22 +102,22 @@ StrategyNumber n)</term> <listitem> <para> - Returns an array of keys of the query to be executed. n contains - the strategy number of the operation - (see <xref linkend="xindex-strategies">). - Depending on n, query may be different type. + Returns an array of keys of the query to be executed. n contains the + strategy number of the operation (see <xref + linkend="xindex-strategies">). Depending on n, query may be + different type. </para> </listitem> </varlistentry> <varlistentry> - <term>bool consistent( bool check[], StrategyNumber n, Datum query)</term> + <term>bool consistent(bool check[], StrategyNumber n, Datum query)</term> <listitem> <para> Returns TRUE if the indexed value satisfies the query qualifier with strategy n (or may satisfy in case of RECHECK mark in operator class). Each element of the check array is TRUE if the indexed value has a - corresponding key in the query: if (check[i] == TRUE ) the i-th key of + corresponding key in the query: if (check[i] == TRUE) the i-th key of the query is present in the indexed value. </para> </listitem> @@ -129,14 +128,14 @@ </sect1> <sect1 id="gin-tips"> -<title>GIN tips and trics</title> +<title>GIN tips and tricks</title> <variablelist> <varlistentry> <term>Create vs insert</term> <listitem> <para> - In most cases, insertion into <acronym>GIN</acronym> index is slow + In most cases, insertion into a <acronym>GIN</acronym> index is slow due to the likelihood of many keys being inserted for each value. So, for bulk insertions into a table it is advisable to to drop the GIN index and recreate it after finishing bulk insertion. @@ -169,9 +168,9 @@ the whole result set, chosen at random. </para> <para> - "Soft" means that the actual number of returned results could slightly - differ from the specified limit, depending on the query and the quality - of the system's random number generator. + <quote>Soft</quote> means that the actual number of returned results + could slightly differ from the specified limit, depending on the query + and the quality of the system's random number generator. </para> </listitem> </varlistentry> @@ -184,16 +183,16 @@ <para> <acronym>GIN</acronym> doesn't support full index scans due to their - extremely inefficiency: because there are often many keys per value, + extreme inefficiency: because there are often many keys per value, each heap pointer will returned several times. </para> <para> - When extractQuery returns zero keys, <acronym>GIN</acronym> will emit a - error: for different opclasses and strategies the semantic meaning of a void - query may be different (for example, any array contains the void array, - but they don't overlap the void array), and <acronym>GIN</acronym> can't - suggest reasonable answer. + When <function>extractQuery</function> returns zero keys, + <acronym>GIN</acronym> will emit an error: for different opclasses and + strategies the semantic meaning of a void query may be different (for + example, any array contains the void array, but they don't overlap the + void array), and <acronym>GIN</acronym> can't suggest a reasonable answer. </para> <para>