* Performance of metadata locking operations on Windows XP systems was improved
by instituting a cache for metadata lock objects. This permits the server to
avoid expensive operations for creation and destruction of synchronization
objects on XP. A new system variable, metadata_locks_cache_size, permits
control over the size of the cache. The default size is 1024.
* Replication: Previously, replication slaves could connect to the master
server through master accounts that use nonnative authentication, except
Windows native authentication. This is now also true for Windows native
authentication.
Bugs Fixed:
* InnoDB Storage Engine: An internal deadlock could occur within InnoDB, on
a server doing a substantial amount of change buffering for DML operations,
particularly DELETE statements.
* Rounding DBL_MAX returned DBL_MAX, not 'inf'.
* mysql_upgrade did not upgrade the system tables or create the
mysql_upgrade_info file when run with the --write-binlog or
--skip-write-binlog option.
* If a plugin was uninstalled, thread local variables for plugin variables of
string type with wth PLUGIN_VAR_MEMALLOC flag were not freed.
* Deadlock could occur when these four things happened at the same time: 1) An
old dump thread was waiting for the binary log to grow. 2) The slave server
that replicates from the old dump thread tried to reconnect. During
reconnection, the new dump thread tried to kill the old dump thread.
3) A KILL statement tried to kill the old dump thread. 4) An INSERT statement
caused a binary log rotation.
* Fix bugs in information_schema.referential_constraints view
* Correct collations for citext columns and indexes
* Prevent possible crash when joining to a scalar function
* Prevent transitory data corruption of GIN indexes after a crash
* Prevent data corruption on TOAST columns when copying data
* Fix failures during hot standby startup
* Correct another "variable not found in subplan target list" bug
* Fix bug with sorting on aggregate expressions in windowing functions
* Multiple bug fixes for pg_upgrade
* Change Foreign Key creation order to better support self-referential keys
* Multiple bug fixes to CREATE EXTENSION
* Ensure that function return type and data returned from PL/perl agree
* Ensure that PL/perl strings are always UTF-8
* Assorted bug fixes for various Extensions
* Updates to the time zone database, particularly to CST6
* Fix bugs in information_schema.referential_constraints view
* Correct collations for citext columns and indexes
* Prevent possible crash when joining to a scalar function
* Prevent transitory data corruption of GIN indexes after a crash
* Prevent data corruption on TOAST columns when copying data
* Fix failures during hot standby startup
* Correct another "variable not found in subplan target list" bug
* Fix bug with sorting on aggregate expressions in windowing functions
* Multiple bug fixes for pg_upgrade
* Change Foreign Key creation order to better support self-referential keys
* Multiple bug fixes to CREATE EXTENSION
* Ensure that function return type and data returned from PL/perl agree
* Ensure that PL/perl strings are always UTF-8
* Assorted bug fixes for various Extensions
* Updates to the time zone database, particularly to CST6
- bug #3425230 [interface] enum data split at space char (more space to edit)
- bug #3426840 [interface] ENUM/SET editor can't handle commas in values
- bug #3427256 [interface] no links to browse/empty views and tables
- bug #3430377 [interface] Deleted search results remain visible
- bug #3428627 [import] ODS import ignores memory limits
- bug #3426836 [interface] Visual column separation
- bug #3428065 [parser] TRUE not recognized by parser
+ patch #3433770 [config] Make location of php-gettext configurable
- patch #3430291 [import] Handle conflicts in some open_basedir situations
- bug #3431427 [display] Dropdown results - setting NULL does not work
- patch #3428764 [edit] Inline edit on multi-server configuration
- patch #3437354 [core] Notice: Array to string conversion in PHP 5.4
- [interface] When ShowTooltipAliasTB is true, VIEW is wrongly shown as the
view name in main panel db Structure page
- bug #3439292 [core] Fail to synchronize column with name of keyword
- bug #3425156 [interface] Add column after drop
- [interface] Avoid showing the password in phpinfo()'s output
- bug #3441572 [GUI] 'newer version of phpMyAdmin' message not shown in IE8
- bug #3407235 [interface] Entering the key through a lookup window does not reset NULL
- [security] Self-XSS on database names (Synchronize), see PMASA-2011-18
- [security] Self-XSS on database names (Operations/rename), see PMASA-2011-18
- [security] Self-XSS on column type (Create index), see PMASA-2011-18
- [security] Self-XSS on column type (table Search), see PMASA-2011-18
- [security] Self-XSS on invalid query (table overview), see PMASA-2011-18
* Upgrading from an Advanced GPL RPM package to an Advanced RPM package did not
work. Now on Linux it is possible to use rpm -U to replace any installed MySQL
product by any other of the same release family. It is not necessary to remove
the old produce with rpm -e first.
* MEMORY table creation time is now available in the CREATE_TIME column of the
INFORMATION_SCHEMA.TABLES table and the Create_time column of SHOW TABLE
STATUS output.
Bugs Fixed
* Important Change: InnoDB Storage Engine: Data from BLOB columns could be lost if the server crashed at a precise moment when other columns were being
updated in an InnoDB table.
* InnoDB Storage Engine: This fix improves the performance of instrumentation
code for InnoDB buffer pool operations.
* InnoDB Storage Engine: Lookups using secondary indexes could give incorrect
matches under a specific set of conditions. The conditions involve an index
defined on a column prefix, for a BLOB or other long column stored outside
the index page, with a table using the Barracuda file format.
* InnoDB Storage Engine: This fix corrects cases where the MySQL server could
hang or abort with a long semaphore wait message. (This is a different issue
than when these symptoms occurred during a CHECK TABLE statement.)
* Replication: Issuing the following statements, in the order shown, could cause a deadlock between the user thread and I/O thread.
* more...
Lib/
* ldap.controls.ppolicy:
Another fix for decoding the password policy response control
Changes 2.4.5:
Installation:
* defines for SASL and SSL in setup.cfg to be more friendly to
Python setup tools (easy_install)
Lib/
* Fixed typo in ldap.functions._ldap_function_call() which
always released ldap._ldap_module_lock instead of local lock
* ldap.controls.ppolicy:
Fixed decoding the password policy response control
Demo/
* Demo script for ldap.controls.ppolicy
* The first release for Slony-I branch 2.1 has been released, in the form of
version 2.1.0. It is a significant new version, fixing dozens of reported
bugs, and adding some significant enhancements, including:
- Implicit WAIT FOR
- Support for adding tables in bulk
- Support for replicating TRUNCATE
- Health checks at startup
- Performance improvement in cases of large backlog
- Monitoring thread to provide better monitoring data
Changes from previous:
# ----------------------------------------------------------
# 0.11010 2011-10-05
# ----------------------------------------------------------
* Add "if exists" to drop view statements in Pg.
# ----------------------------------------------------------
# 0.11009 2011-09-02
# ----------------------------------------------------------
* Fix MySQL producer to properly quote all table names on output (patch from geistteufel)
# ----------------------------------------------------------
# 0.11008 2011-05-04
# ----------------------------------------------------------
* Correctly create and parse FK constraints in SQLite
* Correct postgis geography type insertion and linebreak fix for multiple geometry/geography columns
* made PostgreSQL producer consistent with other producers in terms of
quoting and allowing functions in constraints and indices
* Add distinction of autoinc and regular primary keys to the GraphViz producer
* Fix odd invocation of Test::More::pass() in t/36-filters.t (RT#64728)
* Quote everything in SQL Server
* Turn off constraints before dropping tables in SQL Server
* Make true unique constraints if needed in SQL Server
* Fixed Producer::PostgresSQL to output array type after type size,
i.e. varchar(64)[] rather than varchar[](64)
# ----------------------------------------------------------
# 0.11007 2010-11-30
# ----------------------------------------------------------
* Fix POD typo in SQL/Translator/Schema/Trigger.pm
* Add explicit Scalar::Util to the deplist for really old perls
* Add support for PostGIS Geometry and Geography data types in the Pg producer
* Some minor fixes to squash warnings on new perls
* Support a custom_type_name hint when creating enum types in PostgreSQL
* Fix sqlt options/pod mismatch (RT#58318)
* Oracle Producer multicolumn constraint support
* Add support for triggers in the MySQL producer
* Fix unstable order of View's in MySQL parser
Functionality Added or Changed
* Upgrading from an Advanced GPL RPM package to an Advanced RPM package did not
work. Now on Linux it is possible to use rpm -U to replace any installed
MySQL product by any other of the same release family. It is not necessary to
remove the old produce with rpm -e first.
Bugs Fixed
* Incompatible Change: Replication.
* During the table-opening process, memory was allocated and later freed that
was needed view loading, even for statements that did not use views. These
unnecessary allocation and free operations are no longer done.
* mysql_plugin mishandled the --plugin-ini, --mysqld, and --my-print-defaults
options under some circumstances.
* mysql_plugin returned the wrong error code from failed server bootstrap
execution.
* Several improvements were made to the libedit library bundled with MySQL
distributions, and that is available for all platforms that MySQL supports
except Windows.
* ARCHIVE tables with NULL columns could cause server crashes or become corrupt
under concurrent load.
* OPTIMIZE TABLE could corrupt MyISAM tables if myisam_use_mmap was enabled.
* A query that selected a GROUP_CONCAT() function result could return different
values depending on whether an ORDER BY of the function result was present.
* For FEDERATED tables, loss of connection to the remote table during some
insert operations could cause a server crash.
* Rails 3.0.11 (unreleased)
* Exceptions from database adapters should not lose their backtrace.
* Backport "ActiveRecord::Persistence#touch should not use default_scope"
(GH #1519)
* Psych errors with poor yaml formatting are proxied. Fixes GH #2645 and
GH #2731
* Fix ActiveRecord#exists? when passsed a nil value
RELEASE NOTES
-------------
This is a minor release update to fix some bugs that were discovered after the
release of 1.2.1.1.
There are some security fixes in this release - I suggest you upgrade your
version of PLA to avoid any exploits.
CHANGES SINCE 1.2.1.1
---------------------
dece0f4 Release 1.2.2
d58f011 Language Translation merge from launchpad
696c266 Additional fix for SF Feature #3387473
2d018aa SF Feature #3387473 - Support for schema discovery using OpenLDAP's cn=config DN
cddf783 Add an alert when RFC3866 tags are being used
1e1fcab SF Bug #3398344 - Import LDIF overwrites entries
d8ab7fc SF Patch #3391547 - Option for minmal mode
56830f1 SF Patch #3391389 - Option to initially open the tree
6c8b623 SF Patch #3391371 - Fix for schema link deactivation
7fc4f0c SF Patch #3391039 - Remove eval commands from PHP code
059b83b SF Bug #3391046 - Loading entries with many attributes is very slow
4089ffa SF Bug #3392644 - Cannot authenticate if password starts or ends with spaces
c57a927 Disable supplied modifiction templates, it confused too many people
d5744b0 SF Bug #3370546 - AjaxEnabled create and delete entry fails on IE9
76e6dad SF Bug #3417184 - PHP Code Injection Vulnerability
5d4245f SF Bug #3395004 - config.php.example refers to lang/en.php
80d027d SF Bug #3373466 - Unable to define force_may attributes
64668e8 Remove XSS vulnerabilty in debug code
caeba72 SF Bug #3355722 - Issue in MultiList attribute type
0782730 SF Bug #3355732 - Cosmetic issue in functions.php -> get_icon()
446faf7 FIX SASL configuration example
afa4a95 Fix SASL implementation - enabled GSSAPI
5987194 SF Bug #3304785 - posixGroup creation template uses cn instead of uid
ddb5ed0 Enabled hiding base DNs that users dont have access to
7649b9b SF Feature #3298820 - Only custom templates
Changes from previous:
1.61 Fri Sep 16 15:47:50 MSD 2011
* New methods in Handle for mass changes from select statements:
InsertFromSelect, DeleteFromSelect and SimpleUpdateFromSelect
* New methods in Handle for generation of date time related SQL
1.60 Thu Sep 15 01:01:15 MSD 2011
* custom BuildDSN for Oracle
** Database is treated as SID if SID is not provided
** Build 'dbi:Oracle:<SID>' instead of 'dbi:Oracle:sid=<SID>'
* changes in DBIx::SearchBuilder->Column method
** complete documentation
** support for empty FIELD argument
** column naming fix when explicit ALIAS => 'main' passed
1.59 Fri Nov 19 13:45:01 MSK 2010
* DBIx::SearchBuilder->DistinctFieldValues method
1.58 Wed Oct 20 02:17:37 MSD 2010
* SIGNATURE fix
* delete obsolete cvs metadata from a module
1.57 Mon Sep 4 21:21:57 UTC 2010
* INCOMPATIBLE CHANGE: NextPage and PrevPage were adding rows from
the previous page. Jesse claims that when he wrote this code, he
was 20 years old and it seemed like a good idea at the time.
* When logging queries, include full stack trace
* support $sb->NewAlias( 'table' => 'LEFT' );
* allow join to depend on nothing
* catch cases when there are more closing parens then should be
* Oracle: Use ROW_NUMBER() to propagate row ordering from inside the DISTINCT
* Various performance improvements through small internal refactorings
* Implemented 'sub Fields' on Oracle
* unify case insensitive characters to avoid using LOWER() in some
cases
* We now RedoSearch when RowsPerPage is changed
* No longer RedoSearch if FirstRow is called, but is not actually changed
* Document all paging functions and test them
* handle LOWER() in redundant LEFT joins optimizer,
for Oracle and may be Pg
* Make debugging problems easier by passing errors back
https://rt.cpan.org/Ticket/Display.html?id=55203
* fix Record->PrimaryKeys, field names in values hash are lc'ed
https://rt.cpan.org/Ticket/Display.html?id=18280
* doc updates and cleanups
Changes from previous:
0.796 (10.18.2011) - John Siracusa <siracusa@gmail.com>
* Use ENGINE=InnoDB instead of TYPE=InnoDB in MySQL table creation
statements to avoid an incompatibility with MySQL 5.5 (RT 71757)
0.795 (07.14.2011) - John Siracusa <siracusa@gmail.com>
* The Loader now passes the Manager class name as a second argument to
module_preamble and module_postamble subroutines to allow Manager
classes to be distinguished from object classes.
* Corrected a typo in the ConventionManager documentation ("objs_"
should be "_objs")
* Fixed a bug that caused load-on-demand columns to be loaded by
load(with => ...) method calls. (Reported by Marlon Bailey)
0.794 (12.30.2010) - John Siracusa <siracusa@gmail.com>
* Handle null default values for foreign key columns in PostgreSQL
(RT 64331)
0.793 (12.21.2010) - John Siracusa <siracusa@gmail.com>
* Corrected skip count in t/db-object.t
0.792 (12.20.2010) - John Siracusa <siracusa@gmail.com>
* Detect attempts to create methods whose names conflict with
methods defined in Rose::DB::Object itself. (Reported by
Dave Howorth)
0.791 (10.23.2010) - John Siracusa <siracusa@gmail.com>
* Fixed a bug that caused on_save column triggers to fire when loading.
* More floating point rounding fixes in the test suite.
0.790 (10.17.2010) - John Siracusa <siracusa@gmail.com>
* The auto-initialization process no longer sets column default
values to undef when there is no default for the column. Doing
this was tripping up the default_exists() method. (Reported
by Timo Karhu)
* Documented the behavior of the manager_args relationship attribute
when a relationship is used as a with_objects or require_objects
argument.
* Fixed a bug that caused SET columns to be erroneously marked as
modified when their accessor methods were called.
* Fixed a bug in make_manager_methods() that left base_name undefined.
(RT 61963, patch by Chris Malarky)
* Improved handling of floating point and string/number conversions
in the test suite.
Changes from previous:
0.07012 2011-11-09 15:16:29
- as of 0.07011 all callbacks receive a ::Loader::Table or
interface-compatible object instead of the table name, this object
stringifies to the table name (RT#72260)
- fix a bug in dynamic schema_base_class/schema_components
implementation that ran the connection method twice on subsequent
connects
- use a temp file for filter_generated_code with a string program name
instead of IPC::Open2, which hangs on Win32 (RT#72226)
- previous version referred to the wrong RT# for the uniq_to_primary
change, it is actually (RT#51696)
0.07011 2011-11-01 09:00:00
- add -I option to dbicdump
- do not delete default custom content comment and ending 1; from custom
content in files that are being renamed (RT#70507)
- use MooseX::MarkAsMethods instead of namespace::autoclean for the
use_moose option, this protects operator overloads, only_autoclean
option added for the old behavior
- add experimental naming=v8 mode with better CamelCase identifier
support, relationship naming and conversion of non-identifier chars
(RT#71945)
- add naming => { force_ascii => 1 } option for Unicode database names
- implement schema_base_class and schema_components for dynamic and
working schemas
- remove dependency on File::Slurp
- allow the constraint and exclude options to be used simultaneously
(bphillips)
- fix Oracle multi-db_schema unique detection (RT#70851)
- fix Oracle common tests fail with multi_schema due to not resetting
the preserve_case option after the preserve_case tests (RT#70829)
- handle <type> DEFAULT NULL for Pg
- handle boolean DEFAULT 0::boolean for Pg
- config file support for dbicdump script (alnewkirk)
- added filter_generated_code option (RT#53841)
- generic table and column comments support
- MySQL table and column comments support
- support DOS line endings on *nix and *nix line ending on Win32
- add quiet option
- $schema->loader is now a public method
- add schema_components option
- sort relationships so they always come out in the same order
- also sort unique constraints so they always come out in the same order
- multi db_schema support with cross-schema rels (RT#39478)
- added moniker_parts option for name clashes in multi db_schema setups
- add rel_name_map option
- fix the decimal data type for MS Access over ODBC
- fix enum/set detection for MySQL (RT#68717)
- fix is_nullable detection on MS Access
- remove '$table has no primary key' warning
- added uniq_to_primary option to promote unique keys to primary keys
(RT#25944)
- support arrayrefs for result_namespace and resultset_namespace
(RT#40214)
- add naming => { monikers => 'preserve' } or 'singular'/'plural' to
control moniker inflection (RT#44935)
- add naming => { column_accessors => 'preserve' } to not normalize
CamelCase column names to lower case for accessors (RT#64668)
- support quoted PostgreSQL schema names with special chars (RT#64766)
- automatically turn on quoting for MySQL (RT#60469)
- become utf8-aware (RT#67920)
- handle duplicate relationship names (RT#64041)
- fix a bug in Sybase ASE foreign key detection
- generate POD for result_base_class, additional_classes,
additional_base_classes, left_base_classes, components,
result_components_map, result_roles, result_roles_map, unique
constraints, set_primary_key and table
- rename result_component_map to result_components_map (old name still
works)
- fix accessor collision detection for methods from
result_components_map components
- add result_roles and result_roles_map options
- fix for mysql rel detection in mixed-case tables on mixed-case
filesystems (OSX and Windows)
- support for DBD::Firebird
- support for unicode Firebird data types
- handle "use warnings FATAL => 'all';" in custom/external content
(RT#59849)
- for dynamic schemas, if the naming option is set, will automatically
turn on use_namespaces=1 as well. Set use_namespaces=0 to disable
this behavior (RT#59849)
0.07010 2011-03-04 08:26:31
- add result_component_map option
0.07009 2011-02-25 11:06:51
- fix a syntax error in MS Access ADO driver
0.07008 2011-02-25 01:54:43
- rename column_accessor_map to col_accessor_map, the old alias still
works
- support MSSQL over DBD::ADO
- support for MS Access over DBD::ODBC and DBD::ADO
0.07007 2011-02-15 10:00:07
- bump DBIx::Class dep to 0.08127
- fix MSSQL data types for native client and EasySoft driver
0.07006 2011-02-01 02:18:32
- turn unloading of RelBuilder temp classes back on, now with proper
check for class existance using Class::Inspector->loaded
- bump up dep on namespace::clean to avoid breakage with earlier
versions (RT#65149)
0.07005 2011-01-25 23:07:55
- support extra connect_info options like quote_char for dbicdump
- fix breakage on perl 5.8.x related to unloading temporary classes
0.07004 2011-01-24 03:43:05
- fix bug with result class methods being cached on in a closure instead
of the object, which breaks for multiple dynamic schemas in a single
perl instance
0.07003 2011-01-21 06:43:05
- fix relname/method collisions (RT#62648)
- fix fully qualified component classes (RT#62624)
- improve sybase/mssql db_schema detection
- remove MooseX::NonMoose from Schema files under use_moose=1
- better _tables_list for Sybase ASE
- add datetime_undef_if_invalid => 1 for MySQL datetime data types
(RT#64820) This behavior can be turned off by passing
datetime_undef_if_invalid=0 as a loader option
- added column_accessor_map option
- Preserve relationship names when redumping and another FK is added
(RT#62424)
- Remove resultset_components as ResultSetManager is deprecated
- Fix a fail when very old Moose/CMOP is installed
- Added warning for column-accessor collisions, doc section in ::Base
("COLUMN ACCESSOR COLLISIONS") and the col_collision_map option.
- Handle column accessor collisions with UNIVERSAL methods
- Generate custom_type_name hint for PostgreSQL enums, as used
by very recent SQL::Translator
- Added support for PostgreSQL enum types
- Added table/column comment support for Oracle
- Fix missing require (RT#62072)
sqlalchemy-migrate is a schema migration tool for SQLAlchemy. It is
designed to support an agile approach to database design and make it
easier to keep development and production databases in sync, as schema
changes are required.
Changes from previous:
0.93 Fri Feb 11 17:13:02 EST 2011
- When slurping MARCXML records (e.g., via MARC::Batch), can
now handle XML files that use a prefix
to refer to the http://www.loc.gov/MARC21/slim namespace.
- If trying to parse a MARCXML record that has omitted
the <record> wrapper element, throw an exception
with a more meaningful error message.
- adjusted copyright statement further to meet Debian requirements
(RT#48333)
- set license in Makefile.PL
* If a search token (on the right-hand side of the MATCH operator) in FTS4
begins with "^" then that token must be the first in its field of the
document. ** Potentially Incompatible Change **
* Added options SQLITE_DBSTATUS_CACHE_HIT and SQLITE_DBSTATUS_CACHE_MISS to the
sqlite3_db_status() interface.
* Removed support for SQLITE_ENABLE_STAT2, replacing it with the much more
capable SQLITE_ENABLE_STAT3 option.
* Enhancements to the sqlite3_analyzer utility program, including the --pageinfo
and --stats options and support for multiplexed databases.
* Enhance the sqlite3_data_count() interface so that it can be used to determine
if SQLITE_DONE has been seen on the prepared statement.
* Added the SQLITE_FCNTL_OVERWRITE file-control by which the SQLite core
indicates to the VFS that the current transaction will overwrite the entire
database file.
* Increase the default lookaside memory allocator allocation size from 100 to
128 bytes.
* Enhanced the query planner so that it can factor terms in and out of OR
expressions in the WHERE clause in an effort to find better indices.
* Added the SQLITE_DIRECT_OVERFLOW_READ compile-time option, causing overflow
pages to be read directly from the database file, bypassing the page cache.
* Remove limits on the magnitude of precision and width value in the format
specifiers of the sqlite3_mprintf() family of string rendering routines.
* Fix a bug that prevent ALTER TABLE ... RENAME from working on some virtual
tables in a database with a UTF16 encoding.
* Fix a bug in ASCII-to-float conversion that causes slow performance and
incorrect results when converting numbers with ridiculously large exponents.
* Fix a bug that causes incorrect results in aggregate queries that use
multiple aggregate functions whose arguments contain complicated expressions
that differ only in the case of string literals contained within those
expressions.
* Fix a bug that prevented the page_count and quick_check pragmas from working
correctly if their names were capitalized.
* Fix a bug that caused VACUUM to fail if the count_changes pragma was engaged.
* Fix a bug in virtual table implementation that causes a crash if an FTS4
table is dropped inside a transaction and a SAVEPOINT occurs afterwards.
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
Packaged by tnozaki@, some minor improvements by me.
Perl binding for Redis database which is in-memory hash store with support for
scalars, arrays and sets and disk persistence.
Changes from previous:
0.47 2011-09-26T17:12:07Z
- Use of the deprecated `catch` functionality now warns on every call,
rather than just the first call from a given caller.
0.46 2011-07-17T00:47:49
- Eliminated "Use of qw(...) as parentheses is deprecated" warning in
test when running on Perl 5.14.
- Properly `local`ing `$$` in the `t/base.t` test so that it doesn't die
on Perl 5.15. Thanks to Andreas J. Koenig for the report and diagnosis
and to Nicholas Clark for the fix.
- Duplicate paragraphs removed from `README.md` thanks to Ask Bjørn
Hansen.
- The `catch` functionality is deprecated. It will warn once for each
caller to keep log verbosity down. In the next release, it will warn
for every call. The release after that, it will be removed altogether.
0.45 2011-05-10T21:44:08
- Fixed crash when `in_txn()` was called before an actual connection
was established.
- Strongly recommend setting `AutoCommit` to true in the documentation.
Setting `AutoCommit` to false defeats the scoping behavior of `txn()`
and therefore should not be used.
- Nested exception handling now works properly in nested calls to
`run()` in fixup mode and in nested calls to `txn()` in all modes.
Thanks to Mark Lawrence for the report (RT #66974).
0.44 2011-03-20T01:04:59
- Fixed bug with the MySQL driver introduced by the auto-reconnection
fix in 0.43. Sorry for the lame mistake. [Lee Aylward]
0.43 2011-03-17T20:03:16
- DBIx::Connector now sets the DBI `RaiseError` parameter to true in
`new()` if neither it nor `HandleError` has been specified. This is to
increase the likelihood that exception handling will be properly
triggered in `run()`, `txn()`, and `svp()`. Documentation has also
been added to emphasize the importance of setting `RaiseError` or
`HandleError` appropriately.
- Documented that `AutoInactiveDestroy` is set to true in `new()` if it
is not specified. It's important tht this attribute be true in forking
environments.
- After connecting to the database, the MySQL driver,
DBIx::Connector::Driver::mysql, now always sets the
`mysql_auto_reconnect` attribute to false. This is to prevent MySQL's
auto-reconnection feature from interfering with DBIx::Connector's
auto-reconnection functionality in `fixup` mode. Thanks to Karen
Etheridge and Peter Rabbitson for the report.
- Removed mention of the use of the `catch` function from Try::Tiny,
since it is no longer compatible to use passing the exception-handling
function. Just using `catch =>` instead, which is cleaner-looking
anyway (RT #65196).
0.42 2010-12-17T18:35:54
- If a catch block died, the exception was not being propagated. That
is, if a catch block threw an exception, DBIx::Connector ate it, and
any calling code would not be able to catch it. This was a pretty
serious bug; upgrading is strongly recommended for anyone using catch
blocks.
- When `run()`, `txn()`, or `svp()` was called recursively from within a
second fixup execution, it was not respecting the fact that it was
recursive and could try to start a transaction again. This happened
*only* when a fixup run found that the database was disconnected and
successfully re-connected, so it's a pretty rare condition.
0.41 2010-12-08T21:02:32
- `connect()` no longer returns a disconnected database handle. Thanks
to John Siracusa for the spot (Issue #6).
- Added `disconnect_on_destroy()`, which can be used to disable
disconnecting the database handle when the connector object is
destroyed. Suggested by John Siracusa.
- bug #3418610 [interface] Links in navigation when
$cfg['MainPageIconic'] = false
- bug #3418849 [interface] Inline edit shows dropdowns even after closing
- bug [view] View renaming did not work
- bug [navi] Wrong icon for view (MySQL 5.5)
- bug #3420229 [doc] Missing documentation section
- bug #3423725 [pdf] Broken PDF file when exporting database to PDF
- [core] Allow to set language in URL
- bug #3425184 [doc] Fix links to PHP documentation
- bug #3426031 [export] Export to bzip2 is not working
* Replication: Previously, replication slaves could connect to the master
server only through master accounts that use native authentication. Now
replication slaves can also connect through master accounts that use
nonnative authentication (except Windows native authentication) if the
required client-side plugin is installed on the slave side in the directory
named by the slave plugin_dir system variable.
* MEMORY table creation time is now available in the CREATE_TIME column of the
INFORMATION_SCHEMA.TABLES table and the Create_time column of SHOW TABLE
STATUS output.
* InnoDB Storage Engine: This fix improves the performance of instrumentation
code for InnoDB buffer pool operations.
* InnoDB Storage Engine: Data from BLOB columns could be lost if the server
crashed at a precise moment when other columns were being updated in an
InnoDB table.
* InnoDB Storage Engine: Lookups using secondary indexes could give incorrect
matches under a specific set of conditions. The conditions involve an index
defined on a column prefix, for a BLOB or other long column stored outside
the index page, with a table using the Barracuda file format.
* InnoDB Storage Engine: This fix corrects cases where the MySQL server could
hang or abort with a long semaphore wait message. (This is a different issue
than when these symptoms occurred during a CHECK TABLE statement.)
* Internal conversion of zero to binary and back could yield a result with
incorrect precision.
* Valgrind warnings generated by filesort operations were fixed.
* mysqld_safe did not properly check for an already running instance of mysqld.
* The help message for mysql_install_db did not indicate that it supports the
--defaults-file, --defaults-extra-file and --no-defaults options.
* An assertion designed to detect zero-length sort keys also was raised when
the entire key set fit in memory.
* myisampack could create corrupt FULLTEXT indexes when compressing tables.
* A linking problem prevented the FEDERATED storage engine plugin from loading.
Changes from previous:
0.764 (10.18.2011) - John Siracusa <siracusa@gmail.com>
* Use ENGINE=InnoDB instead of TYPE=InnoDB in MySQL table creation
statements to avoid an incompatibility with MySQL 5.5 (RT 71757)
0.763 (12.30.2010) - John Siracusa <siracusa@gmail.com>
* Support for Rose::DB::Object 0.794
* Return from rollback() early if AutoCommit is set.
Changes from previous:
1.001013
- fixed functionality in last release by more deeply cloning parameters, which
prevents bad things when parameters get deleted in the wrong places. Also
be sure we clear state properly after a dump.
1.001012
- Added new method 'available_config_sets' which returns and caches a list of
all the json set configs found in the 'config_dir' directory. This was added
to make it easier when you need to dump all the fixtures programatically.
- Added method 'dump_config_sets' to let you dump more than one set at a time
more easily
- Added method 'dump_all_config_sets' which helps automate dumping all your
current config sets to a directory.
1.001011
- Added an excludes resultsource option to the ->dump({all=>1,...}) feature
- Allow you to directly set a configuration via a Perl HashRef instead of a
JSON file. Useful for testing and when you have simple or generated configs.
- New option to force use of ->create rather than ->populate.
- Fixed a bug in the test suite that would fail on certain JSON parsers
Welcome to phpMyAdmin 3.4.6, a bugfix and minor security release.
Please refer to the upcoming PMASA-2011-15 and -16 announcements on
http://www.phpmyadmin.net/home_page/security/.
GNU `dbm' is a library of functions implementing a hashed database
on a disk file. The software was written by Philip A. Nelson.
This is the optional dbm and ndbm API compatibility library and headers.
Change log:
This is the changelog file for the POCO C++ Libraries.
Release 1.4.2p1 (2011-09-24)
============================
- On Linux, the RTLD_DEEPBIND option is no longer passed to dlopen().
This change was introduced in 1.4.2 to solve a specific problem one customer
was having. Unfortunately, it leads to problems with RTTI.
- It's now possible to pass flags (SHLIB_GLOBAL, SHLIB_LOCAL) to
Poco::SharedLibrary::load() (and the constructor implicitly calling load()),
controlling the mode flags (RTLD_GLOBAL, RTLD_LOCAL) passed to dlopen().
On platforms not using dlopen(), these flags are ignored.
- fixed SF# 3400267: Path_WIN32.cpp bug
Release 1.4.2 (2011-08-28)
==========================
- added Poco::DateTimeFormat::ISO8601_FRAC_FORMAT
- added new Poco::DateTimeFormatter and Poco::DateTimeParser format specifier:
%s for seconds with optional fractions of a second
- fixed a problem with ioctl() on BSD platforms (including OS X) where the
second argument to ioctl() is unsigned long instead of int, causing bad
things on a OS X 64-bit kernel.
- fixed a potential endless loop when enumerating IPv6 network addresses
(reported by Laurent Carcagno)
- new compile-time config option on Windows to set thread names in
debugger. Enable with -DPOCO_WIN32_DEBUGGER_THREAD_NAMES. Available
only in debug builds.
- Cipher can now create Base64 and HexBinary encoded output without linefeeds
(suitable for use in cookies, etc.)
- added Poco::Path::popFrontDirectory()
- improved VxWorks support
- IPv6 fixes: added proper scope id handling in IPAddress, SocketAddress
and related classes.
- Added Poco::Net::ServerSocket::bind6() which allows control over the
IPPROTO_IPV6/IPV6_V6ONLY socket option.
- Removed Poco::MD2Engine class due to licensing issues (the
license for the MD2 code from RSA only allows non-commercial
use). Note that the MD4 and MD5 code from RSA does not have
this issue.
- fixed a Net HTTP client testsuite issue where some tests might
have failed due to prematurely aborted connections by
the HTTPTestServer.
- Poco::Net::SocketAddress: when there is more than one address
returned by a DNS lookup for a name, IPv4 addresses will be
preferred to IPv6 ones.
- NetworkInterface::list() now also returns IPv4 interfaces on Windows when
built with -DPOCO_HAVE_IPv6
- XMLWriter: fixed a bug with attribute namespaces (no namespace prefix
written if attribute namespace is the same as element namespace)
- fixed SF# 3378588: Mismatched new[]/delete (in RSAEncryptImpl and
RSADecryptImpl)
- fixed SF# 3212954 (OpenSSLInitializer::uninitialize() crash) and
SF# 3196862 (Static OpenSSLInitializer instance causes Windows
deadlocks) by removing the static Poco::Crypto::OpenSSLInitializer
instance. Automatic OpenSSL initialization is now done through
Poco::Crypto::Cipher, Poco::Crypto::CipherKey,
Poco::Crypto::X509Certificate, Poco::Net::Context classes; however,
it is still recommended to call Poco::Crypto::initializeCrypto()
and Poco::Crypto::uninitializeCrypto() early at application
startup, and late at shutdown respectively (or
Poco::Net::initializeSSL()/Poco::Net::uninitializeSSL() if the
NetSSL library is used) to avoid multiple full OpenSSL init/uninit
cycles during application runtime.
- Poco::Logger now also support a symbolic log level "none"
(for use with setLevel()) that disables logging completely
for that Logger (equivalent to setLevel(0)).
- Added experimental Android support, using the existing gmake-based
build system.
- fixed SF# 3288584: DateTimeFormatter link error
- fixed SF# 3187117: Typo in InflatingInputStream doc
- fixed SF# 3309731: _WIN32_WCE comparison should be with 0x600 not 600
- fixed SF# 3393026: RegularExpression.h identical enum value
- fixed SF# 3274222: AtomicCounter's postfix operators aren't atomic on Windows
- fixed SF# 3317177: Handle leak on windows
- fixed SF# 3181882: Poco::URI::getPathEtc() double-encodes query
- fixed SF# 3379935: ThreadPool Start Bug
- fixed SF# 3354451: Poco::Format::parsePrec never sets the precision to zero
- fixed SF# 3387258: _MAX_PATH used but unknown in Path_WIN32
- fixed a problem in RSAKeyImpl where direct access to the RSA in a EVP_PKEY
would no longer work in recent OpenSSL versions. Using EVP_PKEY_get1_RSA()
fixes the issue.
- added Poco::Crypto::EncryptingInputStream,
Poco::Crypto::EncryptingOutputStream, Poco::Crypto::DecryptingInputStream
and Poco::Crypto::DecryptingOutputStream.
- fixed SF# 3148126: HTTPSClientSession destructor (!) throws an IOException
- fixed SF# 3178098: Add constructor to Poco::TemporaryFile to specify directory
- fixed SF# 3175310: Absolute path when device
- fixed SF# 3301207: Guided tour example contradicts apidoc (API doc was wrong)
- Poco::Net::HTTPMessage::setContentLength() and
Poco::Net::HTTPMessage::getContentLength() now use std::streamsize
instead of int. This enables 64-bit Content-Length support at
least on 64-bit platforms.
- fixed SF# 3177530: TemporaryFile::tempName() + glob bug on xp
- fixed SF# 3177372: FileChannel documentation inconsistency
- added %E format specifier to Poco::PattermFormatter (epoch time in seconds
since midnight, January 1 1970)
- On Windows, Poco::Util::ServerApplication now supports a /description
command line argument for specifying a service description
(together with /registerService) - added
Poco::Util::WinService::setDescription() and
Poco::Util::WinService::getDescription()
- fixed SF# 3155477: Incorrect URI path handling
- fixed SF# 3309736: Extended Exception macros to set default exception code
new macro is named POCO_DECLARE_EXCEPTION_CODE
- added getter functions for modulus and exponents to Poco::Crypto::RSAKey.
- added Poco::Net::SocketAddress::operator == () and
Poco::Net::SocketAddress::operator != ()
- fixed SF# 3182746: IPAddress.cpp IPv6 bug on big-endian
- fixed SF# 3196961: Unix daemon fails to loadConfiguration() if
started from cwd
- fixed SF# 3393700: NotificationCenter may call a removed observer and crash.
- Reworked implementation of the events framework (Poco::BasicEvent
and friends). The framework is now completely multithreading
save (even in the case that an event subscriber object unsubscribes
and is deleted while an event is being dispatched). Also, the
restriction that any object can only register one delegate for
each event has been removed. For most cases, dispatching events
should be faster, as dispatching an event now needs less dynamic
memory allocations.
- fixed SF# 3178109: getNodeByPath() changes:
getNodeByPath() and getNodeByPathNS() have been moved to
Poco::XML::Node. Furthermore, when invoked on a Poco::XML::Document,
the behavior has changed so that the document element is now
included when traversing the path (previously, traversal would
start at the document element, now it starts at the document).
The path expression can now start with a double-slash, which
results in a recursive search for the path's first element in
the DOM tree.
- fixed SF# 3382935: String data being truncated using ODBC, and
SF# 2921813: Wrong implementation of the ODBC string binding
Release 1.4.1p1 (2011-02-08)
============================
- Poco::Mutex is now a recursive mutex again on Linux
(this was caused by an unfortunate feature test for
PTHREAD_MUTEX_RECURSIVE which did not work on Linux
as PTHREAD_MUTEX_RECURSIVE is an enum value and not
a macro)
- Poco::Net::SecureSocketImpl::abort() now only shuts
down the underlying socket connection and does not free
the SSL object, due to multithreading issues.
Release 1.4.1 (2011-01-29)
==========================
- fixed SF# 3150223: Poco::BinaryReader cannot read std::vector correctly
- fixed SF# 3146326: SharedMemory issue
- made Poco::Net::HTTPSession::abort() virtual
- added Poco::Net::SecureStreamSocket::abort() to immediately close
a SSL/TLS connection without performing an orderly SSL/TLS shutdown.
- fixed SF# 3148126: HTTPSClientSession destructor (!) throws an IOException.
Added try/catch block to Poco::Net::SecureSocketImpl destructor.
- added additional constructor to Poco::Net::HTTPSClientSession, taking
both a socket and a session object.
- Poco::Net::HTTPSession::abort() now also can be used with a
Poco::Net::HTTPSClientSession.
- fixed SF# 3148045: make clean and distclean issues
- changed Data library names on Unix/Linux platforms to
match the names on Windows (PocoSQLite -> PocoDataSQLite,
PocoMySQL -> PocoDataMySQL, PocoODBC -> PocoDataODBC)
- added additional options to configure script
- added additional documentation to Poco::Net::HTTPClientSession
- Poco::Net::HTTPClientSession::receiveResponse() closes the connection
if an exception is thrown while reading the response header.
This ensures that a new connection will be set up for the next request
if persistent connections are used.
- improved Poco::Net::MultipartDecoder performance by reading directly from
streambuf
- improved performance of Poco::Base64Encoder, Poco::Base64Decoder,
Poco::HexBinaryEncoder and Poco::HexBinaryDecoder by working directly with the
given stream's streambuf.
- improved performance of MessageHeader::read() by reading directly from
streambuf instead of istream.
- it is now possible to specify additional MIME part header fields
for a MIME part through the Poco::Net::PartSource class.
- upgraded SQLite to release 3.7.4
- added experimental VxWorks support for VxWorks 5.5.1/Tornado 2.2 and
newer. Please see the VxWorks Platform Notes in the reference documentation
for more information. Currently, the VxWorks is untested; full support
will be available in release 1.4.2.
- fixed SF# 3165918: Poco::DynamicAny fails to convert from string to float
- fixed SF# 3165910: Poco::Net::MessageHeader does not accept HTTP conforming
header
- made Poco::Task::cancel() virtual so that tasks can implement custom
cancellation behavior.
- added optional argument to Poco::Util::WinRegistryKey constructor
to specify additional flags (in addition to KEY_READ and KEY_WRITE)
for the samDesired argument of RegOpenKeyEx() or RegCreateKeyEx().
- improved Poco::BasicEvent::notify() performance by avoiding an
unnecessary heap allocation.
- added additional well-known port numbers to Poco::URI: rtsp, sip, sips, xmpp.
- added Poco::Net::MediaType::matchesRange()
- improved invalid socket handling: a Poco::Net::InvalidSocketException is
now thrown instead of an assertion when an operation is attempted
on a closed or otherwise uninitialized socket.
Changes from previous:
1.43
- Segregated into different packages
- Removed code coverage from POD
- Fixed bug rt49537 Basic support for named parameters
- Fixed bug rt70421 Build.PL now contains Test::Exception
1.42
- Fixed bug rt66815 DBD::Mock::Session error clobbered
- Fixed bug rt69460 Info on META.yml is outdated
- Fixed bug rt69055 Spelling mistakes in POD
- RaiseError now works
Changes from previous:
Version 1.33, released February 05th, 2011
----------------------------------------------
[Bug fixes]
* Move test dependencies to (unreleased) Bundle::Test::SQL::Statement
to avoid circular dependencies
Version 1.32, released January 19th, 2011
----------------------------------------------
[Bug fixes]
* Fixed invalid check for escaped single quotes
* Fixed unpermitted modification of array source for table creation
(CREATE TABLE AS IMPORT(?),[[..],[..]])
* Fixing alias used in ORDER BY (RT#61384, thanks jvm)
* Fixing ORDER BY behavior for multiple sort columns
(slower, but guaranteed correct)
[Improvements]
* renamed fetch-method into fetch_row (keep fetch() as alias) and
add a fetch_rows() to fetch all rows at once
* Different accessors for direction of ORDER BY clause query part
and it's boolean equivalent "desc" (0 or 1, respectively)
* Add a lot of Pure-Perl DBD's as build dependency for testing
(skip DBD::AnyData for now, because it seems to be broken - check
for next release)
[Misc]
* Bump requirement of DBI to 1.616
* switch for fully external DBD tests from DBD::XBase to DBD::SQLite
* Document another limitation (lacking implicit creating temp table
during processing a query using the same table with different aliases
twice)
Excerpted new features. For complete list of bug fixes, look into
Changes file in the distfile.
0.08193 2011-07-14 17:00 (UTC)
* New Features / Changes
- Allow schema cloning to mutate attributes
- DBIC now attempts more aggressive de-duplication of where
conditions on resultset chaining
- The Ordered component is now smarter wrt reordering of dirty
objects, and does its job with less storage queries
- Logging via DBIC_TRACE=1=<filename> no longer overwrites the
logfile on every program startup, appending loglines instead
0.08191 2011-05-02 00:45 (UTC) (deleted from CPAN)
* New Features / Changes
- Add quote_names connection option. When set to true automatically
sets quote_char and name_sep appropriate for your RDBMS
- Add retrieve_on_insert column info flag, allowing to retrieve any
column value instead of just autoinc primary keys
- Bring back strict ordering of selectors in complex search chains
(an ill-fated attempt was made in 0.08127 to order intelligently)
- All limit dialects (except for the older Top and FetchFirst) are
now using bind parameters for the limits/offsets, making DBI's
prepare_cached useful across paged resutsets
- Support for savepoints for SQLite
- Support for MS Access databases via DBD::ODBC and DBD::ADO (only
Win32 support currently tested)
- Support for the Firebird RDBMS over the new DBD::Firebird driver
- IC::DateTime support for MSSQL over DBD::ADO
- Both the ::ODBC and ::ADO dispatchers now warn if a rdbms-specific
driver is not found for this connection before falling back to
plain ::Storage::DBI
- ::Storage::DBI::sth was mistakenly marked/documented as public,
privatize and warn on deprecated use
- Massive overhaul of bind values/attributes handling - slightly
changes the output of as_query (should not cause compat issues)
- Support ancient DB2 versions (5.4 and older), with proper limit
dialect
- Support sub-second precision for TIMESTAMPs for Firebird over ODBC
- Support BLOBs and CLOBs in WHERE clauses for Oracle, including LIKE
queries for CLOBs.
0.08190-TRIAL 2011-01-24 15:35 (UTC)
* New Features / Changes
- Support for completely arbitrary SQL::Abstract-based conditions
in all types of relationships
0.08127 2011-01-19 16:40 (UTC)
* New Features / Changes
- Schema/resultsource instances are now crossreferenced via a new
system guaranteeing leak-free mutually assured destruction
- DBIx::Class now warns when the user erroneously supplies
AutoCommit => 0 to connect()
- A warning is also issued before forcing the RaiseError
setting of externally supplied DBI handles
- Switch to a warning when find() is invoked with both a 'key'
argument and a NULL-containing condition to satisfy the named
constraint. Previously (starting with 0.08124) an exception was
thrown
- Switch to a warning when a commit is attempted with an out-of-sync
transaction_depth (someone issued a begin externally to DBIC).
Previously (starting with 0.08124) an exception was thrown
0.08126 2010-12-28 18:10 (UTC)
* Fixes
- Bump forgotten Class::Accessor::Grouped core dependency
- Promote forgotten Hash::Merge optdep to a hard requirement
- Skip t/storage/error.t on smokers with leaking perls
- Fix t/storage/txn.t deadlocks on slower machines
- Do not run on smokers if a trial Package::Stash is found
0.08125 2010-12-27 04:30 (UTC)
* New Features / Changes
- New method ResultSource columns_info method, returning multiple
pairs of column name/info at once
- $rs->search now throws when called in void context, as it makes
no sense (and is nearly always a sign of a bug/misdesign)
- Restore long-lost ability to supply unbalanced select/as pairs
e.g. +select => \'DISTINCT(foo, bar)', +as => ['foo', 'bar']
- +columns now behaves just like columns by not stripping a
fully-qualified 'as' spec (i.e. foo.bar results in $obj->foo->bar)
- Deprecate legacy $rs->search( %condition ) syntax (warn once per
callsite)
- NULL is now supplied unquoted to all debug-objects, in order to
differentiate between a real NULL and the string 'NULL'
- New search() condition operator -value used to pass complex bind
values to DBI: search({ array_col => { -value => [1,2,3] }})
- Add full INSERT...RETURNING support for Oracle
- Deprecate use of -nest in search conditions (warn once per
callsite)
- Deprecate the completely useless DBIx::Class::Serialize::Storable
result component
Changes from previous:
0.55 Fri Sep 16 08:55:53 UTC 2011
- add DBD::SQLite to test_requires (RT#70357)
0.54 Fri Aug 5 11:29:00 EDT 2011
- Changed t/08helper.t to skip if required features are not installed.
- tweaked the Makefile.PL to support these changes
0.53 Wed Aug 3 03:45:07 UTC 2011
- check loader args after connect_info against loader methods and remove
them from connect_info
0.52 Thu Jul 28 22:07:38 UTC 2011
- fix a bug in loader args reading after connect_info (skip structs)
0.51 Wed Jul 27 20:57:47 UTC 2011
- warn when helper finds no tables
- accept loader args after connect_info
0.50 Fri May 20 22:45:07 UTC 2011
- change repository link to the new git repo
- get t/05testapp.t to run on Win32
0.49 Wed May 11 06:03:50 UTC 2011
- make sure storage_type class is loaded before ->isa check in
Replicated trait (RT#65791)
- fix regex stringification test for perl 5.14 (RT#68098)
- update connect_info POD (RT#66010)
0.48 Thu Dec 9 21:08:33 UTC 2010
- fix usage of Try::Tiny in helper
0.47 Wed Dec 8 22:21:06 UTC 2010
- fix loader version check
0.46 Wed Dec 8 13:35:28 UTC 2010
- make use_moose detection more robust
0.45 Wed Dec 8 12:05:58 UTC 2010
- fix bug where non-result files were picked up for Moose check
0.44 Tue Dec 7 03:50:48 UTC 2010
- do not upgrade non-Moose schemas to use_moose=1 (RT#60558)
- added col_collision_map => 'column_%s' as default loader option
(will take effect on release of loader 0.07003)
Changes from previous:
2011-09-07 0.33 H.Merijn Brand
* NAME / DISTNAME in Makefile.PL
2011-09-07 0.32 H.Merijn Brand
* TYPE should be numeric
* Added tests for return count of delete statements in do
* Upped copyright to 2011
* Added tests for return count of update statements (Peter Rabbitson)
* Try to catch (more) usernames on Windows as schema names
* More cross-checks for META data
On request by joerg, prefix PKGNAME with py??- since it installs a python
library; this way all binary packages can coexist.
The separate packages will still conflict due to bin/datapkg though.
* Updated the JDBC version shipped with Berkeley DB to support Oracle Java
Embedded Client.
* Fixed several memory leaks in the Online Backup API.
* Fix a bug in the SQL API when using a blob field with a lot of content and
multiple concurrent connections to the database.
* Update EID_MASTER to be public static final so that it will be exposed in
Java docs.
* Fixed a bug where BFile module crashes when using BFile handle for SQL
expressions interface on 64 bit platforms.
* Fixed a bug where, on systems without FTRUNCATE, db_verify will return an
error for truncated heap databases.
* Let ADO.NET solution building skip SQLite Designer and Linq by default.
* Fixed a bug that could cause BDB to run out of avaliable mutexes when
renaming many databases.
* Fixed a bug where the metadata page in hash databases would not be flushed to
disk.
* Fixed a bug where printlog would fail on in-memory heap databases.
* Fixed a bug that would cause verify to call the wrong compare function if
there are user defined compare functions used and the database has multilevel
off page sorted duplicate trees.
* Fixed a bug where two processes accessing the same table and one of those
drops the table and recreates, the second process can crash.
* Fixed a bug where it was possible to panic a heap database without an error
message being printed.
* Fixed a bug where it would fail to put records with overflow keys into hash
duplicate database.
* Fixed a bug where multiple Replication Manager processes would sometimes not
all conform to replication-group-aware log archiving.
* more...
* Orders of magnitude performance improvement for CREATE INDEX on very large
tables.
* Improved the windows VFS to better defend against interference from
anti-virus software.
* Improved query plan optimization when the DISTINCT keyword is present.
* Allow more system calls to be overridden in the unix VFS - to provide better
support for chromium sandboxes.
* Increase the default size of a lookahead cache line from 100 to 128 bytes.
* Enhancements to the test_quota.c module so that it can track preexisting
files.
* Bug fix: Virtual tables now handle IS NOT NULL constraints correctly.
* Bug fixes: Correctly handle nested correlated subqueries used with indices in
a WHERE clause.
Release 1.13
Fix for incorrect UTF8 handling when retrieving UNICODE data (Jean-Pierre Rupp).
Release 1.12
Bug/Typo/Compatibility fixes with various versions of OpenClient.
Experimental: Handle in/out parameters (Merijn Broeren)
Release 1.11
Remove reliance on PERL_POLLUTE.
Add better support for utf8 (Dave Rolsky)
Release 1.10
Handle 15.x datatypes correctly.
Add LONGMS date format symbol to handle microseconds for bigdatetime.
Add support for CS_LONGCHAR_TYPE (Mark Aufflick)
Document syb_isdead().
Handle 64bit builds with FreeTDS (Ian Grant/Hans Kristian Rosbach)
Add foreign_key_info & statistics_info (Jim Radford)
Change behavior of large fixed precision numeric types (money, bigint)
to be converted to a string internally and returned as such to the caller
(behavior similar to numeric/decimal). This can be reverted to the old behavior
by defining SYB_NATIVE_NUM.
* Make pg_options_to_table return NULL for an option with no value
* Fix memory leak at end of a GiST index scan
* Fix explicit reference to pg_temp schema in "CREATE TEMPORARY TABLE"
* Fix catalog cache invalidation after a "VACUUM FULL" or "CLUSTER"
on a system catalog
* Fix incorrect order of operations during sinval reset processing,
and ensure that TOAST OIDs are preserved in system catalogs
* Fix bugs in indexing of in-doubt HOT-updated tuples
* Fix multiple bugs in GiST index page split processing
* Fix possible buffer overrun in tsvector_concat()
* Fix crash in xml_recv when processing a "standalone" parameter
* Make pg_options_to_table return NULL for an option with no value
* Avoid possibly accessing off the end of memory in "ANALYZE" and in
SJIS-2004 encoding conversion
* Protect pg_stat_reset_shared() against NULL input
* Fix possible failure when a recovery conflict deadlock is detected
within a sub-transaction
* Avoid spurious conflicts while recycling btree index pages during
hot standby
* Shut down WAL receiver if it's still running at end of recovery
* Fix race condition in relcache init file invalidation
* Fix memory leak at end of a GiST index scan
* Fix memory leak when encoding conversion has to be done on incoming
command strings and "LISTEN" is active
* Fix incorrect memory accounting (leading to possible memory bloat)
in tuplestores supporting holdable cursors and plpgsql's RETURN
NEXT command
* Fix trigger WHEN conditions when both BEFORE and AFTER triggers exist
* more...
* Fix bugs in indexing of in-doubt HOT-updated tuples
* Fix multiple bugs in GiST index page split processing
* Fix possible buffer overrun in tsvector_concat()
* Fix crash in xml_recv when processing a "standalone" parameter
* Make pg_options_to_table return NULL for an option with no value
* Avoid possibly accessing off the end of memory in "ANALYZE" and in
SJIS-2004 encoding conversion
* Prevent intermittent hang in interactions of startup process with
bgwriter process
* Fix race condition in relcache init file invalidation
* Fix memory leak at end of a GiST index scan
* Fix incorrect memory accounting (leading to possible memory bloat)
in tuplestores supporting holdable cursors and plpgsql's RETURN
NEXT command
* Fix performance problem when constructing a large, lossy bitmap
* Fix join selectivity estimation for unique columns
* Fix nested PlaceHolderVar expressions that appear only in
sub-select target lists
* Allow nested EXISTS queries to be optimized properly
* Fix array- and path-creating functions to ensure padding bytes are zeroes
* Fix "EXPLAIN" to handle gating Result nodes within inner-indexscan subplans
* Work around gcc 4.6.0 bug that breaks WAL replay
* Fix dump bug for VALUES in a view
* Disallow SELECT FOR UPDATE/SHARE on sequences
This operation doesn't work as expected and can lead to failures.
* Fix "VACUUM" so that it always updates pg_class.reltuples/relpages
* more...
* Fix bugs in indexing of in-doubt HOT-updated tuples
* Fix multiple bugs in GiST index page split processing
* Fix possible buffer overrun in tsvector_concat()
* Fix crash in xml_recv when processing a "standalone" parameter
* Avoid possibly accessing off the end of memory in "ANALYZE" and in
SJIS-2004 encoding conversion
* Fix race condition in relcache init file invalidation
* Fix memory leak at end of a GiST index scan
* Fix performance problem when constructing a large, lossy bitmap
* Fix array- and path-creating functions to ensure padding bytes are zeroes
* Work around gcc 4.6.0 bug that breaks WAL replay
* Fix dump bug for VALUES in a view
* Disallow SELECT FOR UPDATE/SHARE on sequences
This operation doesn't work as expected and can lead to failures.
* Defend against integer overflow when computing size of a hash table
* Fix cases where "CLUSTER" might attempt to access already-removed
TOAST data
* Fix portability bugs in use of credentials control messages for
"peer" authentication
* Fix SSPI login when multiple roundtrips are required
* Fix typo in pg_srand48 seed initialization
* Avoid integer overflow when the sum of LIMIT and OFFSET values
exceeds 2^63
* Add overflow checks to int4 and int8 versions of generate_series()
* Fix trailing-zero removal in to_char()
* Fix pg_size_pretty() to avoid overflow for inputs close to 2^63
* In pg_ctl, support silent mode for service registrations on Windows
* Fix psql's counting of script file line numbers during COPY from a
different file
* more...
* The default thread-handling model in MySQL Server executes statements using
one thread per client connection.
* Commercial distributions of MySQL now include two plugins that enable MySQL
Server to use external authentication methods to authenticate MySQL users
* Important Change: Replication: The RESET SLAVE statement has been extended
with an ALL keyword.
* A new utility, mysql_plugin, enables MySQL administrators to manage which
plugins a MySQL server loads.
* Bugs fixed.
years, removing roadblocks to deploying new or ported applications on
PostgreSQL. These include:
* Synchronous Replication: enable high-availability with consistency across
multiple servers
* Per-Column Collations: support linguistically-correct sorting per database,
table or column.
* Unlogged Tables: greatly improves performance for ephemeral data
Our community of contributors innovates with cutting-edge features. Version 9.1
includes several which are new to the database industry, such as:
* K-Nearest-Neighbor Indexing: index on "distance" for faster location and text
search queries
* Serializable Snapshot Isolation: keeps concurrent transactions consistent
without blocking, using "true serializability"
* Writeable Common Table Expressions: execute complex multi-stage data updates
in a single query
* Security-Enhanced Postgres: deploy military-grade security and Mandatory
Access Control
- bug #3375325 [interface] Page list in navigation frame looks odd
- bug #3313235 [interface] Error div misplaced
- bug #3374802 [interface] Comment on a column breaks inline editing
- patch #3383711 [display] Order by a column in a view doesn't work in
some cases
- bug #3386434 [interface] Add missing space to server status
- [core] Remove library PHPExcel, due to license issues
- [export] Remove native Excel export modules (xls and xlsx formats)
- [import] Remove native Excel import modules (xls and xlsx formats)
- bug #3392920 [edit] BLOB emptied after editing another column
- [security] Fixed XSS in Inline Edit on save action, see PMASA-2011-14
- [security] Fixed XSS with db/table/column names, see PMASA-2011-14
The PostgreSQL BuildFarm is a distributed build system designed to
detect build failures of the source code of PostgreSQL on a large
collection of platforms and configurations. This is the client
software that enables to perform automated test builds and checks.
v0.12.1
- Fix issue with simple_uuid dependency.
- Fix issue with get_range & get_range_batch keeping all results when a block is given. Resolves Issue# 112.
v0.12.0 Changed thrift_client dependency to 0.7.0
=== 3.27.0 (2011-09-01)
* Add support for native prepared statements to the tinytds adapter
(jeremyevans)
* Add support for native prepared statements and stored procedures to the
mysql2 adapter (jeremyevans)
* Support dropping primary key, foreign key, and unique constraints on MySQL
via the drop_constraint :type option (jeremyevans)
* Add Sequel::SQLTime class for handling SQL time columns (jeremyevans)
* Typecast DateTime objects to Date for date columns (jeremyevans)
* When typecasting Date objects to timestamps, make the resulting objects
always have no fractional date components (jeremyevans)
* Add Model.dataset_module for simplifying many def_dataset_method calls
(jeremyevans)
* Make prepared_statements_safe plugin work on classes without datasets
(jeremyevans)
* Make Dataset#hash work correctly when referencing SQL::Expression instances
(jeremyevans)
* Handle allowed mass assignment methods correctly when including modules in
classes or extending instances with modules (jeremyevans)
* Fix Model#hash to work correctly with composite primary keys and with no
primary key (jeremyevans)
* Model#exists? now returns false without issuing a query for new model
objects (jeremyevans)
pgbouncer is a lightweight connection pooler for PostgreSQL that provides
the following features:
* Several levels of brutality when rotating connections.
* Low memory requirements.
* It is not tied to one backend server, the destination databases
can reside on different hosts.
* Supports online reconfiguration for most of the settings.
* Supports online restart/upgrade.
- bug #3323060 [parser] SQL parser breaks AJAX requests if query has
unclosed quotes
- bug #3323101 [parser] Invalid escape sequence in SQL parser
- bug #3348995 [config] $cfg['Export']['asfile'] set to false does not
select asText option
- bug #3340151 [export] Working SQL query exports error page
- bug #3353649 [interface] "Create an index on X columns" form not validated
- bug #3350790 [interface] JS error in Table->Structure->Index->Edit
- bug #3353811 [interface] Info message has "error" class
- bug #3357837 [interface] TABbing through a NULL field in the inline mode
resets NULL
- remove version number in /setup
- bug #3367993 [usability] Missing "Generate Password" button
- bug #3363221 [display] Missing Server Parameter on inline sql query
- bug #3367986 [navi] Drop field -> lost active table
- remove misleading comment on the "Rename database" interface
- bug #3374374 [interface] Fix footnote for inexact count while browsing
- bug #3372807 [interface] Fix security warning link in setup
- bug #3374347 [display] Backquotes in normal text on import page
- bug #3358750 [core] With Suhosin, urls are too long in edit links
- [security] Missing sanitization on the table, column and index names leads
to XSS vulnerabilities, see PMASA-2011-13
* Documentation in .CHM and .HLP format has been removed from the distribution.
* For some procedure and parameter combinations SQLProcedureColumns() did not
work correctly. For example, it could not return records for an existing
procedure with correct parameters supplied.
* Further, it returned incorrect data for column 7, TYPE_NAME. For example, it
returned VARCHAR(20) instead of VARCHAR.
* The MySQL Connector/ODBC MSI installer did not set the InstallLocation value
in the Microsoft Windows registry.
* In bulk upload mode, SQLExecute would return SQL_SUCCESS, even when the
uploaded data contained errors, such as primary key duplication, and foreign
key violation.
* SQLDescribeCol and SQLColAttribute could not be called before SQLExecute, if
the query was parameterized and not all parameters were bound.
* Note, MSDN states that “For performance reasons, an application should not
call SQLColAttribute/SQLDescribeCol before executing a statement.” However,
it should still be possible to do so if performance reasons are not paramount.
* When SQLNumResultCols() was called between SQLPrepare() and SQLExecute() the
driver ran SET @@sql_select_limit=1, which limited the resultset to just one
row.
* After installing MySQL Connector/ODBC, the system DSN created could not be
configured or deleted. An error dialog was displayed, showing the error
message “Invalid attribute string”.
* In this case the problem was due to the fact that the driver could not parse
the NULL-separated connection string.
* When used after a call to SQLTables(), SQLRowCount() did not return the
correct value.
* Full Kerberos and SSPI support for passwordless login to
Microsoft SQL Server from Unix and Windows clients.
Includes Kerberos delegation option.
* Full support for DB-Library under Win32/64 via NMAKE.EXE.
* Built-in support for UTF-8.
* Support for wide characters in ODBC.
* Support for varchar(max) and varbinary(max).
* Better thread-safety in ODBC.
* Distinguish between connect and login errors.
* Bulk-copy functions in CT-Library.
Rails 3.0.10
* Magic encoding comment added to schema.rb files
* schema.rb is written as UTF-8 by default.
* Ensuring an established connection when running `rake db:schema:dump`
* Association conditions will not clobber join conditions.
* Destroying a record will destroy the HABTM record before destroying
itself. GH #402.
* Make `ActiveRecord::Batches#find_each` to not return `self`.
* Update `table_exists?` in PG to to always use current search_path or
schema if explictly set.
2.3.14:
Security fix:
The quote_table_name method in the ActiveRecord adapaters for Ruby on
Rails were initially created solely for the purpose of escaping
reserved words encountered in table names. However over time 3rd
party libraries, and rails itself, grew to rely on those functions as
a way to sanitize potentially malicious user input. As a result these
functions need to be hardened to manage malicious input rather than
assuming they're being passed benign values generated by rails itself.
* Bugfix: Improperly used preprocessor directive caused compilation failure
when using gcc 4.4.4 or newer.
Changes 1.9:
* Use of mmap
* Changes in compatibility mode
* Locking is disabled.
* Do not link pag to dir.
* gdbm_setopt
* The testgdbm program is installed
* A testsuite is provided.
* Improved documentation.
1.50 Tue 7 Jun 2011
- Removed normalize as a supported parameter, normalizing columns turns
out not to work in practice. However, we always normalize tables to
get the class name for the table as that seems to result in class
names that make much more sense.
1.49 Wed 1 Jun 2011
- Adding normalize support to turn columnName into column_name
1.48 Fri 21 Jan 2011
- Initial support for shim => 1 to simplify customisation (ADAMK)
1.47 Wed 8 Dec 2010
- Adding readonly support for views (ADAMK)
1.46 Tue 30 Nov 2010
- Bumped File::Path dependency to 2.08 to prevent test failures
from the one shipped with Perl 5.8.9 (AZAWAWI)
- Added experimental base class ->update support (ADAMK)
- Added the qname attributes to the generator structs to simplify
and improve readability of SQL fragment strings (ADAMK)
2.0.3 Fri Jan 14 17:50:12 EST 2011
- RT#62296: fix crash when dealing with record bigger than
99999 bytes (Alex Arnaud)
- test cases for MARC::Field->subfields()
- RT#61198: let subfields return an empty array on control
fields (Colin Campbell)
2.0.2 Tue May 4 13:04:07 EDT 2010
- RT#57180: put back and expanded copyright statement in README
at Debian request
- set license element in META.yml
2.0.1 Sat May 1 15:59:54 EDT 2010
[ENHANCEMENTS]
- improve support for subclassing MARC::Field (Dan Wells)
- RT#55993: MARC::Record->insert_fields_after can now insert
after last field in record (Frédéric Demians)
- added methods to MARC::Field to allow a (class-level) list of
fields that should be considered control fields in addition
to 001-009. Includes test t/extra_controlfields.t, and
supports alphabetic characters in the tag labels. The new
methods are
allow_controlfield_tags
disallow_controlfield_tags
is_controlfield_tag
(Bill Dueber)
- added MARC::Record::delete_fields() and t/delete-field.t
(Ed Summers)
- documentation improvements (Mike Rylander and Dan Scott)
- baked in minimum Perl version required: 5.8.2
=== 3.26.0 (2011-08-01)
* Fix bug in default connection pool if a disconnect error is raised and the
disconnection_proc also raises an error (jeremyevans)
* Disallow eager loading via eager of many_*_many associations with
:eager_graph option (jeremyevans)
* Major speedup in dataset creation (jeremyevans)
* Replace internal implementation of eager_graph with much faster version
(jeremyevans)
* Don't treat strings with leading zeros as octal format in the default
typecasting (jeremyevans)
* Fix literalization of Date, Time, and DateTime values on Microsoft Access
(jeremyevans)
* Fix handling of nil values with the pure-Java version of nokogiri in the
xml_serializer plugin (jeremyevans)
* Make identity_map plugin work with standard eager loading of many_to_many
and many_through_many associations (jeremyevans)
* Make create_table! only attempt to drop the table if it already exists
(jeremyevans)
* Remove custom table_exists? implementations in the oracle and postgres
adapters (jeremyevans)
* Handle another type of disconnection in the postgres adapter (jeremyevans)
* Handle disconnections in the ado adapter and do postgres subadapter
(jeremyevans)
* Recognize disconnections when issuing BEGIN/ROLLBACK/COMMIT statements
(jeremyevans) (#368)
=== 3.25.0 (2011-07-01)
* Work with tiny_tds-0.4.5 in the tinytds adapter, older versions are no
longer supported (jeremyevans)
* Make association_pks plugin typecast provided values to integer if the
primary key column type is integer (jeremyevans)
* Model.set_dataset now accepts Identifier, QualifiedIdentifier, and
AliasedExpression arguments (jeremyevans)
* Fix handling of nil values in bound variables and prepared statement and
stored procedure arguments in the jdbc adapter (jeremyevans, wei)
* Allow treating Datasets as Expressions, e.g. DB[:table1].select(:column1)
> DB[:table2].select(:column2) (jeremyevans)
* No longer use CASCADE by default when dropping tables on PostgreSQL
(jeremyevans)
* Support :cascade option to #drop_table, #drop_view, #drop_column, and
#drop_constraint for using CASCADE (jeremyevans)
* If validation error messages are LiteralStrings, don't add the column name
to them in Errors#full_messages (jeremyevans)
* Fix bug loading plugins on 1.9 where ::ClassMethods, ::InstanceMethods, or
::DatasetMethods is defined (jeremyevans)
* Add Dataset#exclude_where and Dataset#exclude_having methods, so you can
force use of having or where clause (jeremyevans)
* Allow Dataset#select_all to take table name arguments and select all
columns from each given table (jeremyevans)
* Add Dataset#select_group method, for selecting and grouping on the same
columns (jeremyevans)
* Allow Dataset#group and Dataset#group_and_count to accept a virtual row
block (jeremyevans)
v0.11.4
- Fix get_range to invoke blocks
- Fix current distribution urls in Rakfile. Resolves Issue# 97.
v0.11.3
- Fix login after reconnect
v0.11.2
- Update thrift_client gem to deal with failover bug.
D. J. Bernstein's constant database library adapted as a python
extension module. Like GDBM and kin, cdb files map keys to values.
The file format boasts wickedly fast lookups and atomic updates.
* Extra checks of search arguments for possible SQL injection attacks
* Remove excess parentheses in debug SQL
* Fix parsing of foo.* in SQLA::Tree
* Fix bindtype fail when using -between with arrayrefref literals
* Add handling for NULL for -in
* The -nest operator has entered semi-deprecated status and has been
undocumented. Please do not use it in new code
* Production release, no changes from 1.32_04
Changes 1.32_04:
* Updated to SQLite 3.7.6.3
* Made util/getsqlite.pl state that it needs fixing to work for
SQLite 3.7.5+ when it dies at the last step, and outline what the
user needs to do manually instead, until getsqlite is fixed
Changes 1.32_03:
* Updated to SQLite 3.7.6.2
* Resolved 67843 for DBD-SQLite: savepoint rollback alters AC state
Changes 1.32_02:
* Updated to SQLite 3.7.5
* Resolved 65267 for DBD-SQLite: Add RTree support option;
skip fts3/metadata tests if those features are disabled
* Resolved 65267: Add RTree support option
* Added sqlite_see_if_its_a_number database handle attribute
to deal with issues caused by (quoted) bind values against
numbers such as return values from a function etc.
* Recently introduced test sql_type_cast.t cannot work with DBI less
than 1.611.
* Minor change to Makefile.PL to avoid use of unitialised warning on
$ENV{LD_LIBRARY_PATH} in warning when it is not set.
Changes 1.30_7:
* Some time ago (I don't know when) a few internal errors generated by
DBD::ODBC got ignored. There are about 5 of them but I seriously
doubt anyone would hit any other than the data truncated error
(which is reported by the ODBC driver anyway) and "no select
statement currently executing". You can see rt_68720.t in the t
directory for an example of the latter.
* An extra argument has been added to the sub associated with
odbc_err_handler. The arguments passed to the odbc_err_handler are
now state (string), error (string), native error code (number) and
the status returned from the last ODBC API. The status will be
SQL_ERROR (-1) for errors or SQL_SUCCESS_WITH_INFO (1) for
informational messages.
* Changed incorrect verion number
Changes 1.40:
* Fixed bug rt44591 second preapre giving an error
* Fixed bug rt57981 warnings during clone
* Fixed bug rt63191 Synopsis errors
* Fixed bug rt66813 Google's group link in the POD
* Fixed spurious dbi_profile lines written to the log when
profiling is enabled and a trace flag, like SQL, is used.
* Fixed to recognize SQL::Statement errors even if instantiated
with RaiseError=0
* Fixed RT-61513 by catching attribute assignment to tied table access
interface
* Fixing some misbehavior of DBD::File when running within the Gofer server.
* Fixed compiler warnings RT-62640
* Optimized connect() to remove redundant FETCH of \%attrib values.
* Improved initialization phases in DBI::DBD::SqlEngine
* Added DBD::Gofer::Transport::corostream. An experimental proof-of-concept
transport that enables asynchronous database calls with few code changes.
It enables asynchronous use of DBI frameworks like DBIx::Class.
* Added additional notes on DBDs which avoid creating a statement in
the do() method and the effects on error handlers
* Adding new attribute "sql_dialect" to DBI::DBD::SqlEngine to allow
users control used SQL dialect (ANSI, CSV or AnyData), defaults to CSV
* Add documentation for DBI::DBD::SqlEngine attributes
* Documented dbd_st_execute return
* Fixed typo in InactiveDestroy
This is bug fix release. Since whole changes are too many to write here,
please refer http://dev.mysql.com/doc/refman/5.1/en/news-5-1-58.html.
Especially, some important one for related to us.
* On FreeBSD 64-built builds of the embedded server, exceptions were not
prevented from propagating into the embedded application. (Bug #38965,
Bug #11749418)
This is major feature update which requires at least PHP 5.2.0 and
MySQL 5.0. It features a new user interface and uses MySQL for
authentication and access control.
The update was necessary as "phpmyadmin" 2.11 is no longer supported:
http://sourceforge.net/news/?group_id=23067&id=301992
Lib/
* Mostly corrected/updated __doc__ strings
Doc/
* Corrected rst files
* Added missing modules, functions, classes, methods, parameters etc.
at least as auto-generated doc
Changes 2.4.2:
Logging:
* pprint.pformat() is now used when writing method/function
arguments to the trace log
ldap.schema.subentry:
* SubSchema.__init__() now has new key-word argument check_uniqueness
which enables checking whether OIDs are unique in the subschema subentry
* Code-cleaning: consequent use of method SubSchema.getoid() instead of
accessing SubSchema.name2oid directly.
* SubSchema.getoid() and SubSchema.getoid() now have key-word argument
raise_keyerror=0 and raise KeyError with appropriate description.
* The undocumented --all option for perror is deprecated and will be removed in
MySQL 5.6.
Bugs Fixed:
* InnoDB Storage Engine: A failed CREATE INDEX operation for an InnoDB table
could result in some memory being allocated and not freed. This memory leak
could affect tables created with the ROW_FORMAT=DYNAMIC and
ROW_FORMAT=COMPRESSED settings.
* Partitioning: Auto-increment columns of partitioned tables were checked even
when they were not being written to. In debug builds, this could lead to a
crash of the server.
* Partitioning: The UNIX_TIMESTAMP() function was not treated as a monotonic
function for purposes of partition pruning.
* Replication: If a LOAD DATA INFILE statement—replicated using statement-based
replication—featured a SET clause, the name-value pairs were regenerated
using a method (Item::print()) intended primarily for generating output for
statements such as EXPLAIN EXTENDED, and which cannot be relied on to return
valid SQL. This could in certain cases lead to a crash on the slave.
* To fix this problem, we now name each value in its original, user-supplied
form, and use that to create LOAD DATA INFILE statements for statement-based
replication.
* Previously, an inappropriate error message was produced if a multiple-table
update for an InnoDB table with a clustered primary key would update a table
through multiple aliases, and perform an update that may physically move the
row in at least one of these aliases. Now the error message is: Primary
key/partition key update is not allowed since the table is updated both as
'tbl_name1' and 'tbl_name2'
* ALTER TABLE {MODIFY|CHANGE} ... FIRST did nothing except rename columns if
the old and new versions of the table had exactly the same structure with
respect to column data types. As a result, the mapping of column name to
column data was incorrect. The same thing happened for ALTER TABLE DROP
COLUMN, ADD COLUMN statements intended to produce a new version of table with
exactly the same structure as the old version.
* Incorrect handling of metadata locking for FLUSH TABLES WITH READ LOCK for
statements requiring prelocking caused two problems:
* Execution of any data-changing statement that required prelocking (that is,
involved a stored function or trigger) as part of transaction slowed down
somewhat all subsequent statements in the transaction. Performance in a
transaction that periodically involved such statements gradually degraded
over time.
Also fixed INSTALL_PROGRAM patch to not break install-sh.
Changes since 1.0.1
============================================================================
HTTP Interface:
* Native SSL support.
* Added support for HTTP range requests for attachments.
* Added built-in filters for '_changes': '_doc_ids' and '_design'.
* Added configuration option for TCP_NODELAY aka "Nagle".
* Allow POSTing arguments to '_changes'.
* Allow 'keys' parameter for GET requests to views.
* Allow wildcards in vhosts definitions.
* More granular ETag support for views.
* More flexible URL rewriter.
* Added support for recognizing "Q values" and media parameters in
HTTP Accept headers.
* Validate doc ids that come from a PUT to a URL.
Externals:
* Added OS Process module to manage daemons outside of CouchDB.
* Added HTTP Proxy handler for more scalable externals.
Replicator:
* Added '_replicator' database to manage replications.
* Fixed issues when an endpoint is a remote database accessible via SSL.
* Added support for continuous by-doc-IDs replication.
* Fix issue where revision info was omitted when replicating attachments.
* Integrity of attachment replication is now verified by MD5.
Storage System:
* Multiple micro-optimizations when reading data.
View Server:
* Added CommonJS support to map functions.
* Added 'stale=update_after' query option that triggers a view update after
returning a 'stale=ok' response.
* Warn about empty result caused by 'startkey' and 'endkey' limiting.
* Built-in reduce function '_sum' now accepts lists of integers as input.
* Added view query aliases start_key, end_key, start_key_doc_id and
end_key_doc_id.
Futon:
* Added a "change password"-feature to Futon.
URL Rewriter & Vhosts:
* Fix for variable substituion
* Support for Berkeley DB 5.2.
* Support for the newly available replication manager events:
DB_EVENT_REP_SITE_ADDED, DB_EVENT_REP_SITE_REMOVED,
DB_EVENT_REP_LOCAL_SITE_REMOVED, DB_EVENT_REP_CONNECT_BROKEN,
DB_EVENT_REP_CONNECT_ESTD, DB_EVENT_REP_CONNECT_TRY_FAILED,
DB_EVENT_REP_INIT_DONE.
* New Object: "DB_SITE". Support for all its methods.
* Parameters for "DB_SITE->set_config()": DB_BOOTSTRAP_HELPER,
DB_GROUP_CREATOR, DB_LEGACY, DB_LOCAL_SITE, DB_REPMGR_PEER.
* Support for some stuff in the new "Dynamic Environment Configuration":
DB_MEM_LOCK, DB_MEM_LOCKOBJECT, DB_MEM_LOCKER, DB_MEM_LOGID,
DB_MEM_TRANSACTION, DB_MEM_THREAD.
* Add "bytes" to "DBEnv_memp_stat()".