Re: Performance Improvement by reducing WAL for Update Operation

Amit Kapila <amit.kapila16@gmail.com>

From: Amit Kapila <amit.kapila16@gmail.com>
To: Heikki Linnakangas <hlinnakangas@vmware.com>
Cc: Robert Haas <robertmhaas@gmail.com>, pgsql-hackers <pgsql-hackers@postgresql.org>, Mike Blackwell <mike.blackwell@rrd.com>
Date: 2014-02-06T03:43:50Z
Lists: pgsql-hackers
On Wed, Feb 5, 2014 at 8:50 PM, Heikki Linnakangas
<hlinnakangas@vmware.com> wrote:
> On 02/05/2014 04:48 PM, Amit Kapila wrote:
>>
>> I have done one test where there is a large suffix match, but
>> not large enough that it can compress more than 75% of string,
>> the CPU overhead with wal-update-prefix-suffix-encode-1.patch is
>> not much, but there is no I/O reduction as well.
>
>
> Hmm, it's supposed to compress if you save at least 25%, not 75%. Apparently
> I got that backwards in the patch...

So If I understand the code correctly, the new check should be

if (prefixlen + suffixlen < (slen * need_rate) / 100)
    return false;

rather than

if (slen - prefixlen - suffixlen > (slen * need_rate) / 100)
return false;

Please confirm, else any validation for this might not be useful?

With Regards,
Amit Kapila.
EnterpriseDB: http://www.enterprisedb.com


Commits

  1. Flush stderr and stdout in isolation tester.