Skip to content

Commit e53a611

Browse files
committed
Message wording improvements
1 parent 9b28685 commit e53a611

File tree

20 files changed

+53
-48
lines changed

20 files changed

+53
-48
lines changed

src/backend/access/common/reloptions.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1989,7 +1989,7 @@ partitioned_table_reloptions(Datum reloptions, bool validate)
19891989
ereport(ERROR,
19901990
errcode(ERRCODE_WRONG_OBJECT_TYPE),
19911991
errmsg("cannot specify storage parameters for a partitioned table"),
1992-
errhint("Specify storage parameters for its leaf partitions, instead."));
1992+
errhint("Specify storage parameters for its leaf partitions instead."));
19931993
return NULL;
19941994
}
19951995

src/backend/backup/basebackup_zstd.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -126,8 +126,8 @@ bbsink_zstd_begin_backup(bbsink *sink)
126126
if (ZSTD_isError(ret))
127127
ereport(ERROR,
128128
errcode(ERRCODE_INVALID_PARAMETER_VALUE),
129-
errmsg("could not set compression flag for %s: %s",
130-
"long", ZSTD_getErrorName(ret)));
129+
errmsg("could not enable long-distance mode: %s",
130+
ZSTD_getErrorName(ret)));
131131
}
132132

133133
/*

src/backend/commands/copyfromparse.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1703,8 +1703,8 @@ CopyReadAttributesText(CopyFromState cstate)
17031703

17041704
ereport(ERROR,
17051705
(errcode(ERRCODE_BAD_COPY_FILE_FORMAT),
1706-
errmsg("unexpected DEFAULT in COPY data"),
1707-
errdetail("Column \"%s\" has no DEFAULT value.",
1706+
errmsg("unexpected default marker in COPY data"),
1707+
errdetail("Column \"%s\" has no default value.",
17081708
NameStr(att->attname))));
17091709
}
17101710
}
@@ -1918,8 +1918,8 @@ CopyReadAttributesCSV(CopyFromState cstate)
19181918

19191919
ereport(ERROR,
19201920
(errcode(ERRCODE_BAD_COPY_FILE_FORMAT),
1921-
errmsg("unexpected DEFAULT in COPY data"),
1922-
errdetail("Column \"%s\" has no DEFAULT value.",
1921+
errmsg("unexpected default marker in COPY data"),
1922+
errdetail("Column \"%s\" has no default value.",
19231923
NameStr(att->attname))));
19241924
}
19251925
}

src/backend/commands/tablecmds.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10912,7 +10912,7 @@ ATExecAlterConstraint(Relation rel, AlterTableCmd *cmd, bool recurse,
1091210912
ancestorname && ancestortable ?
1091310913
errdetail("Constraint \"%s\" is derived from constraint \"%s\" of relation \"%s\".",
1091410914
cmdcon->conname, ancestorname, ancestortable) : 0,
10915-
errhint("You may alter the constraint it derives from, instead.")));
10915+
errhint("You may alter the constraint it derives from instead.")));
1091610916
}
1091710917

1091810918
/*
@@ -13861,7 +13861,7 @@ ATExecChangeOwner(Oid relationOid, Oid newOwnerId, bool recursing, LOCKMODE lock
1386113861
(errcode(ERRCODE_WRONG_OBJECT_TYPE),
1386213862
errmsg("cannot change owner of index \"%s\"",
1386313863
NameStr(tuple_class->relname)),
13864-
errhint("Change the ownership of the index's table, instead.")));
13864+
errhint("Change the ownership of the index's table instead.")));
1386513865
/* quick hack to exit via the no-op path */
1386613866
newOwnerId = tuple_class->relowner;
1386713867
}
@@ -13873,7 +13873,7 @@ ATExecChangeOwner(Oid relationOid, Oid newOwnerId, bool recursing, LOCKMODE lock
1387313873
(errcode(ERRCODE_WRONG_OBJECT_TYPE),
1387413874
errmsg("cannot change owner of index \"%s\"",
1387513875
NameStr(tuple_class->relname)),
13876-
errhint("Change the ownership of the index's table, instead.")));
13876+
errhint("Change the ownership of the index's table instead.")));
1387713877
break;
1387813878
case RELKIND_SEQUENCE:
1387913879
if (!recursing &&

src/backend/libpq/auth.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -312,7 +312,7 @@ auth_failed(Port *port, int status, const char *logdetail)
312312
break;
313313
}
314314

315-
cdetail = psprintf(_("Connection matched %s line %d: \"%s\""),
315+
cdetail = psprintf(_("Connection matched file \"%s\" line %d: \"%s\""),
316316
port->hba->sourcefile, port->hba->linenumber,
317317
port->hba->rawline);
318318
if (logdetail)

src/backend/replication/libpqwalreceiver/libpqwalreceiver.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -196,7 +196,7 @@ libpqrcv_connect(const char *conninfo, bool logical, bool must_use_password,
196196
(errcode(ERRCODE_S_R_E_PROHIBITED_SQL_STATEMENT_ATTEMPTED),
197197
errmsg("password is required"),
198198
errdetail("Non-superuser cannot connect if the server does not request a password."),
199-
errhint("Target server's authentication method must be changed. or set password_required=false in the subscription attributes.")));
199+
errhint("Target server's authentication method must be changed, or set password_required=false in the subscription parameters.")));
200200
}
201201

202202
if (logical)

src/backend/replication/walsender.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1113,7 +1113,7 @@ CreateReplicationSlot(CreateReplicationSlotCmd *cmd)
11131113
if (!XactReadOnly)
11141114
ereport(ERROR,
11151115
/*- translator: %s is a CREATE_REPLICATION_SLOT statement */
1116-
(errmsg("%s must be called in a read only transaction",
1116+
(errmsg("%s must be called in a read-only transaction",
11171117
"CREATE_REPLICATION_SLOT ... (SNAPSHOT 'use')")));
11181118

11191119
if (FirstSnapshotSet)

src/backend/storage/ipc/procarray.c

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3825,7 +3825,9 @@ TerminateOtherDBBackends(Oid databaseId)
38253825
if (superuser_arg(proc->roleId) && !superuser())
38263826
ereport(ERROR,
38273827
(errcode(ERRCODE_INSUFFICIENT_PRIVILEGE),
3828-
errmsg("must be a superuser to terminate superuser process")));
3828+
errmsg("permission denied to terminate process"),
3829+
errdetail("Only roles with the %s attribute may terminate processes of roles with the %s attribute.",
3830+
"SUPERUSER", "SUPERUSER")));
38293831

38303832
/* Users can signal backends they have role membership in. */
38313833
if (!has_privs_of_role(GetUserId(), proc->roleId) &&

src/backend/tcop/postgres.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2527,7 +2527,7 @@ errdetail_recovery_conflict(void)
25272527
errdetail("User query might have needed to see row versions that must be removed.");
25282528
break;
25292529
case PROCSIG_RECOVERY_CONFLICT_LOGICALSLOT:
2530-
errdetail("User was using a logical slot that must be invalidated.");
2530+
errdetail("User was using a logical replication slot that must be invalidated.");
25312531
break;
25322532
case PROCSIG_RECOVERY_CONFLICT_STARTUP_DEADLOCK:
25332533
errdetail("User transaction caused buffer deadlock with recovery.");

src/backend/tcop/utility.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -950,6 +950,7 @@ standard_ProcessUtility(PlannedStmt *pstmt,
950950
if (!has_privs_of_role(GetUserId(), ROLE_PG_CHECKPOINT))
951951
ereport(ERROR,
952952
(errcode(ERRCODE_INSUFFICIENT_PRIVILEGE),
953+
/* translator: %s is name of a SQL command, eg CHECKPOINT */
953954
errmsg("permission denied to execute %s command",
954955
"CHECKPOINT"),
955956
errdetail("Only roles with privileges of the \"%s\" role may execute this command.",

src/backend/utils/adt/jsonpath_scan.l

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -171,13 +171,13 @@ hex_fail \\x{hexdigit}{0,1}
171171

172172
<xnq,xq,xvq>{unicode}*{unicodefail} {
173173
jsonpath_yyerror(NULL, escontext,
174-
"invalid unicode sequence");
174+
"invalid Unicode escape sequence");
175175
yyterminate();
176176
}
177177

178178
<xnq,xq,xvq>{hex_fail} {
179179
jsonpath_yyerror(NULL, escontext,
180-
"invalid hex character sequence");
180+
"invalid hexadecimal character sequence");
181181
yyterminate();
182182
}
183183

@@ -198,7 +198,7 @@ hex_fail \\x{hexdigit}{0,1}
198198

199199
<xq,xvq><<EOF>> {
200200
jsonpath_yyerror(NULL, escontext,
201-
"unexpected end of quoted string");
201+
"unterminated quoted string");
202202
yyterminate();
203203
}
204204

@@ -554,7 +554,7 @@ parsejsonpath(const char *str, int len, struct Node *escontext)
554554
jsonpath_scanner_init(str, len);
555555

556556
if (jsonpath_yyparse((void *) &parseresult, escontext) != 0)
557-
jsonpath_yyerror(NULL, escontext, "bogus input"); /* shouldn't happen */
557+
jsonpath_yyerror(NULL, escontext, "invalid input"); /* shouldn't happen */
558558

559559
jsonpath_scanner_finish();
560560

@@ -611,7 +611,7 @@ addUnicodeChar(int ch, struct Node *escontext)
611611
else if (!pg_unicode_to_server_noerror(ch, (unsigned char *) cbuf))
612612
ereturn(escontext, false,
613613
(errcode(ERRCODE_SYNTAX_ERROR),
614-
errmsg("could not convert unicode to server encoding")));
614+
errmsg("could not convert Unicode to server encoding")));
615615
addstring(false, cbuf, strlen(cbuf));
616616
}
617617
return true;

src/backend/utils/adt/pg_locale.c

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2870,7 +2870,8 @@ icu_validate_locale(const char *loc_str)
28702870
ereport(elevel,
28712871
(errmsg("could not get language from ICU locale \"%s\": %s",
28722872
loc_str, u_errorName(status)),
2873-
errhint("To disable ICU locale validation, set parameter icu_validation_level to DISABLED.")));
2873+
errhint("To disable ICU locale validation, set the parameter \"%s\" to \"%s\".",
2874+
"icu_validation_level", "disabled")));
28742875
return;
28752876
}
28762877

@@ -2898,7 +2899,8 @@ icu_validate_locale(const char *loc_str)
28982899
ereport(elevel,
28992900
(errmsg("ICU locale \"%s\" has unknown language \"%s\"",
29002901
loc_str, lang),
2901-
errhint("To disable ICU locale validation, set parameter icu_validation_level to DISABLED.")));
2902+
errhint("To disable ICU locale validation, set the parameter \"%s\" to \"%s\".",
2903+
"icu_validation_level", "disabled")));
29022904

29032905
/* check that it can be opened */
29042906
collator = pg_ucol_open(loc_str);

src/backend/utils/misc/guc_tables.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1002,10 +1002,10 @@ struct config_bool ConfigureNamesBool[] =
10021002
},
10031003
{
10041004
{"enable_presorted_aggregate", PGC_USERSET, QUERY_TUNING_METHOD,
1005-
gettext_noop("Enables the planner's ability to produce plans which "
1005+
gettext_noop("Enables the planner's ability to produce plans that "
10061006
"provide presorted input for ORDER BY / DISTINCT aggregate "
10071007
"functions."),
1008-
gettext_noop("Allows the query planner to build plans which provide "
1008+
gettext_noop("Allows the query planner to build plans that provide "
10091009
"presorted input for aggregate functions with an ORDER BY / "
10101010
"DISTINCT clause. When disabled, implicit sorts are always "
10111011
"performed during execution."),
@@ -4909,8 +4909,8 @@ struct config_enum ConfigureNamesEnum[] =
49094909
{"debug_parallel_query", PGC_USERSET, DEVELOPER_OPTIONS,
49104910
gettext_noop("Forces the planner's use parallel query nodes."),
49114911
gettext_noop("This can be useful for testing the parallel query infrastructure "
4912-
"by forcing the planner to generate plans which contains nodes "
4913-
"which perform tuple communication between workers and the main process."),
4912+
"by forcing the planner to generate plans that contain nodes "
4913+
"that perform tuple communication between workers and the main process."),
49144914
GUC_NOT_IN_SAMPLE | GUC_EXPLAIN
49154915
},
49164916
&debug_parallel_query,

src/test/regress/expected/alter_table.out

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3855,7 +3855,7 @@ ERROR: cannot alter column "b" because it is part of the partition key of relat
38553855
-- specifying storage parameters for partitioned tables is not supported
38563856
ALTER TABLE partitioned SET (fillfactor=100);
38573857
ERROR: cannot specify storage parameters for a partitioned table
3858-
HINT: Specify storage parameters for its leaf partitions, instead.
3858+
HINT: Specify storage parameters for its leaf partitions instead.
38593859
-- partitioned table cannot participate in regular inheritance
38603860
CREATE TABLE nonpartitioned (
38613861
a int,

src/test/regress/expected/collate.icu.utf8.out

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1042,15 +1042,15 @@ ERROR: parameter "locale" must be specified
10421042
SET icu_validation_level = ERROR;
10431043
CREATE COLLATION testx (provider = icu, locale = 'nonsense-nowhere'); -- fails
10441044
ERROR: ICU locale "nonsense-nowhere" has unknown language "nonsense"
1045-
HINT: To disable ICU locale validation, set parameter icu_validation_level to DISABLED.
1045+
HINT: To disable ICU locale validation, set the parameter "icu_validation_level" to "disabled".
10461046
CREATE COLLATION testx (provider = icu, locale = '@colStrength=primary;nonsense=yes'); -- fails
10471047
ERROR: could not convert locale name "@colStrength=primary;nonsense=yes" to language tag: U_ILLEGAL_ARGUMENT_ERROR
10481048
RESET icu_validation_level;
10491049
CREATE COLLATION testx (provider = icu, locale = '@colStrength=primary;nonsense=yes'); DROP COLLATION testx;
10501050
WARNING: could not convert locale name "@colStrength=primary;nonsense=yes" to language tag: U_ILLEGAL_ARGUMENT_ERROR
10511051
CREATE COLLATION testx (provider = icu, locale = 'nonsense-nowhere'); DROP COLLATION testx;
10521052
WARNING: ICU locale "nonsense-nowhere" has unknown language "nonsense"
1053-
HINT: To disable ICU locale validation, set parameter icu_validation_level to DISABLED.
1053+
HINT: To disable ICU locale validation, set the parameter "icu_validation_level" to "disabled".
10541054
CREATE COLLATION test4 FROM nonsense;
10551055
ERROR: collation "nonsense" for encoding "UTF8" does not exist
10561056
CREATE COLLATION test5 FROM test0;

src/test/regress/expected/copy2.out

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -726,12 +726,12 @@ copy copy_default from stdin with (default '\N');
726726
ERROR: NULL specification and DEFAULT specification cannot be the same
727727
-- cannot use DEFAULT marker in column that has no DEFAULT value
728728
copy copy_default from stdin with (default '\D');
729-
ERROR: unexpected DEFAULT in COPY data
730-
DETAIL: Column "id" has no DEFAULT value.
729+
ERROR: unexpected default marker in COPY data
730+
DETAIL: Column "id" has no default value.
731731
CONTEXT: COPY copy_default, line 1: "\D value '2022-07-04'"
732732
copy copy_default from stdin with (format csv, default '\D');
733-
ERROR: unexpected DEFAULT in COPY data
734-
DETAIL: Column "id" has no DEFAULT value.
733+
ERROR: unexpected default marker in COPY data
734+
DETAIL: Column "id" has no default value.
735735
CONTEXT: COPY copy_default, line 1: "\D,value,2022-07-04"
736736
-- The DEFAULT marker must be unquoted and unescaped or it's not recognized
737737
copy copy_default from stdin with (default '\D');

src/test/regress/expected/create_table.out

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -990,7 +990,7 @@ DROP TABLE parted_col_comment;
990990
-- specifying storage parameters for partitioned tables is not supported
991991
CREATE TABLE parted_col_comment (a int, b text) PARTITION BY LIST (a) WITH (fillfactor=100);
992992
ERROR: cannot specify storage parameters for a partitioned table
993-
HINT: Specify storage parameters for its leaf partitions, instead.
993+
HINT: Specify storage parameters for its leaf partitions instead.
994994
-- list partitioning on array type column
995995
CREATE TABLE arrlp (a int[]) PARTITION BY LIST (a);
996996
CREATE TABLE arrlp12 PARTITION OF arrlp FOR VALUES IN ('{1}', '{2}');

src/test/regress/expected/foreign_key.out

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2498,7 +2498,7 @@ ALTER TABLE ref22 ALTER CONSTRAINT ref_f1_f2_fkey
24982498
DEFERRABLE INITIALLY IMMEDIATE; -- fails
24992499
ERROR: cannot alter constraint "ref_f1_f2_fkey" on relation "ref22"
25002500
DETAIL: Constraint "ref_f1_f2_fkey" is derived from constraint "ref_f1_f2_fkey" of relation "ref".
2501-
HINT: You may alter the constraint it derives from, instead.
2501+
HINT: You may alter the constraint it derives from instead.
25022502
ALTER TABLE ref ALTER CONSTRAINT ref_f1_f2_fkey
25032503
DEFERRABLE INITIALLY DEFERRED;
25042504
BEGIN;
@@ -2534,7 +2534,7 @@ ALTER TABLE ref ALTER CONSTRAINT ref_f1_f2_fkey1
25342534
DEFERRABLE INITIALLY DEFERRED; -- fails
25352535
ERROR: cannot alter constraint "ref_f1_f2_fkey1" on relation "ref"
25362536
DETAIL: Constraint "ref_f1_f2_fkey1" is derived from constraint "ref_f1_f2_fkey" of relation "ref".
2537-
HINT: You may alter the constraint it derives from, instead.
2537+
HINT: You may alter the constraint it derives from instead.
25382538
ALTER TABLE ref ALTER CONSTRAINT ref_f1_f2_fkey
25392539
DEFERRABLE INITIALLY DEFERRED;
25402540
INSERT INTO pt VALUES(1,2,3);

src/test/regress/expected/jsonpath_encoding.out

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,15 +17,15 @@ SELECT getdatabaseencoding(); -- just to label the results files
1717
-- checks for double-quoted values
1818
-- basic unicode input
1919
SELECT '"\u"'::jsonpath; -- ERROR, incomplete escape
20-
ERROR: invalid unicode sequence at or near "\u" of jsonpath input
20+
ERROR: invalid Unicode escape sequence at or near "\u" of jsonpath input
2121
LINE 1: SELECT '"\u"'::jsonpath;
2222
^
2323
SELECT '"\u00"'::jsonpath; -- ERROR, incomplete escape
24-
ERROR: invalid unicode sequence at or near "\u00" of jsonpath input
24+
ERROR: invalid Unicode escape sequence at or near "\u00" of jsonpath input
2525
LINE 1: SELECT '"\u00"'::jsonpath;
2626
^
2727
SELECT '"\u000g"'::jsonpath; -- ERROR, g is not a hex digit
28-
ERROR: invalid unicode sequence at or near "\u000" of jsonpath input
28+
ERROR: invalid Unicode escape sequence at or near "\u000" of jsonpath input
2929
LINE 1: SELECT '"\u000g"'::jsonpath;
3030
^
3131
SELECT '"\u0000"'::jsonpath; -- OK, legal escape
@@ -99,15 +99,15 @@ select '"null \\u0000 escape"'::jsonpath as not_an_escape;
9999
-- checks for quoted key names
100100
-- basic unicode input
101101
SELECT '$."\u"'::jsonpath; -- ERROR, incomplete escape
102-
ERROR: invalid unicode sequence at or near "\u" of jsonpath input
102+
ERROR: invalid Unicode escape sequence at or near "\u" of jsonpath input
103103
LINE 1: SELECT '$."\u"'::jsonpath;
104104
^
105105
SELECT '$."\u00"'::jsonpath; -- ERROR, incomplete escape
106-
ERROR: invalid unicode sequence at or near "\u00" of jsonpath input
106+
ERROR: invalid Unicode escape sequence at or near "\u00" of jsonpath input
107107
LINE 1: SELECT '$."\u00"'::jsonpath;
108108
^
109109
SELECT '$."\u000g"'::jsonpath; -- ERROR, g is not a hex digit
110-
ERROR: invalid unicode sequence at or near "\u000" of jsonpath input
110+
ERROR: invalid Unicode escape sequence at or near "\u000" of jsonpath input
111111
LINE 1: SELECT '$."\u000g"'::jsonpath;
112112
^
113113
SELECT '$."\u0000"'::jsonpath; -- OK, legal escape

src/test/regress/expected/jsonpath_encoding_1.out

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,15 +17,15 @@ SELECT getdatabaseencoding(); -- just to label the results files
1717
-- checks for double-quoted values
1818
-- basic unicode input
1919
SELECT '"\u"'::jsonpath; -- ERROR, incomplete escape
20-
ERROR: invalid unicode sequence at or near "\u" of jsonpath input
20+
ERROR: invalid Unicode escape sequence at or near "\u" of jsonpath input
2121
LINE 1: SELECT '"\u"'::jsonpath;
2222
^
2323
SELECT '"\u00"'::jsonpath; -- ERROR, incomplete escape
24-
ERROR: invalid unicode sequence at or near "\u00" of jsonpath input
24+
ERROR: invalid Unicode escape sequence at or near "\u00" of jsonpath input
2525
LINE 1: SELECT '"\u00"'::jsonpath;
2626
^
2727
SELECT '"\u000g"'::jsonpath; -- ERROR, g is not a hex digit
28-
ERROR: invalid unicode sequence at or near "\u000" of jsonpath input
28+
ERROR: invalid Unicode escape sequence at or near "\u000" of jsonpath input
2929
LINE 1: SELECT '"\u000g"'::jsonpath;
3030
^
3131
SELECT '"\u0000"'::jsonpath; -- OK, legal escape
@@ -93,15 +93,15 @@ select '"null \\u0000 escape"'::jsonpath as not_an_escape;
9393
-- checks for quoted key names
9494
-- basic unicode input
9595
SELECT '$."\u"'::jsonpath; -- ERROR, incomplete escape
96-
ERROR: invalid unicode sequence at or near "\u" of jsonpath input
96+
ERROR: invalid Unicode escape sequence at or near "\u" of jsonpath input
9797
LINE 1: SELECT '$."\u"'::jsonpath;
9898
^
9999
SELECT '$."\u00"'::jsonpath; -- ERROR, incomplete escape
100-
ERROR: invalid unicode sequence at or near "\u00" of jsonpath input
100+
ERROR: invalid Unicode escape sequence at or near "\u00" of jsonpath input
101101
LINE 1: SELECT '$."\u00"'::jsonpath;
102102
^
103103
SELECT '$."\u000g"'::jsonpath; -- ERROR, g is not a hex digit
104-
ERROR: invalid unicode sequence at or near "\u000" of jsonpath input
104+
ERROR: invalid Unicode escape sequence at or near "\u000" of jsonpath input
105105
LINE 1: SELECT '$."\u000g"'::jsonpath;
106106
^
107107
SELECT '$."\u0000"'::jsonpath; -- OK, legal escape

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy