Binary protocol patch v7

From: Mikko Tiihonen <mikko(dot)tiihonen(at)iki(dot)fi>
To: pgsql-jdbc(at)postgresql(dot)org
Subject: Binary protocol patch v7
Date: 2007-01-07 18:55:01
Message-ID: 1168196101.6236.25.camel@mokki.local
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-jdbc

Hi,

Just to remind you that the I updated the patches for sending receiving
columns in v3 binary format are available at:
http://mokki.dyndns.org/~mtiihone/postgresql/binarytransfer/

Changes since last update:
- fixed handling of empty ResultSet.
- fixed ArrayIndexOutOfBounds in CompositeParameterList

It passes the current unit test suite and all other applications I have
tried it with.

I would be interested in any benchmarks. What you would hopefully see is
reduced CPU load in both the backend and in the Java application. Also the
network traffic should be somewhat reduced.

Also, Kris, could you please try to find time to review the patch again
and see what still needs to be fixed/clarified/tested before the patch
can be accepted.

---------------------------

I downloaded BenchmarkSQL 2.3.2 and run it against freshly installed
postgres 8.2 backend. Results (best of 10 runs):
Jan 7, 2007 CVS: 5891 tpmC - 100%
+ binaryPatches: 6531 tpmC - 110%

The client and server ran on the same host. The Java client used
around 25% of available cpu, backend the remaining time, IO was not
a bottleneck.

Benchmark setup:
----------------
PostgreSQL 8.2.0 with following modified config options:
fsync=off, autovacuum=on, stats_row_level=on, redirect_stderr=on,
checkpoint_segments=12, max_connections=10, max_prepared_transactions=50,
shared_buffers=128MB, standard_conforming_strings=on

The BenchmarkSQL was set up with 1 warehouse and 4 terminals. The
following URL was used to connect to the backend:
jdbc:postgresql://localhost:5432/test?binaryEncoding=true&prepareThreshold=1

Java HotSpot(TM) 64-Bit Server VM (build 1.6.0-b105, mixed mode)
Athlon64 2x2GHz, Linux 2.6.19.1

I ran "vacuumdb --all --full" between each benchmark run to get consistent
results.

-Mikko

Responses

Browse pgsql-jdbc by date

  From Date Subject
Next Message Kris Jurka 2007-01-07 20:00:12 Re: Binary protocol patch v7
Previous Message Tom Lane 2007-01-06 03:30:22 Re: help with front/backend datatype converting