Fix typos in comments.
Backpatch to all supported versions, where applicable, to make backpatching of future fixes go more smoothly. Josh Soref Discussion: https://www.postgresql.org/message-id/CACZqfqCf+5qRztLPgmmosr-B0Ye4srWzzw_mo4c_8_B_mtjmJQ@mail.gmail.com
This commit is contained in:
parent
12b4bdcb43
commit
1dd06ede17
|
@ -6979,7 +6979,7 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
|
|||
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
|
||||
|
||||
# When Autoconf chooses install-sh as install program it tries to generate
|
||||
# a relative path to it in each makefile where it subsitutes it. This clashes
|
||||
# a relative path to it in each makefile where it substitutes it. This clashes
|
||||
# with our Makefile.global concept. This workaround helps.
|
||||
case $INSTALL in
|
||||
*install-sh*) install_bin='';;
|
||||
|
@ -7123,7 +7123,7 @@ fi
|
|||
$as_echo "$MKDIR_P" >&6; }
|
||||
|
||||
# When Autoconf chooses install-sh as mkdir -p program it tries to generate
|
||||
# a relative path to it in each makefile where it subsitutes it. This clashes
|
||||
# a relative path to it in each makefile where it substitutes it. This clashes
|
||||
# with our Makefile.global concept. This workaround helps.
|
||||
case $MKDIR_P in
|
||||
*install-sh*) MKDIR_P='\${SHELL} \${top_srcdir}/config/install-sh -c -d';;
|
||||
|
|
|
@ -857,7 +857,7 @@ fi
|
|||
|
||||
AC_PROG_INSTALL
|
||||
# When Autoconf chooses install-sh as install program it tries to generate
|
||||
# a relative path to it in each makefile where it subsitutes it. This clashes
|
||||
# a relative path to it in each makefile where it substitutes it. This clashes
|
||||
# with our Makefile.global concept. This workaround helps.
|
||||
case $INSTALL in
|
||||
*install-sh*) install_bin='';;
|
||||
|
@ -870,7 +870,7 @@ AC_PROG_LN_S
|
|||
AC_PROG_AWK
|
||||
AC_PROG_MKDIR_P
|
||||
# When Autoconf chooses install-sh as mkdir -p program it tries to generate
|
||||
# a relative path to it in each makefile where it subsitutes it. This clashes
|
||||
# a relative path to it in each makefile where it substitutes it. This clashes
|
||||
# with our Makefile.global concept. This workaround helps.
|
||||
case $MKDIR_P in
|
||||
*install-sh*) MKDIR_P='\${SHELL} \${top_srcdir}/config/install-sh -c -d';;
|
||||
|
|
|
@ -1019,7 +1019,7 @@ SELECT cube_dim('(4,8,15,16,23),(4,8,15,16,23)'::cube);
|
|||
5
|
||||
(1 row)
|
||||
|
||||
-- Test of cube_ll_coord function (retrieves LL coodinate values)
|
||||
-- Test of cube_ll_coord function (retrieves LL coordinate values)
|
||||
--
|
||||
SELECT cube_ll_coord('(-1,1),(2,-2)'::cube, 1);
|
||||
cube_ll_coord
|
||||
|
@ -1075,7 +1075,7 @@ SELECT cube_ll_coord('(42,137)'::cube, 3);
|
|||
0
|
||||
(1 row)
|
||||
|
||||
-- Test of cube_ur_coord function (retrieves UR coodinate values)
|
||||
-- Test of cube_ur_coord function (retrieves UR coordinate values)
|
||||
--
|
||||
SELECT cube_ur_coord('(-1,1),(2,-2)'::cube, 1);
|
||||
cube_ur_coord
|
||||
|
|
|
@ -1019,7 +1019,7 @@ SELECT cube_dim('(4,8,15,16,23),(4,8,15,16,23)'::cube);
|
|||
5
|
||||
(1 row)
|
||||
|
||||
-- Test of cube_ll_coord function (retrieves LL coodinate values)
|
||||
-- Test of cube_ll_coord function (retrieves LL coordinate values)
|
||||
--
|
||||
SELECT cube_ll_coord('(-1,1),(2,-2)'::cube, 1);
|
||||
cube_ll_coord
|
||||
|
@ -1075,7 +1075,7 @@ SELECT cube_ll_coord('(42,137)'::cube, 3);
|
|||
0
|
||||
(1 row)
|
||||
|
||||
-- Test of cube_ur_coord function (retrieves UR coodinate values)
|
||||
-- Test of cube_ur_coord function (retrieves UR coordinate values)
|
||||
--
|
||||
SELECT cube_ur_coord('(-1,1),(2,-2)'::cube, 1);
|
||||
cube_ur_coord
|
||||
|
|
|
@ -1019,7 +1019,7 @@ SELECT cube_dim('(4,8,15,16,23),(4,8,15,16,23)'::cube);
|
|||
5
|
||||
(1 row)
|
||||
|
||||
-- Test of cube_ll_coord function (retrieves LL coodinate values)
|
||||
-- Test of cube_ll_coord function (retrieves LL coordinate values)
|
||||
--
|
||||
SELECT cube_ll_coord('(-1,1),(2,-2)'::cube, 1);
|
||||
cube_ll_coord
|
||||
|
@ -1075,7 +1075,7 @@ SELECT cube_ll_coord('(42,137)'::cube, 3);
|
|||
0
|
||||
(1 row)
|
||||
|
||||
-- Test of cube_ur_coord function (retrieves UR coodinate values)
|
||||
-- Test of cube_ur_coord function (retrieves UR coordinate values)
|
||||
--
|
||||
SELECT cube_ur_coord('(-1,1),(2,-2)'::cube, 1);
|
||||
cube_ur_coord
|
||||
|
|
|
@ -1019,7 +1019,7 @@ SELECT cube_dim('(4,8,15,16,23),(4,8,15,16,23)'::cube);
|
|||
5
|
||||
(1 row)
|
||||
|
||||
-- Test of cube_ll_coord function (retrieves LL coodinate values)
|
||||
-- Test of cube_ll_coord function (retrieves LL coordinate values)
|
||||
--
|
||||
SELECT cube_ll_coord('(-1,1),(2,-2)'::cube, 1);
|
||||
cube_ll_coord
|
||||
|
@ -1075,7 +1075,7 @@ SELECT cube_ll_coord('(42,137)'::cube, 3);
|
|||
0
|
||||
(1 row)
|
||||
|
||||
-- Test of cube_ur_coord function (retrieves UR coodinate values)
|
||||
-- Test of cube_ur_coord function (retrieves UR coordinate values)
|
||||
--
|
||||
SELECT cube_ur_coord('(-1,1),(2,-2)'::cube, 1);
|
||||
cube_ur_coord
|
||||
|
|
|
@ -246,7 +246,7 @@ SELECT cube_dim('(0,0,0)'::cube);
|
|||
SELECT cube_dim('(42,42,42),(42,42,42)'::cube);
|
||||
SELECT cube_dim('(4,8,15,16,23),(4,8,15,16,23)'::cube);
|
||||
|
||||
-- Test of cube_ll_coord function (retrieves LL coodinate values)
|
||||
-- Test of cube_ll_coord function (retrieves LL coordinate values)
|
||||
--
|
||||
SELECT cube_ll_coord('(-1,1),(2,-2)'::cube, 1);
|
||||
SELECT cube_ll_coord('(-1,1),(2,-2)'::cube, 2);
|
||||
|
@ -258,7 +258,7 @@ SELECT cube_ll_coord('(42,137)'::cube, 1);
|
|||
SELECT cube_ll_coord('(42,137)'::cube, 2);
|
||||
SELECT cube_ll_coord('(42,137)'::cube, 3);
|
||||
|
||||
-- Test of cube_ur_coord function (retrieves UR coodinate values)
|
||||
-- Test of cube_ur_coord function (retrieves UR coordinate values)
|
||||
--
|
||||
SELECT cube_ur_coord('(-1,1),(2,-2)'::cube, 1);
|
||||
SELECT cube_ur_coord('(-1,1),(2,-2)'::cube, 2);
|
||||
|
|
|
@ -11,7 +11,7 @@ CREATE FUNCTION earth() RETURNS float8
|
|||
LANGUAGE SQL IMMUTABLE
|
||||
AS 'SELECT ''6378168''::float8';
|
||||
|
||||
-- Astromers may want to change the earth function so that distances will be
|
||||
-- Astronomers may want to change the earth function so that distances will be
|
||||
-- returned in degrees. To do this comment out the above definition and
|
||||
-- uncomment the one below. Note that doing this will break the regression
|
||||
-- tests.
|
||||
|
|
|
@ -23,7 +23,7 @@
|
|||
* Product 9 + 21 + 7 + 3 + 1 + 12 + 4 + 24 + 7 + 15 + 0 + 0 = 103
|
||||
* 103 / 10 = 10 remainder 3
|
||||
* Check digit 10 - 3 = 7
|
||||
* => 977-1144875-00-7 ?? <- suplemental number (number of the week, month, etc.)
|
||||
* => 977-1144875-00-7 ?? <- supplemental number (number of the week, month, etc.)
|
||||
* ^^ 00 for non-daily publications (01=Monday, 02=Tuesday, ...)
|
||||
*
|
||||
* The hyphenation is always in after the four digits of the ISSN code.
|
||||
|
|
|
@ -160,7 +160,7 @@ dehyphenate(char *bufO, char *bufI)
|
|||
* into bufO using the given hyphenation range TABLE.
|
||||
* Assumes the input string to be used is of only digits.
|
||||
*
|
||||
* Returns the number of characters acctually hyphenated.
|
||||
* Returns the number of characters actually hyphenated.
|
||||
*/
|
||||
static unsigned
|
||||
hyphenate(char *bufO, char *bufI, const char *(*TABLE)[2], const unsigned TABLE_index[10][2])
|
||||
|
@ -748,7 +748,7 @@ string2ean(const char *str, bool errorOK, ean13 *result,
|
|||
}
|
||||
else if (*aux2 == '!' && *(aux2 + 1) == '\0')
|
||||
{
|
||||
/* the invalid check digit sufix was found, set it */
|
||||
/* the invalid check digit suffix was found, set it */
|
||||
if (!magic)
|
||||
valid = false;
|
||||
magic = true;
|
||||
|
|
|
@ -1105,7 +1105,7 @@ SELECT '{a.b.c.d.e,B.df}'::ltree[] ? '{A.b.c.d.e,*.df}';
|
|||
t
|
||||
(1 row)
|
||||
|
||||
--exractors
|
||||
--extractors
|
||||
SELECT ('{3456,1.2.3.34}'::ltree[] ?@> '1.2.3.4') is null;
|
||||
?column?
|
||||
----------
|
||||
|
|
|
@ -197,7 +197,7 @@ pushval_asis(QPRS_STATE *state, int type, char *strval, int lenval, uint16 flag)
|
|||
|
||||
#define STACKDEPTH 32
|
||||
/*
|
||||
* make polish notaion of query
|
||||
* make polish notation of query
|
||||
*/
|
||||
static int32
|
||||
makepol(QPRS_STATE *state)
|
||||
|
|
|
@ -204,7 +204,7 @@ SELECT 'a.b.c.d.e'::ltree ? '{A.b.c.d.e, a.*}';
|
|||
SELECT '{a.b.c.d.e,B.df}'::ltree[] ? '{A.b.c.d.e}';
|
||||
SELECT '{a.b.c.d.e,B.df}'::ltree[] ? '{A.b.c.d.e,*.df}';
|
||||
|
||||
--exractors
|
||||
--extractors
|
||||
SELECT ('{3456,1.2.3.34}'::ltree[] ?@> '1.2.3.4') is null;
|
||||
SELECT '{3456,1.2.3}'::ltree[] ?@> '1.2.3.4';
|
||||
SELECT '{3456,1.2.3.4}'::ltree[] ?<@ '1.2.3';
|
||||
|
|
|
@ -789,7 +789,7 @@ main(int argc, char **argv)
|
|||
{
|
||||
/*
|
||||
* Once we have restored this file successfully we can remove some
|
||||
* prior WAL files. If this restore fails we musn't remove any
|
||||
* prior WAL files. If this restore fails we mustn't remove any
|
||||
* file because some of them will be requested again immediately
|
||||
* after the failed restore, or when we restart recovery.
|
||||
*/
|
||||
|
|
|
@ -311,7 +311,7 @@ pullf_read_max(PullFilter *pf, int len, uint8 **data_p, uint8 *tmpbuf)
|
|||
}
|
||||
|
||||
/*
|
||||
* caller wants exatly len bytes and dont bother with references
|
||||
* caller wants exactly len bytes and don't bother with references
|
||||
*/
|
||||
int
|
||||
pullf_read_fixed(PullFilter *src, int len, uint8 *dst)
|
||||
|
|
|
@ -139,7 +139,7 @@ bn_to_mpi(mpz_t *bn)
|
|||
}
|
||||
|
||||
/*
|
||||
* Decide the number of bits in the random componont k
|
||||
* Decide the number of bits in the random component k
|
||||
*
|
||||
* It should be in the same range as p for signing (which
|
||||
* is deprecated), but can be much smaller for encrypting.
|
||||
|
@ -147,8 +147,8 @@ bn_to_mpi(mpz_t *bn)
|
|||
* Until I research it further, I just mimic gpg behaviour.
|
||||
* It has a special mapping table, for values <= 5120,
|
||||
* above that it uses 'arbitrary high number'. Following
|
||||
* algorihm hovers 10-70 bits above gpg values. And for
|
||||
* larger p, it uses gpg's algorihm.
|
||||
* algorithm hovers 10-70 bits above gpg values. And for
|
||||
* larger p, it uses gpg's algorithm.
|
||||
*
|
||||
* The point is - if k gets large, encryption will be
|
||||
* really slow. It does not matter for decryption.
|
||||
|
|
|
@ -74,7 +74,7 @@ bn_to_mpi(BIGNUM *bn)
|
|||
}
|
||||
|
||||
/*
|
||||
* Decide the number of bits in the random componont k
|
||||
* Decide the number of bits in the random component k
|
||||
*
|
||||
* It should be in the same range as p for signing (which
|
||||
* is deprecated), but can be much smaller for encrypting.
|
||||
|
@ -82,8 +82,8 @@ bn_to_mpi(BIGNUM *bn)
|
|||
* Until I research it further, I just mimic gpg behaviour.
|
||||
* It has a special mapping table, for values <= 5120,
|
||||
* above that it uses 'arbitrary high number'. Following
|
||||
* algorihm hovers 10-70 bits above gpg values. And for
|
||||
* larger p, it uses gpg's algorihm.
|
||||
* algorithm hovers 10-70 bits above gpg values. And for
|
||||
* larger p, it uses gpg's algorithm.
|
||||
*
|
||||
* The point is - if k gets large, encryption will be
|
||||
* really slow. It does not matter for decryption.
|
||||
|
|
|
@ -897,7 +897,7 @@ restore(char *result, float val, int n)
|
|||
if (Abs(exp) <= 4)
|
||||
{
|
||||
/*
|
||||
* remove the decimal point from the mantyssa and write the digits
|
||||
* remove the decimal point from the mantissa and write the digits
|
||||
* to the buf array
|
||||
*/
|
||||
for (p = result + sign, i = 10, dp = 0; *p != 'e'; p++, i++)
|
||||
|
|
|
@ -23,7 +23,7 @@
|
|||
* When we ask SELinux whether the required privileges are allowed or not,
|
||||
* we use security_compute_av(3). It needs us to represent object classes
|
||||
* and access vectors using 'external' codes defined in the security policy.
|
||||
* It is determinded in the runtime, not build time. So, it needs an internal
|
||||
* It is determined in the runtime, not build time. So, it needs an internal
|
||||
* service to translate object class/access vectors which we want to check
|
||||
* into the code which kernel want to be given.
|
||||
*/
|
||||
|
|
|
@ -206,7 +206,7 @@ SELECT * FROM auth_tbl; -- failed
|
|||
SELECT sepgsql_setcon(NULL); -- end of session
|
||||
SELECT sepgsql_getcon();
|
||||
|
||||
-- the pooler cannot touch these tables directry
|
||||
-- the pooler cannot touch these tables directly
|
||||
SELECT * FROM foo_tbl; -- failed
|
||||
|
||||
SELECT * FROM var_tbl; -- failed
|
||||
|
|
|
@ -89,7 +89,7 @@ check_primary_key(PG_FUNCTION_ARGS)
|
|||
/* internal error */
|
||||
elog(ERROR, "check_primary_key: cannot process DELETE events");
|
||||
|
||||
/* If UPDATion the must check new Tuple, not old one */
|
||||
/* If UPDATE, then must check new Tuple, not old one */
|
||||
else
|
||||
tuple = trigdata->tg_newtuple;
|
||||
|
||||
|
|
|
@ -29,7 +29,7 @@
|
|||
# modified by Ray Aspeitia 12-03-2003 :
|
||||
# added log rotation script to db startup
|
||||
# modified StartupParameters.plist "Provides" parameter to make it easier to
|
||||
# start and stop with the SystemStarter utitlity
|
||||
# start and stop with the SystemStarter utility
|
||||
|
||||
# use the below command in order to correctly start/stop/restart PG with log rotation script:
|
||||
# SystemStarter [start|stop|restart] PostgreSQL
|
||||
|
|
|
@ -414,7 +414,7 @@ CREATE FUNCTION stat(text,text)
|
|||
LANGUAGE INTERNAL
|
||||
RETURNS NULL ON NULL INPUT;
|
||||
|
||||
--reset - just for debuging
|
||||
--reset - just for debugging
|
||||
CREATE FUNCTION reset_tsearch()
|
||||
RETURNS void
|
||||
as 'MODULE_PATHNAME', 'tsa_reset_tsearch'
|
||||
|
|
|
@ -612,7 +612,7 @@ xpath_table(PG_FUNCTION_ARGS)
|
|||
|
||||
/*
|
||||
* At the moment we assume that the returned attributes make sense for the
|
||||
* XPath specififed (i.e. we trust the caller). It's not fatal if they get
|
||||
* XPath specified (i.e. we trust the caller). It's not fatal if they get
|
||||
* it wrong - the input function for the column type will raise an error
|
||||
* if the path result can't be converted into the correct binary
|
||||
* representation.
|
||||
|
|
|
@ -405,7 +405,7 @@ $(shlib): $(OBJS) $(DLL_DEFFILE) | $(SHLIB_PREREQS)
|
|||
$(CC) $(CFLAGS) -shared -static-libgcc -o $@ $(OBJS) $(DLL_DEFFILE) $(LDFLAGS) $(LDFLAGS_SL) $(SHLIB_LINK) $(LIBS) -Wl,--out-implib=$(stlib)
|
||||
endif
|
||||
|
||||
endif # PORTNAME == cgywin
|
||||
endif # PORTNAME == cygwin
|
||||
endif # PORTNAME == cygwin || PORTNAME == win32
|
||||
|
||||
|
||||
|
|
|
@ -28,7 +28,7 @@ The current implementation of GiST supports:
|
|||
|
||||
The support for concurrency implemented in PostgreSQL was developed based on
|
||||
the paper "Access Methods for Next-Generation Database Systems" by
|
||||
Marcel Kornaker:
|
||||
Marcel Kornacker:
|
||||
|
||||
http://www.sai.msu.su/~megera/postgres/gist/papers/concurrency/access-methods-for-next-generation.pdf.gz
|
||||
|
||||
|
|
|
@ -208,7 +208,7 @@ typedef struct RewriteMappingFile
|
|||
} RewriteMappingFile;
|
||||
|
||||
/*
|
||||
* A single In-Memeory logical rewrite mapping, hanging of
|
||||
* A single In-Memory logical rewrite mapping, hanging off
|
||||
* RewriteMappingFile->mappings.
|
||||
*/
|
||||
typedef struct RewriteMappingDataEntry
|
||||
|
|
|
@ -468,7 +468,7 @@ static void getRelationIdentity(StringInfo buffer, Oid relid);
|
|||
*
|
||||
* Note: If the object is not found, we don't give any indication of the
|
||||
* reason. (It might have been a missing schema if the name was qualified, or
|
||||
* an inexistant type name in case of a cast, function or operator; etc).
|
||||
* a nonexistent type name in case of a cast, function or operator; etc).
|
||||
* Currently there is only one caller that might be interested in such info, so
|
||||
* we don't spend much effort here. If more callers start to care, it might be
|
||||
* better to add some support for that in this function.
|
||||
|
|
|
@ -652,7 +652,7 @@ createdb(const CreatedbStmt *stmt)
|
|||
|
||||
/*
|
||||
* Force synchronous commit, thus minimizing the window between
|
||||
* creation of the database files and commital of the transaction. If
|
||||
* creation of the database files and committal of the transaction. If
|
||||
* we crash before committing, we'll have a DB that's taking up disk
|
||||
* space but is not in pg_database, which is not good.
|
||||
*/
|
||||
|
@ -906,7 +906,7 @@ dropdb(const char *dbname, bool missing_ok)
|
|||
|
||||
/*
|
||||
* Force synchronous commit, thus minimizing the window between removal of
|
||||
* the database files and commital of the transaction. If we crash before
|
||||
* the database files and committal of the transaction. If we crash before
|
||||
* committing, we'll have a DB that's gone on disk but still there
|
||||
* according to pg_database, which is not good.
|
||||
*/
|
||||
|
@ -1263,7 +1263,7 @@ movedb(const char *dbname, const char *tblspcname)
|
|||
|
||||
/*
|
||||
* Force synchronous commit, thus minimizing the window between
|
||||
* copying the database files and commital of the transaction. If we
|
||||
* copying the database files and committal of the transaction. If we
|
||||
* crash before committing, we'll leave an orphaned set of files on
|
||||
* disk, which is not fatal but not good either.
|
||||
*/
|
||||
|
|
|
@ -2760,7 +2760,7 @@ ExplainYAMLLineStarting(ExplainState *es)
|
|||
}
|
||||
|
||||
/*
|
||||
* YAML is a superset of JSON; unfortuantely, the YAML quoting rules are
|
||||
* YAML is a superset of JSON; unfortunately, the YAML quoting rules are
|
||||
* ridiculously complicated -- as documented in sections 5.3 and 7.3.3 of
|
||||
* http://yaml.org/spec/1.2/spec.html -- so we chose to just quote everything.
|
||||
* Empty strings, strings with leading or trailing whitespace, and strings
|
||||
|
|
|
@ -1348,7 +1348,7 @@ CreateCast(CreateCastStmt *stmt)
|
|||
(errcode(ERRCODE_WRONG_OBJECT_TYPE),
|
||||
errmsg("cast will be ignored because the target data type is a domain")));
|
||||
|
||||
/* Detemine the cast method */
|
||||
/* Determine the cast method */
|
||||
if (stmt->func != NULL)
|
||||
castmethod = COERCION_METHOD_FUNCTION;
|
||||
else if (stmt->inout)
|
||||
|
|
|
@ -96,7 +96,7 @@ static void RangeVarCallbackForReindexIndex(const RangeVar *relation,
|
|||
* Errors arising from the attribute list still apply.
|
||||
*
|
||||
* Most column type changes that can skip a table rewrite do not invalidate
|
||||
* indexes. We ackowledge this when all operator classes, collations and
|
||||
* indexes. We acknowledge this when all operator classes, collations and
|
||||
* exclusion operators match. Though we could further permit intra-opfamily
|
||||
* changes for btree and hash indexes, that adds subtle complexity with no
|
||||
* concrete benefit for core types.
|
||||
|
@ -901,7 +901,7 @@ CheckMutability(Expr *expr)
|
|||
* indxpath.c could do something with. However, that seems overly
|
||||
* restrictive. One useful application of partial indexes is to apply
|
||||
* a UNIQUE constraint across a subset of a table, and in that scenario
|
||||
* any evaluatable predicate will work. So accept any predicate here
|
||||
* any evaluable predicate will work. So accept any predicate here
|
||||
* (except ones requiring a plan), and let indxpath.c fend for itself.
|
||||
*/
|
||||
static void
|
||||
|
|
|
@ -5849,7 +5849,7 @@ ATAddCheckConstraint(List **wqueue, AlteredTableInfo *tab, Relation rel,
|
|||
|
||||
/*
|
||||
* Check if ONLY was specified with ALTER TABLE. If so, allow the
|
||||
* contraint creation only if there are no children currently. Error out
|
||||
* constraint creation only if there are no children currently. Error out
|
||||
* otherwise.
|
||||
*/
|
||||
if (!recurse && children != NIL)
|
||||
|
|
|
@ -354,7 +354,7 @@ advance_windowaggregate(WindowAggState *winstate,
|
|||
|
||||
/*
|
||||
* We must track the number of rows included in transValue, since to
|
||||
* remove the last input, advance_windowaggregate_base() musn't call the
|
||||
* remove the last input, advance_windowaggregate_base() mustn't call the
|
||||
* inverse transition function, but simply reset transValue back to its
|
||||
* initial value.
|
||||
*/
|
||||
|
|
|
@ -87,7 +87,7 @@ static MemoryContext parsed_hba_context = NULL;
|
|||
*
|
||||
* NOTE: the IdentLine structs can contain pre-compiled regular expressions
|
||||
* that live outside the memory context. Before destroying or resetting the
|
||||
* memory context, they need to be expliticly free'd.
|
||||
* memory context, they need to be explicitly free'd.
|
||||
*/
|
||||
static List *parsed_ident_lines = NIL;
|
||||
static MemoryContext parsed_ident_context = NULL;
|
||||
|
|
|
@ -111,7 +111,7 @@ gimme_edge_table(PlannerInfo *root, Gene *tour1, Gene *tour2,
|
|||
for (index1 = 0; index1 < num_gene; index1++)
|
||||
{
|
||||
/*
|
||||
* presume the tour is circular, i.e. 1->2, 2->3, 3->1 this operaton
|
||||
* presume the tour is circular, i.e. 1->2, 2->3, 3->1 this operation
|
||||
* maps n back to 1
|
||||
*/
|
||||
|
||||
|
@ -314,7 +314,7 @@ gimme_gene(PlannerInfo *root, Edge edge, Edge *edge_table)
|
|||
/*
|
||||
* give priority to candidates with fewest remaining unused edges;
|
||||
* find out what the minimum number of unused edges is
|
||||
* (minimum_edges); if there is more than one cadidate with the
|
||||
* (minimum_edges); if there is more than one candidate with the
|
||||
* minimum number of unused edges keep count of this number
|
||||
* (minimum_count);
|
||||
*/
|
||||
|
|
|
@ -1377,7 +1377,7 @@ select_mergejoin_clauses(PlannerInfo *root,
|
|||
/*
|
||||
* Insist that each side have a non-redundant eclass. This
|
||||
* restriction is needed because various bits of the planner expect
|
||||
* that each clause in a merge be associatable with some pathkey in a
|
||||
* that each clause in a merge be associable with some pathkey in a
|
||||
* canonical pathkey list, but redundant eclasses can't appear in
|
||||
* canonical sort orderings. (XXX it might be worth relaxing this,
|
||||
* but not enough time to address it for 8.3.)
|
||||
|
|
|
@ -184,7 +184,7 @@ query_planner(PlannerInfo *root, List *tlist,
|
|||
/*
|
||||
* Now distribute "placeholders" to base rels as needed. This has to be
|
||||
* done after join removal because removal could change whether a
|
||||
* placeholder is evaluatable at a base rel.
|
||||
* placeholder is evaluable at a base rel.
|
||||
*/
|
||||
add_placeholders_to_base_rels(root);
|
||||
|
||||
|
|
|
@ -24,7 +24,7 @@
|
|||
* Detect whether there is a joinclause that involves
|
||||
* the two given relations.
|
||||
*
|
||||
* Note: the joinclause does not have to be evaluatable with only these two
|
||||
* Note: the joinclause does not have to be evaluable with only these two
|
||||
* relations. This is intentional. For example consider
|
||||
* SELECT * FROM a, b, c WHERE a.x = (b.y + c.z)
|
||||
* If a is much larger than the other tables, it may be worthwhile to
|
||||
|
|
|
@ -550,7 +550,7 @@ join_clause_is_movable_into(RestrictInfo *rinfo,
|
|||
Relids currentrelids,
|
||||
Relids current_and_outer)
|
||||
{
|
||||
/* Clause must be evaluatable given available context */
|
||||
/* Clause must be evaluable given available context */
|
||||
if (!bms_is_subset(rinfo->clause_relids, current_and_outer))
|
||||
return false;
|
||||
|
||||
|
|
|
@ -9897,7 +9897,7 @@ table_ref: relation_expr opt_alias_clause
|
|||
n->lateral = true;
|
||||
n->subquery = $2;
|
||||
n->alias = $3;
|
||||
/* same coment as above */
|
||||
/* same comment as above */
|
||||
if ($3 == NULL)
|
||||
{
|
||||
if (IsA($2, SelectStmt) &&
|
||||
|
|
|
@ -5181,7 +5181,7 @@ CountUnconnectedWorkers(void)
|
|||
}
|
||||
|
||||
/*
|
||||
* Count up number of child processes of specified types (dead_end chidren
|
||||
* Count up number of child processes of specified types (dead_end children
|
||||
* are always excluded).
|
||||
*/
|
||||
static int
|
||||
|
|
|
@ -1576,7 +1576,7 @@ ReorderBufferCommit(ReorderBuffer *rb, TransactionId xid,
|
|||
*
|
||||
* NB: Transactions handled here have to have actively aborted (i.e. have
|
||||
* produced an abort record). Implicitly aborted transactions are handled via
|
||||
* ReorderBufferAbortOld(); transactions we're just not interesteded in, but
|
||||
* ReorderBufferAbortOld(); transactions we're just not interested in, but
|
||||
* which have committed are handled in ReorderBufferForget().
|
||||
*
|
||||
* This function purges this transaction and its contents from memory and
|
||||
|
@ -1644,7 +1644,7 @@ ReorderBufferAbortOld(ReorderBuffer *rb, TransactionId oldestRunningXid)
|
|||
* toplevel xid.
|
||||
*
|
||||
* This is significantly different to ReorderBufferAbort() because
|
||||
* transactions that have committed need to be treated differenly from aborted
|
||||
* transactions that have committed need to be treated differently from aborted
|
||||
* ones since they may have modified the catalog.
|
||||
*
|
||||
* Note that this is only allowed to be called in the moment a transaction
|
||||
|
@ -2455,7 +2455,7 @@ StartupReorderBuffer(void)
|
|||
|
||||
/*
|
||||
* ok, has to be a surviving logical slot, iterate and delete
|
||||
* everythign starting with xid-*
|
||||
* everything starting with xid-*
|
||||
*/
|
||||
sprintf(path, "pg_replslot/%s", logical_de->d_name);
|
||||
|
||||
|
|
|
@ -662,7 +662,7 @@ SnapBuildProcessChange(SnapBuild *builder, TransactionId xid, XLogRecPtr lsn)
|
|||
if (builder->snapshot == NULL)
|
||||
{
|
||||
builder->snapshot = SnapBuildBuildSnapshot(builder, xid);
|
||||
/* inrease refcount for the snapshot builder */
|
||||
/* increase refcount for the snapshot builder */
|
||||
SnapBuildSnapIncRefcount(builder->snapshot);
|
||||
}
|
||||
|
||||
|
@ -894,7 +894,7 @@ SnapBuildEndTxn(SnapBuild *builder, XLogRecPtr lsn, TransactionId xid)
|
|||
{
|
||||
/*
|
||||
* None of the originally running transaction is running anymore,
|
||||
* so our incrementaly built snapshot now is consistent.
|
||||
* so our incrementally built snapshot now is consistent.
|
||||
*/
|
||||
ereport(LOG,
|
||||
(errmsg("logical decoding found consistent point at %X/%X",
|
||||
|
|
|
@ -376,7 +376,7 @@ shm_mq_send(shm_mq_handle *mqh, Size nbytes, void *data, bool nowait)
|
|||
* it will point to a temporary buffer. This mostly avoids data copying in
|
||||
* the hoped-for case where messages are short compared to the buffer size,
|
||||
* while still allowing longer messages. In either case, the return value
|
||||
* remains valid until the next receive operation is perfomed on the queue.
|
||||
* remains valid until the next receive operation is performed on the queue.
|
||||
*
|
||||
* When nowait = false, we'll wait on our process latch when the ring buffer
|
||||
* is empty and we have not yet received a full message. The sender will
|
||||
|
|
|
@ -2702,7 +2702,7 @@ GetLockConflicts(const LOCKTAG *locktag, LOCKMODE lockmode)
|
|||
vxids = (VirtualTransactionId *)
|
||||
palloc0(sizeof(VirtualTransactionId) * (MaxBackends + 1));
|
||||
|
||||
/* Compute hash code and partiton lock, and look up conflicting modes. */
|
||||
/* Compute hash code and partition lock, and look up conflicting modes. */
|
||||
hashcode = LockTagHashCode(locktag);
|
||||
partitionLock = LockHashPartitionLock(hashcode);
|
||||
conflictMask = lockMethodTable->conflictTab[lockmode];
|
||||
|
|
|
@ -3198,7 +3198,7 @@ ReleasePredicateLocks(bool isCommit)
|
|||
/*
|
||||
* We can't trust XactReadOnly here, because a transaction which started
|
||||
* as READ WRITE can show as READ ONLY later, e.g., within
|
||||
* substransactions. We want to flag a transaction as READ ONLY if it
|
||||
* subtransactions. We want to flag a transaction as READ ONLY if it
|
||||
* commits without writing so that de facto READ ONLY transactions get the
|
||||
* benefit of some RO optimizations, so we will use this local variable to
|
||||
* get some cleanup logic right which is based on whether the transaction
|
||||
|
|
|
@ -179,7 +179,7 @@ LexizeExec(LexizeData *ld, ParsedLex **correspondLexem)
|
|||
if (ld->curDictId == InvalidOid)
|
||||
{
|
||||
/*
|
||||
* usial mode: dictionary wants only one word, but we should keep in
|
||||
* usual mode: dictionary wants only one word, but we should keep in
|
||||
* mind that we should go through all stack
|
||||
*/
|
||||
|
||||
|
@ -272,7 +272,7 @@ LexizeExec(LexizeData *ld, ParsedLex **correspondLexem)
|
|||
|
||||
/*
|
||||
* We should be sure that current type of lexeme is recognized
|
||||
* by our dictinonary: we just check is it exist in list of
|
||||
* by our dictionary: we just check is it exist in list of
|
||||
* dictionaries ?
|
||||
*/
|
||||
for (i = 0; i < map->len && !dictExists; i++)
|
||||
|
@ -618,7 +618,7 @@ generateHeadline(HeadlineParsedText *prs)
|
|||
/* start of a new fragment */
|
||||
infrag = 1;
|
||||
numfragments++;
|
||||
/* add a fragment delimitor if this is after the first one */
|
||||
/* add a fragment delimiter if this is after the first one */
|
||||
if (numfragments > 1)
|
||||
{
|
||||
memcpy(ptr, prs->fragdelim, prs->fragdelimlen);
|
||||
|
|
|
@ -2419,7 +2419,7 @@ mark_hl_words(HeadlineParsedText *prs, TSQuery query, int highlight,
|
|||
break;
|
||||
}
|
||||
if (curlen < min_words && i >= prs->curwords)
|
||||
{ /* got end of text and our cover is shoter
|
||||
{ /* got end of text and our cover is shorter
|
||||
* than min_words */
|
||||
for (i = p - 1; i >= 0; i--)
|
||||
{
|
||||
|
|
|
@ -2278,7 +2278,7 @@ seq_search(char *name, const char *const * array, int type, int max, int *len)
|
|||
|
||||
for (last = 0, a = array; *a != NULL; a++)
|
||||
{
|
||||
/* comperate first chars */
|
||||
/* compare first chars */
|
||||
if (*name != **a)
|
||||
continue;
|
||||
|
||||
|
|
|
@ -533,7 +533,7 @@ calc_hist_selectivity(TypeCacheEntry *typcache, VariableStatData *vardata,
|
|||
{
|
||||
/*
|
||||
* Lower bound no longer matters. Just estimate the fraction
|
||||
* with an upper bound <= const uppert bound
|
||||
* with an upper bound <= const upper bound
|
||||
*/
|
||||
hist_selec =
|
||||
calc_hist_selectivity_scalar(typcache, &const_upper,
|
||||
|
|
|
@ -778,7 +778,7 @@ calc_rank_cd(const float4 *arrdata, TSVector txt, TSQuery query, int method)
|
|||
|
||||
/*
|
||||
* if doc are big enough then ext.q may be equal to ext.p due to limit
|
||||
* of posional information. In this case we approximate number of
|
||||
* of positional information. In this case we approximate number of
|
||||
* noise word as half cover's length
|
||||
*/
|
||||
nNoise = (ext.q - ext.p) - (ext.end - ext.begin);
|
||||
|
@ -787,7 +787,7 @@ calc_rank_cd(const float4 *arrdata, TSVector txt, TSQuery query, int method)
|
|||
Wdoc += Cpos / ((double) (1 + nNoise));
|
||||
|
||||
CurExtPos = ((double) (ext.q + ext.p)) / 2.0;
|
||||
if (NExtent > 0 && CurExtPos > PrevExtPos /* prevent devision by
|
||||
if (NExtent > 0 && CurExtPos > PrevExtPos /* prevent division by
|
||||
* zero in a case of
|
||||
multiple lexize */ )
|
||||
SumDist += 1.0 / (CurExtPos - PrevExtPos);
|
||||
|
|
|
@ -342,7 +342,7 @@ window_lag(PG_FUNCTION_ARGS)
|
|||
|
||||
/*
|
||||
* lag_with_offset
|
||||
* returns the value of VE evelulated on a row that is OFFSET
|
||||
* returns the value of VE evaluated on a row that is OFFSET
|
||||
* rows before the current row within a partition,
|
||||
* per spec.
|
||||
*/
|
||||
|
|
|
@ -1033,7 +1033,7 @@ RelationInitPhysicalAddr(Relation relation)
|
|||
* points to the current file since the older file will be gone (or
|
||||
* truncated). The new file will still contain older rows so lookups
|
||||
* in them will work correctly. This wouldn't work correctly if
|
||||
* rewrites were allowed to change the schema in a noncompatible way,
|
||||
* rewrites were allowed to change the schema in an incompatible way,
|
||||
* but those are prevented both on catalog tables and on user tables
|
||||
* declared as additional catalog tables.
|
||||
*/
|
||||
|
|
|
@ -1062,7 +1062,7 @@ process_settings(Oid databaseid, Oid roleid)
|
|||
|
||||
relsetting = heap_open(DbRoleSettingRelationId, AccessShareLock);
|
||||
|
||||
/* read all the settings under the same snapsot for efficiency */
|
||||
/* read all the settings under the same snapshot for efficiency */
|
||||
snapshot = RegisterSnapshot(GetCatalogSnapshot(DbRoleSettingRelationId));
|
||||
|
||||
/* Later settings are ignored if set earlier. */
|
||||
|
|
|
@ -18,7 +18,7 @@ OBJS = guc.o help_config.o pg_rusage.o ps_status.o rbtree.o \
|
|||
superuser.o timeout.o tzparser.o
|
||||
|
||||
# This location might depend on the installation directories. Therefore
|
||||
# we can't subsitute it into pg_config.h.
|
||||
# we can't substitute it into pg_config.h.
|
||||
ifdef krb_srvtab
|
||||
override CPPFLAGS += -DPG_KRB_SRVTAB='"$(krb_srvtab)"'
|
||||
endif
|
||||
|
|
|
@ -1566,7 +1566,7 @@ HeapTupleHeaderIsOnlyLocked(HeapTupleHeader tuple)
|
|||
}
|
||||
|
||||
/*
|
||||
* check whether the transaciont id 'xid' is in the pre-sorted array 'xip'.
|
||||
* check whether the transaction id 'xid' is in the pre-sorted array 'xip'.
|
||||
*/
|
||||
static bool
|
||||
TransactionIdInArray(TransactionId xid, TransactionId *xip, Size num)
|
||||
|
|
|
@ -202,7 +202,7 @@ InitArchiveFmt_Custom(ArchiveHandle *AH)
|
|||
*
|
||||
* Optional.
|
||||
*
|
||||
* Set up extrac format-related TOC data.
|
||||
* Set up extract format-related TOC data.
|
||||
*/
|
||||
static void
|
||||
_ArchiveEntry(ArchiveHandle *AH, TocEntry *te)
|
||||
|
|
|
@ -598,7 +598,7 @@ StoreQueryTuple(const PGresult *result)
|
|||
char *varname;
|
||||
char *value;
|
||||
|
||||
/* concate prefix and column name */
|
||||
/* concatenate prefix and column name */
|
||||
varname = psprintf("%s%s", pset.gset_prefix, colname);
|
||||
|
||||
if (!PQgetisnull(result, 0, i))
|
||||
|
|
|
@ -1879,7 +1879,7 @@ describeOneTableDetails(const char *schemaname,
|
|||
printTableAddFooter(&cont, _("Check constraints:"));
|
||||
for (i = 0; i < tuples; i++)
|
||||
{
|
||||
/* untranslated contraint name and def */
|
||||
/* untranslated constraint name and def */
|
||||
printfPQExpBuffer(&buf, " \"%s\" %s",
|
||||
PQgetvalue(result, i, 0),
|
||||
PQgetvalue(result, i, 1));
|
||||
|
@ -2785,7 +2785,7 @@ listTables(const char *tabtypes, const char *pattern, bool verbose, bool showSys
|
|||
if (verbose)
|
||||
{
|
||||
/*
|
||||
* As of PostgreSQL 9.0, use pg_table_size() to show a more acurate
|
||||
* As of PostgreSQL 9.0, use pg_table_size() to show a more accurate
|
||||
* size of a table, including FSM, VM and TOAST tables.
|
||||
*/
|
||||
if (pset.sversion >= 90000)
|
||||
|
|
|
@ -60,7 +60,7 @@ typedef enum
|
|||
SYNCHRONOUS_COMMIT_REMOTE_FLUSH /* wait for local and remote flush */
|
||||
} SyncCommitLevel;
|
||||
|
||||
/* Define the default setting for synchonous_commit */
|
||||
/* Define the default setting for synchronous_commit */
|
||||
#define SYNCHRONOUS_COMMIT_ON SYNCHRONOUS_COMMIT_REMOTE_FLUSH
|
||||
|
||||
/* Synchronous commit level */
|
||||
|
|
|
@ -890,7 +890,7 @@ typedef NameData *Name;
|
|||
/* gettext domain name mangling */
|
||||
|
||||
/*
|
||||
* To better support parallel installations of major PostgeSQL
|
||||
* To better support parallel installations of major PostgreSQL
|
||||
* versions as well as parallel installations of major library soname
|
||||
* versions, we mangle the gettext domain name by appending those
|
||||
* version numbers. The coding rule ought to be that whereever the
|
||||
|
|
|
@ -927,7 +927,7 @@ typedef LONG slock_t;
|
|||
#define SPIN_DELAY() spin_delay()
|
||||
|
||||
/* If using Visual C++ on Win64, inline assembly is unavailable.
|
||||
* Use a _mm_pause instrinsic instead of rep nop.
|
||||
* Use a _mm_pause intrinsic instead of rep nop.
|
||||
*/
|
||||
#if defined(_WIN64)
|
||||
static __forceinline void
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
/* src/interfaces/ecpg/ecpglib/execute.c */
|
||||
|
||||
/*
|
||||
* The aim is to get a simpler inteface to the database routines.
|
||||
* All the tidieous messing around with tuples is supposed to be hidden
|
||||
* The aim is to get a simpler interface to the database routines.
|
||||
* All the tedious messing around with tuples is supposed to be hidden
|
||||
* by this function.
|
||||
*/
|
||||
/* Author: Linus Tolke
|
||||
|
|
|
@ -323,8 +323,8 @@ PGTYPESdate_fmt_asc(date dDate, const char *fmtstring, char *outbuf)
|
|||
* PGTYPESdate_defmt_asc
|
||||
*
|
||||
* function works as follows:
|
||||
* - first we analyze the paramters
|
||||
* - if this is a special case with no delimiters, add delimters
|
||||
* - first we analyze the parameters
|
||||
* - if this is a special case with no delimiters, add delimiters
|
||||
* - find the tokens. First we look for numerical values. If we have found
|
||||
* less than 3 tokens, we check for the months' names and thereafter for
|
||||
* the abbreviations of the months' names.
|
||||
|
|
|
@ -1368,11 +1368,11 @@ PGTYPESnumeric_cmp(numeric *var1, numeric *var2)
|
|||
{
|
||||
/* use cmp_abs function to calculate the result */
|
||||
|
||||
/* both are positive: normal comparation with cmp_abs */
|
||||
/* both are positive: normal comparison with cmp_abs */
|
||||
if (var1->sign == NUMERIC_POS && var2->sign == NUMERIC_POS)
|
||||
return cmp_abs(var1, var2);
|
||||
|
||||
/* both are negative: return the inverse of the normal comparation */
|
||||
/* both are negative: return the inverse of the normal comparison */
|
||||
if (var1->sign == NUMERIC_NEG && var2->sign == NUMERIC_NEG)
|
||||
{
|
||||
/*
|
||||
|
|
|
@ -205,7 +205,7 @@ create_questionmarks(char *name, bool array)
|
|||
|
||||
/* In case we have a struct, we have to print as many "?" as there are attributes in the struct
|
||||
* An array is only allowed together with an element argument
|
||||
* This is essantially only used for inserts, but using a struct as input parameter is an error anywhere else
|
||||
* This is essentially only used for inserts, but using a struct as input parameter is an error anywhere else
|
||||
* so we don't have to worry here. */
|
||||
|
||||
if (p->type->type == ECPGt_struct || (array && p->type->type == ECPGt_array && p->type->u.element->type == ECPGt_struct))
|
||||
|
|
|
@ -355,7 +355,7 @@ ECPGExecuteImmediateStmt: EXECUTE IMMEDIATE execstring
|
|||
$$ = $3;
|
||||
};
|
||||
/*
|
||||
* variable decalartion outside exec sql declare block
|
||||
* variable declaration outside exec sql declare block
|
||||
*/
|
||||
ECPGVarDeclaration: single_vt_declaration;
|
||||
|
||||
|
@ -707,7 +707,7 @@ struct_union_type_with_symbol: s_struct_union_symbol
|
|||
free(forward_name);
|
||||
forward_name = NULL;
|
||||
|
||||
/* This is essantially a typedef but needs the keyword struct/union as well.
|
||||
/* This is essentially a typedef but needs the keyword struct/union as well.
|
||||
* So we create the typedef for each struct definition with symbol */
|
||||
for (ptr = types; ptr != NULL; ptr = ptr->next)
|
||||
{
|
||||
|
@ -1275,7 +1275,7 @@ descriptor_item: SQL_CARDINALITY { $$ = ECPGd_cardinality; }
|
|||
;
|
||||
|
||||
/*
|
||||
* set/reset the automatic transaction mode, this needs a differnet handling
|
||||
* set/reset the automatic transaction mode, this needs a different handling
|
||||
* as the other set commands
|
||||
*/
|
||||
ECPGSetAutocommit: SET SQL_AUTOCOMMIT '=' on_off { $$ = $4; }
|
||||
|
@ -1287,7 +1287,7 @@ on_off: ON { $$ = mm_strdup("on"); }
|
|||
;
|
||||
|
||||
/*
|
||||
* set the actual connection, this needs a differnet handling as the other
|
||||
* set the actual connection, this needs a different handling as the other
|
||||
* set commands
|
||||
*/
|
||||
ECPGSetConnection: SET CONNECTION TO connection_object { $$ = $4; }
|
||||
|
|
|
@ -547,7 +547,7 @@ sub dump_fields
|
|||
if ($len == 1)
|
||||
{
|
||||
|
||||
# Straight assignement
|
||||
# Straight assignment
|
||||
$str = ' $$ = ' . $flds_new[0] . ';';
|
||||
add_to_buffer('rules', $str);
|
||||
}
|
||||
|
|
|
@ -794,7 +794,7 @@ pg_fe_getauthname(PQExpBuffer errorMessage)
|
|||
* be sent in cleartext if it is encrypted on the client side. This is
|
||||
* good because it ensures the cleartext password won't end up in logs,
|
||||
* pg_stat displays, etc. We export the function so that clients won't
|
||||
* be dependent on low-level details like whether the enceyption is MD5
|
||||
* be dependent on low-level details like whether the encryption is MD5
|
||||
* or something else.
|
||||
*
|
||||
* Arguments are the cleartext password, and the SQL name of the user it
|
||||
|
|
|
@ -32,7 +32,7 @@
|
|||
|
||||
#include "win32.h"
|
||||
|
||||
/* Declared here to avoid pulling in all includes, which causes name collissions */
|
||||
/* Declared here to avoid pulling in all includes, which causes name collisions */
|
||||
#ifdef ENABLE_NLS
|
||||
extern char *
|
||||
libpq_gettext(const char *msgid)
|
||||
|
|
|
@ -79,7 +79,7 @@ to be installed on your system.
|
|||
If this option is given, a copy of each file will be saved with
|
||||
the given suffix that contains the suggested changes. This does
|
||||
not require any external programs. Note that this does not
|
||||
automagially add a dot between the original filename and the
|
||||
automagically add a dot between the original filename and the
|
||||
suffix. If you want the dot, you have to include it in the option
|
||||
argument.
|
||||
|
||||
|
@ -4364,9 +4364,9 @@ DPPP_(my_vload_module)(U32 flags, SV *name, SV *ver, va_list *args)
|
|||
|
||||
OP * const modname = newSVOP(OP_CONST, 0, name);
|
||||
/* 5.005 has a somewhat hacky force_normal that doesn't croak on
|
||||
SvREADONLY() if PL_compling is true. Current perls take care in
|
||||
SvREADONLY() if PL_compiling is true. Current perls take care in
|
||||
ck_require() to correctly turn off SvREADONLY before calling
|
||||
force_normal_flags(). This seems a better fix than fudging PL_compling
|
||||
force_normal_flags(). This seems a better fix than fudging PL_compiling
|
||||
*/
|
||||
SvREADONLY_off(((SVOP*)modname)->op_sv);
|
||||
modname->op_private |= OPpCONST_BARE;
|
||||
|
|
|
@ -274,7 +274,7 @@ PLy_traceback(PyObject *e, PyObject *v, PyObject *tb,
|
|||
long plain_lineno;
|
||||
|
||||
/*
|
||||
* The second frame points at the internal function, but to mimick
|
||||
* The second frame points at the internal function, but to mimic
|
||||
* Python error reporting we want to say <module>.
|
||||
*/
|
||||
if (*tb_depth == 1)
|
||||
|
|
|
@ -69,7 +69,7 @@ typedef union PLyTypeOutput
|
|||
PLyObToTuple r;
|
||||
} PLyTypeOutput;
|
||||
|
||||
/* all we need to move Postgresql data to Python objects,
|
||||
/* all we need to move PostgreSQL data to Python objects,
|
||||
* and vice versa
|
||||
*/
|
||||
typedef struct PLyTypeInfo
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
# be changed and a report of the closed day's receipts subsequently
|
||||
# run which will miss a receipt from the date which has been closed.
|
||||
#
|
||||
# There are only six permuations which must cause a serialization failure.
|
||||
# There are only six permutations which must cause a serialization failure.
|
||||
# Failure cases are where s1 overlaps both s2 and s3, but s2 commits before
|
||||
# s3 executes its first SELECT.
|
||||
#
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
#
|
||||
# Small, simple test showing read-only anomalies.
|
||||
#
|
||||
# There are only four permuations which must cause a serialization failure.
|
||||
# There are only four permutations which must cause a serialization failure.
|
||||
# Required failure cases are where s2 overlaps both s1 and s3, but s1
|
||||
# commits before s3 executes its first SELECT.
|
||||
#
|
||||
|
|
|
@ -308,7 +308,7 @@ INSERT INTO tmp3 values (5,50);
|
|||
-- Try (and fail) to add constraint due to invalid source columns
|
||||
ALTER TABLE tmp3 add constraint tmpconstr foreign key(c) references tmp2 match full;
|
||||
ERROR: column "c" referenced in foreign key constraint does not exist
|
||||
-- Try (and fail) to add constraint due to invalide destination columns explicitly given
|
||||
-- Try (and fail) to add constraint due to invalid destination columns explicitly given
|
||||
ALTER TABLE tmp3 add constraint tmpconstr foreign key(a) references tmp2(b) match full;
|
||||
ERROR: column "b" referenced in foreign key constraint does not exist
|
||||
-- Try (and fail) to add constraint due to invalid data
|
||||
|
|
|
@ -23,7 +23,7 @@ UPDATE toasttest SET cnt = cnt +1 RETURNING substring(toasttest::text, 1, 200);
|
|||
("one-toasted,one-null",1,,12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123
|
||||
(4 rows)
|
||||
|
||||
-- modification without modifying asigned value
|
||||
-- modification without modifying assigned value
|
||||
UPDATE toasttest SET cnt = cnt +1, f1 = f1 RETURNING substring(toasttest::text, 1, 200);
|
||||
substring
|
||||
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
@ -61,7 +61,7 @@ SELECT substring(toasttest::text, 1, 200) FROM toasttest;
|
|||
("one-toasted,one-null",4,,12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123
|
||||
(4 rows)
|
||||
|
||||
-- check we didn't screw with main/toast tuple visiblity
|
||||
-- check we didn't screw with main/toast tuple visibility
|
||||
VACUUM FREEZE toasttest;
|
||||
SELECT substring(toasttest::text, 1, 200) FROM toasttest;
|
||||
substring
|
||||
|
@ -95,7 +95,7 @@ UPDATE toasttest SET cnt = cnt +1 RETURNING substring(toasttest::text, 1, 200);
|
|||
("one-toasted,one-null",5,,12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123
|
||||
(4 rows)
|
||||
|
||||
-- modification without modifying asigned value
|
||||
-- modification without modifying assigned value
|
||||
UPDATE toasttest SET cnt = cnt +1, f1 = f1 RETURNING substring(toasttest::text, 1, 200);
|
||||
substring
|
||||
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
@ -135,7 +135,7 @@ SELECT substring(toasttest::text, 1, 200) FROM toasttest;
|
|||
("one-toasted,one-null, via indirect",0,1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890
|
||||
(5 rows)
|
||||
|
||||
-- check we didn't screw with main/toast tuple visiblity
|
||||
-- check we didn't screw with main/toast tuple visibility
|
||||
VACUUM FREEZE toasttest;
|
||||
SELECT substring(toasttest::text, 1, 200) FROM toasttest;
|
||||
substring
|
||||
|
|
|
@ -292,7 +292,7 @@ SELECT * FROM tvvm;
|
|||
-- test diemv when the mv does not exist
|
||||
DROP MATERIALIZED VIEW IF EXISTS no_such_mv;
|
||||
NOTICE: materialized view "no_such_mv" does not exist, skipping
|
||||
-- make sure invalid comination of options is prohibited
|
||||
-- make sure invalid combination of options is prohibited
|
||||
REFRESH MATERIALIZED VIEW CONCURRENTLY tvmm WITH NO DATA;
|
||||
ERROR: CONCURRENTLY and WITH NO DATA options cannot be used together
|
||||
-- no tuple locks on materialized views
|
||||
|
|
|
@ -1423,7 +1423,7 @@ select * from WSlot order by slotname;
|
|||
|
||||
--
|
||||
-- Install the central phone system and create the phone numbers.
|
||||
-- They are weired on insert to the patchfields. Again the
|
||||
-- They are wired on insert to the patchfields. Again the
|
||||
-- triggers automatically tell the PSlots to update their
|
||||
-- backlink field.
|
||||
--
|
||||
|
|
|
@ -97,7 +97,7 @@ Indexes:
|
|||
|
||||
-- succeed, oid unique index
|
||||
ALTER TABLE test_replica_identity REPLICA IDENTITY USING INDEX test_replica_identity_oid_idx;
|
||||
-- succeed, nondeferrable unique constraint over nonullable cols
|
||||
-- succeed, nondeferrable unique constraint over nonnullable cols
|
||||
ALTER TABLE test_replica_identity REPLICA IDENTITY USING INDEX test_replica_identity_unique_nondefer;
|
||||
-- succeed unique index over nonnullable cols
|
||||
ALTER TABLE test_replica_identity REPLICA IDENTITY USING INDEX test_replica_identity_keyab_key;
|
||||
|
|
|
@ -938,7 +938,7 @@ CREATE TABLE shoe_data (
|
|||
shoename char(10), -- primary key
|
||||
sh_avail integer, -- available # of pairs
|
||||
slcolor char(10), -- preferred shoelace color
|
||||
slminlen float, -- miminum shoelace length
|
||||
slminlen float, -- minimum shoelace length
|
||||
slmaxlen float, -- maximum shoelace length
|
||||
slunit char(8) -- length unit
|
||||
);
|
||||
|
|
|
@ -191,7 +191,7 @@ SELECT ts_lexize('hunspell', 'footballyklubber');
|
|||
{foot,ball,klubber}
|
||||
(1 row)
|
||||
|
||||
-- Synonim dictionary
|
||||
-- Synonym dictionary
|
||||
CREATE TEXT SEARCH DICTIONARY synonym (
|
||||
Template=synonym,
|
||||
Synonyms=synonym_sample
|
||||
|
|
|
@ -254,7 +254,7 @@ INSERT INTO tmp3 values (5,50);
|
|||
-- Try (and fail) to add constraint due to invalid source columns
|
||||
ALTER TABLE tmp3 add constraint tmpconstr foreign key(c) references tmp2 match full;
|
||||
|
||||
-- Try (and fail) to add constraint due to invalide destination columns explicitly given
|
||||
-- Try (and fail) to add constraint due to invalid destination columns explicitly given
|
||||
ALTER TABLE tmp3 add constraint tmpconstr foreign key(a) references tmp2(b) match full;
|
||||
|
||||
-- Try (and fail) to add constraint due to invalid data
|
||||
|
|
|
@ -11,7 +11,7 @@ SELECT descr, substring(make_tuple_indirect(toasttest)::text, 1, 200) FROM toast
|
|||
-- modification without changing varlenas
|
||||
UPDATE toasttest SET cnt = cnt +1 RETURNING substring(toasttest::text, 1, 200);
|
||||
|
||||
-- modification without modifying asigned value
|
||||
-- modification without modifying assigned value
|
||||
UPDATE toasttest SET cnt = cnt +1, f1 = f1 RETURNING substring(toasttest::text, 1, 200);
|
||||
|
||||
-- modification modifying, but effectively not changing
|
||||
|
@ -20,7 +20,7 @@ UPDATE toasttest SET cnt = cnt +1, f1 = f1||'' RETURNING substring(toasttest::te
|
|||
UPDATE toasttest SET cnt = cnt +1, f1 = '-'||f1||'-' RETURNING substring(toasttest::text, 1, 200);
|
||||
|
||||
SELECT substring(toasttest::text, 1, 200) FROM toasttest;
|
||||
-- check we didn't screw with main/toast tuple visiblity
|
||||
-- check we didn't screw with main/toast tuple visibility
|
||||
VACUUM FREEZE toasttest;
|
||||
SELECT substring(toasttest::text, 1, 200) FROM toasttest;
|
||||
|
||||
|
@ -42,7 +42,7 @@ CREATE TRIGGER toasttest_update_indirect
|
|||
-- modification without changing varlenas
|
||||
UPDATE toasttest SET cnt = cnt +1 RETURNING substring(toasttest::text, 1, 200);
|
||||
|
||||
-- modification without modifying asigned value
|
||||
-- modification without modifying assigned value
|
||||
UPDATE toasttest SET cnt = cnt +1, f1 = f1 RETURNING substring(toasttest::text, 1, 200);
|
||||
|
||||
-- modification modifying, but effectively not changing
|
||||
|
@ -53,7 +53,7 @@ UPDATE toasttest SET cnt = cnt +1, f1 = '-'||f1||'-' RETURNING substring(toastte
|
|||
INSERT INTO toasttest(descr, f1, f2) VALUES('one-toasted,one-null, via indirect', repeat('1234567890',30000), NULL);
|
||||
|
||||
SELECT substring(toasttest::text, 1, 200) FROM toasttest;
|
||||
-- check we didn't screw with main/toast tuple visiblity
|
||||
-- check we didn't screw with main/toast tuple visibility
|
||||
VACUUM FREEZE toasttest;
|
||||
SELECT substring(toasttest::text, 1, 200) FROM toasttest;
|
||||
|
||||
|
|
|
@ -92,7 +92,7 @@ SELECT * FROM tvvm;
|
|||
-- test diemv when the mv does not exist
|
||||
DROP MATERIALIZED VIEW IF EXISTS no_such_mv;
|
||||
|
||||
-- make sure invalid comination of options is prohibited
|
||||
-- make sure invalid combination of options is prohibited
|
||||
REFRESH MATERIALIZED VIEW CONCURRENTLY tvmm WITH NO DATA;
|
||||
|
||||
-- no tuple locks on materialized views
|
||||
|
|
|
@ -1350,7 +1350,7 @@ select * from WSlot order by slotname;
|
|||
|
||||
--
|
||||
-- Install the central phone system and create the phone numbers.
|
||||
-- They are weired on insert to the patchfields. Again the
|
||||
-- They are wired on insert to the patchfields. Again the
|
||||
-- triggers automatically tell the PSlots to update their
|
||||
-- backlink field.
|
||||
--
|
||||
|
|
|
@ -56,7 +56,7 @@ SELECT relreplident FROM pg_class WHERE oid = 'test_replica_identity'::regclass;
|
|||
-- succeed, oid unique index
|
||||
ALTER TABLE test_replica_identity REPLICA IDENTITY USING INDEX test_replica_identity_oid_idx;
|
||||
|
||||
-- succeed, nondeferrable unique constraint over nonullable cols
|
||||
-- succeed, nondeferrable unique constraint over nonnullable cols
|
||||
ALTER TABLE test_replica_identity REPLICA IDENTITY USING INDEX test_replica_identity_unique_nondefer;
|
||||
|
||||
-- succeed unique index over nonnullable cols
|
||||
|
|
|
@ -522,7 +522,7 @@ CREATE TABLE shoe_data (
|
|||
shoename char(10), -- primary key
|
||||
sh_avail integer, -- available # of pairs
|
||||
slcolor char(10), -- preferred shoelace color
|
||||
slminlen float, -- miminum shoelace length
|
||||
slminlen float, -- minimum shoelace length
|
||||
slmaxlen float, -- maximum shoelace length
|
||||
slunit char(8) -- length unit
|
||||
);
|
||||
|
|
|
@ -48,7 +48,7 @@ SELECT ts_lexize('hunspell', 'footballklubber');
|
|||
SELECT ts_lexize('hunspell', 'ballyklubber');
|
||||
SELECT ts_lexize('hunspell', 'footballyklubber');
|
||||
|
||||
-- Synonim dictionary
|
||||
-- Synonym dictionary
|
||||
CREATE TEXT SEARCH DICTIONARY synonym (
|
||||
Template=synonym,
|
||||
Synonyms=synonym_sample
|
||||
|
|
Loading…
Reference in New Issue