Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'contrib')
-rw-r--r--contrib/amcheck/verify_nbtree.c164
-rw-r--r--contrib/btree_gin/btree_gin.c11
-rw-r--r--contrib/cube/cube.c14
-rw-r--r--contrib/jsonb_plperl/jsonb_plperl.c4
-rw-r--r--contrib/jsonb_plpython/jsonb_plpython.c11
-rw-r--r--contrib/pg_trgm/trgm_gist.c6
-rw-r--r--contrib/pg_trgm/trgm_op.c32
-rw-r--r--contrib/postgres_fdw/postgres_fdw.c4
-rw-r--r--contrib/tcn/tcn.c2
-rw-r--r--contrib/test_decoding/test_decoding.c6
10 files changed, 135 insertions, 119 deletions
diff --git a/contrib/amcheck/verify_nbtree.c b/contrib/amcheck/verify_nbtree.c
index a3a52877482..a1438a2855e 100644
--- a/contrib/amcheck/verify_nbtree.c
+++ b/contrib/amcheck/verify_nbtree.c
@@ -227,12 +227,12 @@ bt_index_check_internal(Oid indrelid, bool parentcheck, bool heapallindexed)
* with heap relation locked first to prevent deadlocking). In hot
* standby mode this will raise an error when parentcheck is true.
*
- * There is no need for the usual indcheckxmin usability horizon test here,
- * even in the heapallindexed case, because index undergoing verification
- * only needs to have entries for a new transaction snapshot. (If this is
- * a parentcheck verification, there is no question about committed or
- * recently dead heap tuples lacking index entries due to concurrent
- * activity.)
+ * There is no need for the usual indcheckxmin usability horizon test
+ * here, even in the heapallindexed case, because index undergoing
+ * verification only needs to have entries for a new transaction snapshot.
+ * (If this is a parentcheck verification, there is no question about
+ * committed or recently dead heap tuples lacking index entries due to
+ * concurrent activity.)
*/
indrel = index_open(indrelid, lockmode);
@@ -366,8 +366,8 @@ bt_check_every_level(Relation rel, Relation heaprel, bool readonly,
* index fingerprinting should have reached all tuples returned by
* IndexBuildHeapScan().
*
- * In readonly case, we also check for problems with missing downlinks.
- * A second Bloom filter is used for this.
+ * In readonly case, we also check for problems with missing
+ * downlinks. A second Bloom filter is used for this.
*/
if (!state->readonly)
{
@@ -378,13 +378,13 @@ bt_check_every_level(Relation rel, Relation heaprel, bool readonly,
* READ COMMITTED mode. A new snapshot is guaranteed to have all
* the entries it requires in the index.
*
- * We must defend against the possibility that an old xact snapshot
- * was returned at higher isolation levels when that snapshot is
- * not safe for index scans of the target index. This is possible
- * when the snapshot sees tuples that are before the index's
- * indcheckxmin horizon. Throwing an error here should be very
- * rare. It doesn't seem worth using a secondary snapshot to avoid
- * this.
+ * We must defend against the possibility that an old xact
+ * snapshot was returned at higher isolation levels when that
+ * snapshot is not safe for index scans of the target index. This
+ * is possible when the snapshot sees tuples that are before the
+ * index's indcheckxmin horizon. Throwing an error here should be
+ * very rare. It doesn't seem worth using a secondary snapshot to
+ * avoid this.
*/
if (IsolationUsesXactSnapshot() && rel->rd_index->indcheckxmin &&
!TransactionIdPrecedes(HeapTupleHeaderGetXmin(rel->rd_indextuple->t_data),
@@ -396,13 +396,13 @@ bt_check_every_level(Relation rel, Relation heaprel, bool readonly,
}
else
{
- int64 total_pages;
+ int64 total_pages;
/*
* Extra readonly downlink check.
*
- * In readonly case, we know that there cannot be a concurrent page
- * split or a concurrent page deletion, which gives us the
+ * In readonly case, we know that there cannot be a concurrent
+ * page split or a concurrent page deletion, which gives us the
* opportunity to verify that every non-ignorable page had a
* downlink one level up. We must be tolerant of interrupted page
* splits and page deletions, though. This is taken care of in
@@ -491,9 +491,9 @@ bt_check_every_level(Relation rel, Relation heaprel, bool readonly,
}
/*
- * Create our own scan for IndexBuildHeapScan(), rather than getting it
- * to do so for us. This is required so that we can actually use the
- * MVCC snapshot registered earlier in !readonly case.
+ * Create our own scan for IndexBuildHeapScan(), rather than getting
+ * it to do so for us. This is required so that we can actually use
+ * the MVCC snapshot registered earlier in !readonly case.
*
* Note that IndexBuildHeapScan() calls heap_endscan() for us.
*/
@@ -607,10 +607,10 @@ bt_check_level_from_leftmost(BtreeCheckState *state, BtreeLevel level)
{
/*
* Since there cannot be a concurrent VACUUM operation in readonly
- * mode, and since a page has no links within other pages (siblings
- * and parent) once it is marked fully deleted, it should be
- * impossible to land on a fully deleted page in readonly mode.
- * See bt_downlink_check() for further details.
+ * mode, and since a page has no links within other pages
+ * (siblings and parent) once it is marked fully deleted, it
+ * should be impossible to land on a fully deleted page in
+ * readonly mode. See bt_downlink_check() for further details.
*
* The bt_downlink_check() P_ISDELETED() check is repeated here so
* that pages that are only reachable through sibling links get
@@ -799,8 +799,8 @@ bt_target_page_check(BtreeCheckState *state)
P_ISLEAF(topaque) ? "leaf" : "internal", state->targetblock);
/*
- * Check the number of attributes in high key. Note, rightmost page doesn't
- * contain a high key, so nothing to check
+ * Check the number of attributes in high key. Note, rightmost page
+ * doesn't contain a high key, so nothing to check
*/
if (!P_RIGHTMOST(topaque) &&
!_bt_check_natts(state->rel, state->target, P_HIKEY))
@@ -845,8 +845,8 @@ bt_target_page_check(BtreeCheckState *state)
/*
* lp_len should match the IndexTuple reported length exactly, since
- * lp_len is completely redundant in indexes, and both sources of tuple
- * length are MAXALIGN()'d. nbtree does not use lp_len all that
+ * lp_len is completely redundant in indexes, and both sources of
+ * tuple length are MAXALIGN()'d. nbtree does not use lp_len all that
* frequently, and is surprisingly tolerant of corrupt lp_len fields.
*/
if (tupsize != ItemIdGetLength(itemid))
@@ -1441,13 +1441,13 @@ bt_downlink_check(BtreeCheckState *state, BlockNumber childblock,
static void
bt_downlink_missing_check(BtreeCheckState *state)
{
- BTPageOpaque topaque = (BTPageOpaque) PageGetSpecialPointer(state->target);
- ItemId itemid;
- IndexTuple itup;
- Page child;
- BTPageOpaque copaque;
- uint32 level;
- BlockNumber childblk;
+ BTPageOpaque topaque = (BTPageOpaque) PageGetSpecialPointer(state->target);
+ ItemId itemid;
+ IndexTuple itup;
+ Page child;
+ BTPageOpaque copaque;
+ uint32 level;
+ BlockNumber childblk;
Assert(state->heapallindexed && state->readonly);
Assert(!P_IGNORE(topaque));
@@ -1462,14 +1462,15 @@ bt_downlink_missing_check(BtreeCheckState *state)
* page split in passing, when it notices that the left sibling page is
* P_INCOMPLETE_SPLIT().
*
- * In general, VACUUM is not prepared for there to be no downlink to a page
- * that it deletes. This is the main reason why the lack of a downlink can
- * be reported as corruption here. It's not obvious that an invalid
- * missing downlink can result in wrong answers to queries, though, since
- * index scans that land on the child may end up consistently moving right.
- * The handling of concurrent page splits (and page deletions) within
- * _bt_moveright() cannot distinguish inconsistencies that last for a
- * moment from inconsistencies that are permanent and irrecoverable.
+ * In general, VACUUM is not prepared for there to be no downlink to a
+ * page that it deletes. This is the main reason why the lack of a
+ * downlink can be reported as corruption here. It's not obvious that an
+ * invalid missing downlink can result in wrong answers to queries,
+ * though, since index scans that land on the child may end up
+ * consistently moving right. The handling of concurrent page splits (and
+ * page deletions) within _bt_moveright() cannot distinguish
+ * inconsistencies that last for a moment from inconsistencies that are
+ * permanent and irrecoverable.
*
* VACUUM isn't even prepared to delete pages that have no downlink due to
* an incomplete page split, but it can detect and reason about that case
@@ -1498,8 +1499,8 @@ bt_downlink_missing_check(BtreeCheckState *state)
/*
* Target is probably the "top parent" of a multi-level page deletion.
- * We'll need to descend the subtree to make sure that descendant pages are
- * consistent with that, though.
+ * We'll need to descend the subtree to make sure that descendant pages
+ * are consistent with that, though.
*
* If the target page (which must be non-ignorable) is a leaf page, then
* clearly it can't be the top parent. The lack of a downlink is probably
@@ -1562,14 +1563,14 @@ bt_downlink_missing_check(BtreeCheckState *state)
* bt_downlink_check() does not visit pages reachable through negative
* infinity items. Besides, bt_downlink_check() is unwilling to descend
* multiple levels. (The similar bt_downlink_check() P_ISDELETED() check
- * within bt_check_level_from_leftmost() won't reach the page either, since
- * the leaf's live siblings should have their sibling links updated to
- * bypass the deletion target page when it is marked fully dead.)
+ * within bt_check_level_from_leftmost() won't reach the page either,
+ * since the leaf's live siblings should have their sibling links updated
+ * to bypass the deletion target page when it is marked fully dead.)
*
* If this error is raised, it might be due to a previous multi-level page
- * deletion that failed to realize that it wasn't yet safe to mark the leaf
- * page as fully dead. A "dangling downlink" will still remain when this
- * happens. The fact that the dangling downlink's page (the leaf's
+ * deletion that failed to realize that it wasn't yet safe to mark the
+ * leaf page as fully dead. A "dangling downlink" will still remain when
+ * this happens. The fact that the dangling downlink's page (the leaf's
* parent/ancestor page) lacked a downlink is incidental.
*/
if (P_ISDELETED(copaque))
@@ -1583,14 +1584,14 @@ bt_downlink_missing_check(BtreeCheckState *state)
(uint32) state->targetlsn)));
/*
- * Iff leaf page is half-dead, its high key top parent link should point to
- * what VACUUM considered to be the top parent page at the instant it was
- * interrupted. Provided the high key link actually points to the target
- * page, the missing downlink we detected is consistent with there having
- * been an interrupted multi-level page deletion. This means that the
- * subtree with the target page at its root (a page deletion chain) is in a
- * consistent state, enabling VACUUM to resume deleting the entire chain
- * the next time it encounters the half-dead leaf page.
+ * Iff leaf page is half-dead, its high key top parent link should point
+ * to what VACUUM considered to be the top parent page at the instant it
+ * was interrupted. Provided the high key link actually points to the
+ * target page, the missing downlink we detected is consistent with there
+ * having been an interrupted multi-level page deletion. This means that
+ * the subtree with the target page at its root (a page deletion chain) is
+ * in a consistent state, enabling VACUUM to resume deleting the entire
+ * chain the next time it encounters the half-dead leaf page.
*/
if (P_ISHALFDEAD(copaque) && !P_RIGHTMOST(copaque))
{
@@ -1681,16 +1682,17 @@ bt_tuple_present_callback(Relation index, HeapTuple htup, Datum *values,
* are assumed immutable. While the LP_DEAD bit is mutable in leaf pages,
* that's ItemId metadata, which was not fingerprinted. (There will often
* be some dead-to-everyone IndexTuples fingerprinted by the Bloom filter,
- * but we only try to detect the absence of needed tuples, so that's okay.)
+ * but we only try to detect the absence of needed tuples, so that's
+ * okay.)
*
- * Note that we rely on deterministic index_form_tuple() TOAST compression.
- * If index_form_tuple() was ever enhanced to compress datums out-of-line,
- * or otherwise varied when or how compression was applied, our assumption
- * would break, leading to false positive reports of corruption. It's also
- * possible that non-pivot tuples could in the future have alternative
- * equivalent representations (e.g. by using the INDEX_ALT_TID_MASK bit).
- * For now, we don't decompress/normalize toasted values as part of
- * fingerprinting.
+ * Note that we rely on deterministic index_form_tuple() TOAST
+ * compression. If index_form_tuple() was ever enhanced to compress datums
+ * out-of-line, or otherwise varied when or how compression was applied,
+ * our assumption would break, leading to false positive reports of
+ * corruption. It's also possible that non-pivot tuples could in the
+ * future have alternative equivalent representations (e.g. by using the
+ * INDEX_ALT_TID_MASK bit). For now, we don't decompress/normalize toasted
+ * values as part of fingerprinting.
*/
itup = index_form_tuple(RelationGetDescr(index), values, isnull);
itup->t_tid = htup->t_self;
@@ -1905,19 +1907,19 @@ palloc_btree_page(BtreeCheckState *state, BlockNumber blocknum)
* Sanity checks for number of items on page.
*
* As noted at the beginning of _bt_binsrch(), an internal page must have
- * children, since there must always be a negative infinity downlink (there
- * may also be a highkey). In the case of non-rightmost leaf pages, there
- * must be at least a highkey.
+ * children, since there must always be a negative infinity downlink
+ * (there may also be a highkey). In the case of non-rightmost leaf
+ * pages, there must be at least a highkey.
*
- * This is correct when pages are half-dead, since internal pages are never
- * half-dead, and leaf pages must have a high key when half-dead (the
- * rightmost page can never be deleted). It's also correct with fully
- * deleted pages: _bt_unlink_halfdead_page() doesn't change anything about
- * the target page other than setting the page as fully dead, and setting
- * its xact field. In particular, it doesn't change the sibling links in
- * the deletion target itself, since they're required when index scans land
- * on the deletion target, and then need to move right (or need to move
- * left, in the case of backward index scans).
+ * This is correct when pages are half-dead, since internal pages are
+ * never half-dead, and leaf pages must have a high key when half-dead
+ * (the rightmost page can never be deleted). It's also correct with
+ * fully deleted pages: _bt_unlink_halfdead_page() doesn't change anything
+ * about the target page other than setting the page as fully dead, and
+ * setting its xact field. In particular, it doesn't change the sibling
+ * links in the deletion target itself, since they're required when index
+ * scans land on the deletion target, and then need to move right (or need
+ * to move left, in the case of backward index scans).
*/
maxoffset = PageGetMaxOffsetNumber(page);
if (maxoffset > MaxIndexTuplesPerPage)
diff --git a/contrib/btree_gin/btree_gin.c b/contrib/btree_gin/btree_gin.c
index a660681e581..d262c18e893 100644
--- a/contrib/btree_gin/btree_gin.c
+++ b/contrib/btree_gin/btree_gin.c
@@ -483,8 +483,12 @@ GIN_SUPPORT(anyenum, false, leftmostvalue_enum, gin_enum_cmp)
static Datum
leftmostvalue_uuid(void)
{
- /* palloc0 will create the UUID with all zeroes: "00000000-0000-0000-0000-000000000000" */
- pg_uuid_t *retval = (pg_uuid_t *) palloc0(sizeof(pg_uuid_t));
+ /*
+ * palloc0 will create the UUID with all zeroes:
+ * "00000000-0000-0000-0000-000000000000"
+ */
+ pg_uuid_t *retval = (pg_uuid_t *) palloc0(sizeof(pg_uuid_t));
+
return UUIDPGetDatum(retval);
}
@@ -493,7 +497,8 @@ GIN_SUPPORT(uuid, false, leftmostvalue_uuid, uuid_cmp)
static Datum
leftmostvalue_name(void)
{
- NameData* result = (NameData *) palloc0(NAMEDATALEN);
+ NameData *result = (NameData *) palloc0(NAMEDATALEN);
+
return NameGetDatum(result);
}
diff --git a/contrib/cube/cube.c b/contrib/cube/cube.c
index d96ca1ec1fd..092ef149cfa 100644
--- a/contrib/cube/cube.c
+++ b/contrib/cube/cube.c
@@ -1361,9 +1361,10 @@ g_cube_distance(PG_FUNCTION_ARGS)
if (coord <= 2 * DIM(cube))
{
/* dimension index */
- int index = (coord - 1) / 2;
+ int index = (coord - 1) / 2;
+
/* whether this is upper bound (lower bound otherwise) */
- bool upper = ((coord - 1) % 2 == 1);
+ bool upper = ((coord - 1) % 2 == 1);
if (IS_POINT(cube))
{
@@ -1596,9 +1597,10 @@ cube_coord_llur(PG_FUNCTION_ARGS)
if (coord <= 2 * DIM(cube))
{
/* dimension index */
- int index = (coord - 1) / 2;
+ int index = (coord - 1) / 2;
+
/* whether this is upper bound (lower bound otherwise) */
- bool upper = ((coord - 1) % 2 == 1);
+ bool upper = ((coord - 1) % 2 == 1);
if (IS_POINT(cube))
{
@@ -1615,8 +1617,8 @@ cube_coord_llur(PG_FUNCTION_ARGS)
else
{
/*
- * Return zero if coordinate is out of bound. That reproduces logic of
- * how cubes with low dimension number are expanded during GiST
+ * Return zero if coordinate is out of bound. That reproduces logic
+ * of how cubes with low dimension number are expanded during GiST
* indexing.
*/
result = 0.0;
diff --git a/contrib/jsonb_plperl/jsonb_plperl.c b/contrib/jsonb_plperl/jsonb_plperl.c
index 837bae2ab50..cde38b295c5 100644
--- a/contrib/jsonb_plperl/jsonb_plperl.c
+++ b/contrib/jsonb_plperl/jsonb_plperl.c
@@ -18,7 +18,7 @@ static SV *Jsonb_to_SV(JsonbContainer *jsonb);
static JsonbValue *SV_to_JsonbValue(SV *obj, JsonbParseState **ps, bool is_elem);
-static SV *
+static SV *
JsonbValue_to_SV(JsonbValue *jbv)
{
dTHX;
@@ -33,6 +33,7 @@ JsonbValue_to_SV(JsonbValue *jbv)
char *str = DatumGetCString(DirectFunctionCall1(numeric_out,
NumericGetDatum(jbv->val.numeric)));
SV *result = newSVnv(SvNV(cstr2sv(str)));
+
pfree(str);
return result;
}
@@ -42,6 +43,7 @@ JsonbValue_to_SV(JsonbValue *jbv)
char *str = pnstrdup(jbv->val.string.val,
jbv->val.string.len);
SV *result = cstr2sv(str);
+
pfree(str);
return result;
}
diff --git a/contrib/jsonb_plpython/jsonb_plpython.c b/contrib/jsonb_plpython/jsonb_plpython.c
index 548826f592f..08a7598aae3 100644
--- a/contrib/jsonb_plpython/jsonb_plpython.c
+++ b/contrib/jsonb_plpython/jsonb_plpython.c
@@ -25,7 +25,7 @@ static PyObject *decimal_constructor;
static PyObject *PLyObject_FromJsonbContainer(JsonbContainer *jsonb);
static JsonbValue *PLyObject_ToJsonbValue(PyObject *obj,
- JsonbParseState **jsonb_state, bool is_elem);
+ JsonbParseState **jsonb_state, bool is_elem);
#if PY_MAJOR_VERSION >= 3
typedef PyObject *(*PLyUnicode_FromStringAndSize_t)
@@ -373,10 +373,11 @@ PLyObject_ToJsonbValue(PyObject *obj, JsonbParseState **jsonb_state, bool is_ele
out->type = jbvNull;
else if (PyString_Check(obj) || PyUnicode_Check(obj))
PLyString_ToJsonbValue(obj, out);
- /*
- * PyNumber_Check() returns true for booleans, so boolean check should come
- * first.
- */
+
+ /*
+ * PyNumber_Check() returns true for booleans, so boolean check should
+ * come first.
+ */
else if (PyBool_Check(obj))
{
out = palloc(sizeof(JsonbValue));
diff --git a/contrib/pg_trgm/trgm_gist.c b/contrib/pg_trgm/trgm_gist.c
index 53e6830ab1b..f1e05478daa 100644
--- a/contrib/pg_trgm/trgm_gist.c
+++ b/contrib/pg_trgm/trgm_gist.c
@@ -292,7 +292,11 @@ gtrgm_consistent(PG_FUNCTION_ARGS)
case SimilarityStrategyNumber:
case WordSimilarityStrategyNumber:
case StrictWordSimilarityStrategyNumber:
- /* Similarity search is exact. (Strict) word similarity search is inexact */
+
+ /*
+ * Similarity search is exact. (Strict) word similarity search is
+ * inexact
+ */
*recheck = (strategy != SimilarityStrategyNumber);
nlimit = index_strategy_get_limit(strategy);
diff --git a/contrib/pg_trgm/trgm_op.c b/contrib/pg_trgm/trgm_op.c
index 67cca9703fa..9f26725ec21 100644
--- a/contrib/pg_trgm/trgm_op.c
+++ b/contrib/pg_trgm/trgm_op.c
@@ -48,14 +48,14 @@ typedef struct
/* Trigram bound type */
typedef uint8 TrgmBound;
-#define TRGM_BOUND_LEFT 0x01 /* trigram is left bound of word */
-#define TRGM_BOUND_RIGHT 0x02 /* trigram is right bound of word */
+#define TRGM_BOUND_LEFT 0x01 /* trigram is left bound of word */
+#define TRGM_BOUND_RIGHT 0x02 /* trigram is right bound of word */
/* Word similarity flags */
-#define WORD_SIMILARITY_CHECK_ONLY 0x01 /* only check existence of similar
- * search pattern in text */
-#define WORD_SIMILARITY_STRICT 0x02 /* force bounds of extent to match
- * word bounds */
+#define WORD_SIMILARITY_CHECK_ONLY 0x01 /* only check existence of similar
+ * search pattern in text */
+#define WORD_SIMILARITY_STRICT 0x02 /* force bounds of extent to match
+ * word bounds */
/*
* Module load callback
@@ -144,7 +144,7 @@ index_strategy_get_limit(StrategyNumber strategy)
break;
}
- return 0.0; /* keep compiler quiet */
+ return 0.0; /* keep compiler quiet */
}
/*
@@ -496,13 +496,13 @@ iterate_word_similarity(int *trg2indexes,
/* Select appropriate threshold */
threshold = (flags & WORD_SIMILARITY_STRICT) ?
- strict_word_similarity_threshold :
- word_similarity_threshold;
+ strict_word_similarity_threshold :
+ word_similarity_threshold;
/*
- * Consider first trigram as initial lower bount for strict word similarity,
- * or initialize it later with first trigram present for plain word
- * similarity.
+ * Consider first trigram as initial lower bount for strict word
+ * similarity, or initialize it later with first trigram present for plain
+ * word similarity.
*/
lower = (flags & WORD_SIMILARITY_STRICT) ? 0 : -1;
@@ -533,7 +533,7 @@ iterate_word_similarity(int *trg2indexes,
* plain word similarity
*/
if ((flags & WORD_SIMILARITY_STRICT) ? (bounds[i] & TRGM_BOUND_RIGHT)
- : found[trgindex])
+ : found[trgindex])
{
int prev_lower,
tmp_ulen2,
@@ -597,8 +597,8 @@ iterate_word_similarity(int *trg2indexes,
smlr_max = Max(smlr_max, smlr_cur);
/*
- * if we only check that word similarity is greater than
- * threshold we do not need to calculate a maximum similarity.
+ * if we only check that word similarity is greater than threshold
+ * we do not need to calculate a maximum similarity.
*/
if ((flags & WORD_SIMILARITY_CHECK_ONLY) && smlr_max >= threshold)
break;
@@ -653,7 +653,7 @@ calc_word_similarity(char *str1, int slen1, char *str2, int slen2,
ulen1;
int *trg2indexes;
float4 result;
- TrgmBound *bounds;
+ TrgmBound *bounds;
protect_out_of_mem(slen1 + slen2);
diff --git a/contrib/postgres_fdw/postgres_fdw.c b/contrib/postgres_fdw/postgres_fdw.c
index a46160df7ca..312581b7411 100644
--- a/contrib/postgres_fdw/postgres_fdw.c
+++ b/contrib/postgres_fdw/postgres_fdw.c
@@ -4918,8 +4918,8 @@ add_paths_with_pathkeys_for_rel(PlannerInfo *root, RelOptInfo *rel,
&rows, &width, &startup_cost, &total_cost);
/*
- * The EPQ path must be at least as well sorted as the path itself,
- * in case it gets used as input to a mergejoin.
+ * The EPQ path must be at least as well sorted as the path itself, in
+ * case it gets used as input to a mergejoin.
*/
sorted_epq_path = epq_path;
if (sorted_epq_path != NULL &&
diff --git a/contrib/tcn/tcn.c b/contrib/tcn/tcn.c
index 43bdd92749d..0c274322bd3 100644
--- a/contrib/tcn/tcn.c
+++ b/contrib/tcn/tcn.c
@@ -138,7 +138,7 @@ triggered_change_notification(PG_FUNCTION_ARGS)
/* we're only interested if it is the primary key and valid */
if (index->indisprimary && IndexIsValid(index))
{
- int indnkeyatts = index->indnkeyatts;
+ int indnkeyatts = index->indnkeyatts;
if (indnkeyatts > 0)
{
diff --git a/contrib/test_decoding/test_decoding.c b/contrib/test_decoding/test_decoding.c
index e192d5b4ad4..1c439b57b0e 100644
--- a/contrib/test_decoding/test_decoding.c
+++ b/contrib/test_decoding/test_decoding.c
@@ -53,9 +53,9 @@ static void pg_decode_change(LogicalDecodingContext *ctx,
ReorderBufferTXN *txn, Relation rel,
ReorderBufferChange *change);
static void pg_decode_truncate(LogicalDecodingContext *ctx,
- ReorderBufferTXN *txn,
- int nrelations, Relation relations[],
- ReorderBufferChange *change);
+ ReorderBufferTXN *txn,
+ int nrelations, Relation relations[],
+ ReorderBufferChange *change);
static bool pg_decode_filter(LogicalDecodingContext *ctx,
RepOriginId origin_id);
static void pg_decode_message(LogicalDecodingContext *ctx,