Contents
-
Terminally Deprecated Elements
As a subinterface of
Projection
,
a
TupleDescriptor
already is a
List<Attribute>
, and there
is no need for this method to simply return its own receiver.
A one-by-one lookup-by-name API forces the implementation to
cater to an inefficient usage pattern, when callers will often have a
number of named attributes to look up, which can be done more efficiently
in one go; see the methods of
Projection
.
A one-by-one lookup-by-name API forces the implementation to
cater to an inefficient usage pattern, when callers will often have a
number of named attributes to look up, which can be done more efficiently
in one go; see the methods of
Projection
.
As of 1.5.0, this method is retained only for
compatibility with old code, and has the same effect as
executeAsOuterUser
, which should be used
instead. Previously, it used the
session ID unconditionally,
which is incorrect for any PostgreSQL version newer than 8.0, because
it was unaware of
SET ROLE
introduced in 8.1. Any actual use
case for a method that ignores roles and uses only the session ID
should be
reported as an issue.
Session
's attribute store once had a special, and
possibly useful, transactional behavior, but since PL/Java 1.2.0 it has
lacked that, and offers nothing you don't get with an ordinary
Map
(that forbids nulls). If some kind of store with
transactional behavior is needed, it should be implemented in straight
Java and kept in sync by using a
TransactionListener
.
As of 1.5.0, this method is retained only for
compatibility with old code, and returns the same value as
getOuterUserName
, which should be used
instead. Previously, it returned the
session ID
unconditionally, which is incorrect for any PostgreSQL version newer
than 8.0, because it was unaware of
SET ROLE
introduced in
8.1. Any actual use case for a method that ignores roles and reports
only the session ID should be
reported as an issue.
Session
's attribute store once had a special, and
possibly useful, transactional behavior, but since PL/Java 1.2.0 it has
lacked that, and offers nothing you don't get with an ordinary
Map
(that forbids nulls). If some kind of store with
transactional behavior is needed, it should be implemented in straight
Java and kept in sync by using a
TransactionListener
.
Session
's attribute store once had a special, and
possibly useful, transactional behavior, but since PL/Java 1.2.0 it has
lacked that, and offers nothing you don't get with an ordinary
Map
(that forbids nulls). If some kind of store with
transactional behavior is needed, it should be implemented in straight
Java and kept in sync by using a
TransactionListener
.
-
Deprecated Methods
As a subinterface of
Projection
,
a
TupleDescriptor
already is a
List<Attribute>
, and there
is no need for this method to simply return its own receiver.
A one-by-one lookup-by-name API forces the implementation to
cater to an inefficient usage pattern, when callers will often have a
number of named attributes to look up, which can be done more efficiently
in one go; see the methods of
Projection
.
A one-by-one lookup-by-name API forces the implementation to
cater to an inefficient usage pattern, when callers will often have a
number of named attributes to look up, which can be done more efficiently
in one go; see the methods of
Projection
.
As of 1.5.0, this method is retained only for
compatibility with old code, and has the same effect as
executeAsOuterUser
, which should be used
instead. Previously, it used the
session ID unconditionally,
which is incorrect for any PostgreSQL version newer than 8.0, because
it was unaware of
SET ROLE
introduced in 8.1. Any actual use
case for a method that ignores roles and uses only the session ID
should be
reported as an issue.
Session
's attribute store once had a special, and
possibly useful, transactional behavior, but since PL/Java 1.2.0 it has
lacked that, and offers nothing you don't get with an ordinary
Map
(that forbids nulls). If some kind of store with
transactional behavior is needed, it should be implemented in straight
Java and kept in sync by using a
TransactionListener
.
As of 1.5.0, this method is retained only for
compatibility with old code, and returns the same value as
getOuterUserName
, which should be used
instead. Previously, it returned the
session ID
unconditionally, which is incorrect for any PostgreSQL version newer
than 8.0, because it was unaware of
SET ROLE
introduced in
8.1. Any actual use case for a method that ignores roles and reports
only the session ID should be
reported as an issue.
Session
's attribute store once had a special, and
possibly useful, transactional behavior, but since PL/Java 1.2.0 it has
lacked that, and offers nothing you don't get with an ordinary
Map
(that forbids nulls). If some kind of store with
transactional behavior is needed, it should be implemented in straight
Java and kept in sync by using a
TransactionListener
.
Session
's attribute store once had a special, and
possibly useful, transactional behavior, but since PL/Java 1.2.0 it has
lacked that, and offers nothing you don't get with an ordinary
Map
(that forbids nulls). If some kind of store with
transactional behavior is needed, it should be implemented in straight
Java and kept in sync by using a
TransactionListener
.
-
Deprecated Enum Constants
Postfix operators are deprecated since PG 13 and
unsupported since PG 14.