Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to content

Commit c079673

Browse files
committed
Preventive maintenance in advance of pgindent run.
Reformat various places in which pgindent will make a mess, and fix a few small violations of coding style that I happened to notice while perusing the diffs from a pgindent dry run. There is one actual bug fix here: the need-to-enlarge-the-buffer code path in icu_convert_case was obviously broken. Perhaps it's unreachable in our usage? Or maybe this is just sadly undertested.
1 parent ddd2435 commit c079673

File tree

20 files changed

+105
-79
lines changed

20 files changed

+105
-79
lines changed

contrib/btree_gist/btree_utils_num.c

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -183,9 +183,11 @@ gbt_num_union(GBT_NUMKEY *out, const GistEntryVector *entryvec, const gbtree_nin
183183
cur = (GBT_NUMKEY *) DatumGetPointer((entryvec->vector[i].key));
184184
c.lower = &cur[0];
185185
c.upper = &cur[tinfo->size];
186-
if ((*tinfo->f_gt) (o.lower, c.lower, flinfo)) /* out->lower > cur->lower */
186+
/* if out->lower > cur->lower, adopt cur as lower */
187+
if ((*tinfo->f_gt) (o.lower, c.lower, flinfo))
187188
memcpy((void *) o.lower, (void *) c.lower, tinfo->size);
188-
if ((*tinfo->f_lt) (o.upper, c.upper, flinfo)) /* out->upper < cur->upper */
189+
/* if out->upper < cur->upper, adopt cur as upper */
190+
if ((*tinfo->f_lt) (o.upper, c.upper, flinfo))
189191
memcpy((void *) o.upper, (void *) c.upper, tinfo->size);
190192
}
191193

@@ -274,7 +276,8 @@ gbt_num_consistent(const GBT_NUMKEY_R *key,
274276
if (is_leaf)
275277
retval = (*tinfo->f_eq) (query, key->lower, flinfo);
276278
else
277-
retval = ((*tinfo->f_le) (key->lower, query, flinfo) && (*tinfo->f_le) (query, key->upper, flinfo)) ? true : false;
279+
retval = ((*tinfo->f_le) (key->lower, query, flinfo) &&
280+
(*tinfo->f_le) (query, key->upper, flinfo));
278281
break;
279282
case BTGreaterStrategyNumber:
280283
if (is_leaf)
@@ -287,7 +290,7 @@ gbt_num_consistent(const GBT_NUMKEY_R *key,
287290
break;
288291
case BtreeGistNotEqualStrategyNumber:
289292
retval = (!((*tinfo->f_eq) (query, key->lower, flinfo) &&
290-
(*tinfo->f_eq) (query, key->upper, flinfo))) ? true : false;
293+
(*tinfo->f_eq) (query, key->upper, flinfo)));
291294
break;
292295
default:
293296
retval = false;

src/backend/catalog/pg_publication.c

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -90,19 +90,18 @@ check_publication_add_relation(Relation targetrel)
9090
*
9191
* Does same checks as the above, but does not need relation to be opened
9292
* and also does not throw errors.
93+
*
94+
* Note this also excludes all tables with relid < FirstNormalObjectId,
95+
* ie all tables created during initdb. This mainly affects the preinstalled
96+
* information_schema. (IsCatalogClass() only checks for these inside
97+
* pg_catalog and toast schemas.)
9398
*/
9499
static bool
95100
is_publishable_class(Oid relid, Form_pg_class reltuple)
96101
{
97102
return reltuple->relkind == RELKIND_RELATION &&
98103
!IsCatalogClass(relid, reltuple) &&
99104
reltuple->relpersistence == RELPERSISTENCE_PERMANENT &&
100-
/*
101-
* Also exclude any tables created as part of initdb. This mainly
102-
* affects the preinstalled information_schema.
103-
* Note that IsCatalogClass() only checks for these inside pg_catalog
104-
* and toast schemas.
105-
*/
106105
relid >= FirstNormalObjectId;
107106
}
108107

src/backend/commands/publicationcmds.c

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -493,8 +493,10 @@ OpenTableList(List *tables)
493493

494494
rel = heap_openrv(rv, ShareUpdateExclusiveLock);
495495
myrelid = RelationGetRelid(rel);
496+
496497
/*
497-
* filter out duplicates when user specifies "foo, foo"
498+
* Filter out duplicates if user specifies "foo, foo".
499+
*
498500
* Note that this algorithm is known to not be very efficient (O(N^2))
499501
* but given that it only works on list of tables given to us by user
500502
* it's deemed acceptable.

src/backend/commands/subscriptioncmds.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -296,6 +296,7 @@ CreateSubscription(CreateSubscriptionStmt *stmt, bool isTopLevel)
296296

297297
/*
298298
* Parse and check options.
299+
*
299300
* Connection and publication should not be specified here.
300301
*/
301302
parse_subscription_options(stmt->options, &connect, &enabled_given,

src/backend/executor/nodeNamedtuplestorescan.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -117,6 +117,7 @@ ExecInitNamedTuplestoreScan(NamedTuplestoreScan *node, EState *estate, int eflag
117117

118118
/*
119119
* XXX: Should we add a function to free that read pointer when done?
120+
*
120121
* This was attempted, but it did not improve performance or memory usage
121122
* in any tested cases.
122123
*/

src/backend/replication/logical/snapbuild.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -176,7 +176,7 @@ struct SnapBuild
176176
*/
177177
TransactionId initial_xmin_horizon;
178178

179-
/* Indicates if we are building full snapshot or just catalog one .*/
179+
/* Indicates if we are building full snapshot or just catalog one. */
180180
bool building_full_snapshot;
181181

182182
/*

src/backend/replication/pgoutput/pgoutput.c

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -221,14 +221,15 @@ pgoutput_begin_txn(LogicalDecodingContext *ctx, ReorderBufferTXN *txn)
221221
OutputPluginWrite(ctx, false);
222222
OutputPluginPrepareWrite(ctx, true);
223223

224-
/*
225-
* XXX: which behaviour we want here?
224+
/*----------
225+
* XXX: which behaviour do we want here?
226226
*
227227
* Alternatives:
228228
* - don't send origin message if origin name not found
229229
* (that's what we do now)
230230
* - throw error - that will break replication, not good
231231
* - send some special "unknown" origin
232+
*----------
232233
*/
233234
if (replorigin_by_oid(txn->origin_id, true, &origin))
234235
logicalrep_write_origin(ctx->out, origin, txn->origin_lsn);

src/backend/tsearch/wparser.c

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -303,6 +303,7 @@ ts_parse_byname(PG_FUNCTION_ARGS)
303303
Datum
304304
ts_headline_byid_opt(PG_FUNCTION_ARGS)
305305
{
306+
Oid tsconfig = PG_GETARG_OID(0);
306307
text *in = PG_GETARG_TEXT_PP(1);
307308
TSQuery query = PG_GETARG_TSQUERY(2);
308309
text *opt = (PG_NARGS() > 3 && PG_GETARG_POINTER(3)) ? PG_GETARG_TEXT_PP(3) : NULL;
@@ -312,7 +313,7 @@ ts_headline_byid_opt(PG_FUNCTION_ARGS)
312313
TSConfigCacheEntry *cfg;
313314
TSParserCacheEntry *prsobj;
314315

315-
cfg = lookup_ts_config_cache(PG_GETARG_OID(0));
316+
cfg = lookup_ts_config_cache(tsconfig);
316317
prsobj = lookup_ts_parser_cache(cfg->prsId);
317318

318319
if (!OidIsValid(prsobj->headlineOid))
@@ -381,11 +382,12 @@ ts_headline_opt(PG_FUNCTION_ARGS)
381382
Datum
382383
ts_headline_jsonb_byid_opt(PG_FUNCTION_ARGS)
383384
{
384-
Jsonb *out, *jb = PG_GETARG_JSONB(1);
385+
Oid tsconfig = PG_GETARG_OID(0);
386+
Jsonb *jb = PG_GETARG_JSONB(1);
385387
TSQuery query = PG_GETARG_TSQUERY(2);
386388
text *opt = (PG_NARGS() > 3 && PG_GETARG_POINTER(3)) ? PG_GETARG_TEXT_P(3) : NULL;
389+
Jsonb *out;
387390
JsonTransformStringValuesAction action = (JsonTransformStringValuesAction) headline_json_value;
388-
389391
HeadlineParsedText prs;
390392
HeadlineJsonState *state = palloc0(sizeof(HeadlineJsonState));
391393

@@ -394,7 +396,7 @@ ts_headline_jsonb_byid_opt(PG_FUNCTION_ARGS)
394396
prs.words = (HeadlineWordEntry *) palloc(sizeof(HeadlineWordEntry) * prs.lenwords);
395397

396398
state->prs = &prs;
397-
state->cfg = lookup_ts_config_cache(PG_GETARG_OID(0));
399+
state->cfg = lookup_ts_config_cache(tsconfig);
398400
state->prsobj = lookup_ts_parser_cache(state->cfg->prsId);
399401
state->query = query;
400402
if (opt)
@@ -456,6 +458,7 @@ ts_headline_jsonb_opt(PG_FUNCTION_ARGS)
456458
Datum
457459
ts_headline_json_byid_opt(PG_FUNCTION_ARGS)
458460
{
461+
Oid tsconfig = PG_GETARG_OID(0);
459462
text *json = PG_GETARG_TEXT_P(1);
460463
TSQuery query = PG_GETARG_TSQUERY(2);
461464
text *opt = (PG_NARGS() > 3 && PG_GETARG_POINTER(3)) ? PG_GETARG_TEXT_P(3) : NULL;
@@ -470,7 +473,7 @@ ts_headline_json_byid_opt(PG_FUNCTION_ARGS)
470473
prs.words = (HeadlineWordEntry *) palloc(sizeof(HeadlineWordEntry) * prs.lenwords);
471474

472475
state->prs = &prs;
473-
state->cfg = lookup_ts_config_cache(PG_GETARG_OID(0));
476+
state->cfg = lookup_ts_config_cache(tsconfig);
474477
state->prsobj = lookup_ts_parser_cache(state->cfg->prsId);
475478
state->query = query;
476479
if (opt)

src/backend/utils/adt/formatting.c

Lines changed: 24 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1448,24 +1448,32 @@ str_numth(char *dest, char *num, int type)
14481448
*****************************************************************************/
14491449

14501450
#ifdef USE_ICU
1451+
1452+
typedef int32_t (*ICU_Convert_Func)(UChar *dest, int32_t destCapacity,
1453+
const UChar *src, int32_t srcLength,
1454+
const char *locale,
1455+
UErrorCode *pErrorCode);
1456+
14511457
static int32_t
1452-
icu_convert_case(int32_t (*func)(UChar *, int32_t, const UChar *, int32_t, const char *, UErrorCode *),
1453-
pg_locale_t mylocale, UChar **buff_dest, UChar *buff_source, int32_t len_source)
1458+
icu_convert_case(ICU_Convert_Func func, pg_locale_t mylocale,
1459+
UChar **buff_dest, UChar *buff_source, int32_t len_source)
14541460
{
14551461
UErrorCode status;
14561462
int32_t len_dest;
14571463

14581464
len_dest = len_source; /* try first with same length */
14591465
*buff_dest = palloc(len_dest * sizeof(**buff_dest));
14601466
status = U_ZERO_ERROR;
1461-
len_dest = func(*buff_dest, len_dest, buff_source, len_source, mylocale->info.icu.locale, &status);
1467+
len_dest = func(*buff_dest, len_dest, buff_source, len_source,
1468+
mylocale->info.icu.locale, &status);
14621469
if (status == U_BUFFER_OVERFLOW_ERROR)
14631470
{
14641471
/* try again with adjusted length */
1465-
pfree(buff_dest);
1466-
buff_dest = palloc(len_dest * sizeof(**buff_dest));
1472+
pfree(*buff_dest);
1473+
*buff_dest = palloc(len_dest * sizeof(**buff_dest));
14671474
status = U_ZERO_ERROR;
1468-
len_dest = func(*buff_dest, len_dest, buff_source, len_source, mylocale->info.icu.locale, &status);
1475+
len_dest = func(*buff_dest, len_dest, buff_source, len_source,
1476+
mylocale->info.icu.locale, &status);
14691477
}
14701478
if (U_FAILURE(status))
14711479
ereport(ERROR,
@@ -1479,9 +1487,11 @@ u_strToTitle_default_BI(UChar *dest, int32_t destCapacity,
14791487
const char *locale,
14801488
UErrorCode *pErrorCode)
14811489
{
1482-
return u_strToTitle(dest, destCapacity, src, srcLength, NULL, locale, pErrorCode);
1490+
return u_strToTitle(dest, destCapacity, src, srcLength,
1491+
NULL, locale, pErrorCode);
14831492
}
1484-
#endif
1493+
1494+
#endif /* USE_ICU */
14851495

14861496
/*
14871497
* If the system provides the needed functions for wide-character manipulation
@@ -1548,7 +1558,8 @@ str_tolower(const char *buff, size_t nbytes, Oid collid)
15481558
UChar *buff_conv;
15491559

15501560
len_uchar = icu_to_uchar(&buff_uchar, buff, nbytes);
1551-
len_conv = icu_convert_case(u_strToLower, mylocale, &buff_conv, buff_uchar, len_uchar);
1561+
len_conv = icu_convert_case(u_strToLower, mylocale,
1562+
&buff_conv, buff_uchar, len_uchar);
15521563
icu_from_uchar(&result, buff_conv, len_conv);
15531564
}
15541565
else
@@ -1666,7 +1677,8 @@ str_toupper(const char *buff, size_t nbytes, Oid collid)
16661677
UChar *buff_conv;
16671678

16681679
len_uchar = icu_to_uchar(&buff_uchar, buff, nbytes);
1669-
len_conv = icu_convert_case(u_strToUpper, mylocale, &buff_conv, buff_uchar, len_uchar);
1680+
len_conv = icu_convert_case(u_strToUpper, mylocale,
1681+
&buff_conv, buff_uchar, len_uchar);
16701682
icu_from_uchar(&result, buff_conv, len_conv);
16711683
}
16721684
else
@@ -1785,7 +1797,8 @@ str_initcap(const char *buff, size_t nbytes, Oid collid)
17851797
UChar *buff_conv;
17861798

17871799
len_uchar = icu_to_uchar(&buff_uchar, buff, nbytes);
1788-
len_conv = icu_convert_case(u_strToTitle_default_BI, mylocale, &buff_conv, buff_uchar, len_uchar);
1800+
len_conv = icu_convert_case(u_strToTitle_default_BI, mylocale,
1801+
&buff_conv, buff_uchar, len_uchar);
17891802
icu_from_uchar(&result, buff_conv, len_conv);
17901803
}
17911804
else

src/backend/utils/adt/pg_locale.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1381,12 +1381,14 @@ pg_newlocale_from_collation(Oid collid)
13811381

13821382
actual_versionstr = get_collation_actual_version(collform->collprovider, collcollate);
13831383
if (!actual_versionstr)
1384+
{
13841385
/* This could happen when specifying a version in CREATE
13851386
* COLLATION for a libc locale, or manually creating a mess
13861387
* in the catalogs. */
13871388
ereport(ERROR,
13881389
(errmsg("collation \"%s\" has no actual version, but a version was specified",
13891390
NameStr(collform->collname))));
1391+
}
13901392
collversionstr = TextDatumGetCString(collversion);
13911393

13921394
if (strcmp(actual_versionstr, collversionstr) != 0)

src/bin/pg_basebackup/pg_basebackup.c

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -331,22 +331,22 @@ usage(void)
331331
printf(_("\nOptions controlling the output:\n"));
332332
printf(_(" -D, --pgdata=DIRECTORY receive base backup into directory\n"));
333333
printf(_(" -F, --format=p|t output format (plain (default), tar)\n"));
334-
printf(_(" -r, --max-rate=RATE maximum transfer rate to transfer data directory\n"
335-
" (in kB/s, or use suffix \"k\" or \"M\")\n"));
336-
printf(_(" -R, --write-recovery-conf\n"
337-
" write recovery.conf for replication\n"));
334+
printf(_(" -r, --max-rate=RATE maximum transfer rate to transfer data directory\n"));
335+
printf(_(" (in kB/s, or use suffix \"k\" or \"M\")\n"));
336+
printf(_(" -R, --write-recovery-conf\n"));
337+
printf(_(" write recovery.conf for replication\n"));
338338
printf(_(" -S, --slot=SLOTNAME replication slot to use\n"));
339339
printf(_(" --no-slot prevent creation of temporary replication slot\n"));
340-
printf(_(" -T, --tablespace-mapping=OLDDIR=NEWDIR\n"
341-
" relocate tablespace in OLDDIR to NEWDIR\n"));
342-
printf(_(" -X, --wal-method=none|fetch|stream\n"
343-
" include required WAL files with specified method\n"));
340+
printf(_(" -T, --tablespace-mapping=OLDDIR=NEWDIR\n"));
341+
printf(_(" relocate tablespace in OLDDIR to NEWDIR\n"));
342+
printf(_(" -X, --wal-method=none|fetch|stream\n"));
343+
printf(_(" include required WAL files with specified method\n"));
344344
printf(_(" --waldir=WALDIR location for the write-ahead log directory\n"));
345345
printf(_(" -z, --gzip compress tar output\n"));
346346
printf(_(" -Z, --compress=0-9 compress tar output with given compression level\n"));
347347
printf(_("\nGeneral options:\n"));
348-
printf(_(" -c, --checkpoint=fast|spread\n"
349-
" set fast or spread checkpointing\n"));
348+
printf(_(" -c, --checkpoint=fast|spread\n"));
349+
printf(_(" set fast or spread checkpointing\n"));
350350
printf(_(" -l, --label=LABEL set backup label\n"));
351351
printf(_(" -n, --no-clean do not clean up after errors\n"));
352352
printf(_(" -N, --no-sync do not wait for changes to be written safely to disk\n"));
@@ -358,8 +358,8 @@ usage(void)
358358
printf(_(" -d, --dbname=CONNSTR connection string\n"));
359359
printf(_(" -h, --host=HOSTNAME database server host or socket directory\n"));
360360
printf(_(" -p, --port=PORT database server port number\n"));
361-
printf(_(" -s, --status-interval=INTERVAL\n"
362-
" time between status packets sent to server (in seconds)\n"));
361+
printf(_(" -s, --status-interval=INTERVAL\n"));
362+
printf(_(" time between status packets sent to server (in seconds)\n"));
363363
printf(_(" -U, --username=NAME connect as specified database user\n"));
364364
printf(_(" -w, --no-password never prompt for password\n"));
365365
printf(_(" -W, --password force password prompt (should happen automatically)\n"));

src/bin/pg_dump/dumputils.c

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -527,8 +527,7 @@ do { \
527527
else if (strcmp(type, "LANGUAGE") == 0)
528528
CONVERT_PRIV('U', "USAGE");
529529
else if (strcmp(type, "SCHEMA") == 0 ||
530-
strcmp(type, "SCHEMAS") == 0
531-
)
530+
strcmp(type, "SCHEMAS") == 0)
532531
{
533532
CONVERT_PRIV('C', "CREATE");
534533
CONVERT_PRIV('U', "USAGE");

src/bin/pg_dump/pg_backup_archiver.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -257,8 +257,8 @@ struct _archiveHandle
257257
WriteExtraTocPtrType WriteExtraTocPtr; /* Write extra TOC entry data
258258
* associated with the current archive
259259
* format */
260-
ReadExtraTocPtrType ReadExtraTocPtr; /* Read extr info associated with
261-
* archie format */
260+
ReadExtraTocPtrType ReadExtraTocPtr; /* Read extra info associated with
261+
* archive format */
262262
PrintExtraTocPtrType PrintExtraTocPtr; /* Extra TOC info for format */
263263
PrintTocDataPtrType PrintTocDataPtr;
264264

src/bin/pg_waldump/pg_waldump.c

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -689,18 +689,18 @@ usage(void)
689689
printf(_(" -e, --end=RECPTR stop reading at WAL location RECPTR\n"));
690690
printf(_(" -f, --follow keep retrying after reaching end of WAL\n"));
691691
printf(_(" -n, --limit=N number of records to display\n"));
692-
printf(_(" -p, --path=PATH directory in which to find log segment files or a\n"
693-
" directory with a ./pg_wal that contains such files\n"
694-
" (default: current directory, ./pg_wal, PGDATA/pg_wal)\n"));
695-
printf(_(" -r, --rmgr=RMGR only show records generated by resource manager RMGR\n"
696-
" use --rmgr=list to list valid resource manager names\n"));
692+
printf(_(" -p, --path=PATH directory in which to find log segment files or a\n"));
693+
printf(_(" directory with a ./pg_wal that contains such files\n"));
694+
printf(_(" (default: current directory, ./pg_wal, PGDATA/pg_wal)\n"));
695+
printf(_(" -r, --rmgr=RMGR only show records generated by resource manager RMGR\n"));
696+
printf(_(" use --rmgr=list to list valid resource manager names\n"));
697697
printf(_(" -s, --start=RECPTR start reading at WAL location RECPTR\n"));
698-
printf(_(" -t, --timeline=TLI timeline from which to read log records\n"
699-
" (default: 1 or the value used in STARTSEG)\n"));
698+
printf(_(" -t, --timeline=TLI timeline from which to read log records\n"));
699+
printf(_(" (default: 1 or the value used in STARTSEG)\n"));
700700
printf(_(" -V, --version output version information, then exit\n"));
701701
printf(_(" -x, --xid=XID only show records with TransactionId XID\n"));
702-
printf(_(" -z, --stats[=record] show statistics instead of records\n"
703-
" (optionally, show per-record statistics)\n"));
702+
printf(_(" -z, --stats[=record] show statistics instead of records\n"));
703+
printf(_(" (optionally, show per-record statistics)\n"));
704704
printf(_(" -?, --help show this help, then exit\n"));
705705
}
706706

src/bin/psql/tab-complete.c

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2772,6 +2772,7 @@ psql_completion(const char *text, int start, int end)
27722772
*/
27732773
/* Complete GRANT/REVOKE with a list of roles and privileges */
27742774
else if (TailMatches1("GRANT|REVOKE"))
2775+
{
27752776
/*
27762777
* With ALTER DEFAULT PRIVILEGES, restrict completion
27772778
* to grantable privileges (can't grant roles)
@@ -2795,7 +2796,7 @@ psql_completion(const char *text, int start, int end)
27952796
" UNION SELECT 'EXECUTE'"
27962797
" UNION SELECT 'USAGE'"
27972798
" UNION SELECT 'ALL'");
2798-
2799+
}
27992800
/*
28002801
* Complete GRANT/REVOKE <privilege> with "ON", GRANT/REVOKE <role> with
28012802
* TO/FROM
@@ -2822,6 +2823,7 @@ psql_completion(const char *text, int start, int end)
28222823
* privilege.
28232824
*/
28242825
else if (TailMatches3("GRANT|REVOKE", MatchAny, "ON"))
2826+
{
28252827
/*
28262828
* With ALTER DEFAULT PRIVILEGES, restrict completion
28272829
* to the kinds of objects supported.
@@ -2845,11 +2847,10 @@ psql_completion(const char *text, int start, int end)
28452847
" UNION SELECT 'TABLE'"
28462848
" UNION SELECT 'TABLESPACE'"
28472849
" UNION SELECT 'TYPE'");
2848-
2850+
}
28492851
else if (TailMatches4("GRANT|REVOKE", MatchAny, "ON", "ALL"))
28502852
COMPLETE_WITH_LIST3("FUNCTIONS IN SCHEMA", "SEQUENCES IN SCHEMA",
28512853
"TABLES IN SCHEMA");
2852-
28532854
else if (TailMatches4("GRANT|REVOKE", MatchAny, "ON", "FOREIGN"))
28542855
COMPLETE_WITH_LIST2("DATA WRAPPER", "SERVER");
28552856

0 commit comments

Comments
 (0)