pkgsrc/databases/php-sqlrelay
fhajny d36a22efb2 Update sqlrelay to 0.55.
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
2014-05-22 12:50:47 +00:00
..
Makefile
PLIST