| From: | Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us> | 
|---|---|
| To: | "Gunnar R|nning" <gunnar(at)candleweb(dot)no> | 
| Cc: | Peter Mount <peter(at)retep(dot)org(dot)uk>, PGSQL-General <pgsql-general(at)postgresql(dot)org> | 
| Subject: | Re: Re: JDBC Performance | 
| Date: | 2000-10-08 19:37:42 | 
| Message-ID: | 200010081937.PAA17730@candle.pha.pa.us | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-general pgsql-jdbc | 
Applied, and new files added.
> Peter Mount <peter(at)retep(dot)org(dot)uk> writes:
> 
> > 
> > Anything of this nature always does.
> > 
> 
> Okay, I have some new code in place that hopefully should work better. I
> couldn't produce a full patch using cvs diff -c this time since I have
> created new files and anonymous cvs usage doesn't allow you to
> adds. I'm supplying the modified src/interfaces/jdbc as a tarball at :
> http://www.candleweb.no/~gunnar/projects/pgsql/postgres-jdbc-2000-10-05.tgz
> 
> The new files that should be added are :
> 
> ? org/postgresql/PGStatement.java
> ? org/postgresql/ObjectPool.java
> ? org/postgresql/ObjectPoolFactory.java
> 
> There is now a global static pool of free byte arrays and used byte arrays
> connected to a statement object. This is the role of the new PGStatement
> class. Access to the global free array is synchronized, while we rely on
> the PG_Stream synchronization for the used array.
> 
> My measurements show that the perfomance boost on this code is not quite as
> big as my last shot, but it is still an improvement. Maybe some of the
> difference is due to the new synchronization on the global array. I think I
> will look into choosing between on a connection level and global level. 
> 
> 
> I would also appreciate it if anybody would test the new driver. My test
> platform is RedHat Linux 6.2, and since the effect of these changes could
> be very dependent on the actual platform and JVM tests from other platforms
> would be very nice to see. I have a precompiled version at :
> 
> http://www.candleweb.no/~gunnar/projects/pgsql/postgresql.jar.
> 
> 
> I have also started experimented with improving the performance of the
> various conversions. The problem here is ofcourse related handle the
> various encodings. One thing I found to speed up ResultSet.getInt() a lot
> was to do custom conversion on the byte array into int instead of going
> through the getString() to do the conversion. But I'm unsure if this is
> portable, can we assume that a digit never can be represented by more than
> one byte ? It works fine in my iso-latin-8859-1 environment, but what about
> other environments ? Maybe we could provide different ResultSet
> implementations depending on the encoding used or delegate some methods of
> the result set to an "converter class".
> 
> Check the org/postgresql/jdbc2/FastResultSet.java in the tarball above to
> see the modified getInt() method.
> 
> Regards, 
> 
> 	Gunnar
> 
-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman(at)candle(dot)pha(dot)pa(dot)us               |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Bruce Momjian | 2000-10-08 19:44:24 | Re: alternative DB locations | 
| Previous Message | Frank Joerdens | 2000-10-08 18:35:35 | snapshot: dot or dash? | 
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Gunnar R|nning | 2000-10-09 07:46:16 | Re: Re: JDBC Performance | 
| Previous Message | Gunnar R|nning | 2000-10-05 16:46:42 | Re: Re: JDBC Performance |