Hello all,
SQL Relay version 0.48 is now available.
This release features some major internal reorganization of the
server-side software and integration of a bunch of contributed code.
Outwardly, not much has changed. The most noticeable change is that the
sqlr-connection-XXX programs have been replaced with a single
sqlr-connection program which now loads a plugin for whichever database
it needs to connect to. So, if you have monitoring programs that look
for that process, you may need to update them.
The next-most noticeable change is the addition of a stmtcachesize
parameter to the connectstring when configuring an instance of SQL Relay
to talk to Oracle. Setting this parameter to a value other than 0
enables use of Oracle's Statement Cache which can improve performance
significantly. See Configuring SQL Relay on the sqlrelay website for
more info on this parameter and Google "Oracle Statement Cache" for more
info on that.
Two changes that should improve performance somewhat have been made.
There were cases where the client would tell the server to abort the
result set, then wait for a response, unnecessarily, incurring the cost
of an additional client-server round-trip. It no longer does this.
The code for talking to Oracle used to re-prepare the query before each
execution, if the bind variables had been modified. This was done to
work around an issue that could come up when using OCI 8.0 or when
running against 8.0 or 8i databases. Oracle has long resolved the issue
though, and now the re-prepare is only done in those specific cases.
Other updates and fixes include:
* Integrated patches from Neowiz for:
* handling for oracle errors ora-01033, ora-02067 and ora-04068
* bind validation when using the statement cache
* optionally rejecting oracle queries with duplicate bind variables
* sqlrconnecton::setClientInfo/getClientInfo
* query logging
* separate authentication and response timeouts on the client-side
* environment variables for setting timeouts
* sqlrelay-level errors for exceeding various bounds
* improved statistics gathering
* created a query logging framework
* implemented the current slow query log as a plugin
* implemented the neowiz query log format as a plugin
* created a custom query framework
* implemented the neowiz statistics gathering commands as custom queries
* added a test program for triggers, translations and other extensions
and obscure features
* fixed several bugs in the informixtooracledates translation
* added a droplocalizedtemptables trigger
* added support for "global temporary" to temptableslocalize translation
* removed oracletemptablespreserverowsbydefault translation -
temptableslocalize is much more effective
* fixed a bug that caused a "no server-side cursors" error to occur when
a new session is started if cursors="0" in sqlrelay.conf
Enjoy!
David Muse
dav...@fi...
|