sqlrelay 0.63
- suppressed ruby configure warning
- fixed glib detection if pkg-config isn't present
- fixed mono detection on freebsd
- fixed node.js yes/no misreport bug in configure script
- added freetds tcl test
- fixed slashes in tcl tests for windows
- updated docs to mention firebird buffer size parameters
- updated MAX_ITEM_BUFFER_SIZE to 32768 for firebird
- fixed ruby detection on fedora 22
- fixed missing export for setAuth/ResponseTimeout in ruby api
- added manual include of inttypes.h in php api to work around issue
with define/undef games, revealed on openbsd 5.7
- tweaked ruby cflags script for debian 8
- refactored mysql detection
- tweaked unixodbc detection to also look in /usr/include/odbc
- renamed "oracle8" connection plugin to "oracle"
- renamed "sybase" connection plugin to "sap"
- updated identity tests in api's/cmdline clients to use
charstring::contains() rather than !charstring::compare()
- implemented missing destructors for ADO.NET Data Provider
sqlrelay 0.62
- added query filter plugin framework
- added regex, string and pattern filters
- added normalization translation
- added reformatdatetime result set translation
- fixed error in sqlrconfigfile class that could cause sqlr-start to crash
if one instance defines addresses but the next doesn't
- added query status flag to sqlrservercursor
- tweaked odbc driver's SQLGetTypeInfo()
- field name is passed into runResultSetTranslations() now
- added support for maxitembuffersize, maxselectlistsize, and maxbindcount
for firebird
- added native api for node.js
- added recognition of bigint, ubigint and uniqueidentifier fields
in freetds/sybase
- added nullsasnulls command to sqlrsh
- added workaround for freetds empty (but non-null) text fields not getting
properly converted to null-terminated empty strings
- fetchatonce, maxitembuffersize and maxselectlistsize are set to defaulting
values if invalid values are given for them
- added lazyconnect option to PHP PDO and Perl DBI drivers (defaults to 1)
- direct Transact SQL which returns a result set is now supported
with Sybase/SAP/MSSQLServer/FreeTDS
- added docs for authentication, query translation, query filter and
result set translation modules
- added -fPIC to sqlrserver-config --cflags, if supported
- the "default" auth module is now called "userlist"
- added database auth module that is analagous to authtier="database"
- replaced passwordencryption attribute with passwordencryptionid
- added --disable-postgresql8-api configure option
- tweaked -Werror detection in configure script
- refactored sqlr-bench build to work on windows
- documentation, examples and tests are now covered by a license
- reflecting modern interpretation of the GPL, The license for
The SQLRelay Server (as designated in COPYING) license now carries
an exception, explicitly allowing it to be linked with various non-GPL
compatible libraries
- license is installed now
sqlrelay 0.61 skipped
sqlrelay 0.60
- fixed true->false transposition in sqlrservercontroller::interceptQuery
that could lead to a reLogIn loop
- disabled -Werror for gcc < 2.7
- applied George Carrette's patch to fix PDO connectstring options
- migrated directory/file paths info into sqlrpaths class
- removed undocumented and not-so-relevent-these-days
MAX_CONNECTIONS/overridemaxconnections failsafe in sqlr-start
- fixed java header detection for javac located in /usr/bin
- updated java api to support non-null-tolerant implementations
of environment::NewStringUTF()
- the perl api builds correctly on OSR5 again
- the postgresql sslmode is omitted entirely from the connect string now,
if it's disabled, to prevent problems with older versions of postgresql
that don't support the parameter at all
- mono 2.8 or greater is required now
- added a datedelimiters attribute to the instance tag in sqlrelay.conf
to limit what date delimiters are used when translating dates
- re-added mssqlserver detection, which had been accidentally removed
- fixed statically-linked build
- fixed mysql lob field bug that could cause a crash
- Never force install the init script, this is done by pkgsrc automatically
- Pre-create ${PKG_SYSCONFDIR}/sqlrelay.conf.d that was added in 0.48
- Doesn't really need libiconv directly
- Improve SMF manifest
- Remove some unneeded definitions.
Bump PKGREVISION.
* Fix build with Ruby 2.2.
Changelog:
0.59 - updated docs, removed some Cygwin-specific info
added support for login warnings
made bind variable buffers dynamic on the client side
added maxbindvars parameter on the server side
binding a NULL to an integer works with db2 now
moved getting started with DB docs into the cloud
added a semaphore to ensure that the listener doesn't hand off the
client to the connection until the connection is ready,
elimiating a race condition on the handoff socket that could
occur if the connection timed out waiting for the listener
just after the listener had decided to use that connection
oracle temp tables that need to be truncated at the end of the session
are truncated with "truncate table xxx" now rather than
"delete from xxx"
oracle temp tables that need to be dropped at the end of the session
are truncated first, rather than the connection re-logging in
an ora-14452 error (basically indicating that a temp table can only be
dropped after being truncated, or if the current session ends)
does not automatically trigger a re-login any more
updated cachemanager to use directory::read() directly instead of
directory::getChildName(index)
added cache and opencache commands to sqlrsh
made cache ttl a 64-bit number
added enabled="yes"/"no" parameter to logger modules
updated odbc connection code to use new/delete and rudiments methods
rather than malloc/free and native calls
retired Ruby DBI driver
fixed command line client crash when using -id "instance" with an
instance that uses authtier="database"
fixed bugs that could make reexecuted db2 selects fail and cause a
database re-login loop
tweaked spec file to remove empty directories on uninstall
fixed typo that could sometimes cause a listener crash
postgresql and mdbtools return error code of 1 rather than 0 for all
errors now
tweaked odbc driver to work with Oracle Heterogenous Agent (dblinks)
fixed bugs related to autocommit with db's that support transaction
blocks
implemented the ODBC driver-manager dialog for windows
updated windows installer to install ODBC registry settings
ODBC driver copies references now
fixed various bugs in sqlrconfigfile that caused sqlr-start with no
-id to crash or behave strangely sometimes
refactored build process to use nmake and be compatible with many
different versions of MS Visual Studio
updated the slow query logger to show the date/time that the query
was executed
consolidated c, c++ and server source/includes down a few levels
implemented column-remapping for get db/table/column commands to
enable different formats for mysql, odbc, etc.
odbc connection correctly returns database/table lists now
added support for maxselectlistsize/maxitembuffersize to MySQL
connection
updated mysql connection to fetch blob columns in chunks and not be
bound by maxitembuffersize
fixed a misspelling in sqlrelay.dtd
swapped order of init directory detection, looking for /etc/init.d
ahead of /etc/rc.d/init.d to resolve conflict with dkms on
SuSE Enterprise
C# api and tests compile and work under Mono on unix/linux now
sqlr-start spawns a new window on Windows now
added global temp table tracking for firebird
added droptemptables parameter for firebird
added globaltemptables parameter for oracle and firebird
updated mysql connection to allow mysql_init to allocate a mysql
struct on platforms that support mysql_init, rather than
using a static struct
fixed subtle noon/midnight-related bugs in date/time translation
updated mysql connection to get affected rows when not using the
statement api
updated mysql connection not to use the statement API on windows,
for now
disabled mysql_change_user, for now
fixed blob-input binds on firebird
0.58 - updated spawn() calls to detach on windows
added support for sqlrelay.conf.d
removed support for undocumented ~/.sqlrelay.conf
fixed detection of oracle jdk 7 and 8 on debian and ubuntu systems
added ini files for PHP and PDO modules
added resultsetbuffersize, dontgetcolumninfo and nullsasnulls connect
string variables to the PHP PDO driver
refactored sqlr-status and removed dependency on libsqlrserver
cleaned up and refactored server-side classes quite a bit
fixed a bug where sqlrsh was losing the timezone when binding dates
server-devel headers are now installed
removed backupschema script
moved triggers, translations, resultsettranslations and parser into
separate project
blobs work when using fake input binds now
replaced sqlr-stop script with a binary (for Windows)
preliminary support for server components on Windows
sessionhandler="thread" is now forced on Windows
added various compile flags for clang's aggressive -Wall
added support for sybase 16.0
removed unnecessary -lsybdb/-lsybdb64 for sybase 15+
fixed PQreset, PQresetStart, PQresetPoll in postgresql drop-in
replacement lib
added debug-to-file support to PHP PDO driver
fixed subtle row-fetch bug in sybase/freetds drivers that could cause
the total row count to be set to garbage
fixed support for older versions of perl (5.00x)
fixed a bug in the DB2 connoutpection that caused blob input binds to be
truncated at the first null
added support for binding streams to output bind blobs in the PHP PDO
driver
updated PHP PDO guide with notes about bind variable formats
integrated Samat Yusup's dbh driver methods for PHP PDO
added stmt driver methods for suspending/resuming result sets to the
PHP PDO driver
added row cache to mysql drop-in replacement library to fix issues on
systems with 32-bit pointers
fixed subtle db2 output bind bfers the entire result set by default now
implemented an ext_SQLR_Debug database handle attribute for perl DBI
added support for type, length, precision, scale bind variable
attributes in perl DBI
output bind clobs and blobs work in perl DBI now
addd support for perl DBI ParamValues, ParamTypes and ParamArrays
attributes
tweaked the odbc driver so it works with the jdbc-odbc bridge and
jmeter
added custom db/statement attributes to perl DBI for
DontGetColumnInfo, GetNullsAsEmptyStrings and
ResultSetBufferSize
added note about JDBC-ODBC bridge removal in Oracle Java 8
made threaded listener the default
tweaks to sqlr-connection/sqlr-scaler processes to deal with lack of
SIGCHLD/waitpid() on windows
the signal on semaphore 2 is now undone manually when sqlr-connections
shut down and doesn't rely on semaphore undo's for normal
operation
subtly tweaked freeing of Oracle column-info buffers to work around
a crash that could occur after using a cursor bind
Changes in 0.57:
- fixed an overloaded virtual function error in sqlr-status
- fixed parsing of "term as type" clauses in queries
- fixed 0 vs. None error in python getRowDictionary method
- tweaked php and php_pdo modules to build with php 5.6.0 on windows
- updated deployment projects for windows, adding perl, php, python
and java, and adding x64 support
- describe/getColumnList supports synonyms with oracle now
- the mysql, firebird and oracle connections return sensible errors when
the format of a numeric bind variable is wrong now
- fixed a bug that could cause the mysql connection to loop up if
alphanumeric bind variable names were used instead of numbers
- fixed a bug that could cause the database specified in the mysql
connection string to be ignored
- fixed a bind-variable translation bug that could cause variables not
to be translated when multiple formats are used in the same
query and one of them is the correct format
- describing oracle tables returns key (PRI,UNI,MUL) info now
- added disablekeylookup option to disable getting key information when
describing oracle tables
- fixed broken --with-system-libtool configure option
- mysql-config --libs_r is used in preference to --libs now,
solves build error with maria db on ubuntu 14.04.1
- fixed mysql drop-in lib errors with mysql_row_seek and mysql_row_tell
Changes:
- removed VERSION from perl api bootstrap
- reorganized and simplified perl api code
- got perl api working on windows with ActivePerl
- perl api uninstall cleans up better now
- got python api working on windows with ActivePython
- consolidated php include tweaks
- got java api working on windows
- updated pdo driver to convert float fields to strings rather than ints
- updated pthread test to match rudiments pthread test
- moved everything done by children of sqlwriter interface into
individual translations
- added plugin-based authentication framework
- reorganized code tree a bit
- reworked default values to enable more minimal configurations
- updated configuration docs and added configuration guide
- fixed cast issue with firebird 1.5
- added result set translation framework and re-implemented date
translation using it
- fixed millisecond->nanosecond confusion in sqlr-scaler
- fixed subtle oracle instantclient version detection bug
- added null input bind support to sqlrsh
- fixed php pdo driver to return null rather than 0 for null integer
fields and bind null rather than 0 for null integer input binds
- added attribute to return nulls as nulls or empty strings to php pdo
- added parameters for connecting to mysql via ssl
- added a few tweaks to support DB2 < 8.0
- fixed bad return value type in python getConnectionPort method
- fixed sessionhandler="thread" with listenertimeout!="0"
Do it for all packages that
* mention perl, or
* have a directory name starting with p5-*, or
* depend on a package starting with p5-
like last time, for 5.18, where this didn't lead to complaints.
Let me know if you have any this time.
A full refactor and split-up into separate packages for the various APIs and backends.
Changelog since 0.43 follows.
0.55 - fixed a sql translation bug related to exists clauses
added deployment projects for windows
tweaked make.batch install target to install 32-bit files under
C:\Program Files (x86)
added a timeout parameter to db2 and odbc connect strings
fixed a bug that could cause a connection's ttl to fail because a
semaphore was left signalled when another connection's ttl
expired
updated handoff="proxy" code to work with sessionhandler="thread"
replaced waitpid call in sqlrscaler with rudiments equivalent
got the server-side stuff to compile on windows
added configurable fetch buffer sizes to sybase, freetds and db2
connections re-distribute themselves periodically if the database is
behind a load balancer now
fixed a bug that caused sqlrsh to incorrectly interpret internal
commands with leading whitespace when run from a script or on
the command line
fixed a bug that caused cursors not to be completely cleaned up after
when dynamic scaling is used
fixed a bug that caused the response timeout to be handled improperly
added response timeout command to sqlrsh
added support for clobs/blobs with firebird
fixed a blob-related bug with sqlite
added support for blob input binds with db2
added support for clob/blob output binds with db2
improved clob/blob fetching with db2
inputBindClob/Blob methods work with all db's now
added -Wno-unknown-pragmas flag (if it it supported) to java build for
solaris 8
updated default item buffer sizes to 32768 for sybase, freetds, db2
and odbc
applied Gerhard Lausser's patch to improve Oracle instantclient
detection
0.54 - fixed bugs that caused problems when unopened result sets were closed
added protocol identification phase to client/server protocol
split client protocol handling out into its own class and abstracted it
updated oracle code not to relogin when dropping tables unless a
temp table with an "on commit preserve rows" was run
updated server to run table-drop and session-end queries after the
session-end commit/rollback, as some queries on some platforms (
ncluding drop-table on oracle) cause an implicit commit and
the rollback needs to be run first
replaced gettimeofday calls with calls to datetime::getSystemDateAndTime
fixed a bug in slow query logger that caused it to display the wrong
query time
a few mingw32 tweaks
fixed a few PDO driver bugs related to affected row counts and
last insert id
implemented PDO exceptions
implemented support for PDO::ATTR_EMULATE_PREPARES by using
substitution variables
added foundrows and ignorespace options to mysql connect string
fixed a bug where affectedRows() would return -1 for MySQL selects
instead of the same value as rowCount()
updated sqlr-connection code not to get db host name and ip address
at startup unless logging is enabled to work around issues
where people fail to put the db host name in dns
fixed a subtle bind format translation bug that caused errors when
translating from oracle-style binds to mysql-style if the
varaibles were out of order with the placeholders in the query
fixed bugs in the mysql and postgresql connection code that assumed
that the bind variables were bound in order, independent of
their names
resolved a paradox involved in detecting whether the current mysql
query needs to have its bind variables faked or not
added support for client-side debug-to-file
added debug-to-file support to command line clients
tweaked server processes to use process::spawn instead of system() and
process::fork()/process::exec()
added another error string to detect down mysql database
added support for a multi-threaded listener
fixed a bug that could cause a crash when logging connection-level
errors
added back x64-detection so sybase and db2 libraries will be detected
properly
added support for forward-only cursors to the PDO driver
fixed a bug that could cause one (and only one) dynamically spawned
connection daemon to ignore its ttl
added support for get/set result set buffer size to the PDO driver
updated configure test for xsubpp
updated configure test for tcl to support multi-arch
updated configure test for python to support multi-arch
added custom PDO driver attributes to access db type, version, host
name, ip address and bind format
added custom PDO driver attribute to get/set current database
added custom PDO driver attribute to set whether or not to get column
info when fetching the result set
updated db2 to re-login when it sees error -30081
0.53.1 - updated the configuration and tuning docs a bit
fixed a Makefile bug that caused "make clean" to be interrupted
extern "C"-wrapped sys/times.h for OSR500
0.53 - added support for sqlite statement api and native binds
fixed some leaks related to using sys::getHostName()
added multiarch detection
added PHP PDO driver
fixed a bind variable translation bug where output binds followed by
:= would not be detected
dropped zope support (for now)
dropped PHP Pear DB support
refactored init script - one script should work on all platforms now
updated init script installation - should work on virtually all unixes
added OS X launchd configuration
updated the sqlr-listener to clean up files related to ipc, sockets
and marking whether the db is up or down on exit
sqlr-start no longer starts the cache manager
added a second init script for the cache manager
plugins are statically linked into libsqlrserver if the platform
doesn't support shared libraries (or if --disable-shared is
specified at configure time)
the perl API should build with old versions of perl (5.00X) on older
platforms (redhat 4.2, 5.2, 6.2, etc.) now
updated postgresql bind docs
added dateyyyyddmm parameter
added yyyyddmm parameter to translatedates translation
added SQLR_MYSQL_DATE_YYYYDDMM envrionment variable to mysql drop-in
library
added SQLR_ODBC_DATE_YYYYDDMM envrionment variable to odbc driver
0.52 - sqlrsh has long reported the wrong version, fixed that
added csv support to sqlr-export and a -format xml|csv option
replaced snprintf calls with charstring::printf calls
added a test for sys/vnode.h to work around an issue with perl on
SCO OSR6
added workarounds for old versions of sqlite without sqlite3_malloc
and sqlite3_free with char * argument
fixed error with sqlserver where "describe <table>" would return
columns in alphabetical order rather than the order they
are in the table
the code freetds uses to get column names from MS SQL Server works
for temp tables now
added informix->mssqlserver translation for select into queries
added translation to convert ||'s to concat() calls or +'s
added a long-missing "delete clientsock" to sqlrlistener that could
cause a crash after enough time
various documentation tweaks
added handling for "select into" queries to
temptableslocalize/sybaseize translations
fixed various crashes that could occur when a query filter was used
updated the query routing and filtering doc
sqlrsh supports multiple commands on a single line or on the
command-line now
exit/quit in a sqlrsh script aborts the script now
improved date/time parsing for translations and result-set conversions
fixed lots of cases where const char *'s were being deleted
added 64-bit build support for windows
combined sqlrclient files for faster compiling
converted \t to actual tab in regular expressions for
posix-compatibility
0.51 - fixed minor perl DBI driver documentation issue
added support for oracle 12c
added support for db2 10.1 and 10.5
updated docs for oracle 12c, db2 10.1 and 10.5 and sybase 15.7
modernized database installation docs a little
fixed db2/sybase detection to take the system architecture into
account when searching for libs
applied various build-related patches from Ville Silventoinen
fixed rpm->rpmbuild in installation docs
added ora-00020 to list of errors that will cause the oracle
connection to attempt to re-login, per Ville Silventoinen
fixed some MS SQL Server/dateddmm parameter issues and updated docs
to explain the remaining issues
0.50 - fixed sqlrserver-config script to return data for libsqlrserver
rather than libsqlrconnection
added test for SQLROWSETSIZE for odbc that doesn't define it
updated postgresql drop-in library enough to work with psycopg2-2.4
with various caveats and tweaks
fixed NULL dereference in custom_nw logger
added support for dbversion, show tables/databases and describe for
SQL Server via freetds
fixed a subtle bug that could cause the wrong triggers to be run
fixed a reference-after-free in
sqltranslations::removeReplacementTable
fixed an uninitialized variable (sqltr) in sqlrcontroller class
updated the freetds connection to support multiple cursors correctly
added config parameters for reformatting dates in the result set
added various query translations for mssqlserver
added an mssqlserver error map for the mysql drop-in library
fixed a memory leak in the freetds version-checking code
added new search paths and default prefix for syllable
added support for null-terminated result bind lists to the mysql
drop-in library so apps can optionally bind fewer columns than
come back in the result set
added configure tests for php-config-<version>
0.49 - fixed various issues that came up when cross-compiling
fixed make uninstall to remove a few things that it missed
fixed -pthread annoyance
added -Werror to default build for most components
fixed various issues revealed by -Werror
added password encryption framework
added rot,md5 and crypt password encryption plugins
moved modules to libexec and removed the libsqlrelay_ prefix
moved modules out of the connection directory and into their own
directories under src
reorganized code tree to compile faster
updated clean targets in Makefiles to run faster
fixed a bug that could cause problems when fetching from an output
bind cursor under a very specific set of circumstances
reorganized server code into libsqlrserver
implemented the swisscomm log format as a plugin
added dbHostName and dbIpAddress methods to the client API
refactored authentication to remove a client-server round-trip
replaced handoff="reconnect" with handoff="proxy" which uses
listener-proxying to remove a client-server round-trip
disabled nagle's algorithm for all sockets
fixed a bug that could cause a hang if the db login failed
updated reading of skip and fetch parameters not to rely on buffering
refactored login error reporting
fleshed out the ODBC driver significantly
added docs for using SQL Relay from ODBC and JDBC
refactored windows make.bat script
0.48 - 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
refactored Oracle re-prepare logic
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 if
when a new session is started if cursors="0" in sqlrelay.conf
the client no longer aborts a result set before sending a new command,
it just sends the new command, eliminating a client/server
round-trip
replaced sqlr-connection-"dbase" with a single sqlr-connection program
that loads plugins for each database
0.47 - 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
updated all command line programs to use the same command line
argument structure
added a "fields" command to sqlrsh
added a -command argument to sqlrsh so commands and queries can be
run from the command line directly
renamed query and fields to sqlr-query and sqlr-fields
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
support for using the oracle statement cache
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
0.46 - refactored the translation framework to mimic the trigger framework
added make.batch file for building on windows
added C# API and ADO.NET adapter
added begin method to API's
added sqlrelay.xsd
added date binds
applied Georgiy Kirichenko's missing flushWriteBuffer() patch
fixed some subtle bugs in the Ruby DBI module that modern versions of
Ruby DBI reveal
fixed sql parser errors involving "not null" and union clauses
added a translation to replace double-quoted string literals with
single-quoted string literals
fixed a sql parser bug where "group" of a group by clause could be
misinterpreted as a table alias
updated the scaler to poll 10 times per second and also accept a
trigger from the listener to mitigate race conditions that
can become problematic when connections="0" is used
added C# and ADO.NET docs and updated windows documentation
updated the documentation
added support for waitfordowndatabase config parameter
applied some odbc fixes from Chae Young-ku
added explicit support for outer join operators to the sql parser
dynamic-ized triggers and translations
added a "matches" to "like" translation
added a "serial" to "autoincrement" translation
fixed debug option to query command line client
added javac compile test to configure script
fixed an __attribute__ problem that could occur if perl was compiled
with gcc>2.95 but used on a system with only gcc-2.95 available
fixed an oustanding tcl bug that caused cursors not to be created
fixed several bugs related to escaping quotes
refactored OS detection in configure script
added \n after reading from stdin on Haiku
updated docs to reflect that mysql supports ?-based bind vars
0.45 - added trigger framework
added support for getting the native database error number
added support for mapping native error numbers to MySQL error numbers
for the mysql drop-in replacement library
renamed all .C files to .cpp for windows
added msvc projects for sqlrclient, sqlrclientwrapper, sqlrutil and
sqlrsh and got them all working natively on windows
updated code so ttl="0" works as expected
updated code so dynamic scaling of cursors works as expected
documented dynamic scaling of cursors somewhat
fixed a few mdbtools errors
column aliases work as expected now with firebird
fixed a bug where if an app either enabled or disabled autocommit,
that could become the default status of autocommit rather than
what was set in the config file
added autocommit on/off to sqlrsh
fixed a bind-var-related memory leak in mysql drop-in lib
fixed return values in mysql drop-in lib
updated getTableList() to exclude system tables
applied Benno Lange's localstatedir patch to fix a case where the
localstatedir command line parameter wasn't working properly
applied Renat's listener alarm handling patch
0.44 - updated postgresql drop-in lib for postgresql 8/9 compatibility
updated mysql drop-in lib for mysql 5.2+ compatibility
applied Renat's patch to fix the client session count in the stats
added getDatabase/Table/ColumnList method/functions to API's
added string inputBind method/function with length
added bind variable translation
added transaction block emulation
are replaced with .include "../../devel/readline/buildlink3.mk", and
USE_GNU_READLINE are removed,
* .include "../../devel/readline/buildlink3.mk" without USE_GNU_READLINE
are replaced with .include "../../mk/readline.buildlink3.mk".
a) refer 'perl' in their Makefile, or
b) have a directory name of p5-*, or
c) have any dependency on any p5-* package
Like last time, where this caused no complaints.
pkgsrc changes:
* Added LICENSE to package and options
* Pre-create neede volatile directories
* Improve the NetBSD rc.d script
0.43
* updated ruby code build to take sitearch into account during includes
* updated ruby code to map STR2CSTR to StringValuePtr for ruby 1.9
* updated to use rudiments' updated signalclasses
* replaced calls to fork() and exit() with process class calls
* updated ruby detection in configure script
* added a test for Python.h to the configure script
* updated tcl detection
* updated db2 detection
* added sed command to remove -arch args from perl build (for osx)
* added charset support for all db's who's client libraries support them
* updated detection of various languages and db's on various platforms
* added getting started with odbc doc
* updated faq with info about result sets from stored procedures
0.42
* fixed a bug causing cursor id's not to get set for some db's
* updated configure script to look for client64 in addition to client
for oracle intantclient on x86_64
* added setTimeout to all API's
* applied some patches from Alexey Leontev
* bumped BINDVARLENGTH up to 64
* applied Renat Sabitov's scaler -debug patch and 11g configure patch
* applied Stephan van Egmond's sqlrsh history patch
* added configure test for gmake, use it to find ruby.h
* applied mingang@taobao.com's scaler patch for -debug
* added getting started notes for Oracle 11.2 on Fedora Core 12
* added test for mdb_sql_run_query and code to use it if it's there
* fixed a bug that caused ping to fail after reconnecting to sybase
* added configure test for xsubpp
* fixed perl dbi inout bind problem
* fixed code that was adding a NULL terminator to oracle clob values
* applied several patches from Renat Sabitov
* applied dynamic cursor patch from Cal Heldenbrand
* applied Claudio Freire's normalized matching and xmlparsing patches
* fixed sqlite connection to use sqlite3_malloc/free
* update freetds connection to get tds version with ct_config if
TDS_VERSION_NO doesn't exist
* applied a fix for a bug that could cause a crash when a cursor is reused
* fixed a shutdown race condition in connection daemons
* moved common startup/shutdown code for connection daemons up into
static methods/variables of the sqlrconnection_svr class
* fixed a crash in the oracle connection daemon where OCIHandleFree was
getting called on define handles that weren't created by OCIHandleAlloc
* removed rebuild target from Makefiles
* updated tests
* refactored main() method for connections
* added searches for ruby1.8, ruby19 and ruby1.9 in configure script
* fixed a bug that caused addresses="" to cause the sqlr-listener not to start
* added entries to FAQ about oracle instantclient and ubunu /bin/dash
* updated postgresql tests to use bpchar rather than char(20) for
fetching results of stored procedure
* renamed interbase.create.sh to firebird.create.sh
* fixed a bug that could overrun the postgresql bind array
* fixed bug that caused connection daemon sockets to be double-freed on
shutdown after a suspended session
* precision/scale in output bind buffers is initialized now
* debugstring buffers are no longer build when debug is turned off
* fixed id vs. index bug when requesting a cursor and binding a cursor
* refactored JNI code a bit, fixed getIntField/getLongField problem that
caused problems on 64-bit machines
* applied patch to make python api return decimals and integers, not
just strings, refactored some of it
* fixed dump tran docs in getting started with sybase to use sa
* updated sybase connection to use length of cursor name rather than
CS_NULLTERM to work around an odd, inconsistent bug that would
cause the connection to hang sometimes
* connections not spawned by scaler don't signal on the semaphore used
by the scaler to wait for a connection to start now
* updated bind var docs
* updated faq
* fixed a bug where binding an oracle cursor didn't reset some values
and would cause subsequent cursor binds to fail
* added note to docs about configuring sybase to dump transactions at each
checkpoint
* applied Renat Sabitov's patch to kill scaler-started connections which fail
to signal on sem(8) because they either crashed or got hung up trying
to start
* fixed a bug in the mysql drop-in lib that could cause the client to run out
of cursors
* added a mapping between sqlite3_free and sqlite_freemem
* added a fix for a race condition in the scaler
* fixed a postgresql bind memory leak
* applied Renat's ruby DESTDIR patch and updated helper scripts to
remove $(DESTDIR) from all the variables that it outputs
* applied Renat's patch to handle semaphore failures in forked listeners
during shutdown
* applied Renat's patch to move connection counting for scaler-spawned
connections entirely into scaler itself
* applied Renat's patch to reap children more regularly and refactored it
a little
* fixed distclean to remove perl .pm files
* changed maxsessioncount default to 0, updated docs, examples
0.41
* added configure test for ruby.h
* added a couple of new functions to the mysql drop-in library
* updated mysql drop-in lib docs explaining how to use with PHP
* added documentation for timequeries params
* if SQLConnectW isn't supported, ODBC driver uses non-unicode calls
* added maxsessioncount parameter and connections use it to override
ttl and bleed off
* applied Renat Sabitov's output bind patch
* added mysql last_insert_id() note to FAQ
* made it so oracle_home doesn't need to be set if oracle_sid is
specified in tnsnames.ora format
0.40
* fixed readline detection in configure script
* fixed an uninitialized variable in sqlr-import
* changed clientSession() to call endSessionCommand() instead of endSession()
so endSessionInternal() would be called every time
* fixed debug option in sqlr-import and sqlr-export
* fixed postgresql typemangling=no option
* set dbversion to unknown if sp_version wasn't found in freetds/sybase
* output bind variables' null indicator is reset now
* updated postgresql typemangling
* included Jesse Wagner's oracle 11g acsite patch
* added +1 to inbindvars[i].valuesize for CLOB's to make sure the NULL
terminator is included
* postgresql connection uses PQparameterStatus if PQserverVersion doesn't
exist and runs "select version()" if PQparameterStatus doesn't exist;
to get the db version
* added mysql-5.1 drop-in replacement lib
* fixed a bug that caused result set data not to be cleaned up before a cursor
is reused as a bind cursor
* changed string bind length to uint32_t from uint16_t
* added clearBinds() call after executeQuery() in perl dbi driver
* began work on an ODBC driver
* added serverVersion and clientVersion methods
* incorporated Alfred Fazio's python api patches
* fixed a bug where cursors might not get aborted when a client disconnects
* made shared memory segment group-readable
* applied Renaud Amar's HAVE_MYSQL_OPT_RECONNECT patch
* added ODBC driver to spec file
* added DESTDIR= to .pc files
* made freetds use single-quote for escape character, other db's use backslash
* made sqlr-export/import use &##; for non-printable characters, &, < and >
* fixed scaler; supports -localstatedir option properly now
* fixed many it's -> its typos in the documentation
* changed debug so that only one binary is built and it's selected at runtime
* integrated erlang api
* added -localstatedir to sqlr-stop
* fixed mysql (with statement api) relogin problems
* removed non-functional config app
* added Oracle 11g on fc9 document
* added ASE 15.0.2 installation doc
* made it possible to only bind to port, not socket
* added test for tdsver.h
0.39
* removed oracle7 support
* added OCI_OBJECT to oracle environment init
* added some more error codes to oracle's dead connection test
* connections don't decrement connection count when they fail to log in now :)
* added -silent option to connections that scaler uses so they don't spew
login errors if the db is down
* fixed a bug that disabled scaling if maxlisteners was -1 (the default, which
means no maximum)
* freetds, db2 connection don't detach before logging in any more
* added reloginatstart config parameter
* fixed sendLob for oracle<8i
* applied Johnny Luong's postgresql drop-in lib patch
* applied Jason McClellen's perl dbi raise-error patch
* sybase/freetds use CS_SEVERITY instead of msgp->severity now
* added 64 bit sybase tests
* postgresql only uses PQexecPrepared if PQprepare also exists
* set LANG=POSIX before running ruby/make so sed's would work on non-us
locales
* documented how to use mysql stored procedure output parameters
* applied james@thoughtpatterns.com's perl null bind patch
* applied Tim Bunce's perl dbi driver patch
* suppress error message of cat $ORACLE_HOME/lib/sysliblist in configure
script
* added support for stored procedures which return result sets to sybase
connection
* added support for stored procedures which return result sets to freetds
connection but it doesn't actually return anything
* documented how to use sybase stored procedure result sets
* fixed a bug that caused zope to get an exception when result sets are empty
* configure looks for instantclient if it can't find anything in
ORACLE_HOME, added --with-oracle-instantclient-prefix option
* added sybase ASE 15 install doc
* fixed a bug that caused the router connection to return a max of 10 rows
* applied Chris Coyle's mysql auto-reconnect patch
* modified countBindVariables to exclude :'s and @'s if it finds $'s or ?'s
* applied some of Tim Bunce's DBI patches
* added pid cleanup to init script similar to patch supplied by Ragnar Rova
* added validBind() method which will return whether a bind
variable is in the query or not
* fixed Yeb Havinga's db-tier authentication bug
* added timequeries option
* added support for Oracle OS-authentication
* added some new FAQ's
* mysql connection calls commit() before running the first query after
each new client connection
* fixed a crash in the router involving "fake begin's"
* documented msql transaction weirdness and db2 relogin issues
* added /opt/csw to configure script search path
* improved filtering out of -x arguments in perl/ruby make commands
* added -lruby, -lperl, -lpython, etc for OS X
0.38
* implemented mysql_stmt function support in mysql connection
* fixed mysql_autocommit detection
* fixed missing self before __getRow and __getRowRange in python db driver
* implemented query filtering and routing
* interbase/firebird dead-db/relogin works now
* added test for 0 length result set to PySQLRDB's fetchmany method
* added mysql_config sanity test to configure script
* NULL's are escaped in fake input BLOB binds now
* query router works pretty well now
* applied Sharpinskiy Dmitry's odbc unicode patch
* integrated Devananda's statistics gathering code
* added support for mysql stored procedures
* integrated Devananda's mysql result set updates
* sqlrelay.conf.example installed as $datadir/examples/sqlrelay.conf now
* integrated Andreas Behr's listener crash patch
* removed erroneous reference to sqlrcon_errormessage in php pear db
* another multibyte clob fix
* added "delimiter" command to sqlrsh to change delimiter from ; to whatever
* removed msql support
* added db2 9.1 installation doc
* added firebird 2.0 installation docs
* router connection overrides authtier=database
* fixed a bug where clients would hang if they requested a cursor when
none were available
* added some additional mdb 5 checks to configure script
* added iconv const char parameter check to configure script
* the main listener doesn't listen for clients until all of the connections
have started now
* added notes about tcp_tw_recycle/tcp_tw_reuse in tuning doc
* ping causes the connection to relogin if it returns false now
* added iconv include/library find to configure script
* fixed sqlrlistener so forked listeners don't remove the pid file
* switched oracle 8 column size variable type from sb4 to ub2
* if maxqueuelength>maxlisteners then scaling isn't used
The configure script is too agreessive and bypasses the buildlink3
framework.
Add options for sqlite, odbc, freetds and perl.
Fix PLIST. Bump revision. OK by maintainer.