Re: Using compression on TCP transfer

From: "Andrus" <kobruleht2(at)hot(dot)ee>
To: "Laurenz Albe" <laurenz(dot)albe(at)cybertec(dot)at>, "pgsql-general" <pgsql-general(at)postgresql(dot)org>
Subject: Re: Using compression on TCP transfer
Date: 2020-04-04 08:08:56
Message-ID: 7C033DCE8AD84649B95C5B367D6063B3@dell2
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hi!

>> In case of varchar field values will appear in database sometimes with
>> trailing spaces and sometimes without.
>> This requires major application re-design which much is more expensive than
>> continuing using char fields.
>A simple BEFORE INSERT OR UPDATE trigger would take care of that.

Changing char to varchar will break commands where trailing space is used in comparison.

For example query

create table test ( test char(10) );
insert into test values ('test');
select * from test where test ='test '; -- note trailing space

does not return data anymore if your recommendation is used:

create table test ( test varchar );
insert into test values ('test');
select * from test where test ='test '; -- note trailing space

In production 'test ' is query parameter coming from application with possible trailing space(s).

Adding trigger does not fix this.
How to fix this without re-writing huge number of sql commands?

Andrus.

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Peter J. Holzer 2020-04-04 14:05:57 Re: Why there is 30000 rows is sample
Previous Message Julien Rouhaud 2020-04-04 07:28:51 Re: Why there is 30000 rows is sample