Обсуждение: BUG #5598: Compatibility modes

Поиск
Список
Период
Сортировка

BUG #5598: Compatibility modes

От
"Shine"
Дата:
The following bug has been logged online:

Bug reference:      5598
Logged by:          Shine
Email address:      shine.prakash@icasework.com
PostgreSQL version: 8.4
Operating system:   Windows XP
Description:        Compatibility modes
Details:

Hi,

We are planning to upgrade from Postgresql 8.2 to 8.4, and we have hit the
following error when running our application against it.

org.postgresql.util.PSQLException: ERROR: operator does not exist: character
varying = integer

We have noticed many people have reported this issue and that this was an
intentional change on your side.

We would like to know if there is a workaround built into postgres by
setting some kind of COMPATIBILITY variable (similar to SQL SERVER 2005 /
2008)...

This would be helpful in getting our system deployed using the new database,
otherwise we would have to push back our release to a later date.

Regards,

Shine Prakash
Software Consultant
iCasework Ltd.

Re: BUG #5598: Compatibility modes

От
Robert Haas
Дата:
On Wed, Aug 4, 2010 at 10:53 AM, Shine <shine.prakash@icasework.com> wrote:
> We are planning to upgrade from Postgresql 8.2 to 8.4, and we have hit the
> following error when running our application against it.
>
> org.postgresql.util.PSQLException: ERROR: operator does not exist: character
> varying = integer
>
> We have noticed many people have reported this issue and that this was an
> intentional change on your side.
>
> We would like to know if there is a workaround built into postgres by
> setting some kind of COMPATIBILITY variable (similar to SQL SERVER 2005 /
> 2008)...

Sorry, there is no such mode...

--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise Postgres Company

Re: BUG #5598: Compatibility modes

От
Alex Hunsaker
Дата:
On Wed, Aug 4, 2010 at 10:42, Robert Haas <robertmhaas@gmail.com> wrote:
> On Wed, Aug 4, 2010 at 10:53 AM, Shine <shine.prakash@icasework.com> wrote:
>> We would like to know if there is a workaround built into postgres by
>> setting some kind of COMPATIBILITY variable (similar to SQL SERVER 2005 /
>> 2008)...
>
> Sorry, there is no such mode...

However, you can add them back if you must:
http://petereisentraut.blogspot.com/2008/03/readding-implicit-casts-in-postgresql.html

Be aware, they were removed for a reason.  See
http://www.postgresql.org/docs/8.4/static/release-8-3.html section
E.17.2.1 for more.

Re: BUG #5598: Compatibility modes

От
Tom Lane
Дата:
Alex Hunsaker <badalex@gmail.com> writes:
> On Wed, Aug 4, 2010 at 10:42, Robert Haas <robertmhaas@gmail.com> wrote:
>> On Wed, Aug 4, 2010 at 10:53 AM, Shine <shine.prakash@icasework.com> wrote:
>>> We would like to know if there is a workaround built into postgres by
>>> setting some kind of COMPATIBILITY variable (similar to SQL SERVER 2005 /
>>> 2008)...
>>
>> Sorry, there is no such mode...

> However, you can add them back if you must:
> http://petereisentraut.blogspot.com/2008/03/readding-implicit-casts-in-postgresql.html

Note that that hack actually does not work very well: it has unpleasant
side effects.  You'd be far better advised to fix your application.

            regards, tom lane