Nigel Wetters writes:
slarty2 probably had the right idea when he suggested that
to be any faster, a lot of the driver should be written
in C, whereas my efforts were a very thin layer of C with
a thick layer of java.
The main key is to stay out of the JNI *interface* as much as possible.
JNI is fairly inefficient - the stepping between C and Java is a fairly
heavyweight operation.
If it's possible to structure the driver such that lightweight calls
(e.g. ResultSet.next(), ResultSet.get*(), etc.,) are all in pure Java,
and you only go to C for the actual execute() or other calls that need
to talk to the DB, you might be in good shape.
It'll be interesting to see what performance improvement you get..