Thursday, November 1, 2012

SQL Relay - 0.47 is out

SQL Relay 0.47 is now available.

This release mainly features the ability to use Oracle's Statement Cache feature. Code for this was contributed by Neowiz.

To enable the statement cache, simply add:

stmtcachesize=20

(Or some size other than 20)

...to the connect string for your instance of SQL Relay that talks to Oracle in your sqlrelay.conf file. Note also that there are a few quirks when using the statement cache which appear to be either bugs in OCI or issues with the way SQL Relay uses OCI. They may be resolved in a future release of OCI or SQL Relay. See Configuring SQL Relay for more information.

Note also that I haven't finished integrating all of the contributed code yet, so if something doesn't work as expected, that could be why.

Also in this release, I updated the SQL Relay command line clients to have a consistent command-line parameter interface and renamed a few of them.

All command line programs now have the following parameters:

  • -host
  • -port
  • -socket
  • -user
  • -password

So, for example, to connect to localhost, port 9000 using user test with password test, you now use:

sqlrsh -host localhost -port 9000 -user test -password test

Whereas in the past, you would have used:

sqlrsh localhost 9000 "" test test

In addition, sqlrsh now has -script and -command arguments to run scripts or commands non-interactively.

I also renamed the query and fields commands sqlr-query and sqlr-fields.

In addition to those updates and changes, the following new features and bug fixes have also been implemented:

  • fixed bug that caused sqlr-export to output negative xml-entity values
  • fixed single-quote-escaping in sqlr-export
  • forced handoff="reconnect" for Cygwin and Linux<2.2
  • added a "fields" command to sqlrsh
  • improved readline detection in the configure script
  • added getDatabase/Table/ColumnList support to odbc and mdbtools connections
  • added detection and support for openjdk
  • integrated patches from Neowiz for:
    • using -g3 if available when --enable-debug is specified
    • fixing an oracle column-resource-related memory leak
    • eliminating sqlr-start delay
    • "using namespace rudiments" declaration fixes
  • added a faq entry about common OCIEnvCreate errors
  • removed default id warning from sqlr-cachemanager
  • removed coloration from sqlrsh
  • updated begin, commit and rollback to return errors if they fail
  • updated firebird docs
  • added parsing of standalone constraints in a create table query