Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
P
Postgres FD Implementation
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Abuhujair Javed
Postgres FD Implementation
Commits
5db837d3
Commit
5db837d3
authored
Nov 16, 2015
by
Peter Eisentraut
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Message improvements
parent
53264c7b
Changes
26
Hide whitespace changes
Inline
Side-by-side
Showing
26 changed files
with
78 additions
and
82 deletions
+78
-82
src/backend/access/transam/parallel.c
src/backend/access/transam/parallel.c
+3
-3
src/backend/access/transam/xlog.c
src/backend/access/transam/xlog.c
+15
-12
src/backend/catalog/objectaddress.c
src/backend/catalog/objectaddress.c
+2
-2
src/backend/commands/copy.c
src/backend/commands/copy.c
+1
-1
src/backend/commands/extension.c
src/backend/commands/extension.c
+1
-1
src/backend/commands/tablecmds.c
src/backend/commands/tablecmds.c
+7
-13
src/backend/commands/tablespace.c
src/backend/commands/tablespace.c
+2
-2
src/backend/libpq/auth.c
src/backend/libpq/auth.c
+1
-2
src/backend/libpq/pqcomm.c
src/backend/libpq/pqcomm.c
+1
-1
src/backend/parser/parse_agg.c
src/backend/parser/parse_agg.c
+1
-1
src/backend/parser/parse_clause.c
src/backend/parser/parse_clause.c
+1
-1
src/backend/parser/parse_relation.c
src/backend/parser/parse_relation.c
+2
-2
src/backend/postmaster/postmaster.c
src/backend/postmaster/postmaster.c
+4
-2
src/backend/storage/lmgr/lwlock.c
src/backend/storage/lmgr/lwlock.c
+4
-4
src/backend/utils/adt/array_userfuncs.c
src/backend/utils/adt/array_userfuncs.c
+1
-1
src/backend/utils/adt/encode.c
src/backend/utils/adt/encode.c
+2
-2
src/backend/utils/adt/jsonb.c
src/backend/utils/adt/jsonb.c
+3
-3
src/backend/utils/misc/guc.c
src/backend/utils/misc/guc.c
+3
-3
src/backend/utils/misc/rls.c
src/backend/utils/misc/rls.c
+1
-1
src/port/win32error.c
src/port/win32error.c
+2
-2
src/test/regress/expected/alter_table.out
src/test/regress/expected/alter_table.out
+5
-7
src/test/regress/expected/insert_conflict.out
src/test/regress/expected/insert_conflict.out
+3
-3
src/test/regress/expected/join.out
src/test/regress/expected/join.out
+4
-4
src/test/regress/expected/jsonb.out
src/test/regress/expected/jsonb.out
+1
-1
src/test/regress/expected/object_address.out
src/test/regress/expected/object_address.out
+3
-3
src/test/regress/expected/rowsecurity.out
src/test/regress/expected/rowsecurity.out
+5
-5
No files found.
src/backend/access/transam/parallel.c
View file @
5db837d3
...
...
@@ -907,12 +907,12 @@ ParallelWorkerMain(Datum main_arg)
if
(
seg
==
NULL
)
ereport
(
ERROR
,
(
errcode
(
ERRCODE_OBJECT_NOT_IN_PREREQUISITE_STATE
),
errmsg
(
"
unable to
map dynamic shared memory segment"
)));
errmsg
(
"
could not
map dynamic shared memory segment"
)));
toc
=
shm_toc_attach
(
PARALLEL_MAGIC
,
dsm_segment_address
(
seg
));
if
(
toc
==
NULL
)
ereport
(
ERROR
,
(
errcode
(
ERRCODE_OBJECT_NOT_IN_PREREQUISITE_STATE
),
errmsg
(
"
ba
d magic number in dynamic shared memory segment"
)));
errmsg
(
"
invali
d magic number in dynamic shared memory segment"
)));
/* Look up fixed parallel state. */
fps
=
shm_toc_lookup
(
toc
,
PARALLEL_KEY_FIXED
);
...
...
@@ -1063,7 +1063,7 @@ ParallelExtensionTrampoline(dsm_segment *seg, shm_toc *toc)
static
void
ParallelErrorContext
(
void
*
arg
)
{
errcontext
(
"parallel worker,
pid
%d"
,
*
(
int32
*
)
arg
);
errcontext
(
"parallel worker,
PID
%d"
,
*
(
int32
*
)
arg
);
}
/*
...
...
src/backend/access/transam/xlog.c
View file @
5db837d3
...
...
@@ -4976,9 +4976,10 @@ readRecoveryCommandFile(void)
else
ereport
(
ERROR
,
(
errcode
(
ERRCODE_INVALID_PARAMETER_VALUE
),
errmsg
(
"invalid value for recovery parameter
\"
%s
\"
"
,
"recovery_target_action"
),
errhint
(
"The allowed values are
\"
pause
\"
,
\"
promote
\"
, and
\"
shutdown
\"
."
)));
errmsg
(
"invalid value for recovery parameter
\"
%s
\"
:
\"
%s
\"
"
,
"recovery_target_action"
,
item
->
value
),
errhint
(
"Valid values are
\"
pause
\"
,
\"
promote
\"
, and
\"
shutdown
\"
."
)));
ereport
(
DEBUG2
,
(
errmsg_internal
(
"recovery_target_action = '%s'"
,
...
...
@@ -5058,7 +5059,9 @@ readRecoveryCommandFile(void)
else
ereport
(
ERROR
,
(
errcode
(
ERRCODE_INVALID_PARAMETER_VALUE
),
errmsg
(
"invalid value for recovery parameter
\"
recovery_target
\"
"
),
errmsg
(
"invalid value for recovery parameter
\"
%s
\"
:
\"
%s
\"
"
,
"recovery_target"
,
item
->
value
),
errhint
(
"The only allowed value is
\"
immediate
\"
."
)));
ereport
(
DEBUG2
,
(
errmsg_internal
(
"recovery_target = '%s'"
,
...
...
@@ -6142,7 +6145,7 @@ StartupXLOG(void)
unlink
(
TABLESPACE_MAP_OLD
);
if
(
rename
(
TABLESPACE_MAP
,
TABLESPACE_MAP_OLD
)
==
0
)
ereport
(
LOG
,
(
errmsg
(
"ignoring
\"
%s
\"
file because no
\"
%s
\"
file
exists"
,
(
errmsg
(
"ignoring
file
\"
%s
\"
because no file
\"
%s
\"
exists"
,
TABLESPACE_MAP
,
BACKUP_LABEL_FILE
),
errdetail
(
"File
\"
%s
\"
was renamed to
\"
%s
\"
."
,
TABLESPACE_MAP
,
TABLESPACE_MAP_OLD
)));
...
...
@@ -6150,7 +6153,7 @@ StartupXLOG(void)
ereport
(
LOG
,
(
errmsg
(
"ignoring
\"
%s
\"
file because no
\"
%s
\"
file exists"
,
TABLESPACE_MAP
,
BACKUP_LABEL_FILE
),
errdetail
(
"
File
\"
%s
\"
could not be renamed
to
\"
%s
\"
: %m."
,
errdetail
(
"
Could not rename file
\"
%s
\"
to
\"
%s
\"
: %m."
,
TABLESPACE_MAP
,
TABLESPACE_MAP_OLD
)));
}
...
...
@@ -6281,24 +6284,24 @@ StartupXLOG(void)
LastRec
=
RecPtr
=
checkPointLoc
;
ereport
(
DEBUG1
,
(
errmsg
(
"redo record is at %X/%X; shutdown %s"
,
(
errmsg
_internal
(
"redo record is at %X/%X; shutdown %s"
,
(
uint32
)
(
checkPoint
.
redo
>>
32
),
(
uint32
)
checkPoint
.
redo
,
wasShutdown
?
"TRUE"
:
"FALSE"
)));
ereport
(
DEBUG1
,
(
errmsg
(
"next transaction ID: %u/%u; next OID: %u"
,
(
errmsg
_internal
(
"next transaction ID: %u/%u; next OID: %u"
,
checkPoint
.
nextXidEpoch
,
checkPoint
.
nextXid
,
checkPoint
.
nextOid
)));
ereport
(
DEBUG1
,
(
errmsg
(
"next MultiXactId: %u; next MultiXactOffset: %u"
,
(
errmsg
_internal
(
"next MultiXactId: %u; next MultiXactOffset: %u"
,
checkPoint
.
nextMulti
,
checkPoint
.
nextMultiOffset
)));
ereport
(
DEBUG1
,
(
errmsg
(
"oldest unfrozen transaction ID: %u, in database %u"
,
(
errmsg
_internal
(
"oldest unfrozen transaction ID: %u, in database %u"
,
checkPoint
.
oldestXid
,
checkPoint
.
oldestXidDB
)));
ereport
(
DEBUG1
,
(
errmsg
(
"oldest MultiXactId: %u, in database %u"
,
(
errmsg
_internal
(
"oldest MultiXactId: %u, in database %u"
,
checkPoint
.
oldestMulti
,
checkPoint
.
oldestMultiDB
)));
ereport
(
DEBUG1
,
(
errmsg
(
"commit timestamp Xid oldest/newest: %u/%u"
,
(
errmsg
_internal
(
"commit timestamp Xid oldest/newest: %u/%u"
,
checkPoint
.
oldestCommitTs
,
checkPoint
.
newestCommitTs
)));
if
(
!
TransactionIdIsNormal
(
checkPoint
.
nextXid
))
...
...
src/backend/catalog/objectaddress.c
View file @
5db837d3
...
...
@@ -1652,7 +1652,7 @@ get_object_address_usermapping(List *objname, List *objargs, bool missing_ok)
if
(
!
missing_ok
)
ereport
(
ERROR
,
(
errcode
(
ERRCODE_UNDEFINED_OBJECT
),
errmsg
(
"user mapping for user
\"
%s
\"
i
n server
\"
%s
\"
does not exist"
,
errmsg
(
"user mapping for user
\"
%s
\"
o
n server
\"
%s
\"
does not exist"
,
username
,
servername
)));
return
address
;
}
...
...
@@ -1678,7 +1678,7 @@ get_object_address_usermapping(List *objname, List *objargs, bool missing_ok)
if
(
!
missing_ok
)
ereport
(
ERROR
,
(
errcode
(
ERRCODE_UNDEFINED_OBJECT
),
errmsg
(
"user mapping for user
\"
%s
\"
i
n server
\"
%s
\"
does not exist"
,
errmsg
(
"user mapping for user
\"
%s
\"
o
n server
\"
%s
\"
does not exist"
,
username
,
servername
)));
return
address
;
}
...
...
src/backend/commands/copy.c
View file @
5db837d3
...
...
@@ -874,7 +874,7 @@ DoCopy(const CopyStmt *stmt, const char *queryString, uint64 *processed)
if
(
is_from
)
ereport
(
ERROR
,
(
errcode
(
ERRCODE_FEATURE_NOT_SUPPORTED
),
errmsg
(
"COPY FROM not supported with row
level security."
),
errmsg
(
"COPY FROM not supported with row
-
level security."
),
errhint
(
"Use INSERT statements instead."
)));
/* Build target list */
...
...
src/backend/commands/extension.c
View file @
5db837d3
...
...
@@ -3111,7 +3111,7 @@ read_whole_file(const char *filename, int *length)
if
(
fst
.
st_size
>
(
MaxAllocSize
-
1
))
ereport
(
ERROR
,
(
errcode
(
ERRCODE_PROGRAM_LIMIT_EXCEEDED
),
errmsg
(
"file
too large"
)));
errmsg
(
"file
\"
%s
\"
is too large"
,
filename
)));
bytes_to_read
=
(
size_t
)
fst
.
st_size
;
if
((
file
=
AllocateFile
(
filename
,
PG_BINARY_R
))
==
NULL
)
...
...
src/backend/commands/tablecmds.c
View file @
5db837d3
...
...
@@ -11213,10 +11213,8 @@ ATPrepChangePersistence(Relation rel, bool toLogged)
case
RELPERSISTENCE_TEMP
:
ereport
(
ERROR
,
(
errcode
(
ERRCODE_INVALID_TABLE_DEFINITION
),
errmsg
(
"cannot change logged status of table
%s
"
,
errmsg
(
"cannot change logged status of table
\"
%s
\"
because it is temporary
"
,
RelationGetRelationName
(
rel
)),
errdetail
(
"Table %s is temporary."
,
RelationGetRelationName
(
rel
)),
errtable
(
rel
)));
break
;
case
RELPERSISTENCE_PERMANENT
:
...
...
@@ -11274,11 +11272,9 @@ ATPrepChangePersistence(Relation rel, bool toLogged)
if
(
foreignrel
->
rd_rel
->
relpersistence
!=
RELPERSISTENCE_PERMANENT
)
ereport
(
ERROR
,
(
errcode
(
ERRCODE_INVALID_TABLE_DEFINITION
),
errmsg
(
"cannot change status of table %s to logged"
,
RelationGetRelationName
(
rel
)),
errdetail
(
"Table %s references unlogged table %s."
,
RelationGetRelationName
(
rel
),
RelationGetRelationName
(
foreignrel
)),
errmsg
(
"could not change table
\"
%s
\"
to logged because it references unlogged table
\"
%s
\"
"
,
RelationGetRelationName
(
rel
),
RelationGetRelationName
(
foreignrel
)),
errtableconstraint
(
rel
,
NameStr
(
con
->
conname
))));
}
else
...
...
@@ -11286,11 +11282,9 @@ ATPrepChangePersistence(Relation rel, bool toLogged)
if
(
foreignrel
->
rd_rel
->
relpersistence
==
RELPERSISTENCE_PERMANENT
)
ereport
(
ERROR
,
(
errcode
(
ERRCODE_INVALID_TABLE_DEFINITION
),
errmsg
(
"cannot change status of table %s to unlogged"
,
RelationGetRelationName
(
rel
)),
errdetail
(
"Logged table %s is referenced by table %s."
,
RelationGetRelationName
(
foreignrel
),
RelationGetRelationName
(
rel
)),
errmsg
(
"could not change table
\"
%s
\"
to unlogged because it references logged table
\"
%s
\"
"
,
RelationGetRelationName
(
rel
),
RelationGetRelationName
(
foreignrel
)),
errtableconstraint
(
rel
,
NameStr
(
con
->
conname
))));
}
...
...
src/backend/commands/tablespace.c
View file @
5db837d3
...
...
@@ -800,7 +800,7 @@ remove_symlink:
/* Refuse to remove anything that's not a directory or symlink */
ereport
(
redo
?
LOG
:
ERROR
,
(
ERRCODE_SYSTEM_ERROR
,
errmsg
(
"
not a directory or symbolic link:
\"
%s
\"
"
,
errmsg
(
"
\"
%s
\"
is not a directory or symbolic link
"
,
linkloc
)));
}
...
...
@@ -886,7 +886,7 @@ remove_tablespace_symlink(const char *linkloc)
{
/* Refuse to remove anything that's not a directory or symlink */
ereport
(
ERROR
,
(
errmsg
(
"
not a directory or symbolic link:
\"
%s
\"
"
,
(
errmsg
(
"
\"
%s
\"
is not a directory or symbolic link
"
,
linkloc
)));
}
}
...
...
src/backend/libpq/auth.c
View file @
5db837d3
...
...
@@ -668,8 +668,7 @@ recv_password_packet(Port *port)
errmsg
(
"invalid password packet size"
)));
/* Do not echo password to logs, for security. */
ereport
(
DEBUG5
,
(
errmsg
(
"received password packet"
)));
elog
(
DEBUG5
,
"received password packet"
);
/*
* Return the received string. Note we do not attempt to do any
...
...
src/backend/libpq/pqcomm.c
View file @
5db837d3
...
...
@@ -1168,7 +1168,7 @@ pq_startmsgread(void)
if
(
PqCommReadingMsg
)
ereport
(
FATAL
,
(
errcode
(
ERRCODE_PROTOCOL_VIOLATION
),
errmsg
(
"terminating connection because protocol sync was lost"
)));
errmsg
(
"terminating connection because protocol sync
hronization
was lost"
)));
PqCommReadingMsg
=
true
;
}
...
...
src/backend/parser/parse_agg.c
View file @
5db837d3
...
...
@@ -979,7 +979,7 @@ parseCheckAggregates(ParseState *pstate, Query *qry)
if
(
!
gsets
)
ereport
(
ERROR
,
(
errcode
(
ERRCODE_STATEMENT_TOO_COMPLEX
),
errmsg
(
"too many grouping sets present (max 4096)"
),
errmsg
(
"too many grouping sets present (max
imum
4096)"
),
parser_errposition
(
pstate
,
qry
->
groupClause
?
exprLocation
((
Node
*
)
qry
->
groupClause
)
...
...
src/backend/parser/parse_clause.c
View file @
5db837d3
...
...
@@ -2856,7 +2856,7 @@ transformOnConflictArbiter(ParseState *pstate,
ereport
(
ERROR
,
(
errcode
(
ERRCODE_SYNTAX_ERROR
),
errmsg
(
"ON CONFLICT DO UPDATE requires inference specification or constraint name"
),
errhint
(
"For example, ON CONFLICT (
<column>
)."
),
errhint
(
"For example, ON CONFLICT (
column_name
)."
),
parser_errposition
(
pstate
,
exprLocation
((
Node
*
)
onConflictClause
))));
...
...
src/backend/parser/parse_relation.c
View file @
5db837d3
...
...
@@ -3080,7 +3080,7 @@ errorMissingColumn(ParseState *pstate,
errmsg
(
"column %s.%s does not exist"
,
relname
,
colname
)
:
errmsg
(
"column
\"
%s
\"
does not exist"
,
colname
),
state
->
rfirst
?
closestfirst
?
errhint
(
"Perhaps you meant to reference the column
\"
%s
\"
.
\"
%s
\"
."
,
errhint
(
"Perhaps you meant to reference the column
\"
%s
.
%s
\"
."
,
state
->
rfirst
->
eref
->
aliasname
,
closestfirst
)
:
errhint
(
"There is a column named
\"
%s
\"
in table
\"
%s
\"
, but it cannot be referenced from this part of the query."
,
colname
,
state
->
rfirst
->
eref
->
aliasname
)
:
0
,
...
...
@@ -3099,7 +3099,7 @@ errorMissingColumn(ParseState *pstate,
relname
?
errmsg
(
"column %s.%s does not exist"
,
relname
,
colname
)
:
errmsg
(
"column
\"
%s
\"
does not exist"
,
colname
),
errhint
(
"Perhaps you meant to reference the column
\"
%s
\"
.
\"
%s
\"
or the column
\"
%s
\"
.
\"
%s
\"
."
,
errhint
(
"Perhaps you meant to reference the column
\"
%s
.%s
\"
or the column
\"
%s.
%s
\"
."
,
state
->
rfirst
->
eref
->
aliasname
,
closestfirst
,
state
->
rsecond
->
eref
->
aliasname
,
closestsecond
),
parser_errposition
(
pstate
,
location
)));
...
...
src/backend/postmaster/postmaster.c
View file @
5db837d3
...
...
@@ -2047,8 +2047,10 @@ retry1:
else
if
(
!
parse_bool
(
valptr
,
&
am_walsender
))
ereport
(
FATAL
,
(
errcode
(
ERRCODE_INVALID_PARAMETER_VALUE
),
errmsg
(
"invalid value for parameter
\"
replication
\"
"
),
errhint
(
"Valid values are: false, 0, true, 1, database."
)));
errmsg
(
"invalid value for parameter
\"
%s
\"
:
\"
%s
\"
"
,
"replication"
,
valptr
),
errhint
(
"Valid values are:
\"
false
\"
, 0,
\"
true
\"
, 1,
\"
database
\"
."
)));
}
else
{
...
...
src/backend/storage/lmgr/lwlock.c
View file @
5db837d3
...
...
@@ -184,7 +184,7 @@ PRINT_LWDEBUG(const char *where, LWLock *lock, LWLockMode mode)
ereport
(
LOG
,
(
errhidestmt
(
true
),
errhidecontext
(
true
),
errmsg
(
"%d: %s(%s): excl %u shared %u haswaiters %u waiters %u rOK %d"
,
errmsg
_internal
(
"%d: %s(%s): excl %u shared %u haswaiters %u waiters %u rOK %d"
,
MyProcPid
,
where
,
MainLWLockNames
[
id
],
!!
(
state
&
LW_VAL_EXCLUSIVE
),
...
...
@@ -196,7 +196,7 @@ PRINT_LWDEBUG(const char *where, LWLock *lock, LWLockMode mode)
ereport
(
LOG
,
(
errhidestmt
(
true
),
errhidecontext
(
true
),
errmsg
(
"%d: %s(%s %d): excl %u shared %u haswaiters %u waiters %u rOK %d"
,
errmsg
_internal
(
"%d: %s(%s %d): excl %u shared %u haswaiters %u waiters %u rOK %d"
,
MyProcPid
,
where
,
T_NAME
(
lock
),
id
,
!!
(
state
&
LW_VAL_EXCLUSIVE
),
...
...
@@ -219,13 +219,13 @@ LOG_LWDEBUG(const char *where, LWLock *lock, const char *msg)
ereport
(
LOG
,
(
errhidestmt
(
true
),
errhidecontext
(
true
),
errmsg
(
"%s(%s): %s"
,
where
,
errmsg
_internal
(
"%s(%s): %s"
,
where
,
MainLWLockNames
[
id
],
msg
)));
else
ereport
(
LOG
,
(
errhidestmt
(
true
),
errhidecontext
(
true
),
errmsg
(
"%s(%s %d): %s"
,
where
,
errmsg
_internal
(
"%s(%s %d): %s"
,
where
,
T_NAME
(
lock
),
id
,
msg
)));
}
}
...
...
src/backend/utils/adt/array_userfuncs.c
View file @
5db837d3
...
...
@@ -746,7 +746,7 @@ array_position_common(FunctionCallInfo fcinfo)
if
(
PG_ARGISNULL
(
2
))
ereport
(
ERROR
,
(
errcode
(
ERRCODE_NULL_VALUE_NOT_ALLOWED
),
errmsg
(
"initial position
should not be NULL
"
)));
errmsg
(
"initial position
must not be null
"
)));
position_min
=
PG_GETARG_INT32
(
2
);
}
...
...
src/backend/utils/adt/encode.c
View file @
5db837d3
...
...
@@ -304,7 +304,7 @@ b64_decode(const char *src, unsigned len, char *dst)
if
(
b
<
0
)
ereport
(
ERROR
,
(
errcode
(
ERRCODE_INVALID_PARAMETER_VALUE
),
errmsg
(
"invalid symbol
'%c'
while decoding base64 sequence"
,
(
int
)
c
)));
errmsg
(
"invalid symbol
\"
%c
\"
while decoding base64 sequence"
,
(
int
)
c
)));
}
/* add it to buffer */
buf
=
(
buf
<<
6
)
+
b
;
...
...
@@ -325,7 +325,7 @@ b64_decode(const char *src, unsigned len, char *dst)
ereport
(
ERROR
,
(
errcode
(
ERRCODE_INVALID_PARAMETER_VALUE
),
errmsg
(
"invalid base64 end sequence"
),
errhint
(
"Input data is missing padding,
truncated, or
otherwise corrupted."
)));
errhint
(
"Input data is missing padding,
is truncated, or is
otherwise corrupted."
)));
return
p
-
dst
;
}
...
...
src/backend/utils/adt/jsonb.c
View file @
5db837d3
...
...
@@ -1179,7 +1179,7 @@ jsonb_build_object(PG_FUNCTION_ARGS)
if
(
nargs
%
2
!=
0
)
ereport
(
ERROR
,
(
errcode
(
ERRCODE_INVALID_PARAMETER_VALUE
),
errmsg
(
"invalid number o
r
arguments: object must be matched key value pairs"
)));
errmsg
(
"invalid number o
f
arguments: object must be matched key value pairs"
)));
memset
(
&
result
,
0
,
sizeof
(
JsonbInState
));
...
...
@@ -1193,7 +1193,7 @@ jsonb_build_object(PG_FUNCTION_ARGS)
if
(
PG_ARGISNULL
(
i
))
ereport
(
ERROR
,
(
errcode
(
ERRCODE_INVALID_PARAMETER_VALUE
),
errmsg
(
"arg
%d: key can
not be null"
,
i
+
1
)));
errmsg
(
"arg
ument %d: key must
not be null"
,
i
+
1
)));
val_type
=
get_fn_expr_argtype
(
fcinfo
->
flinfo
,
i
);
/*
...
...
@@ -1215,7 +1215,7 @@ jsonb_build_object(PG_FUNCTION_ARGS)
if
(
val_type
==
InvalidOid
||
val_type
==
UNKNOWNOID
)
ereport
(
ERROR
,
(
errcode
(
ERRCODE_INVALID_PARAMETER_VALUE
),
errmsg
(
"arg %d: could not determine data type"
,
i
+
1
)));
errmsg
(
"arg
ument
%d: could not determine data type"
,
i
+
1
)));
add_jsonb
(
arg
,
false
,
&
result
,
val_type
,
true
);
...
...
src/backend/utils/misc/guc.c
View file @
5db837d3
...
...
@@ -2461,7 +2461,7 @@ static struct config_int ConfigureNamesInt[] =
{
{
"wal_retrieve_retry_interval"
,
PGC_SIGHUP
,
REPLICATION_STANDBY
,
gettext_noop
(
"Sets the time to wait before retrying to retrieve WAL"
gettext_noop
(
"Sets the time to wait before retrying to retrieve WAL
"
"after a failed attempt."
),
NULL
,
GUC_UNIT_MS
...
...
@@ -2589,7 +2589,7 @@ static struct config_int ConfigureNamesInt[] =
{
{
"ssl_renegotiation_limit"
,
PGC_USERSET
,
CONN_AUTH_SECURITY
,
gettext_noop
(
"SSL regenotiation is no longer supported; this can only be 0"
),
gettext_noop
(
"SSL regenotiation is no longer supported; this can only be 0
.
"
),
NULL
,
GUC_NO_SHOW_ALL
|
GUC_NOT_IN_SAMPLE
|
GUC_DISALLOW_IN_FILE
,
},
...
...
@@ -3417,7 +3417,7 @@ static struct config_string ConfigureNamesString[] =
{
{
"cluster_name"
,
PGC_POSTMASTER
,
PROCESS_TITLE
,
gettext_noop
(
"Sets the name of the cluster which is included in the process title."
),
gettext_noop
(
"Sets the name of the cluster
,
which is included in the process title."
),
NULL
,
GUC_IS_NAME
},
...
...
src/backend/utils/misc/rls.c
View file @
5db837d3
...
...
@@ -122,7 +122,7 @@ check_enable_rls(Oid relid, Oid checkAsUser, bool noError)
if
(
!
row_security
&&
!
noError
)
ereport
(
ERROR
,
(
errcode
(
ERRCODE_INSUFFICIENT_PRIVILEGE
),
errmsg
(
"insufficient privilege to bypass row
security.
"
)));
errmsg
(
"insufficient privilege to bypass row
-level security
"
)));
/* RLS should be fully enabled for this relation. */
return
RLS_ENABLED
;
...
...
src/port/win32error.c
View file @
5db837d3
...
...
@@ -186,7 +186,7 @@ _dosmaperr(unsigned long e)
(
errmsg_internal
(
"mapped win32 error code %lu to %d"
,
e
,
doserr
)));
#elif FRONTEND_DEBUG
fprintf
(
stderr
,
_
(
"mapped win32 error code %lu to %d"
)
,
e
,
doserr
);
fprintf
(
stderr
,
"mapped win32 error code %lu to %d"
,
e
,
doserr
);
#endif
errno
=
doserr
;
return
;
...
...
@@ -198,7 +198,7 @@ _dosmaperr(unsigned long e)
(
errmsg_internal
(
"unrecognized win32 error code: %lu"
,
e
)));
#else
fprintf
(
stderr
,
_
(
"unrecognized win32 error code: %lu"
)
,
e
);
fprintf
(
stderr
,
"unrecognized win32 error code: %lu"
,
e
);
#endif
errno
=
EINVAL
;
...
...
src/test/regress/expected/alter_table.out
View file @
5db837d3
...
...
@@ -551,7 +551,7 @@ create table atacc1 ( test int );
-- add a check constraint (fails)
alter table atacc1 add constraint atacc_test1 check (test1>3);
ERROR: column "test1" does not exist
HINT: Perhaps you meant to reference the column "atacc1
"."
test".
HINT: Perhaps you meant to reference the column "atacc1
.
test".
drop table atacc1;
-- something a little more complicated
create table atacc1 ( test int, test2 int, test3 int);
...
...
@@ -1358,7 +1358,7 @@ select f1 from c1;
ERROR: column "f1" does not exist
LINE 1: select f1 from c1;
^
HINT: Perhaps you meant to reference the column "c1
"."
f2".
HINT: Perhaps you meant to reference the column "c1
.
f2".
drop table p1 cascade;
NOTICE: drop cascades to table c1
create table p1 (f1 int, f2 int);
...
...
@@ -1372,7 +1372,7 @@ select f1 from c1;
ERROR: column "f1" does not exist
LINE 1: select f1 from c1;
^
HINT: Perhaps you meant to reference the column "c1
"."
f2".
HINT: Perhaps you meant to reference the column "c1
.
f2".
drop table p1 cascade;
NOTICE: drop cascades to table c1
create table p1 (f1 int, f2 int);
...
...
@@ -2601,8 +2601,7 @@ CREATE UNLOGGED TABLE unlogged2(f1 SERIAL PRIMARY KEY, f2 INTEGER REFERENCES unl
CREATE UNLOGGED TABLE unlogged3(f1 SERIAL PRIMARY KEY, f2 INTEGER REFERENCES unlogged3); -- self-referencing foreign key
ALTER TABLE unlogged3 SET LOGGED; -- skip self-referencing foreign key
ALTER TABLE unlogged2 SET LOGGED; -- fails because a foreign key to an unlogged table exists
ERROR: cannot change status of table unlogged2 to logged
DETAIL: Table unlogged2 references unlogged table unlogged1.
ERROR: could not change table "unlogged2" to logged because it references unlogged table "unlogged1"
ALTER TABLE unlogged1 SET LOGGED;
-- check relpersistence of an unlogged table after changing to permament
SELECT relname, relkind, relpersistence FROM pg_class WHERE relname ~ '^unlogged1'
...
...
@@ -2645,8 +2644,7 @@ ORDER BY relname;
CREATE TABLE logged2(f1 SERIAL PRIMARY KEY, f2 INTEGER REFERENCES logged1); -- foreign key
CREATE TABLE logged3(f1 SERIAL PRIMARY KEY, f2 INTEGER REFERENCES logged3); -- self-referencing foreign key
ALTER TABLE logged1 SET UNLOGGED; -- fails because a foreign key from a permanent table exists
ERROR: cannot change status of table logged1 to unlogged
DETAIL: Logged table logged2 is referenced by table logged1.
ERROR: could not change table "logged1" to unlogged because it references logged table "logged2"
ALTER TABLE logged3 SET UNLOGGED; -- skip self-referencing foreign key
ALTER TABLE logged2 SET UNLOGGED;
ALTER TABLE logged1 SET UNLOGGED;
...
...
src/test/regress/expected/insert_conflict.out
View file @
5db837d3
...
...
@@ -226,7 +226,7 @@ insert into insertconflicttest values (1, 'Apple') on conflict do update set fru
ERROR: ON CONFLICT DO UPDATE requires inference specification or constraint name
LINE 1: ...nsert into insertconflicttest values (1, 'Apple') on conflic...
^
HINT: For example, ON CONFLICT (
<column>
).
HINT: For example, ON CONFLICT (
column_name
).
-- inference succeeds:
insert into insertconflicttest values (1, 'Apple') on conflict (key) do update set fruit = excluded.fruit;
insert into insertconflicttest values (2, 'Orange') on conflict (key, key, key) do update set fruit = excluded.fruit;
...
...
@@ -246,13 +246,13 @@ insert into insertconflicttest values (1, 'Apple') on conflict (keyy) do update
ERROR: column "keyy" does not exist
LINE 1: ...nsertconflicttest values (1, 'Apple') on conflict (keyy) do ...
^
HINT: Perhaps you meant to reference the column "insertconflicttest
"."
key".
HINT: Perhaps you meant to reference the column "insertconflicttest
.
key".
-- Have useful HINT for EXCLUDED.* RTE within UPDATE:
insert into insertconflicttest values (1, 'Apple') on conflict (key) do update set fruit = excluded.fruitt;
ERROR: column excluded.fruitt does not exist
LINE 1: ... 'Apple') on conflict (key) do update set fruit = excluded.f...
^
HINT: Perhaps you meant to reference the column "excluded
"."
fruit".
HINT: Perhaps you meant to reference the column "excluded
.
fruit".
-- inference fails:
insert into insertconflicttest values (3, 'Kiwi') on conflict (key, fruit) do update set fruit = excluded.fruit;
ERROR: there is no unique or exclusion constraint matching the ON CONFLICT specification
...
...
src/test/regress/expected/join.out
View file @
5db837d3
...
...
@@ -2299,7 +2299,7 @@ select t1.x from t1 join t3 on (t1.a = t3.x);
ERROR: column t1.x does not exist
LINE 1: select t1.x from t1 join t3 on (t1.a = t3.x);
^
HINT: Perhaps you meant to reference the column "t3
"."
x".
HINT: Perhaps you meant to reference the column "t3
.
x".
--
-- regression test for 8.1 merge right join bug
--
...
...
@@ -3982,19 +3982,19 @@ select t1.uunique1 from
ERROR: column t1.uunique1 does not exist
LINE 1: select t1.uunique1 from
^
HINT: Perhaps you meant to reference the column "t1
"."
unique1".
HINT: Perhaps you meant to reference the column "t1
.
unique1".
select t2.uunique1 from
tenk1 t1 join tenk2 t2 on t1.two = t2.two; -- error, prefer "t2" suggestion
ERROR: column t2.uunique1 does not exist
LINE 1: select t2.uunique1 from
^
HINT: Perhaps you meant to reference the column "t2
"."
unique1".
HINT: Perhaps you meant to reference the column "t2
.
unique1".
select uunique1 from
tenk1 t1 join tenk2 t2 on t1.two = t2.two; -- error, suggest both at once
ERROR: column "uunique1" does not exist
LINE 1: select uunique1 from
^
HINT: Perhaps you meant to reference the column "t1
"."unique1" or the column "t2"."
unique1".
HINT: Perhaps you meant to reference the column "t1
.unique1" or the column "t2.
unique1".
--
-- Take care to reference the correct RTE
--
...
...
src/test/regress/expected/jsonb.out
View file @
5db837d3
...
...
@@ -1373,7 +1373,7 @@ SELECT jsonb_build_object(1,2);
-- keys must be scalar and not null
SELECT jsonb_build_object(null,2);
ERROR: arg
1: key can
not be null
ERROR: arg
ument 1: key must
not be null
SELECT jsonb_build_object(r,2) FROM (SELECT 1 AS a, 2 AS b) r;
ERROR: key value must be scalar, not array, composite, or json
SELECT jsonb_build_object(json '{"a":1,"b":2}', 3);
...
...
src/test/regress/expected/object_address.out
View file @
5db837d3
...
...
@@ -253,11 +253,11 @@ WARNING: error for policy,{addr_nsp,zwei},{integer}: relation "addr_nsp" does n
WARNING: error for policy,{eins,zwei,drei},{}: schema "eins" does not exist
WARNING: error for policy,{eins,zwei,drei},{integer}: schema "eins" does not exist
WARNING: error for user mapping,{eins},{}: argument list length must be exactly 1
WARNING: error for user mapping,{eins},{integer}: user mapping for user "eins"
i
n server "integer" does not exist
WARNING: error for user mapping,{eins},{integer}: user mapping for user "eins"
o
n server "integer" does not exist
WARNING: error for user mapping,{addr_nsp,zwei},{}: argument list length must be exactly 1
WARNING: error for user mapping,{addr_nsp,zwei},{integer}: user mapping for user "addr_nsp"
i
n server "integer" does not exist
WARNING: error for user mapping,{addr_nsp,zwei},{integer}: user mapping for user "addr_nsp"
o
n server "integer" does not exist
WARNING: error for user mapping,{eins,zwei,drei},{}: argument list length must be exactly 1
WARNING: error for user mapping,{eins,zwei,drei},{integer}: user mapping for user "eins"
i
n server "integer" does not exist
WARNING: error for user mapping,{eins,zwei,drei},{integer}: user mapping for user "eins"
o
n server "integer" does not exist
WARNING: error for default acl,{eins},{}: argument list length must be exactly 1
WARNING: error for default acl,{eins},{integer}: unrecognized default ACL object type i
WARNING: error for default acl,{addr_nsp,zwei},{}: argument list length must be exactly 1
...
...
src/test/regress/expected/rowsecurity.out
View file @
5db837d3
...
...
@@ -2577,7 +2577,7 @@ COPY (SELECT * FROM copy_t ORDER BY a ASC) TO STDOUT WITH DELIMITER ',';
SET SESSION AUTHORIZATION rls_regress_user1;
SET row_security TO OFF;
COPY (SELECT * FROM copy_t ORDER BY a ASC) TO STDOUT WITH DELIMITER ','; --fail - insufficient to bypass rls
ERROR: insufficient privilege to bypass row
security.
ERROR: insufficient privilege to bypass row
-level security
SET row_security TO ON;
COPY (SELECT * FROM copy_t ORDER BY a ASC) TO STDOUT WITH DELIMITER ','; --ok
0,cfcd208495d565ef66e7dff9f98764da
...
...
@@ -2618,7 +2618,7 @@ COPY (SELECT * FROM copy_t ORDER BY a ASC) TO STDOUT WITH DELIMITER ','; --ok
SET SESSION AUTHORIZATION rls_regress_user2;
SET row_security TO OFF;
COPY (SELECT * FROM copy_t ORDER BY a ASC) TO STDOUT WITH DELIMITER ','; --fail - insufficient to bypass rls
ERROR: insufficient privilege to bypass row
security.
ERROR: insufficient privilege to bypass row
-level security
SET row_security TO ON;
COPY (SELECT * FROM copy_t ORDER BY a ASC) TO STDOUT WITH DELIMITER ','; --fail - permission denied
ERROR: permission denied for relation copy_t
...
...
@@ -2642,7 +2642,7 @@ COPY copy_rel_to TO STDOUT WITH DELIMITER ',';
SET SESSION AUTHORIZATION rls_regress_user1;
SET row_security TO OFF;
COPY copy_rel_to TO STDOUT WITH DELIMITER ','; --fail - insufficient to bypass rls
ERROR: insufficient privilege to bypass row
security.
ERROR: insufficient privilege to bypass row
-level security
SET row_security TO ON;
COPY copy_rel_to TO STDOUT WITH DELIMITER ','; --ok
-- Check COPY TO as user with permissions and BYPASSRLS
...
...
@@ -2671,10 +2671,10 @@ COPY copy_t FROM STDIN; --ok
SET SESSION AUTHORIZATION rls_regress_user1;
SET row_security TO OFF;
COPY copy_t FROM STDIN; --fail - insufficient privilege to bypass rls.
ERROR: insufficient privilege to bypass row
security.
ERROR: insufficient privilege to bypass row
-level security
SET row_security TO ON;
COPY copy_t FROM STDIN; --fail - COPY FROM not supported by RLS.
ERROR: COPY FROM not supported with row
level security.
ERROR: COPY FROM not supported with row
-
level security.
HINT: Use INSERT statements instead.
-- Check COPY FROM as user with permissions and BYPASSRLS
SET SESSION AUTHORIZATION rls_regress_exempt_user;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment