BUG #8613: getting null when null is concatenated with string

Started by Nonameover 12 years ago3 messagesbugs
Jump to latest
#1Noname
rajasekhar5c1@gmail.com

The following bug has been logged on the website:

Bug reference: 8613
Logged by: rajasekhar5c1
Email address: rajasekhar5c1@gmail.com
PostgreSQL version: 9.2.1
Operating system: linux
Description:

when i fire below query on one of our servers

select null || 'query' ,'|'

the result is null nothing is displayed

when i fire the same query on another server which has same version of
postgresql server

i am getting result as

query

postgres version on both servers are

1) EnterpriseDB 9.2.1.3 on i686-pc-linux-gnu, compiled by gcc (GCC) 4.1.2
20080704 (Red Hat 4.1.2-52), 32-bit 2) EnterpriseDB 9.2.1.3 on
x86_64-unknown-linux-gnu, compiled by gcc (GCC) 4.1.2 20080704 (Red Hat
4.1.2-52), 64-bit

why this different behavior?

--
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs

#2Kevin Grittner
Kevin.Grittner@wicourts.gov
In reply to: Noname (#1)
Re: BUG #8613: getting null when null is concatenated with string

"rajasekhar5c1@gmail.com" <rajasekhar5c1@gmail.com> wrote:

when i fire below query on one of our servers

     select null || 'query' ,'|'

the result is null nothing is displayed

when i fire the same query on another server which has same
version of postgresql server

i am getting result as

query

This is not a bug.

For community PostgreSQL, NULL is the correct result.  It is what
is required by the SQL standard, since concatenating a known value
with an unknown value yields an unknown result.

postgres version on both servers are

1) EnterpriseDB 9.2.1.3 on i686-pc-linux-gnu, compiled by gcc (GCC) 4.1.2
20080704 (Red Hat 4.1.2-52), 32-bit 2) EnterpriseDB 9.2.1.3 on
x86_64-unknown-linux-gnu, compiled by gcc (GCC) 4.1.2 20080704 (Red Hat
4.1.2-52), 64-bit

However, you are not running community PostgreSQL, you are running
EDB PostgreSQL Plus Advanced Server (PPAS), which has an Oracle
compatibility mode which treats an empty string and NULL as
more-or-less the same thing.  Your best bet for such an issue would
be to open a support ticket with EDB.

--
Kevin Grittner
EDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

--
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs

#3Tom Lane
tgl@sss.pgh.pa.us
In reply to: Noname (#1)
Re: BUG #8613: getting null when null is concatenated with string

rajasekhar5c1@gmail.com writes:

when i fire below query on one of our servers
select null || 'query' ,'|'
the result is null nothing is displayed

That's the expected result.

when i fire the same query on another server which has same version of
postgresql server i am getting result as
query

Interesting. I think this is what would be expected in Oracle, which
thinks that null and empty string are the same thing.

postgres version on both servers are
1) EnterpriseDB 9.2.1.3 on i686-pc-linux-gnu, compiled by gcc (GCC) 4.1.2
20080704 (Red Hat 4.1.2-52), 32-bit 2) EnterpriseDB 9.2.1.3 on
x86_64-unknown-linux-gnu, compiled by gcc (GCC) 4.1.2 20080704 (Red Hat
4.1.2-52), 64-bit

Well, I think you'd need to take that up with EnterpriseDB. I don't
know anything about what they do to Postgres' null handling, but it
wouldn't surprise me to hear that they've kluged it up to more nearly
match Oracle's non-standards-compliant behavior.

regards, tom lane

--
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs