Hi, Thanks for the info. I've tried it and it makes no obvious difference to the speed.
FWIW my timings for selects (for my particular test) Standard Torque: ~10 seconds Raw SQL: ~4 seconds SQL as Prepared Statement: ~ 3 seconds. Curiously inserts have no discernable difference. Cheers Joe On 14/06/06, Tassos Bassoukos <[EMAIL PROTECTED]> wrote:
On 6/14/06, Joe Carter <[EMAIL PROTECTED]> wrote: > Hi, > > Interestingly I suspect we're seeing similar problems with Sybase. > When I manually implement a select instead of using Torque's save() > I seem to get about twice the performance. > > Can you tell me precisely what you changed? > I'd like to try it with our system. > > Thanks I simply removed the nullAllowed and autoIncerement properties (and their accessors, initializers etc) from the com.workingdogs.village.Column class, recompiled, and that's about it. Background: Village aggresively caches the metadata from the ResultSet of a query, this happening by calling some getters, which are implemented in the driver. In PostgreSQLs case, two of those getters perform an extra query on the database to provide the requested information. However, this information is not accessed by village or by Torque, but it is requested from the database anyway. I haven't used Sybase, but it may have a way to log all database requests; see if every request from Torque is accompanied by request for column metadata. Hope this helps, Tassos Bassoukos
