0.68 2011-04-14
- Security:
* Prevent SQL injection in column names, operators, order and group by
(Alex Vandiver)
* Fix distinct_query to catch injection and correctly rewrite to
function => '' (Alex Vandiver)
* Prevent SQL injection via IS
- Fixes:
* There is no need to check $args{column} around our LIKE adjustments
(Alex Vandiver)
* Slightly unify nigh-identical codepaths between Pg and Oracle
(Alex Vandiver)
0.67 2011-02-28
- Features:
* Make ->distinct_column_values use ->simple_query, thus going through our
SQL logging infrastructure (Alex Vandiver)
- Fixes:
* Set raw_values in load_by_hash so the __raw_value method works when the
record is loaded by a collection (Thomas Sibley)
- Tests:
* Author tests for no tabs (Shawn M Moore)
0.66 2011-02-14
- Features:
* Provide a sane way to wrap a function around an aliased column in order_by
* Pass old_value to triggers on column update
- Fixes:
* Respect the 'by' attribute for refers_to columns in create and set
* Use the right FK when using a record object in load_by_cols or
limit [rt.cpan.org #64779]
* Don't encode fields when attempting to limit with IS
* Fix since/till by refactoring columns to use an updated all_columns
- Installation:
* Only run these URI filter tests if we have URI [rt.cpan.org #65047]
0.64 Wed Dec 8 15:21:17 EST 2010
- Installation:
* Minor distribution fixes
0.63 Wed Dec 8 15:14:17 EST 2010
- Features:
* distinct_column_values method, docs and tests
- Fixes:
* Warn about load(arg => value)
* Include column_name in the value passed to reader warning
* It is a rare but possible case that 0 is a valid id
* Ensure encode_base64 doesn't choke on utf8
0.62 Thu May 20 13:58:53 EST 2010
- Features:
* Computed columns let you have the Jifty-DBI scaffolding but without
touching the database
* Column->is_boolean
- Fixes:
* Don't attempt to store undef values in memcached
* Avoid undef warnings
0.61 Mon Jan 4 13:04:20 EST 2010
- Installation:
* Minor distribution fixes
0.60 Mon Jan 4 13:02:17 EST 2010
- Features:
* Allow passing of extra parameters to canonicalizers
* Add an attribute which controls placeholder use for load_by_cols
- Fixes:
* Don't add LOWER() on <= or >= operators, only = and !=
* Better case sensitivity tests
* Expose quote_value() on Jifty::DBI::Handle
* When generating COUT, don't add a DISTINCT unless needed
* Fix t/12prefetch.t's assumptions on row ordering
* 5.1.1 install fails if the bsddb in the standard library is not installed,
under Python 2.7.
* Since 5.0.0, we can't find 4.x libraries unless we specify a
"--berkeley-db=/path/to/bsddb" option.
* Support "DB_ENV->get_open_flags()", "DB_ENV->set_intermediate_dir_mode()",
"DB_ENV->get_intermediate_dir_mode()".
* Support "DB->get_dbname()", "DB->get_open_flags()".
* Support "db_full_version()".
* Document "version()". This top-level function has been supported forever.
* Bugfix when calling "DB->get_size()" on a zero length record.
* 'assertEquals()' is deprecated in Python 3.2.
* 'assert_()' is deprecated in Python 3.2.
* Solved 'ResourceWarning' under Python 3.2.
* Fix memory leak when binding arrays
* Fix memory leak with ParamValues
* New cancel() method per DBI spec
* Fix memory leak in handle_old_async (missing PQclear)
* Fix memory leak in pg_db_cancel (missing PQclear)
* Mark pg_getcopydata strings as UTF8 as needed
* Function dequote_bytea returning void should not try to return something
* Fix the number of tests to skip in t/01connect.t when the $DBI_DSN
environment variable lacks a database specification
* Fix algorithm for skipping tests in t/06bytea.t when running on a version
of PostgreSQL lower than 9.0
* Small tweaks to get tests working when compiled against Postgres 7.4
* Fix failing test when run as non-superuser
popular database language in the world. MySQL is a client-server implementation
that consists of a server daemon `mysqld' and many different client
programs/libraries.
The main goals of MySQL are speed and robustness.
The base upon which MySQL is built is a set of routines that have been used in
a highly demanding production environment for many years. While MySQL is still
in development it already offers a rich and highly useful function set.
The official way to pronounce 'MySQL' is 'My Ess Que Ell' (Not MY-SEQUEL).
This package contains the MySQL client programs and libraries.
popular database language in the world. MySQL is a client-server implementation
that consists of a server daemon `mysqld' and many different client
programs/libraries.
The main goals of MySQL are speed and robustness.
The base upon which MySQL is built is a set of routines that have been used in
a highly demanding production environment for many years. While MySQL is still
in development it already offers a rich and highly useful function set.
The official way to pronounce 'MySQL' is 'My Ess Que Ell' (Not MY-SEQUEL).
This package contains the MySQL server programs and libraries including
embedded server (by PKG_OPTION).
* fix build issues on HP-UX and Itanium
* update time zone files for recent time zone changes
* change SQLSTATE for Hot Standby warnings
* prevent bgwriter hang during recovery
* prevent recursive composite type creation
* disallow dropping tables whose triggers are still pending
* allow use of "replication" as a user name
* prevent a crash during GEQO planning
* improve join plans for tables with missing statistics
* fix error with SELECT FOR UPDATE in a subselect
* close PL/python array slice memory leak
* allow SSL connections for users with no home directory
* fix build issues on HP-UX and Itanium
* update time zone files for recent time zone changes
* change SQLSTATE for Hot Standby warnings
* prevent bgwriter hang during recovery
* prevent recursive composite type creation
* disallow dropping tables whose triggers are still pending
* allow use of "replication" as a user name
* prevent a crash during GEQO planning
* improve join plans for tables with missing statistics
* fix error with SELECT FOR UPDATE in a subselect
* close PL/python array slice memory leak
* allow SSL connections for users with no home directory
* fix build issues on HP-UX and Itanium
* update time zone files for recent time zone changes
* change SQLSTATE for Hot Standby warnings
* prevent bgwriter hang during recovery
* prevent recursive composite type creation
* disallow dropping tables whose triggers are still pending
* allow use of "replication" as a user name
* prevent a crash during GEQO planning
* improve join plans for tables with missing statistics
* fix error with SELECT FOR UPDATE in a subselect
* close PL/python array slice memory leak
* allow SSL connections for users with no home directory
* allow building PostgreSQL 9.0 with 64-bit MinGW
* New features and changes:
- Added support for Python 3.1 and 3.2. The conversion has also
brought several improvements:
- Added 'b' and 't' mode to large objects: write can deal with both
bytes strings and unicode; read can return either bytes strings
or decoded unicode.
- COPY sends Unicode data to files implementing 'io.TextIOBase'.
- Improved PostgreSQL-Python encodings mapping.
- Added a few missing encodings: EUC_CN, EUC_JIS_2004, ISO885910,
ISO885916, LATIN10, SHIFT_JIS_2004.
- Dropped repeated dictionary lookups with unicode query/parameters.
- Improvements to the named cusors:
- More efficient iteration on named cursors, fetching 'itersize'
records at time from the backend.
- The named cursors name can be an invalid identifier.
- Improvements in data handling:
- Added 'register_composite()' function to cast PostgreSQL
composite types into Python tuples/namedtuples.
- Adapt types 'bytearray' (from Python 2.6), 'memoryview' (from
Python 2.7) and other objects implementing the "Revised Buffer
Protocol" to 'bytea' data type.
- The 'hstore' adapter can work even when the data type is not
installed in the 'public' namespace.
- Raise a clean exception instead of returning bad data when
receiving bytea in 'hex' format and the client libpq can't parse
them.
- Empty lists correctly roundtrip Python -> PostgreSQL -> Python.
- Other changes:
- 'cursor.description' is provided as named tuples if available.
- The build script refuses to guess values if 'pg_config' is not
found.
- Connections and cursors are weakly referenceable.
* Bug fixes
* Fix a bug in 3.7.6 that only appears if the SQLITE_FCNTL_SIZE_HINT file
control is used with a build of SQLite that makes use of the
HAVE_POSIX_FALLOCATE compile-time option and which has
SQLITE_ENABLE_LOCKING_MODE turned off.
* Added the sqlite3_wal_checkpoint_v2() interface and enhanced the
wal_checkpoint pragma to support blocking checkpoints.
* Improvements to the query planner so that it makes better estimates of plan
costs and hence does a better job of choosing the right plan, especially when
SQLITE_ENABLE_STAT2 is used.
* Fix a bug which prevented deferred foreign key constraints from being
enforced when sqlite3_finalize() was not called by one statement with a
failed foreign key constraint prior to another statement with foreign key
constraints running.
* Integer arithmetic operations that would have resulted in overflow are now
performed using floating-point instead.
* Increased the version number on the VFS object to 3 and added new methods
xSetSysCall, xGetSysCall, and xNextSysCall used for doing full-coverage
testing.
* Increase the maximum value of SQLITE_MAX_ATTACHED from 30 to 62 (though the
default value remains at 10).
* Enhancements to FTS4:
- Added the fts4aux table
- Added support for compressed FTS4 content
* Enhance the ANALYZE command to support the name of an index as its argument,
in order to analyze just that one index.
* Added the "unix-excl" built-in VFS on unix and unix-like platforms.
*Rails 3.0.6 (April 5, 2011)
* Un-deprecate reorder method [Sebastian Martinez]
* Extensions are applied when calling +except+ or +only+ on relations.
Thanks to Iain Hecker.
* Schemas set in set_table_name are respected by the mysql adapter. LH #5322
* Fixed a bug when empty? was called on a grouped Relation that wasn't loaded.
LH #5829
* Reapply extensions when using except and only. Thanks Iain Hecker.
* Binary data is escaped when being inserted to SQLite3 Databases. Thanks
Naruse!
Patch provided by Wen Heping in PR 43628.
Changes:
* Fix handling failover when health_check was disabled. (Yoshiyuki)
- The bug was introduced in 3.4.
* Fix deadlock while processing Parse message. (Yoshiyuki)
* Add new "replicate_select" directive, being the default value to
be false. (Yoshiyuki)
- If it is true, SELECT query is replicated. This behavior is
same as V3.2 or earlier.
* Improve signal handling. (Yoshiyuki)
- Occasionaly, zombie processes were remained. Or processes were
unstable.
* Fix hang up when SELECT was error inside a transaction
block. The bug was introduced in V3.3. (Yoshiyuki)
* Fix PREPARE/EXECUTE handling in master slave mode. (Yoshiyuki)
* Fix "kind mismatch error" when deadlock error
* Fix hang up and SEGV in extended query protocol when a warning
SQL like "SELECT '\'';" executed. (Yoshiyuki)
* Fix memory leak when connection cache was full. (Yoshiyuki)
* Improve replication. SELECT nextval() and SELECT setval() are
now replicated. (Yoshiyuki)
* Change SELECT query is only sent to the master node. (Yoshiyuki)
- Use /*REPLICATION*/ comment to repliate a SELECT query.
* Fix unexpected failover error due to receiving an interrupt
signal while connecting to the backend. (Yoshiyuki)
* Fix "ps" output to follow PostgreSQL's output. (Taiki)
* Change the default value for enable_pool_hba to true. (Taiki)
* Add "pgpool.pam" file, for PAM configuration file, to be
installed under "$PREFIX/share/". (Taiki)
* Support HBA authentication(Taiki)
* Support log_connections(Taiki)
* Support log_hostname(Tatsuo)
* Show pgpool status in ps command(Tatsuo)
* Fix bug with prepared query(Yoshiyuki)
* Detach secondary server when "kind mismatch error" is detected(Tatsuo)
* Re-open socket if it was closed by backend while reusing
connection(Yoshiyuki)
* Allow 0 weight(Tatsuo)
* Return correct error messaes when pg_hba.conf auth fails. Patch
contributed by Kenji Kikuchi
* Fix kind mismatch errors with COPY FROM STDIN(Yoshiyuki)
* Allow load balancing with extended protocol(Yoshiyuki)
* Fix LISTEN/NOTIFY bug in master/slave mode reported by Michael
Ulitskiy (Tatsuo)
* Improve documentation. patches contributed by Mark Stosberg
* Fix "kind is 0!" error in Execute(). Reads messages until
receiving CommandComplete, EmptyQuery, ErrorResponse or
PortalSuspend in Execute() (Yoshiyuki)
* Add log_statement option. patches contributed by Thomas E
Lackey, modifications and documents by Tatsuo
* In SimpleForwardToFrontend() do not send SYNC and wait for ready for
query when PANIC or FATAL error occurs. In this case the backend
closes the communication channel immediately which will cause unwanted
failover/degeneration by, for example, trying to connect to
invalid database (Tatsuo)
* Fix dealock problem in extended modd by calling synchronize() in
Execute if replication_strict is enabled (Yoshiyuki)
* Fix segfault problem in race conditions among
connection_life_time, child_life_time and child_max_connections
* pgpool does not exit even if pgpool.conf contents is wrong(Tatsuo)
* Fix buffer overrun bug with long health_check_user name(Taiki)
* Fix occasional segfault with replication and load balance
enabled(bug id #1000548)(Tatsuo)
* Fix pool_send_error_message to send properly NULL terminated
string(Yoshiyuki)
* Fix kind mismatch error in SimpleFowardFrontend(Yoshiyuki)
* Enable to build with BSD make(Yoshiyuki)
* Fix pool_debug and friends to block signals while
executing(Tatsuo)
* Fix numerous bugs with extended query(Yoshiyuki)
* Fix INSERT LOCK(Yoshiyuki)
* Do not reuse startup packet(Tatsuo)
* Automatically DEALLOCTE prepared queries when client
disconnects(Yoshiyuki)
* Do not forward packets when length = 0 in
SimpleForwardToFrontend/SimpleForwardToBackend(Tatsuo)
* Fix lost of kind info(Tatsuo)
* Fix bugs with master/slave mode introduced in 2.7.2. per report
from David Boreham (Tatsuo)
* Fix bugs with master/slave and prepared quries. per report
from David Boreham (Tatsuo)
* Changed Copyright to PgPool Global Development Group
* Fix a typo in man page
* PQnotifes() does not receive immediate responses from LISTEN
* NOTIFY emits packet kind does not agree errors in master/slave
mode
* add pgpool man pages(Peter Eisentra)
* Fix bug in show pool_status for ignore_leading_white_space
=== 3.21.0 (2011-03-01)
* Make symbol splitting (:table__column___alias) work correctly for identifiers that are not in the \w character class (authorNari)
* Enable row locks in Oracle (authorNari)
* Prefer cover? over include? for validates_includes/validates_inclusion_of (jeremyevans)
* Make using NULL/NOT NULL, DEFAULT, and UNIQUE column options work correctly on H2 and possibly Oracle (jeremyevans)
* Make bin/sequel accept file arguments and work correctly when $stdin is not a tty (jeremyevans)
* Add support for -I and -r options to bin/sequel (jeremyevans)
* Sequel::Model.plugin can now be overridden just like the other Model methods (jeremyevans)
* Add tinytds adapter, the best way to connect to MSSQL from a C based ruby running on *nix (jeremyevans)
* Recognize bigint unsigned as a Bignum type in the schema dumper (gamespy-tech) (#327)
* Add Dataset#calc_found_rows for MySQL datasets (macks)
* Add association_autoreloading plugin for clearing association cache when foreign key value changes (jfirebaugh, jeremyevans)
* Fix join_table on MySQL ignoring the block (jfirebaugh)
* Transfer CTE WITH clauses in subselect to main query when joining on MSSQL (jfirebaugh)
* Make specs support both RSpec 1 and RSpec 2 (jeremyevans)
* Work with ruby-informix versions >= 0.7.3 in the informix adapter (jeremyevans) (#326)
=== 3.20.0 (2011-02-01)
* Allow a :partial option to Database#indexes on MySQL to include partial indexes (roland.swingler) (#324)
* Add a SQLite subadapter to the swift adapter, now that swift supports it (jeremyevans)
* Update swift adapter to support swift 0.8.1, older versions no longer supported (jeremyevans)
* Allow setting arbitrary JDBC properties in the jdbc adapter with the :jdbc_properties option (jeremyevans)
* Use a better error message if a validates_max_length validation is applied to a nil value (jeremyevans) (#322)
* Add some basic Microsoft Access support to the ado adapter, autoincrementing primary keys now work (jeremyevans)
* Make class_table_inheritance plugin handle subclass associations better (jeremyevans) (#320)
=== 3.19.0 (2011-01-03)
* Handle Date and DateTime types in prepared statements when using the jdbc adapter (jeremyevans)
* Handle Date, DateTime, Time, SQL::Blob, true, and false in prepared statements when using the SQLite adapter (jeremyevans)
* Use varbinary(max) instead of image for the generic blob type on MSSQL (jeremyevans)
* Close prepared statements when disconnecting when using SQLite (jeremyevans)
* Allow reflecting on validations in the validation_class_methods plugin (jeremyevans)
* Allow passing a primary key value to the add_* association method (gucki)
* When typecasting model column values, check the classes of the new and existing values (jeremyevans)
* Improve type translation performance in the postgres, mysql, and sqlite adapters by using methods instead of procs (jeremyevans)
=== 3.18.0 (2010-12-01)
* Allow the user to control how the connection pool deals with attempts to access shards that aren't configured (jeremyevans)
* Typecast columns when creating model objects from JSON in the json_serializer plugin (jeremyevans)
* When parsing the schema for a model that uses an aliased table, use the unaliased table name (jeremyevans)
* When emulating schema methods such as drop_column on SQLite, recreate applicable indexes on the recreated table (jeremyevans)
* Only remove hook pairs that have been run successfully in the instance_hooks plugin (jeremyevans)
* Add reversible migration support to the migration extension (jeremyevans)
* Add to_dot extension, for producing visualizations of Dataset abstract syntax trees with Graphviz (jeremyevans)
* Switch to using manual type translation in the SQLite adapter (jeremyevans)
* Support :read_timeout option in the native mysql adapter (tmm1)
* Support :connect_timeout option in the native mysql and mysql2 adapters (tmm1)
=== 3.17.0 (2010-11-05)
* Ensure that the optimistic locking plugin increments the lock column when using Model#modified! (jfirebaugh)
* Correctly handle nil values in the xml_serializer plugin, instead of converting them to empty strings (george.haff) (#313)
* Use a default wait_timeout that's allowed on Windows for the mysql and mysql2 adapters (jeremyevans) (#314)
* Add support for connecting to MySQL over SSL using the :sslca, :sslkey, and related options (jeremyevans)
* Fix Database#each_server when used with jdbc or do connection strings without separate :adapter option (jeremyevans) (#312)
* Much better support in the AS400 JDBC subadapter (bhauff)
* Allow cloning of many_through_many associations (gucki, jeremyevans)
* In the nested_attributes plugin, don't make unnecessary update calls to modify associated objects that are about to be deleted (jeremyevans, gucki)
* Allow Dataset#(add|set)_graph_aliases to accept as hash values symbols and arrays with a single element (jeremyevans)
* Add Databse#views and #view_exists? to the Oracle adapter (gpheruson)
* Add Database#sql_log_level for changing the level at which SQL queries are logged (jeremyevans)
* Remove unintended use of prepared statements in swift adapter (jeremyevans)
* Fix logging in the swift PostgreSQL subadapter (jeremyevans)
=== 3.16.0 (2010-10-01)
* Support composite foreign keys for associations in the identity_map plugin (harukizaemon, jeremyevans) (#310)
* Handle INTERSECT and EXCEPT on Microsoft SQL Server 2005+ (jfirebaugh)
* Add :replace option to Database#create_language in the postgresql adapter (jeremyevans)
* Make rcte_tree plugin work when not all columns are selected (jeremyevans)
* Add swift adapter (jeremyevans)
* Fix literalization of DateTime objects on 1.9 for databases that support fractional seconds (jeremyevans)
*Rails 3.0.5 (unreleased)*
* Model.where(:column => 1).where(:column => 2) will always produce an
AND query.
[Aaron Patterson]
* Deprecated support for interpolated association conditions in the
form of :conditions => 'foo = #{bar}'.
Instead, you should use a proc, like so:
Before:
has_many :things, :conditions => 'foo = #{bar}'
After:
has_many :things, :conditions => proc { "foo = #{bar}" }
Inside the proc, 'self' is the object which is the owner of the
association, unless you are eager loading the association, in which
case 'self' is the class which the association is within.
You can have any "normal" conditions inside the proc, so the
following will work too:
has_many :things, :conditions => proc { ["foo = ?", bar] }
Previously :insert_sql and :delete_sql on has_and_belongs_to_many
association allowed you to call 'record' to get the record being
inserted or deleted. This is now passed as an argument to the proc.
[Jon Leighton]
-Added LDIF line wrapping setting
-Added libldap cert x500UniqueIdentifier handling
-Added libldap_r,libldap formal concurrency API
-Added slapadd attribute value checking
-Added slapcat continue mode for problematic DBs
-Added slapd syncrepl suffixmassage support
-Added slapd multiple listener threads
-Added slapd extensible match for ordering rules
-Added slapd-meta paged results control forwarding
-Added slapd-meta subtree-include support
-Added slapd-null back-config support
-Added slapd-sql autocommit support
-Added slapd-sql support for long long keys
-Added slapo-sssvlv multiple sorts per connection
-many bugfixes
-documentation improvements
changes:
-Added LDIF line wrapping setting
-Added libldap cert x500UniqueIdentifier handling
-Added libldap_r,libldap formal concurrency API
-Added slapadd attribute value checking
-Added slapcat continue mode for problematic DBs
-Added slapd syncrepl suffixmassage support
-Added slapd multiple listener threads
-Added slapd extensible match for ordering rules
-Added slapd-meta paged results control forwarding
-Added slapd-meta subtree-include support
-Added slapd-null back-config support
-Added slapd-sql autocommit support
-Added slapd-sql support for long long keys
-Added slapo-sssvlv multiple sorts per connection
-many bugfixes
-documentation improvements
approved by Geert Hendrickx (the MAINTAINER)
Functionality added or changed:
* mysqldump --xml now displays comments from column definitions. (Bug #13618)
Bugs fixed:
* InnoDB Storage Engine: InnoDB returned values for ¡Èrows examined¡É
in the query plan that were higher than expected. NULL values were
treated in an inconsistent way. The inaccurate statistics could
trigger ¡Èfalse positives¡É in combination with the MAX_JOIN_SIZE
setting, because the queries did not really examine as many rows as
reported. (Bug #30423)
* Partitioning: Trying to use the same column more than once in the
partitioning key when partitioning a table by KEY caused mysqld to
crash. Such duplication of key columns is now expressly disallowed,
and fails with an appropriate error. (Bug #53354, Bug #57924)
* Replication: When using the statement-based logging format, INSERT
ON DUPLICATE KEY UPDATE and INSERT IGNORE statements affecting
transactional tables that did not fail were not written to the
binary log if they did not insert any rows. (With statement-based
logging, all successful statements should be logged, whether they do
or do not cause any rows to be changed.) (Bug #59338)
* Replication: Formerly, STOP SLAVE stopped the slave I/O thread first
and then stopped the slave SQL thread; thus, it was possible for the
I/O thread to stop after replicating only part of a transaction
which the SQL thread was executing, in wich case¡½if the transaction
could not be rolled back safely¡½the SQL thread could hang.
Now, STOP SLAVE stops the slave SQL thread first and then stops the
I/O thread; this guarantees that the I/O thread can fetch any
remaining events in the transaction that the SQL thread is
executing, so that the SQL thread can finish the transaction if it
cannot be rolled back safely. (Bug #58546)
* A query of the following form returned an incorrect result, where
the values for col_name in the result set were entirely replaced
with NULL values:
SELECT DISTINCT col_name ... ORDER BY col_name DESC;
(Bug #59308, Bug #11766241)
* DELETE or UPDATE statements could fail if they used DATE or DATETIME
values with a year, month, or day part of zero. (Bug #59173)
* The ESCAPE clause for the LIKE operator allows only expressions that
evaluate to a constant at execution time, but aggregrate functions
were not being rejected. (Bug #59149)
* Memory leaks detected by Valgrind, some of which could cause
incorrect query results, were corrected. (Bug #59110, Bug #11766075)
mysqlslap failed to check for a NULL return from mysql_store_result()
and crashed trying to process the result set. (Bug #59109)
* In debug builds, SUBSTRING_INDEX(FORMAT(...), FORMAT(...)) could
cause a server crash. (Bug #58371)
* When mysqldadmin was run with the --sleep and --count options, it
went into an infinite loop executing the specified command. (Bug
#58221)
* Some string manipulating SQL functions use a shared string object
intended to contain an immutable empty string. This object was used
by the SQL function SUBSTRING_INDEX() to return an empty string when
one argument was of the wrong datatype. If the string object was
then modified by the SQL function INSERT(), undefined behavior
ensued. (Bug #58165, Bug #11765225)
* Parsing nested regular expressions could lead to recursion resulting
in a stack overflow crash. (Bug #58026, Bug #11765099)
* The mysql client went into an infinite loop if the standard input
was a directory. (Bug #57450)
* The expression const1 BETWEEN const2 AND field was optimized
incorrectly and produced incorrect results. (Bug #57030, Bug
#11764215)
* Some RPM installation scripts used a hardcoded value for the data
directory, which could result in a failed installation for users who
have a nonstandard data directory location. The same was true for
other configuration values such as the PID file name. (Bug #56581,
Bug #11763817)
* On FreeBSD and OpenBSD, the server incorrectly checked the range of
the system date, causing legal values to be rejected. (Bug #55755,
Bug #11763089)
* When using ExtractValue() or UpdateXML(), if the XML to be read
contained an incomplete XML comment, MySQL read beyond the end of
the XML string when processing, leading to a crash of the
server. (Bug #44332)
Thomas Klausner. Although the two licenses are not word-for-word identical,
they are very close, use much of the same wording, and seem equivalent in
intent. This prevents proliferation of yet another license in the collection.
The ``uuid'' PostgreSQL package implements creation of Universally
Unique Identifiers (UUIDs), also referred to as Globally Unique
Identifiers (GUIDs). Although PostgreSQL supports storing UUIDs as a
native datatype, it does not provide any mechanism for creating them.
This package wraps openssl-supplied md5 and sha1 functions to create
UUIDs within PostgreSQL.
Functionality added or changed:
* The time zone tables available at
http://dev.mysql.com/downloads/timezones.html have been
updated. These tables can be used on systems such as Windows or
HP-UX that do not include zoneinfo files. (Bug#40230)
Bugs fixed:
* Security Fix: During evaluation of arguments to extreme-value
functions (such as LEAST() and GREATEST()), type errors did not
propagate properly, causing the server to crash. (Bug#55826,
CVE-2010-3833)
* Security Fix: The server could crash after materializing a derived
table that required a temporary table for grouping. (Bug#55568,
CVE-2010-3834)
* Security Fix: A user-variable assignment expression that is
evaluated in a logical expression context can be precalculated in a
temporary table for GROUP BY. However, when the expression value is
used after creation of the temporary table, it was re-evaluated, not
read from the table and a server crash resulted. (Bug#55564,
CVE-2010-3835)
* Security Fix: Joins involving a table with a unique SET column could
cause a server crash. (Bug#54575, CVE-2010-3677)
* Security Fix: Pre-evaluation of LIKE predicates during view
preparation could cause a server crash. (Bug#54568, CVE-2010-3836)
* Security Fix: GROUP_CONCAT() and WITH ROLLUP together could cause a
server crash. (Bug#54476, CVE-2010-3837)
* Security Fix: Queries could cause a server crash if the GREATEST()
or LEAST() function had a mixed list of numeric and LONGBLOB
arguments, and the result of such a function was processed using an
intermediate temporary table. (Bug#54461, CVE-2010-3838)
* Security Fix: Using EXPLAIN with queries of the form SELECT
... UNION ... ORDER BY (SELECT ... WHERE ...) could cause a server
crash. (Bug#52711, CVE-2010-3682)
* InnoDB Storage Engine: Creating or dropping a table with 1023
transactions active caused an assertion failure. (Bug#49238)
* The make_binary_distribution target to make could fail on some
platforms because the lines generated were too long for the
shell. (Bug#54590)
* A client could supply data in chunks to a prepared statement
parameter other than of type TEXT or BLOB using the
mysql_stmt_send_long_data() C API function (or
COM_STMT_SEND_LONG_DATA command). This led to a crash because other
data types are not valid for long data. (Bug#54041)
* Builds of the embedded mysqld would fail due to a missing element of
the struct NET. (Bug#53908, Bug#53912)
* The definition of the MY_INIT macro in my_sys.h included an
extraneous semicolon, which could cause compilation
failure. (Bug#53906)
* If the remote server for a FEDERATED table could not be accessed,
queries for the INFORMATION_SCHEMA.TABLES table failed. (Bug#35333)
* mysqld could fail during execution when using SSL. (Bug#34236)
* Threads that were calculating the estimated number of records for a
range scan did not respond to the KILL statement. That is, if a
range join type is possible (even if not selected by the optimizer
as a join type of choice and thus not shown by EXPLAIN), the query
in the statistics state (shown by the SHOW PROCESSLIST) did not
respond to the KILL statement. (Bug#25421)
* Recent pre-releases of Python 3.2 issue ResourceWarnings about
fileshandles deallocated without being closed first. Fix testsuite.
* Current "*.pyc" and "*.pyo" cleaning is not working in a PEP 3147
world ("__pycache__"). I don't think this code is actually
necessary anymore. Deleted.
* Python 2.7.0 deprecates CObject incorrectly. See Python issue 9675.
* Testsuite for "DB->get_transactional()" should not create databases
outside the TMP directory, neither leave the files behind.
* If something happens while creating the CObject/Capsule object,
keep going, even without exporting the C API, instead of crashing.
* Support for "DB_FORCESYNC", "DB_FAILCHK", "DB_SET_REG_TIMEOUT",
"DB_TXN_BULK", "DB_HOTBACKUP_IN_PROGRESS".
* Support "DB_EVENT_REG_ALIVE", "DB_EVENT_REG_PANIC",
"DB_EVENT_REP_DUPMASTER", "DB_REPMGR_CONF_ELECTIONS",
"DB_EVENT_REP_ELECTION_FAILED", "DB_EVENT_REP_MASTER_FAILURE".
* Support for "DB_VERB_REP_ELECT", "DB_VERB_REP_LEASE", "DB_VERB_REP_MISC",
"DB_VERB_REP_MSGS", "DB_VERB_REP_SYNC", "DB_VERB_REP_SYSTEM",
"DB_VERB_REPMGR_CONNFAIL", "DB_VERB_REPMGR_MISC".
* Support for "DB_STAT_LOCK_CONF", "DB_STAT_LOCK_LOCKERS",
"DB_STAT_LOCK_OBJECTS", "DB_STAT_LOCK_PARAMS".
* Support for "DB_REP_CONF_INMEM".
* Support for "DB_TIMEOUT ".
* Support for "DB_CURSOR_BULK".
* Fixed container creation so that it honors page size in XmlContainerConfig
* Fix the base-uri of an attribute node when using WholedocContainer storage
* Fixed an assertion failure during query preparation with a recursive user
defined function
* Fixed an assertion failure when an as-yet unseen URI in used in a query
* Fixed a problem where attribute indexes would not properly be updated if
there were no element indexes present. This might have a symptom of
DB_NOTFOUND errors or duplicate index entries for attributes
* Changed the algorithm used to create node IDs during partial update to be
more efficient and create shorter node IDs in general
* Fixed a problem where deleting the XmlResults object returned by
XmlValue.getAttributes() might cause an exception when the original
XmlResults for the XmlValue object was next accessed
* XQuery Update queries will no longer crash when statistics are disabled
* Fixed a bug in document level indexing that could result in index entries
being deleted inappropriately when a node was deleted
* Fixed fn:doc() to raise an error in all cases if the document does not exist
* Fixed a bug occurring when fn:subsequence() and "order by" were used in
certain configurations
* Changed XmlResults.asEventWriter(), now only one active XmlEventWriter is
allowed for an XmlResults object
0.6.0pre2: Four configuration options have been deprecated and will
no longer be accepted by abook:
emailpos, extra_column, extra_alternative, extrapos
They have been replaced with a single more flexible option: index_format.
0.6.0pre1: The 'customfield' command has been obsoleted by a more
flexible set of commands: 'field' and 'view'.
* Fixed a leak of log file ids when a database is closed before the end of
a transaction that references it.
* Fixed a bug in page allocation where if a non-transactional update was being
done, then we release the metadata page lock too early possibly leading to
the corruption of the in-memory page list used by DB->compact.
* A log write failure on a replication master will now cause a panic since the
transaction may be committed on some clients.
* Removed the possibility that checkpoints will overlap in the log, decreasing
the time to recover.
* Fixed several bugs that could cause an update running with MVCC to get the
wrong version of a page or improperly update the metadata last page number.
* The database open code will no longer log the open and close of the master
database in a file when opening a sub database in that file.
* Fixed a bug where an error during an update to a hash database with
DB_NOOVERWRITE set could return DB_KEYEXIST rather than the correct error.
* Fixed a bug where an updater supporting DB_READ_UNCOMMITED might downgrade
its lock too soon if there was an error during the update.
* Fixed a bug that could cause the wrong page number to be on a root or
metadata page if DB->compact moved the page and the operation was later
rolled forward.
* Fixed a bug that could cause the close of a secondary index database to fail
if the transaction doing the open aborted.
* Changed SQL API library build on *nix to link with libpthreads when necessary.
* Fixed a JDBC error where building would fail on Solaris without the flag
"-D_HAVE_SQLITE_CONFIG_H".
* Fixed some bugs in log_verify when there are in-memory database logs and
subdb logs.
* Fixed a bug that would return DB_NOTFOUND while searching for an existing
item using a cursor on a non-sorted duplicate btree database.
* Fixed a JDBC bug that the configure can not deal with CPPFLAGS.
* Fixed a bug in the SQL API that would cause a constraint violation when
updating the primary key with the same value.
* Fixed a bug in the SQL BDBSQL_FILE_PER_TABLE option, to allow absolute path
names.
* Avoid failures when "EXPLAIN" tries to display a simple-form CASE
expression.
* Fix assignment to an array slice that is before the existing range
of subscripts.
* Avoid unexpected conversion overflow in planner for very distant
date values.
* Fix pg_restore's text output for large objects (BLOBs) when
standard_conforming_strings is on.
* Fix erroneous parsing of tsquery values containing ... &
!(subexpression) | ...
* Fix buffer overrun in "contrib/intarray"'s input function for the
query_int type.
* Fix bug in "contrib/seg"'s GiST picksplit algorithm.
* Avoid failures when "EXPLAIN" tries to display a simple-form CASE
expression.
* Fix assignment to an array slice that is before the existing range
of subscripts.
* Avoid unexpected conversion overflow in planner for very distant
date values.
* Fix pg_restore's text output for large objects (BLOBs) when
standard_conforming_strings is on.
* Fix erroneous parsing of tsquery values containing ... &
!(subexpression) | ...
* Fix buffer overrun in "contrib/intarray"'s input function for the
query_int type.
* Fix bug in "contrib/seg"'s GiST picksplit algorithm.
* More strict dependency reflect gemspec's description.
*Rails 3.0.4 (unreleased)*
* Added deprecation warning for has_and_belongs_to_many associations where the join table has
additional attributes other than the keys. Access to these attributes is removed in 3.1.
Please use has_many :through instead. [Jon Leighton]
*Rails 3.0.3 (November 16, 2010)*
* Support find by class like this: Post.where(:name => Post)
*Rails 3.0.2 (November 15, 2010)*
* Dramatic speed increase (see: http://engineering.attinteractive.com/2010/10/arel-two-point-ohhhhh-yaaaaaa/) [Aaron Patterson]
* reorder is deprecated in favor of except(:order).order(...) [Santiago Pastorino]
* except is now AR public API
Model.order('name').except(:order).order('salary')
generates:
SELECT * FROM models ORDER BY salary
[Santiago Pastorino]
* The following code:
Model.limit(10).scoping { Model.count }
now generates the following SQL:
SELECT COUNT(*) FROM models LIMIT 10
This may not return what you want. Instead, you may with to do something
like this:
Model.limit(10).scoping { Model.all.size }
[Aaron Patterson]
== 2.0.8 / 2010/02/08
* Bug Fixes
* Added set operation support
* Fixed problems with *_any / *_all methods.
== 2.0.7 (unreleased)
* Bug Fixes
* Limit members are visited
* Fixing MSSQL TOP support
== 2.0.6 12/01/2010
* Bug Fixes
* Rails 3.0.x does not like that Node is Enumerable, so removing for now.
== 2.0.5 11/30/2010
* Enhancements
* Arel::Visitors::DepthFirst can walk your AST depth first
* Arel::Nodes::Node is enumerable, depth first
* Bug fixes
* #lock will lock SELECT statements "FOR UPDATE" on mysql
* Nodes::Node#not factory method added for creating Nodes::Not nodes
* Added an As node
* Deprecations
* Support for Subclasses of core classes will be removed in ARel version
2.2.0
== 2.0.4
* Bug fixes
* Speed improvements for Range queries. Thanks Rolf Timmermans!
== 2.0.3
* Bug fixes
* Fixing Oracle support
* Added a visitor for "Class" objects
== 2.0.2
* Bug fixes
* MySQL selects from DUAL on empty FROM
* Visitor translates nil to NULL
* Visitor translates Bignum properly
== 2.0.1
* Bug fixes
== 2.0.0 / 2010-08-01
* Enhancements
* Recreate library using the Visitor pattern.
http://en.wikipedia.org/wiki/Visitor_pattern
* Before exiting walreceiver, ensure all the received WAL is fsync'd to disk
* Avoid excess fsync activity in walreceiver
* Make "ALTER TABLE" revalidate uniqueness and exclusion constraints when needed
* Fix EvalPlanQual for "UPDATE" of an inheritance tree in which the tables are
not all alike
* Avoid failures when "EXPLAIN" tries to display a simple-form CASE expression
* Fix assignment to an array slice that is before the existing range of
subscripts
* Avoid unexpected conversion overflow in planner for very distant date values
* Fix PL/Python crash when an array contains null entries
* Remove ecpg's fixed length limit for constants defining an array dimension
* Fix erroneous parsing of tsquery values containing ... &
!(subexpression) | ...
* Fix buffer overrun in "contrib/intarray"'s input function for the query_int
type
* Fix bug in "contrib/seg"'s GiST picksplit algorithm
Changes in 5.0.2
----------------
Some bug fixes.
* Fix a css typo & error in cappuccino theme
* Fix#3139003 "Autocomplete doesn't insert value", report and patch by Aleksander Machniak
* Fix bad inheritance between pg83 -> pg instead of pg83 -> pg84 in the database access classes. This bug was breaking some functionnalities with 8.3
* Fix a lot of nonstandard escaped string in the database access classes
Changes in 5.0.1
----------------
Minor bug fix and update version.
* Fix#3124417 "Wrong german translation", reported by schnoesel
* Fix (officialy) a bug where non-super user roles cannot check ownership on objects
* Add forgotten Galician language to the target "all" of lang/Makefile
* Update jQuery library to current stable 1.4.4
* remove useless date from the topbar informations.
This was the only place that did PHP 5.3 complain about bad timezone configuration
(a non-PPA related warning). As it was a totaly useless information, we decide to
remove it.
Changes in 5.0
--------------
Features
* Support for PostgreSQL 8.4 and 9.0
* Support for database level collation for 8.4+
* Support for schema level export
* Add ability to alter schema ownership
* Clean up domain support and improve interface
* Add support for commenting on functions
* Allow user to rename role/users and set new passwords at the same time
* Greatly enhanced Full-Text-Search capabilities (ioguix, Loomis_K)
* Overhauled Selenium Test suite to support multiple database versions
* Optimized application graphics (Limo Driver)
* Support for Column Level Privileges
* Allow users to specify a template database at database creation time
* Support killing processes
* Add ability to create indexes concurrently
* Much better support of autovacuum configuration
* Add an admin page for table level
* Refactored autocompletion:
* fix support for cross-schema objects
* support multi-field FK
* support for pagination of values in the auto-complete list
* Allow user to logicaly group their server under custom named node in the browser tree
* New themes (Cappuccino and Gotar) and a theme switcher on the introduction page
* Auto refresh Locks page
* Auto refresh Processes page
* Link in the bottom of the page to go to top of page
* Browsing on Foreign Keys (When browsing a table, clicking on a FK value, jump to the PK row)
Bugs
* Fix problems with query tracking on overly long queries
* Ensure pg_dump paths are valid
* Fix multiple bugs about quoting and escaping database objects names with special chars
* Fix multiple bugs in the browser tree
* Fix multiple bugs on the SQL and script file import form
* One security fix about code injection
* Don't allow inserting on a table without fields
* Some fix about commenting databases
* removed deprecated functions from PHP 5.3
* Lot of code cleanup
* Many other small minor bugs found on our way
* Fix the operator property page
Translations
* Czech (Marek Cernocky)
* Greek (Adamantios Diamantidis)
* Brazillian Portuguese (Fernando Wendt)
* Galician (Adrin Chaves Fernndez)
Incompatabilities
* No longer support PHP < 5.0
* No longer support Postgres < 7.4
* Added the sqlite3_vsnprintf() interface.
* Added the SQLITE_DBSTATUS_LOOKASIDE_HIT, SQLITE_DBSTATUS_LOOKASIDE_MISS_SIZE,
and SQLITE_DBSTATUS_LOOKASIDE_MISS_FULL options for the sqlite3_db_status()
interface.
* Added the SQLITE_OMIT_AUTORESET compile-time option.
* Added the SQLITE_DEFAULT_FOREIGN_KEYS compile-time option.
* Updates to sqlite3_stmt_readonly() so that its result is well-defined for all
prepared statements and so that it works with VACUUM.
* Added the "-heap" option to the command-line shell
* Fix a bug involving frequent changes in and out of WAL mode and VACUUM that
could (in theory) cause database corruption.
* Enhance the sqlite3_trace() mechanism so that nested SQL statements such as
might be generated by virtual tables are shown but are shown in comments and
without parameter expansion. This greatly improves tracing output when using
the FTS3/4 and/or RTREE virtual tables.
* Change the xFileControl() methods on all built-in VFSes to return
SQLITE_NOTFOUND instead of SQLITE_ERROR for an unrecognized operation code.
* The SQLite core invokes the SQLITE_FCNTL_SYNC_OMITTED file control to the VFS
in place of a call to xSync if the database has PRAGMA synchronous set to OFF.
* Fixed segfault with middleware not passing DateStyle to the client
Changes 2.3.1:
* Fixed build problem on CentOS 5.5 x86_64
Changes 2.3.0:
psycopg 2.3 aims to expose some new features introduced in PostgreSQL 9.0.
* Main new features:
- `dict` to `hstore` adapter and `hstore` to `dict` typecaster, using both
9.0 and pre-9.0 syntax.
- Two-phase commit protocol support as per DBAPI specification.
- Support for payload in notifications received from the backed.
- `namedtuple`-returning cursor.
- Query execution cancel.
Sat Jan 15 2011 version 0.99994 released
* fixed column key caching, thanks Sean Noonan for bug report
Fri Dec 24 2010 version 0.99993 released
* fixed error reporting in Database.transaction method,
thanks Shane Emmons for bug report and testing
Bugfixes:
* rrdcached: print \n at the end of log messages when running rrdcached in the
foreground -- Bernard Li
* rrdcached: Let the -s, -m and -P options affect the default socket as
well -- Sebastian Harl
* rrdgraph: font related memory leaks fixed#208 -- tobi
* rrdgraph-libdbi: print error message instead of dumping core on sql
problem -- Pavel Nikiforov
* rrdgraph-libdbi: properly allocated response buffer -- Pavel Nikiforov
* rrdtool: in remote mode, make argument count for remote commmands strict
-- Dave Peticolas
* rrdgraph: fix problems with second %s in right-axis format -- tobi
* and many more: for full changelog http://oss.oetiker.ch/rrdtool/pub/CHANGES
Enhancements:
* rrdcached: add hosts_access support added -- Shaun Reitan
* rrdfetch/graph: introduce "epoch" as a new base time reference, meaning
timestamp 0: you can now write epoch+11111111s or epoch+19711205s
-- Peter Stamfest
* Fix a bug about sizeof() at idx_fake_oid of info.
* Return 0 for the column size when the size of numeric items are unknown.
Also improve the calculation of scale of numeric items when it is not
explicitly specified.
* Change to use 'if' instead of an inappropriate 'else if' at cursor of convert.
* Remember to set permanent flag to holdable cursors on commit with no
precedent rollback (to savepoint) operations.
This fixes a crash bug in case of cursor operations across transaction.
* Fix a bug about the handling of the SQL_RETRIEVE_DATA option.
* Fix cursor bug introduced by the previous change.
* Move the setting of folder name of libpq or gssapi related dlls from .wxs
file to .bat file.
* Fix a bug which returns incorrect values for SQL_DATETIME_SUB.
alternative from mk/jpeg.buildlink3.mk
This allows selection of an alternative jpeg library (namely the x86 MMX,
SSE, SSE2 accelerated libjpeg-turbo) via JPEG_DEFAULT=libjpeg-turbo, and
follows the current standard model for alternatives (fam, motif, fuse etc).
The mechanical edits were applied via the following script:
#!/bin/sh
for d in */*; do
[ -d "$d" ] || continue
for i in "$d/"Makefile* "$d/"*.mk; do
case "$i" in *.orig|*"*"*) continue;; esac
out="$d/x"
sed -e 's;graphics/jpeg/buildlink3\.mk;mk/jpeg.buildlink3.mk;g' \
-e 's;BUILDLINK_PREFIX\.jpeg;JPEGBASE;g' \
< "$i" > "$out"
if cmp -s "$i" "$out"; then
rm -f "$out"
else
echo "Edited $i"
mv -f "$i" "$i.orig" && mv "$out" "$i"
fi
done
done
1.5.0b3 2010-08-29 12:29 UTC
Changelog:
- fixed bug #15650: mysqli function used in setCharset()
- fixed bug #16003: incorrect check for error after mysql_store_result
- fixed bug #16147: first prepared statement is emulated when using factory
with mysql
- fixed bug #16669: hostspec is ignored when protocol is unix
- fixed bug #17037: 'on update' not mentioned in tableInfo()
- fixed bug #17065: There is no NEW row in on DELETE trigger (fix error in FK
constraint triggers)
- fixed bug #17650: lastInsertId can not handle bigint, forces cast to integer
[alexpw]
- return ON UPDATE|DELETE action in getTableConstraintDefinition()
note:
- the multi_query test failes because this is not supported by ext/mysql
open todo items:
- use a trigger to emulate setting default now()
1.5.0b3 2010-08-29 12:31 UTC
Changelog:
- fixed bug #16275: split() is deprecated in PHP 5.3
note:
open todo items:
- fix pattern escaping using GLOB instead of LIKE or create and register own
implementation of LIKE
1.5.0b3 2010-08-29 12:31 UTC
Changelog:
- fixed bug #16281: getTableFieldDefinition() does not recognize NULL defaults
with datatype [Holger Schletz]
- fixed bug #16384: alterTable() does not remove NOT NULL constraints [Holger
Schletz]
- fixed bug #16405: Compatibility issues with escaped strings [hschletz]
open todo items:
- enable pg_execute() once issues with bytea column are resolved
- use pg_result_error_field() to handle localized error messages (Request
#7059)
- add option to use unnamed prepared statements (see
http://www.postgresql.org/docs/current/static/protocol-flow.html "Extended
Query")
1.5.0b3 2010-08-29 12:29 UTC
Changelog:
- fixed bug #15650: mysqli function used in setCharset()
- fixed bug #16003: incorrect check for error after mysql_store_result
- fixed bug #16147: first prepared statement is emulated when using factory
with mysql
- fixed bug #16669: hostspec is ignored when protocol is unix
- fixed bug #17037: 'on update' not mentioned in tableInfo()
- fixed bug #17065: There is no NEW row in on DELETE trigger (fix error in FK
constraint triggers)
- fixed bug #17650: lastInsertId can not handle bigint, forces cast to integer
[alexpw]
- return ON UPDATE|DELETE action in getTableConstraintDefinition()
note:
- the multi_query test failes because this is not supported by ext/mysql
open todo items:
- use a trigger to emulate setting default now()
2.5.0b3 2010-08-29 12:27 UTC
Changelog:
- fixed bug #15912: MDB2::loadClass can return MDB2_OK without loading class
- fixed bug #16020: unable to set params via dsn string in parseDSN()
- fixed bug #16508: reusing var name + return by ref [rix0r]
- fixed bug #16727: quote(url, 'clob')) fetches URL even if
lob_allow_url_include option is false
- fixed unreported bug in parseDSN() and oracle's Easy Connect syntax
- fixed bug #16973 and #17039: Wrong _skipDelimitedStrings behavior with
escaped quotes
- fixed bug #16994: incompatible declaration of setTransactionIsolation() in
some drivers
- dropped PHP 4 support
- PHP 5.3 compatibility fixes
- performance tweaks (reduced number of internal function calls)
- added new sqlsrv driver (native SQL Server driver) [Chris Pucci, Mike Ketcham]
- added new ODBC experimental driver [pschellhaas]
- Switched test suite to PHPUnit 3.5
open todo items:
- handle autoincrement fields in alterTable()
- add length handling to LOB reverse engineering
- add EXPLAIN abstraction
- add cursor support along the lines of PDO (Request #3660 etc.)
- add PDO based drivers, especially a driver to support SQLite 3 (Request #6907)
- add support to export/import in CSV format
- add more functions to the Function module (MD5(), IFNULL(), etc.)
- add support for database/table/row LOCKs
- add support for CHECK (ENUM as possible mysql fallback) constraints
- generate STATUS file from test suite results and allow users to submit test
results
- add support for full text index creation and querying
- add tests to check if the RDBMS specific handling with portability options
disabled behaves as expected
- handle implicit commits (like for DDL) in any affected driver (mysql,
sqlite..)
- add a getTableFieldsDefinitions() method to be used in tableInfo()
- drop ILIKE from matchPattern() and instead add a second parameter to handle
case sensitivity with arbitrary operators
- handle LOBs in buffered result sets (Request #8793)
* Force the default wal_sync_method to be fdatasync on Linux
* Fix assorted bugs in WAL replay logic for GIN indexes
* Fix recovery from base backup when the starting checkpoint WAL
record is not in the same WAL segment as its redo point
* Fix persistent slowdown of autovacuum workers when multiple workers
remain active for a long time
* Add support for detecting register-stack overrun on IA64
* Add a check for stack overflow in copyObject()
* Fix detection of page splits in temporary GiST indexes
* Avoid memory leakage while "ANALYZE"'ing complex index expressions
* Ensure an index that uses a whole-row Var still depends on its
table
* Do not "inline" a SQL function with multiple OUT parameters
* Behave correctly if ORDER BY, LIMIT, FOR UPDATE, or WITH is
attached to the VALUES part of INSERT ... VALUES
* Fix constant-folding of COALESCE() expressions
* Fix postmaster crash when connection acceptance (accept() or one of
the calls made immediately after it) fails, and the postmaster was
compiled with GSSAPI support
* Fix missed unlink of temporary files when log_temp_files is active
* Add print functionality for InhRelation nodes
* Fix incorrect calculation of distance from a point to a horizontal
line segment
* Fix PL/pgSQL's handling of "simple" expressions to not fail in
recursion or error-recovery cases
* Fix PL/Python's handling of set-returning functions
* Fix bug in "contrib/cube"'s GiST picksplit algorithm
* Don't emit "identifier will be truncated" notices in
"contrib/dblink" except when creating new connections
* Fix potential coredump on missing public key in "contrib/pgcrypto"
* Fix memory leak in "contrib/xml2"'s XPath query functions
* Update time zone data files to tzdata release 2010o for DST law
changes in Fiji and Samoa; also historical corrections for Hong
Kong.
* Force the default wal_sync_method to be fdatasync on Linux
* Fix assorted bugs in WAL replay logic for GIN indexes
* Fix recovery from base backup when the starting checkpoint WAL
record is not in the same WAL segment as its redo point
* Fix persistent slowdown of autovacuum workers when multiple workers
remain active for a long time
* Add support for detecting register-stack overrun on IA64
* Add a check for stack overflow in copyObject()
* Fix detection of page splits in temporary GiST indexes
* Fix error checking during early connection processing
* Improve efficiency of window functions
* Avoid memory leakage while "ANALYZE"'ing complex index expressions
* Ensure an index that uses a whole-row Var still depends on its table
* Do not "inline" a SQL function with multiple OUT parameters
* Behave correctly if ORDER BY, LIMIT, FOR UPDATE, or WITH is
attached to the VALUES part of INSERT ... VALUES
* Fix constant-folding of COALESCE() expressions
* Fix postmaster crash when connection acceptance (accept() or one of
the calls made immediately after it) fails, and the postmaster was
compiled with GSSAPI support
* Fix missed unlink of temporary files when log_temp_files is active
* Add print functionality for InhRelation nodes
* Fix incorrect calculation of distance from a point to a horizontal
line segment
* Fix incorrect calculation of transaction status in ecpg
* Fix PL/pgSQL's handling of "simple" expressions to not fail in
recursion or error-recovery cases
* Fix PL/Python's handling of set-returning functions
* Fix bug in "contrib/cube"'s GiST picksplit algorithm
* Don't emit "identifier will be truncated" notices in
"contrib/dblink" except when creating new connections
* Fix potential coredump on missing public key in "contrib/pgcrypto"
* Fix memory leak in "contrib/xml2"'s XPath query functions
* Update time zone data files to tzdata release 2010o for DST law
changes in Fiji and Samoa; also historical corrections for Hong
Kong.
* Force the default wal_sync_method to be fdatasync on Linux
* Fix "too many KnownAssignedXids" error during Hot Standby replay
* Fix race condition in lock acquisition during Hot Standby
* Avoid unnecessary conflicts during Hot Standby
* Fix assorted bugs in WAL replay logic for GIN indexes
* Fix recovery from base backup when the starting checkpoint WAL
record is not in the same WAL segment as its redo point
* Fix corner-case bug when streaming replication is enabled
immediately after creating the master database cluster
* Fix persistent slowdown of autovacuum workers when multiple workers
remain active for a long time
* Fix long-term memory leak in autovacuum launcher
* Avoid failure when trying to report an impending transaction
wraparound condition from outside a transaction
* Add support for detecting register-stack overrun on IA64
* Add a check for stack overflow in copyObject()
* Fix detection of page splits in temporary GiST indexes
* Fix error checking during early connection processing
* Improve efficiency of window functions
* Avoid memory leakage while "ANALYZE"'ing complex index expressions
* Ensure an index that uses a whole-row Var still depends on its table
* Add missing support in "DROP OWNED BY" for removing foreign data
wrapper/server privileges belonging to a user
* Do not "inline" a SQL function with multiple OUT parameters
* Fix crash when inline-ing a set-returning function whose argument
list contains a reference to an inline-able user function
* Behave correctly if ORDER BY, LIMIT, FOR UPDATE, or WITH is
attached to the VALUES part of INSERT ... VALUES
* Make the OFF keyword unreserved
This prevents problems with using off as a variable name in
PL/pgSQL. That worked before 9.0, but was now broken because
PL/pgSQL now treats all core reserved words as reserved.
* Fix constant-folding of COALESCE() expressions
Functionality added or changed:
* Support for the IBMDB2I storage engine has been removed. (Bug#58079)
* The pstack library was nonfunctional and has been removed, along with the
--with-pstack option for configure. The --enable-pstack option for mysqld is
deprecated and will be removed in MySQL 5.5. (Bug#57210)
Bugs fixed:
* Performance: InnoDB Storage Engine: Improved concurrency when several
ANALYZE TABLE or SHOW TABLE STATUS statements are run simultaneously for
InnoDB tables. (Bug#53046)
* InnoDB Storage Engine: For an InnoDB table created with
ROW_FORMAT=COMPRESSED or ROW_FORMAT=DYNAMIC, a query using the READ
UNCOMMITTED isolation level could cause the server to stop with an assertion
error, if BLOB or other large columns that use off-page storage were being
inserted at the same time. (Bug#57799)
* Partitioning: An INSERT ... ON DUPLICATE KEY UPDATE column = 0 statement on
an AUTO_INCREMENT column caused the debug server to crash. (Bug#57890)
* Several compilation problems were fixed. (Bug#57992, Bug#57993, Bug#57994,
Bug#57995, Bug#57996, Bug#57997, Bug#58057)
* Passing a string that was not null-terminated to UpdateXML() or
ExtractValue() caused the server to fail with an assertion. (Bug#57279)
* Queries executed using the Index Merge access method and a temporary file
could return incorrect results. (Bug#56862)
* The find_files() function used by SHOW statements performed redundant and
unnecessary memory allocation. (Bug#51208)
-Fix: Removing extranous '//' from the perl script.
-Fix: slon can segfault while shutting down.
-Fix: typenameTypeId() changes signatures in 9.1
-Fix: if slon gets confused waiting for its child it will exit.
-Fix: distclean deletes the slony_logshipper flex/bison generated files.
This package provides the following PostgreSQL modules:
- citext
- hstore
- intarray
- isn
- ltree
- lo
- uuid-ossp
- unaccent
The "citext" module provides a case-insensitive character string type,
citext. Essentially, it internally calls lower when comparing values.
Otherwise, it behaves almost exactly like text.
The "hstore" module implements the "hstore" data type for storing sets
of key/value pairs within a single PostgreSQL value. This can be useful
in various scenarios, such as rows with many attributes that are rarely
examined, or semi-structured data. Keys and values are simply text strings.
The "intarray" module provides a number of useful functions and operators
for manipulating one-dimensional arrays of integers. There is also support
for indexed searches using some of the operators.
The "isn" module provides data types for the following international
product numbering standards: EAN13, UPC, ISBN (books), ISMN (music),
and ISSN (serials). Numbers are validated on input, and correctly
hyphenated on output.
The "ltree" module implements a data type ltree for representing
labels of data stored in a hierarchical tree-like structure.
Extensive facilities for searching through label trees are provided.
The "lo" module provides support for managing Large Objects (also called
LOs or BLOBs). This includes a data type "lo" and a trigger "lo_manage."
The "uuid-ossp" module provides functions to generate universally unique
identifiers (UUIDs) using one of several standard algorithms. There are
also functions to produce certain special UUID constants.
"unaccent" is a text search dictionary that removes accents (diacritic signs)
from lexemes. It's a filtering dictionary, which means its output is always
passed to the next dictionary (if any), unlike the normal behavior of
dictionaries. This allows accent-insensitive processing for full text search.
This package provides the following PostgreSQL modules:
- auto_explain
- pg_buffercache
- pg_stat_statements
- pgstattuple
The "auto_explain" module provides a means for logging execution
plans of slow statements automatically, without having to run
EXPLAIN(7) by hand. This is especially helpful for tracking down
un-optimized queries in large applications.
The "pg_buffercache" module provides a means for examining what's
happening in the shared buffer cache in real time.
The "pg_stat_statements" module provides a means for tracking
execution statistics of all SQL statements executed by a server.
The "pgstattuple" module provides various functions to obtain
tuple-level statistics.
pg_upgrade (formerly called pg_migrator) allows data stored
in PostgreSQL data files to be migrated to a later PostgreSQL
major version without the data dump/reload typically required
for major version upgrades, e.g. from 8.4.7 to the current
major release of PostgreSQL. It is not required for minor
version upgrades, e.g. from 9.0.1 to 9.0.4.
shared-mime-info 0.90 (2010-12-1)
* Mime-type Changes:
- Make application/epub+zip sub-class-of application/zip
- Make sure RAM files are not all treated as text
- Make CMakefiles a sub-class of text/plain
- Add new mime-type for Panasonic RW2 images
- Add XSL magic
- Add root-XML for XSL
- Add *.gem as a glob for tar archives
- Add test case for text/directory files
- Add go source code
- Add pdf.xz mime-type
- Add text/x-ooc source code
- Add Cobol source code
* Other:
- Don't error out on the x-scheme-handler/* mime-types
- Fix crasher when mime-magic is empty
This package provides the following PostgreSQL tools:
- pg_archivecleanup
- pg_standby
pg_standby supports creation of a "warm standby" database server.
It is designed to be a waiting restore_command, which is needed
to turn a standard archive recovery into a warm standby operation.
pg_archivecleanup is designed to cleanup an archive when used as
an archive_cleanup_command when running with standby_mode = on.
pg_archivecleanup can also be used as a standalone program to
clean WAL file archives.
* Added the sqlite3_blob_reopen() interface to allow an existing sqlite3_blob
object to be rebound to a new row.
* Use the new sqlite3_blob_reopen() interface to improve the performance of FTS.
* VFSes that do not support shared memory are allowed to access WAL databases
if PRAGMA locking_mode is set to EXCLUSIVE.
* Enhancements to EXPLAIN QUERY PLAN.
* Added the sqlite3_stmt_readonly() interface.
* Added PRAGMA checkpoint_fullfsync.
* Added the SQLITE_FCNTL_FILE_POINTER option to sqlite3_file_control().
* Added support for FTS4 and enhancements to the FTS matchinfo() function.
* Added the test_superlock.c module which provides example code for obtaining
an exclusive lock to a rollback or WAL database.
* Added the test_multiplex.c module which provides an example VFS that provides
multiplexing (sharding) of a DB, splitting it over multiple files of fixed
size.
* A very obscure bug associated with the or optimization was fixed.
Update package database/ipa_sdb to 1.0.2 version.
Changes in the package:
* MASTER_SITES was changed.
* DESCR was updated.
* PLIST was updated.
Changes in the ipa_sdb-1.0.2:
* autoconf 2.59 -> 2.68, automake 1.9.6 -> 1.11.1,
libtool 1.5.20 -> 2.2.10.
* Code optimization and documentation corrections.
* configure.ac was optimized.
* Now lint can check source code of IPA_SDB.
* If there is close_fd=yes for rule and db_set_limit_state() fails,
then the ipa_db_sdb module did not close database file descriptor
for a limit in some cases.
* Added checks for uint8_t, uint16_t, uint32_t and uint64_t
to configure. Check that sizeof(long) >= sizeof(int).
* Now autoheader is used for generating src/config.h.in.
* Now src/ipa_sdb.h is not generated, instead new sdb_config.in.h
file is used.
* New options for configure: --enable-gcc-more-warns,
--disable-gcc-warns, --with-db-pthread, --with-st-pthread.
* Options --enable-FEATURE and --disable-FEATURE disabled FEATURE
in the configure script.
* Use readdir_r() function in thread-safe version of the ipa_st_sdb
module.
* Opened directories never were closed in the ipa_st_sdb module.
=== 1.3.2 / 2010-10-30 / RubyConf Uruguay Edition!
* Enhancements:
* Windows: build against 3.7.3 version of SQLite3
* SQLite3::Database can now be open as readonly
db = SQLite3::Database.new('my.db', :readonly => true)
* Added SQLite3::SQLITE_VERSION and SQLite3::SQLITE_VERSION_NUMBER [nurse]
* Bugfixes
* type_translation= works along with Database#execute and a block
* defined functions are kept in a hash to prevent GC. #7
* Removed GCC specific flags from extconf.
* DEPRECATIONS
* SQLite3::Database#type_translation= will be deprecated in the future with
no replacement.
* SQlite3::Version will be deprecated in 2.0.0 with SQLite3::VERSION as the
replacement.
databases/p5-MLDBM-Serializer-JSON.
MLDBM::Serializer::JSON provides an extension to MLDBM to enable storing
the additional columns as JSON instead of Data::Dumper or FreezeThaw.
JSON is very widely used - from Perl over Ruby to Python and surely
JavaScript and so on.
Lib
* Removed tabs from various modules to make things work with python -tt.
* Quick fix to ldif.is_dn() to let multi-valued RDNs pass as valid.
Is too liberal in some corner-cases though...
* Fix to ldif.is_dn() to allow dashes in attribute type
* ldap.open() now outputs a deprecation warning
* module-wide locking is now limited to calling _ldap.initialize().
Still ldap.functions._ldap_function_call() is used to wrap all
calls for writing debug log.
Modules
* New LDAP options available in OpenLDAP 2.4.18+ supported in
LDAPObject.get/set_option():
ldap.OPT_X_KEEPALIVE_IDLE, ldap.OPT_X_KEEPALIVE_PROBES,
ldap.OPT_X_KEEPALIVE_INTERVAL,
ldap.OPT_X_TLS_CRLCHECK, ldap.OPT_X_TLS_CRLFILE
Doc
* Various small updates/improvements
* Fix the debugger invocation code to ensure it handles different combinations
of server version and libpq builds as cleanly as possible.
* Fix the double line number in the function properties dialog.
* Fix for log_statement in 7.4.
* Lots of fixes on my "sort column" patch.
* Avoid an error when viewing index statistics in languages other than English.
* Fix connection color on the query tool
* Fix the reverse-engineered query for triggers
* Fix the server's property dialog for unpriviledged users
* Fix a crash if pressing escape in the edit grid filter and sorting dialogue.
Add a tooltip and make RO the queries combobox
* Fix the perspective string parameter
This is maintainous release and pleare refer in detail:
http://dev.mysql.com/doc/refman/5.1/en/news-5-1-52.html
One note from the changes:
* Security Fix: In prepared-statement mode, EXPLAIN for a SELECT from
a derived table caused a server crash. (Bug#54488)
This version brings back the ability to create new tables.
Changes since 0.7.0beta2:
* add strategy options to describe_keyspace output (CASSANDRA-1560)
* log warning when using randomly generated token (CASSANDRA-1552)
* re-organize JMX into .db, .net, .internal, .request (CASSANDRA-1217)
llow nodes to change IPs between restarts (CASSANDRA-1518)
* remember ring state between restarts by default (CASSANDRA-1518)
* flush index built flag so we can read it before log replay (CASSANDRA-1541)
* lock row cache updates to prevent race condition (CASSANDRA-1293)
* remove assertion causing rare (and harmless) error messages in
commitlog (CASSANDRA-1330)
* fix moving nodes with no keyspaces defined (CASSANDRA-1574)
* fix unbootstrap when no data is present in a transfer range (CASSANDRA-1573)
* take advantage of AVRO-495 to simplify our avro IDL (CASSANDRA-1436)
* extend authorization hierarchy to column family (CASSANDRA-1554)
* deletion support in secondary indexes (CASSANDRA-1571)
* meaningful error message for invalid replication strategy class
(CASSANDRA-1566)
* allow keyspace creation with RF > N (CASSANDRA-1428)
* improve cli error handling (CASSANDRA-1580)
* add cache save/load ability (CASSANDRA-1417, 1606, 1647)
* add StorageService.getDrainProgress (CASSANDRA-1588)
* Disallow bootstrap to an in-use token (CASSANDRA-1561)
* Allow dynamic secondary index creation and destruction (CASSANDRA-1532)
* log auto-guessed memtable thresholds (CASSANDRA-1595)
* add ColumnDef support to cli (CASSANDRA-1583)
* reduce index sample time by 75% (CASSANDRA-1572)
* add cli support for column, strategy metadata (CASSANDRA-1578, 1612)
* add cli support for schema modification (CASSANDRA-1584)
* delete temp files on failed compactions (CASSANDRA-1596)
* avoid blocking for dead nodes during removetoken (CASSANDRA-1605)
* remove ConsistencyLevel.ZERO (CASSANDRA-1607)
* expose in-progress compaction type in jmx (CASSANDRA-1586)
* removed IClock & related classes from internals (CASSANDRA-1502)
* fix removing tokens from SystemTable on decommission and removetoken
(CASSANDRA-1609)
* include CF metadata in cli 'show keyspaces' (CASSANDRA-1613)
* switch from Properties to HashMap in PropertyFileSnitch to
avoid synchronization bottleneck (CASSANDRA-1481)
* PropertyFileSnitch configuration file renamed to
cassandra-topology.properties
* add cli support for get_range_slices (CASSANDRA-1088, CASSANDRA-1619)
* Make memtable flush thresholds per-CF instead of global
(CASSANDRA-1007, 1637)
* add cli support for binary data without CfDef hints (CASSANDRA-1603)
* fix building SSTable statistics post-stream (CASSANDRA-1620)
* fix potential infinite loop in 2ary index queries (CASSANDRA-1623)
* allow creating NTS keyspaces with no replicas configured (CASSANDRA-1626)
* add jmx histogram of sstables accessed per read (CASSANDRA-1624)
* remove system_rename_column_family and system_rename_keyspace from the
client API until races can be fixed (CASSANDRA-1630, CASSANDRA-1585)
* add cli sanity tests (CASSANDRA-1582)
* update GC settings in cassandra.bat (CASSANDRA-1636)
* cli support for index queries (CASSANDRA-1635)
* cli support for updating schema memtable settings (CASSANDRA-1634)
* cli --file option (CASSANDRA-1616)
* reduce automatically chosen memtable sizes by 50% (CASSANDRA-1641)
* move endpoint cache from snitch to strategy (CASSANDRA-1643)
* fix commitlog recovery deleting the newly-created segment as well as
the old ones (CASSANDRA-1644)
* upgrade to Thrift 0.5 (CASSANDRA-1367)
* renamed CL.DCQUORUM to LOCAL_QUORUM and DCQUORUMSYNC to EACH_QUORUM
* cli truncate support (CASSANDRA-1653)
* update GC settings in cassandra.bat (CASSANDRA-1636)
* avoid logging when a node's ip/token is gossipped back to it (CASSANDRA-1666)
* fix: add versioning information to binary
* fix: add AM_MAINTAINER_MODE
* fix: bad LDAP query for ether lookups
* fix: clarify bind timelimit defaults in ldap.conf
* fix: call do_close() if ldap_result() or ldap_parse_result() fails
(before returning NSS_UNAVAIL)
* fix: FreeBSD thread library check
* fix: deallocate context in
_nss_ldap_ent_context_release() to avoid bad usage
* fix: don't leak file descriptors in _nss_ldap_readconfig
Changes 264:
* fix: MAP_H_ERRNO() should map NSS_TRYAGAIN to NETDB_INTERNAL not TRY_AGAIN
* fix: ldaps:// URIs only work if "ssl on" is set
* fix: nss_ldap exposes malformed entries to the system
Changes 263:
* fix: nss_ldap returns success from setnetgrent() when the requested netgroup
doesn't exist
* fix: getXXent() only returns NULL once before implicitly calling
setXXent(), whereas other backends continue to return NULL
Changes 262:
* fix: nss_ldap fails to work on Solaris without that patch applied
Changes 261:
* fix: ldap.conf template is missing a comment in the first line
* Added the sqlite3_create_function_v2() interface that includes a destructor
callback.
* Added support for custom r-tree queries using application-supplied callback
routines to define the boundary of the query region.
* The default page cache strives more diligently to avoid using memory beyond
what is allocated to it by SQLITE_CONFIG_PAGECACHE. Or if using page cache
is allocating from the heap, it strives to avoid going over the
sqlite3_soft_heap_limit64(), even if SQLITE_ENABLE_MEMORY_MANAGEMENT is not
set.
* Added the sqlite3_soft_heap_limit64() interface as a replacement for
sqlite3_soft_heap_limit().
* The ANALYZE command now gathers statistics on tables even if they have no
indices.
* Tweaks to the query planner to help it do a better job of finding the most
efficient query plan for each query.
* Enhanced the internal text-to-numeric conversion routines so that they work
with UTF8 or UTF16, thereby avoiding some UTF16-to-UTF8 text conversions.
* Fix a problem that was causing excess memory usage with large WAL
transactions in win32 systems.
* The interface between the VDBE and B-Tree layer is enhanced such that the
VDBE provides hints to the B-Tree layer letting the B-Tree layer know when it
is safe to use hashing instead of B-Trees for transient tables.
* Miscellaneous documentation enhancements.
shared-mime-info 0.80 (2010-09-30)
* Mime-type Changes:
- Add magic for F4V (Flash) video files
- Add mime-type for Dia shapes
- Bump priority for KOffice magics to give them precedence over gzip and zip
- Add mime-type for Verilog and SystemVerilog source files and headers
- Add Qt Linguist translation file
- Add application/x-xspf+xml alias for XSPF playlists
- Use audio/flac for FLAC files, make audio/x-flac an alias of it
- Add mime-type for HDF files
- Add mime-type for Mozilla Extension packages
- Add mime-type for text/cache-manifest
- Add YAML mime-type
- Add application/relax-ng-compact-syntax mime-type
- Add more tests for Matlab and Octave files
- Improve translator comments for VCD, SVCD and PictureCD
- Add application/pkcs8 mime-type
- Add audio and video WebM mime-types
- Add video/mp2t mime-type
- Use generic video icon for application/x-matroska
- Improve magic for Matroska files
- Add magic for audio/x-stm
- Update magic for Apple HTTP Streaming playlists
- Add Lrzip archive mime-type
- Fix PDF detection for some pesky files
- Add details about 3GPP and 3GPP2 files
- Add JavaFX video format
- Add Windows Imaging Format Disk Image mime-type
- Add application/x-apple-diskimage mime-type
- Add e-book reader content-type
- Add application/x-tex as an alias for text/x-tex
- Use application/oxps mime-type for XPS files
- Add magic to BibTeX files
* Other:
- Fix malformed D source test
- Avoid using ~/.local data when running the test suite
- Make sure that update-mime-info doesn't get called before installed
Changes since 0.6.2:
* always use UTF-8 for hint keys (CASSANDRA-1439)
* remove cassandra.yaml dependency from Hadoop and Pig (CASSADRA-1322)
* expose CfDef metadata in describe_keyspaces (CASSANDRA-1633)
* restore use of mmap_index_only option (CASSANDRA-1241)
* dropping a keyspace with no column families generated an error
(CASSANDRA-1378)
* rename RackAwareStrategy to OldNetworkTopologyStrategy, RackUnawareStrategy
to SimpleStrategy, DatacenterShardStrategy to NetworkTopologyStrategy,
AbstractRackAwareSnitch to AbstractNetworkTopologySnitch (CASSANDRA-1392)
* merge StorageProxy.mutate, mutateBlocking (CASSANDRA-1396)
* faster UUIDType, LongType comparisons (CASSANDRA-1386, 1393)
* fix setting read_repair_chance from CLI addColumnFamily (CASSANDRA-1399)
* fix updates to indexed columns (CASSANDRA-1373)
* fix race condition leaving to FileNotFoundException (CASSANDRA-1382)
* fix sharded lock hash on index write path (CASSANDRA-1402)
* add support for GT/E, LT/E in subordinate index clauses (CASSANDRA-1401)
* cfId counter got out of sync when CFs were added (CASSANDRA-1403)
* less chatty schema updates (CASSANDRA-1389)
* rename column family mbeans. 'type' will now include either
'IndexColumnFamilies' or 'ColumnFamilies' depending on the CFS type.
(CASSANDRA-1385)
* disallow invalid keyspace and column family names. This includes name that
matches a '^\w+' regex. (CASSANDRA-1377)
* use JNA, if present, to take snapshots (CASSANDRA-1371)
* truncate hints if starting 0.7 for the first time (CASSANDRA-1414)
* fix FD leak in single-row slicepredicate queries (CASSANDRA-1416)
* allow index expressions against columns that are not part of the
SlicePredicate (CASSANDRA-1410)
* config-converter properly handles snitches and framed support
(CASSANDRA-1420)
* remove keyspace argument from multiget_count (CASSANDRA-1422)
* allow specifying cassandra.yaml location as (local or remote) URL
(CASSANDRA-1126)
* fix using DynamicEndpointSnitch with NetworkTopologyStrategy
(CASSANDRA-1429)
* Add CfDef.default_validation_class (CASSANDRA-891)
* fix EstimatedHistogram.max (CASSANDRA-1413)
* handle zero-length (or missing) rows during HH paging (CASSANDRA-1432)
* include secondary indexes during schema migrations (CASSANDRA-1406)
* fix commitlog header race during schema change (CASSANDRA-1435)
* fix ColumnFamilyStoreMBeanIterator to use new type name (CASSANDRA-1433)
* correct filename generated by xml->yaml converter (CASSANDRA-1419)
* add CMSInitiatingOccupancyFraction=75 and UseCMSInitiatingOccupancyOnly
to default JVM options
* decrease jvm heap for cassandra-cli (CASSANDRA-1446)
* ability to modify keyspaces and column family definitions on a live cluster
(CASSANDRA-1285)
* support for Hadoop Streaming [non-jvm map/reduce via stdin/out]
(CASSANDRA-1368)
* Move persistent sstable stats from the system table to an sstable component
(CASSANDRA-1430)
* remove failed bootstrap attempt from pending ranges when gossip times
it out after 1h (CASSANDRA-1463)
* eager-create tcp connections to other cluster members (CASSANDRA-1465)
* enumerate stages and derive stage from message type instead of
transmitting separately (CASSANDRA-1465)
* apply reversed flag during collation from different data sources
(CASSANDRA-1450)
* make failure to remove comitlog segment non-fatal (CASSANDRA-1348)
* correct ordering of drain operations so CL.recover is no longer
necessary (CASSANDRA-1408)
* removed keyspace from describe_splits method (CASSANDRA-1425)
* rename check_schema_agreement to describe_schema_versions
(CASSANDRA-1478)
* fix QUORUM calculation for RF > 3 (CASSANDRA-1487)
* remove tombstones during non-major compactions when bloom filter
verifies that row does not exist in other sstables (CASSANDRA-1074)
* nodes that coordinated a loadbalance in the past could not be seen by
newly added nodes (CASSANDRA-1467)
* exposed endpoint states (gossip details) via jmx (CASSANDRA-1467)
* ensure that compacted sstables are not included when new readers are
instantiated (CASSANDRA-1477)
* by default, calculate heap size and memtable thresholds at runtime (CASSANDRA-1469)
* fix races dealing with adding/dropping keyspaces and column families in
rapid succession (CASSANDRA-1477)
* clean up of Streaming system (CASSANDRA-1503, 1504, 1506)
* add options to configure Thrift socket keepalive and buffer sizes (CASSANDRA-1426)
* make contrib CassandraServiceDataCleaner recursive (CASSANDRA-1509)
* min, max compaction threshold are configurable and persistent
per-ColumnFamily (CASSANDRA-1468)
* fix replaying the last mutation in a commitlog unnecessarily
(CASSANDRA-1512)
* invoke getDefaultUncaughtExceptionHandler from DTPE with the original
exception rather than the ExecutionException wrapper (CASSANDRA-1226)
* remove Clock from the Thrift (and Avro) API (CASSANDRA-1501)
* Close intra-node sockets when connection is broken (CASSANDRA-1528)
* RPM packaging spec file (CASSANDRA-786)
* weighted request scheduler (CASSANDRA-1485)
* treat expired columns as deleted (CASSANDRA-1539)
* make IndexInterval configurable (CASSANDRA-1488)
* add describe_snitch to Thrift API (CASSANDRA-1490)
* MD5 authenticator compares plain text submitted password with MD5'd
saved property, instead of vice versa (CASSANDRA-1447)
* JMX MessagingService pending and completed counts (CASSANDRA-1533)
* fix race condition processing repair responses (CASSANDRA-1511)
* make repair blocking (CASSANDRA-1511)
* create EndpointSnitchInfo and MBean to expose rack and DC (CASSANDRA-1491)
* added option to contrib/word_count to output results back to Cassandra
(CASSANDRA-1342)
* rewrite Hadoop ColumnFamilyRecordWriter to pool connections, retry to
multiple Cassandra nodes, and smooth impact on the Cassandra cluster
by using smaller batch sizes (CASSANDRA-1434)
* fix setting gc_grace_seconds via CLI (CASSANDRA-1549)
* support TTL'd index values (CASSANDRA-1536)
* make removetoken work like decommission (CASSANDRA-1216)
* make cli comparator-aware and improve quote rules (CASSANDRA-1523,-1524)
* sstable versioning (CASSANDRA-389)
* switched to slf4j logging (CASSANDRA-625)
* add (optional) expiration time for column (CASSANDRA-699)
* access levels for authentication/authorization (CASSANDRA-900)
* add ReadRepairChance to CF definition (CASSANDRA-930)
* fix heisenbug in system tests, especially common on OS X (CASSANDRA-944)
* convert to byte[] keys internally and all public APIs (CASSANDRA-767)
* ability to alter schema definitions on a live cluster (CASSANDRA-44)
* renamed configuration file to cassandra.xml, and log4j.properties to
log4j-server.properties, which must now be loaded from
the classpath (which is how our scripts in bin/ have always done it)
(CASSANDRA-971)
* change get_count to require a SlicePredicate. create multi_get_count
(CASSANDRA-744)
* re-organized endpointsnitch implementations and added SimpleSnitch
(CASSANDRA-994)
* Added preload_row_cache option (CASSANDRA-946)
* add CRC to commitlog header (CASSANDRA-999)
* removed deprecated batch_insert and get_range_slice methods (CASSANDRA-1065)
* add truncate thrift method (CASSANDRA-531)
* http mini-interface using mx4j (CASSANDRA-1068)
* optimize away copy of sliced row on memtable read path (CASSANDRA-1046)
* replace constant-size 2GB mmaped segments and special casing for index
entries spanning segment boundaries, with SegmentedFile that computes
segments that always contain entire entries/rows (CASSANDRA-1117)
* avoid reading large rows into memory during compaction (CASSANDRA-16)
* added hadoop OutputFormat (CASSANDRA-1101)
* efficient Streaming (no more anticompaction) (CASSANDRA-579)
* split commitlog header into separate file and add size checksum to
mutations (CASSANDRA-1179)
* avoid allocating a new byte[] for each mutation on replay (CASSANDRA-1219)
* revise HH schema to be per-endpoint (CASSANDRA-1142)
* add joining/leaving status to nodetool ring (CASSANDRA-1115)
* allow multiple repair sessions per node (CASSANDRA-1190)
* optimize away MessagingService for local range queries (CASSANDRA-1261)
* make framed transport the default so malformed requests can't OOM the
server (CASSANDRA-475)
* significantly faster reads from row cache (CASSANDRA-1267)
* take advantage of row cache during range queries (CASSANDRA-1302)
* make GCGraceSeconds a per-ColumnFamily value (CASSANDRA-1276)
* keep persistent row size and column count statistics (CASSANDRA-1155)
* add IntegerType (CASSANDRA-1282)
* page within a single row during hinted handoff (CASSANDRA-1327)
* push DatacenterShardStrategy configuration into keyspace definition,
eliminating datacenter.properties. (CASSANDRA-1066)
* optimize forward slices starting with '' and single-index-block name
queries by skipping the column index (CASSANDRA-1338)
* streaming refactor (CASSANDRA-1189)
* faster comparison for UUID types (CASSANDRA-1043)
* secondary index support (CASSANDRA-749 and subtasks)
* fix key ordering in range query results with RandomPartitioner
and ConsistencyLevel > ONE (CASSANDRA-1145)
* fix for range query starting with the wrong token range (CASSANDRA-1042)
* page within a single row during hinted handoff (CASSANDRA-1327)
* fix compilation on non-sun JDKs (CASSANDRA-1061)
* remove String.trim() call on row keys in batch mutations (CASSANDRA-1235)
* Log summary of dropped messages instead of spamming log (CASSANDRA-1284)
* add dynamic endpoint snitch (CASSANDRA-981)
* fix streaming for keyspaces with hyphens in their name (CASSANDRA-1377)
* fix errors in hard-coded bloom filter optKPerBucket by computing it
algorithmically (CASSANDRA-1220
* remove message deserialization stage, and uncap read/write stages
so slow reads/writes don't block gossip processing (CASSANDRA-1358)
* add jmx port configuration to Debian package (CASSANDRA-1202)
* use mlockall via JNA, if present, to prevent Linux from swapping
out parts of the JVM (CASSANDRA-1214)
* avoid queuing multiple hint deliveries for the same endpoint
(CASSANDRA-1229)
* better performance for and stricter checking of UTF8 column names
(CASSANDRA-1232)
* extend option to lower compaction priority to hinted handoff
as well (CASSANDRA-1260)
* log errors in gossip instead of re-throwing (CASSANDRA-1289)
* avoid aborting commitlog replay prematurely if a flushed-but-
not-removed commitlog segment is encountered (CASSANDRA-1297)
* fix duplicate rows being read during mapreduce (CASSANDRA-1142)
* failure detection wasn't closing command sockets (CASSANDRA-1221)
* cassandra-cli.bat works on windows (CASSANDRA-1236)
* pre-emptively drop requests that cannot be processed within RPCTimeout
(CASSANDRA-685)
* add ack to Binary write verb and update CassandraBulkLoader
to wait for acks for each row (CASSANDRA-1093)
* added describe_partitioner Thrift method (CASSANDRA-1047)
* Hadoop jobs no longer require the Cassandra storage-conf.xml
(CASSANDRA-1280, CASSANDRA-1047)
* log thread pool stats when GC is excessive (CASSANDRA-1275)
* remove gossip message size limit (CASSANDRA-1138)
* parallelize local and remote reads during multiget, and respect snitch
when determining whether to do local read for CL.ONE (CASSANDRA-1317)
* fix read repair to use requested consistency level on digest mismatch,
rather than assuming QUORUM (CASSANDRA-1316)
* process digest mismatch re-reads in parallel (CASSANDRA-1323)
* switch hints CF comparator to BytesType (CASSANDRA-1274)
* retry to make streaming connections up to 8 times. (CASSANDRA-1019)
* reject describe_ring() calls on invalid keyspaces (CASSANDRA-1111)
* fix cache size calculation for size of 100% (CASSANDRA-1129)
* fix cache capacity only being recalculated once (CASSANDRA-1129)
* remove hourly scan of all hints on the off chance that the gossiper
missed a status change; instead, expose deliverHintsToEndpoint to JMX
so it can be done manually, if necessary (CASSANDRA-1141)
* don't reject reads at CL.ALL (CASSANDRA-1152)
* reject deletions to supercolumns in CFs containing only standard
columns (CASSANDRA-1139)
* avoid preserving login information after client disconnects
(CASSANDRA-1057)
* prefer sun jdk to openjdk in debian init script (CASSANDRA-1174)
* detect partioner config changes between restarts and fail fast
(CASSANDRA-1146)
* use generation time to resolve node token reassignment disagreements
(CASSANDRA-1118)
* restructure the startup ordering of Gossiper and MessageService to avoid
timing anomalies (CASSANDRA-1160)
* detect incomplete commit log hearders (CASSANDRA-1119)
* force anti-entropy service to stream files on the stream stage to avoid
sending streams out of order (CASSANDRA-1169)
* remove inactive stream managers after AES streams files (CASSANDRA-1169)
* allow removing entire row through batch_mutate Deletion (CASSANDRA-1027)
* add JMX metrics for row-level bloom filter false positives (CASSANDRA-1212)
* added a redhat init script to contrib (CASSANDRA-1201)
* use midpoint when bootstrapping a new machine into range with not
much data yet instead of random token (CASSANDRA-1112)
* kill server on OOM in executor stage as well as Thrift (CASSANDRA-1226)
* remove opportunistic repairs, when two machines with overlapping replica
responsibilities happen to finish major compactions of the same CF near
the same time. repairs are now fully manual (CASSANDRA-1190)
* add ability to lower compaction priority (default is no change from 0.6.2)
(CASSANDRA-1181)
* Use a separate interpreter for each calling SQL userid in PL/Perl and PL/Tcl
* Improve pg_get_expr() security fix so that the function can still be used on
the output of a sub-select
* Fix incorrect placement of placeholder evaluation
* Fix join removal's handling of placeholder expressions
* Fix possible duplicate scans of UNION ALL member relations
* Prevent infinite loop in ProcessIncomingNotify() after unlistening
* Prevent show_session_authorization() from crashing within autovacuum
processes
* Re-allow input of Julian dates prior to 0001-01-01 AD
* Make psql recognize "DISCARD ALL" as a command that should not be encased in
a transaction block in autocommit-off mode
* Update build infrastructure and documentation to reflect the source code
repository's move from CVS to Git
* Use a separate interpreter for each calling SQL userid in PL/Perl and PL/Tcl
* Prevent possible crashes in pg_get_expr() by disallowing it from being called
with an argument that is not one of the system catalog columns it's intended
to be used with
* Treat exit code 128 (ERROR_WAIT_NO_CHILDREN) as non-fatal on Windows
* Fix incorrect placement of placeholder evaluation
* Fix possible duplicate scans of UNION ALL member relations
* Fix "cannot handle unplanned sub-select" error
* Fix mishandling of whole-row Vars that reference a view or sub-select and
appear within a nested sub-select
* Fix mishandling of cross-type IN comparisons
* Fix computation of "ANALYZE" statistics for tsvector columns
* Improve planner's estimate of memory used by array_agg(), string_agg(), and
similar aggregate functions
* Fix failure to mark cached plans as transient
* Reduce PANIC to ERROR in some occasionally-reported btree failure cases, and
provide additional detail in the resulting error messages
* Fix incorrect search logic for partial-match queries with GIN indexes
* Prevent show_session_authorization() from crashing within autovacuum
processes
* Defend against functions returning setof record where not all the returned
rows are actually of the same rowtype
* Fix possible corruption of pending trigger event lists during subtransaction
rollback
* Fix possible failure when hashing a pass-by-reference function result
* Improve merge join's handling of NULLs in the join columns
* Take care to fsync the contents of lockfiles (both "postmaster.pid" and the
socket lockfile) while writing them
* Avoid recursion while assigning XIDs to heavily-nested subtransactions
* Avoid holding open old WAL segments in the walwriter process
* Fix log_line_prefix's %i escape, which could produce junk early in backend
startup
* Prevent misinterpretation of partially-specified relation options
for TOAST tables
* Fix inheritance count tracking in "ALTER TABLE ... ADD CONSTRAINT"
* Fix possible data corruption in "ALTER TABLE ... SET TABLESPACE" when
archiving is enabled
* Allow "CREATE DATABASE" and "ALTER DATABASE ... SET TABLESPACE" to be
interrupted by query-cancel
* Improve "CREATE INDEX"'s checking of whether proposed index
expressions are immutable
* Fix "REASSIGN OWNED" to handle operator classes and families
* Fix possible core dump when comparing two empty tsquery values
* Fix LIKE's handling of patterns containing % followed by _
* Use a separate interpreter for each calling SQL userid in PL/Perl and PL/Tcl
* Prevent possible crashes in pg_get_expr() by disallowing it from being called
with an argument that is not one of the system catalog columns it's intended
to be used with
* Treat exit code 128 (ERROR_WAIT_NO_CHILDREN) as non-fatal on Windows
* Fix incorrect usage of non-strict OR joinclauses in Append indexscans
* Fix possible duplicate scans of UNION ALL member relations
* Fix "cannot handle unplanned sub-select" error
* Fix failure to mark cached plans as transient
* Reduce PANIC to ERROR in some occasionally-reported btree failure cases, and
provide additional detail in the resulting error messages
* Prevent show_session_authorization() from crashing within autovacuum
processes
* Defend against functions returning setof record where not all the returned
rows are actually of the same rowtype
* Fix possible failure when hashing a pass-by-reference function result.
* Improve merge join's handling of NULLs in the join columns
* Take care to fsync the contents of lockfiles (both "postmaster.pid" and the
socket lockfile) while writing them
* Avoid recursion while assigning XIDs to heavily-nested subtransactions
* Avoid holding open old WAL segments in the walwriter process
* Fix log_line_prefix's %i escape, which could produce junk early in backend
startup
* Fix possible data corruption in "ALTER TABLE ... SET TABLESPACE" when
archiving is enabled
* Allow "CREATE DATABASE" and "ALTER DATABASE ... SET TABLESPACE" to be
interrupted by query-cancel
* Fix "REASSIGN OWNED" to handle operator classes and families
* Fix possible core dump when comparing two empty tsquery values
* Fix LIKE's handling of patterns containing % followed by _
* Use a separate interpreter for each calling SQL userid in PL/Perl and PL/Tcl
* Prevent possible crashes in pg_get_expr() by disallowing it from being called
with an argument that is not one of the system catalog columns it's intended
to be used with
* Fix Windows shared-memory allocation code
* Treat exit code 128 (ERROR_WAIT_NO_CHILDREN) as non-fatal on Windows
* Fix possible duplicate scans of UNION ALL member relations
* Fix "cannot handle unplanned sub-select" error
* Reduce PANIC to ERROR in some occasionally-reported btree failure cases, and
provide additional detail in the resulting error messages
* Prevent show_session_authorization() from crashing within autovacuum
processes
* Defend against functions returning setof record where not all the returned
rows are actually of the same rowtype
* Fix possible failure when hashing a pass-by-reference function result
* Take care to fsync the contents of lockfiles (both "postmaster.pid" and the
socket lockfile) while writing them
* Avoid recursion while assigning XIDs to heavily-nested subtransactions
* Fix log_line_prefix's %i escape, which could produce junk early in backend
startup
* Fix possible data corruption in "ALTER TABLE ... SET TABLESPACE" when
archiving is enabled
* Allow "CREATE DATABASE" and "ALTER DATABASE ... SET TABLESPACE" to be
interrupted by query-cancel
* In PL/Python, defend against null pointer results from PyCObject_AsVoidPtr
and PyCObject_FromVoidPtr
* Improve "contrib/dblink"'s handling of tables containing dropped columns
* Fix connection leak after "duplicate connection name" errors in
"contrib/dblink"
* Fix "contrib/dblink" to handle connection names longer than 62 bytes
correctly
For full changes, please refer:
http://dev.mysql.com/doc/refman/5.1/en/news-5-1-51.html
Here is summary for security fixes:
* Security Fix: During evaluation of arguments to extreme-value
functions (such as LEAST() and GREATEST()), type errors did not
propagate properly, causing the server to crash. (Bug#55826)
* Security Fix: The server could crash after materializing a derived
table that required a temporary table for grouping. (Bug#55568)
* Security Fix: A user-variable assignment expression that is
evaluated in a logical expression context can be precalculated in a
temporary table for GROUP BY. However, when the expression value is
used after creation of the temporary table, it was re-evaluated, not
read from the table and a server crash resulted. (Bug#55564)
* Security Fix: Pre-evaluation of LIKE predicates during view
preparation could cause a server crash. (Bug#54568)
* Security Fix: GROUP_CONCAT() and WITH ROLLUP together could cause a
server crash. (Bug#54476)
* Security Fix: Queries could cause a server crash if the GREATEST()
or LEAST() function had a mixed list of numeric and LONGBLOB
arguments, and the result of such a function was processed using an
intermediate temporary table. (Bug#54461)
* Security Fix: Queries with nested joins could cause an infinite loop
in the server when used from stored procedures and prepared
statements. (Bug#53544)
* Security Fix: The PolyFromWKB() function could crash the server when
improper WKB data was passed to the function. (Bug#51875)
Upstream changes:
2.0004 Sep 12 18:38:00 2010 PDT
- t/27_filehandle.t has been fixed to work with Test::More 2.
2.0003 Sep 12 12:02:00 2010 PDT
- t/43_transaction_maximum.t has been fixed. It was broken in the
previous release for systems that will only open so many files.
2.0002 Sep 5 12:35:00 2010 PDT
- Error messages from DBM::Deep now use the caller???s file name.
They used incorrectly to use the name of the program ($0).
- begin_work now checks correctly to see whether the new transac-
tion exceeds the number the file was created to support. Some-
times it would allow a few more transactions, and then proceed
to corrupt the database (RT#60903).
- The description of the file header in DBM::Deep::Internals has
been brought up to date.
* Add a comment to patch.
Thu Sep 16 2010 version 0.99992 released
* ODBC::Statement.each/each_hash now output arrays when
invoked without block
* column keys in result hashes now are cached/recycled Ruby strings
* added ODBC::Database methods use_time/use_utc to directly
output Ruby Time/Date objects
* added encoding support in the UTF8 variant for Ruby >= 1.9
* added module constant ODBC::UTF8 to indicate variant of module
* fixes for M$SQL server reporting zero column sizes
and unknown data types for varchar(strmax) columns
* eliminated compiler warnings
* use StringValueCStr instead of STR2CSTR (Ruby >= 1.9.1)
* small change for decision when to use SQLGetData() loop
pkgsrc changes:
- bump required DBI version
Upstream changes:
0.40 2010-09-17T18:44:01
- The code refs passed to `run()`, `txn()`, and `svp()` now know their
contexts, so that `wantarray` can be used to decide what to return.
Patch from Yaroslav Korshak.
- Set `AutoInactiveDestroy` on connect with DBI 1.614 and higher, unless
it is explicitly set in the attributes. This makes things even safer
in a forking environment, preventing a parent process from getting
disconnected when a child exits without using the connection. The
reports from Peter Rabbitson and Aran Deltac and subsequent discussion
with Tim Bunce led to the addition of this attribute in DBI 1.614,
which is now the recommended version of DBI.
- `DESTROY()` no longer pings the database or rolls back transactions.
It now simply calls `disconnect`. This avoids warnings during global
destruction, and doesn't seem necessary anyway, as the DBI does these
things during global destruction (and always has). Thanks to Matt
Trout for the heads-up.
- `DESTROY()` now clears `CachedKids`, following the precedent of
DBIx::Class. May not be needed for recent-ish drivers, but seems
harmless and it's nice to avoid warnings were possible. Reported by
Matt Trout.
- The `connected()` method no longer `local`ly sets `RaiseError`. It
instead leaves that to the drivers (currenly only Driver::Oracle).
- The exception classes `DBIx::Connector::TxnRollbackError` and
`DBIx::Connector::SvpRollbackError` now use `our @ISA =` instead of
`use base` to inherit from `DBIx::Connector::RollbackError. This is to
avoid failures from mod_perl restarts. Suggested by Matt Trout.
- Require Test::Pod 1.41 for POD tests so that `L<text|url>` is
considered valid.
Upstream changes:
Changes in DBD::ODBC 1.25 September 22, 2010
* Official release of 1.25 combining all the changes in the 1.24_x
development releases.
Changes in DBD::ODBC 1.24_6 September 16, 2010
* rt 61370 - default XML type parameters in SQL Server to SQL_WCHAR so
they accept unicode strings.
Changes in DBD::ODBC 1.24_5 September 15, 2010
* Fixed missing SvSETMAGIC on a bound scalar which was causing length()
to return the wrong result - see http://www.perlmonks.org/?node_id=860211
and a big thank you to Perl Monks and in particular ikegami.
* Changed bind_col so it actually pays attention to the TYPE attribute as
you could not override the bind type of a bound column before.
Changes in DBD::ODBC 1.24_4 September 8, 2010
* Left a sv_undef in - thanks smoke testers for finding that.
* Change sprintf to snprintf for safety.
Changes in DBD::ODBC 1.24_3 September 6, 2010
* Added note from Robert Freimuth for obtaining the last insert ID in
MS Access.
* Changed all &sv_yes/&sv_no occurrances in XS to PL_sv_yes/PL_sv_no as
the originals have now gone from blead Perl.
* Minor change to fix missing newline in trace output.
* Added a FAQ entry for how "use regional settings" in MS SQL Server
breaks things.
Changes in DBD::ODBC 1.24_2 July 23, 2010
* Fix rt57957 reported by Marc Prewitt. DBD::ODBC was not ignoring named
placeholders and ? inside comments. Comments are deemed as text between
"/*" and "*/" (if not in a literal) and line comments begin with "--".
* Added a FAQ on procedures not completing in MS SQL Server. Thanks to
Peter Rabbitson for hitting this problem and reminding me I'd seen it a
couple of times before.
* Added a FAQ on equality comparisons with ntext columns.
* Added pod for last_insert_id which is not currently supported.
* Fix bug where if SQLMoreResults was called and failed it was not reported.
* Removed some unused fields from the fbh structure which should save a
little memory for each column in a result-set.
* Started adding support for DBI's DiscardString and StrictlyTyped but not
complete yet so don't use them yet.
* Added experimental odbc_lob_read method - see pod. Thanks to tye and
ikegami on perlmonks for pointing out some problems with my initial
implementation.
* Moved the binding of columns to the first call to fetch instead of after
execute is called as it prevents bind_col overrriding the type used for
binding and I needed it to support odbc_lob_read. This may have undesired
affects so any testing of this release would be appreciated.
* Added bind_col method so DBD::ODBC can support attributes on a bind_col
call.
* Removed support for DBI's blob_read - it was totally flawed and did not
work at all. May replace in the future.
* Added support for MS SQL Server XML type (SQL type -152). See rt 59621.
* Added note on do method implementation in DBD::ODBC and how some may
consider it to deviate from the DBI specification.
Changes in DBD::ODBC 1.24_1 May 27, 2010
* Corrected pod and private attributes for the odbc_SQL_DRIVER_ODBC_VER
attribute which was documented as SQL_DRIVER_ODBC_VER.
* Added FAQ on pauses on statement destruction when all the result-set
has not been retrieved (mostly freeTDS and MS SQL Server ODBC Driver).
* Fixed bug introduced in 1.24 where if you are using MS SQL Server, and
you are preparing, binding placeholders and re-executing multiple times
you may get a "Invalid character value for cast specification" error.
Thanks to anonymous for spotting this and producing a standalone example
of the problem that made it so much easier to find.
Changes in DBD::ODBC 1.24 May 14, 2010
* Minor change in Makefile.PL to only use NO_META if ExtUtils::MakeMaker
is at least at version 6.10. Reported by Chunmei Wu.
* Minor change to test rt_50852 which had wrong skip count.
Changes in DBD::ODBC 1.23_5 May 6, 2010
* Added advice from Jan Dubois (ActiveState) on building DBD::ODBC for
ActivePerl (see README.windows).
* rt56692. Fix spelling mistake in DBD::ODBC pod - thanks to Ansgar
Burchardt.
* Added a 7th way to help documentation - become a tester.
* Hopefully fixed problems building on windows 32 bit platforms that have
old sql header files not mentioning SQLLEN/SQLULEN.
Changes in DBD::ODBC 1.23_4 April 13, 2010
* Added more FAQs.
* Small optimization to remove calls to SQLError when tracing is not
turned on. This was a bug. We only need to call SQLError when SQLExecute
succeeds if there is an error handler or if tracing is enabled. The test
was for tracing disabled!
* Large experimental change primarily affecting MS SQL Server users but it
does impact on other drivers too. Firstly, for MS SQL Server users we no
longer SQLFreeStmt(SQL_RESET_PARAMS) and rebind bound parameters as it
is causing the MS SQL Server ODBC driver to re-prepare the SQL. Secondly
(for all drivers) we no longer call SQLBindParameter again IF all the
arguments to it are the same as the previous call. If you find something
not working you better let me know as this is such a speed up I'm going
to go with this unless anyone complains.
* Minor change to avoid a double call to SQLGetInfo for SQL_DBMS_NAME
immediately after connection.
* Small change for rt 55736 (reported by Matthew Kidd) to not assume a
parameter is varXXX(max) if SQLDescribeParam failed in the Microsoft
Native Client driver.
Changes in DBD::ODBC 1.23_3 March 24, 2010
* Minor changes to Makefile.PL and dbdimp.c to remove some compiler
warnings.
* Fix some calls to SQLMoreResults which were not passing informational
messages on to DBI's set_err. As you could not see all the informational
messages from procedures, only the first.
* Fix minor issue in 02simple test which printed the Perl subversion
before the version.
* Changes to 20SqlServer.t to fix a few typos and make table names
consistent wrt to case - (as someone had turned on case-sensitivity in
SQL Server) Similar changes in rt_38977.t and rt_50852.t
Changes in DBD::ODBC 1.23_2 January 26, 2010
* Fixed bug in Makefile.PL which could fail to find unixODBC/iODBC header
files but not report it as a problem. Thanks to Thomas J. Dillman and
his smoker for finding this.
* Fixed some compiler warnings in dbdimp.c output by latest gcc wrt to
format specifiers in calls to PerlIO_printf.
* Added the odbc_force_bind_type attribute to help sort out problems with
ODBC Drivers which support SQLDescribeParam but describe the parameters
incorrectly (see rt 50852). Test case also added as rt_50852.t.
Changes in DBD::ODBC 1.23_1 October 21, 2009
* Makefile.PL changes: some formatting changes to output warn if unixodbc
headers are not found that the unixodbc-dev package is not installed use
$arext instead of "a" pattern match for pulling libodbc.* changed warn
if DBI_DSN etc not defined change odbc_config output for stderr to
/dev/null missing / on /usr/local wheb finding find_dm_hdr_files()
* New FAQ entries from Oystein Torget for bind parameter bugs in SQL
Server.
* rt_46597.rt - update on wrong table
* Copied dbivport.h from the latest DBI distribution into DBD::ODBC.
* Added if_you_are_taking_over_this_code.txt.
* Add latest Devel::PPPort ppport.h to DBD::ODBC and followed all
recommendations for changes to dbdimp.c.
* Added change to Makefile.PL provided by Shawn Zong to make
Windows/Cygwin work again.
* Minor change to Makefile.PL to output env vars to help in debugging
peoples build failures.
* Added odbc_utf8_on attribute to dbh and sth handles to mark all strings
coming from the database as utf8. This is for Aster (based on
PostgreSQL) which returns all strings as UTF-8 encoded unicode. Thanks
to Noel Burton-Krahn.
pkgsrc changes:
- adjust dependencies
Upstream changes:
2010-09-18 0.31 H.Merijn Brand
* Require 5.8.1 (effectively already doing so by requiring DBI-1.614)
* Update tests to use warnings and done_testing ()
requires Test::More-0.90, which is also required for DBI
* Better diagnostics for empty files
* Allow late setting of attributes (RT#61168) - requires DBI-1.614
Upstream changes:
Changes in DBI 1.615 (svn r14438) 21st September 2010
Fixed t/51dbm_file for file/directory names with whitespaces in them
RT#61445 (Jens Rehsack)
Fixed compiler warnings from ignored hv_store result (Martin J. Evans)
Fixed portability to VMS (Craig A. Berry)
Changes in DBI 1.614 (svn r14408) 17th September 2010
Fixed bind_param () in DBI::DBD::SqlEngine (rt#61281)
Fixed internals to not refer to old perl symbols that
will no longer be visible in perl >5.13.3 (Andreas Koenig)
Many compiled drivers are likely to need updating.
Fixed issue in DBD::File when absolute filename is used as table name
(Jens Rehsack)
Croak manually when file after tie doesn't exists in DBD::DBM
when it have to exists (Jens Rehsack)
Fixed issue in DBD::File when users set individual file name for tables
via f_meta compatibility interface - reported by H.Merijn Brand while
working on RT#61168 (Jens Rehsack)
Changed 50dbm_simple to simplify and fix problems (Martin J. Evans)
Changed 50dbm_simple to skip aggregation tests when not using
SQL::Statement (Jens Rehsack)
Minor speed improvements in DBD::File (Jens Rehsack)
Added $h->{AutoInactiveDestroy} as simpler safer form of
$h->{InactiveDestroy} (David E. Wheeler)
Added ability for parallel testing "prove -j4 ..." (Jens Rehsack)
Added tests for delete in DBM (H.Merijn Brand)
Added test for absolute filename as table to 51dbm_file (Jens Rehsack)
Added two initialization phases to DBI::DBD::SqlEngine (Jens Rehsack)
Added improved developers documentation for DBI::DBD::SqlEngine
(Jens Rehsack)
Added guides how to write DBI drivers using DBI::DBD::SqlEngine
or DBD::File (Jens Rehsack)
Added register_compat_map() and table_meta_attr_changed() to
DBD::File::Table to support clean fix of RT#61168 (Jens Rehsack)
* Fix a possible crash on Solaris when closing the server status windows.
* Fix a possible crash on Solaris when cancelling a debugging operation.
* Fix a drawing glitch in the GQB, if the canvas exceeds the hard-coded minimum
size.
* Get rid of the schema name and double quotes of the result of the format_type
stored procedure
* Add a title to the frmStatus window when launched in standalone mode.
* Fix an issue with tab keypress on the frmQuery with Windows.
* Disable the "output pad" menu when the user is on the GQB tab.
* Disable the "scratch pad" menu when the user is on the GQB tab.
* Fix another issue with the connection check code.
* Fix an issue where the application_name is used as the database name during
a connection.
* Fix the connection check code.
* Don't send the Greenplum query for each user, but import it in the big roles
query.
* Ensure the highlight colour in the SQL textboxes will work with the system
colours.
* Make sure menubar's and toolbar's items are enabled/disabled as appropriate
when selecting a server's group, per a report from Steffen Kuhn.
* Ensure the Drop option is shown for rules when appropriate.
* Fix a crash that occured when pressing a key on a text cell in the Edit Grid,
when not in Edit mode.
pkgsrc changes:
- adjust dependencies
Upstream changes:
0.07002 2010-09-11 01:48:00
- Properly detect a schema loaded with use_moose on subsequent
reloads
- Die with a sensible message when a schema loaded with
use_moose => 1 is reloaded with use_moose => 0
- Switch to MRO::Compat
- Fix oracle common tests failure / lc(undef) warnings
- Bump Moose/Moosex::NonMoose optional dependencies to fixed-up
versions
- Fix mssql common tests failures with MSSQL 2005 (skip test of
datatypes found only on MSSQL 2008)
- Fix DB2 v8 test failures (skip tests of graphics types found
only on DB2 v9)
- Fix dangerous invocation of ->meta on classes during upgrade
(may be *non* moosified and contain a user-defined meta() )
- Multiple test cleanups and refactorings
Apache CouchDB is a distributed, fault-tolerant and schema-free document-
oriented database accessible via a RESTful HTTP/JSON API. Among other
features, it provides robust, incremental replication with bi-directional
conflict detection and resolution, and is queryable and indexable using
a table-oriented view engine with JavaScript acting as the default view
definition language.
CouchDB is written in Erlang, but can be easily accessed from any
environment that provides means to make HTTP requests. There are
a multitude of third-party client libraries that make this even easier
for a variety of programming languages and environments.
(Based on wip/couchdb.)
9.0 includes more major features than any release before it, including:
* Hot standby
* Streaming replication
* In-place upgrades
* 64-bit Windows builds
* Easy mass permissions management
* Anonymous blocks and named parameter calls for stored procedures
* New windowing functions and ordered aggregates
... and many more. For details on the over 200 additions and improvements in
this version, developed by over a hundred contributors, please see the release
notes.
Based on PR#43854 by GEnnady Proskurin,
remove FreeBSD-port-izm, really destdir support, and some fixes.
GigaBASE: Object-Relational Database Management System
GigaBASE inherits most of the features of FastDB, but uses page pool instead
of direct mapping of file on virtual memory. So GigaBASE is able to handle
database, which size significantly exceeds size of computer physical memory.
Convenient and flexible C++ interface makes development of application for
GigaBASE very easy and automatic scheme evaluation simplifies maintenance
and modification of the system. GigaBASE merges best features of relational
(simple data structure and non-procedural query language) and object-oriented
(direct object references, user defined types and methods) databases.
GigaBASE is primary oriented on application requiring fast data retrieving
by means of indices and direct object references, such as Web Server databases
applications.
SUBSQL utility can be used for database browsing and inspection, performing
online backups, database recovery, importing data to and exporting data from
database. GigaBASE will perform automatic recovery after system or application
crash, you should not worry about it. The only thing you can have to do manually
is stopping all database application if one of them is crashed leaving database
blocked.
pkgsrc changes:
- adjusting dependencies
Upstream changes:
revision 1.68 2010-09-16
----------------------------
- Document methods on Tree
- Add affordances for color coding placeholders
- Change ::Tree::whitespace to whitespace_keyword
revision 1.67_03 2010-09-11
----------------------------
- Add docs for SQL::Abstract::Tree->new
- correcty merge profile and parameters
- added fill_in_placeholders option for excellent copy/pasta
revision 1.67_02 2010-09-08
----------------------------
- rename DBIx::Class::Storage::PrettyPrinter to
DBIx::Class::Storage::Debug::PrettyPrint
- decreased a lot of indentation from ::Tree
- cleaned up handling of newlines inside of parens
revision 1.67_01 2010-09-06
----------------------------
- Add SQL::Abstract::Tree
- Add unindexed DBIx::Class::Storage::PrettyPrinter
- Better documentation of undef/NULL in where clause
- Depend on bugfixed Module::Install (now again installs
on old < 5.8.3 perls)
Upstream changes:
1.31 Wed 15 Sep 2010
- Production release, identical to 1.30_06
1.30_06 Thu 9 Sep 2010
- Resolved # 60860: Slow but steady memory leak on
last_insert_id calls (ISHIGAKI)
- Moved DBD::SQLite::FTS3Transitional into a dedicated dist (DAMI)
- Updated bundled Test::NoWarnings to 1.02 (ADAMK)
- Slightly bumped Test::More and added Test::Builder dependencies,
because they are inherited from the bundled Test::NoWarnings (ADAMK)
- Upgraded ppport.h to the latest version (ADAMK)
1.30_05 Fri 27 Aug 2010
- Test::NoWarnings bundled in the "inc" directory was ignored
in a new test. (ISHIGAKI)
1.30_04 Wed 25 Aug 2010
- Updated to SQLite 3.7.2 (DUNCAND)
- Resolved#60698: "Test failures with SQLite 3.7", using included
patch by Niko Tyni (ntyni@debian.org) of t/lib/Test.pm (DUNCAND)
- Added support for FTS3 tokenizers written in Perl. Added tests
and documentation on how to use FTS3. Changed compilation flag
to use the recommanded -DSQLITE_ENABLE_FTS3_PARENTHESIS
*** MAY POSSIBLY BREAK OLD APPLICATIONS THAT ALREADY USED FTS3 ***
(DAMI)
- Fixed various backward compatibility issues back to SQLite 3.6.1
(ISHIGAKI)
- Resolved#58332: Documentation error for preventing fsync
(ISHIGAKI)
1.30_03 Mon 21 May 2010
- Updated to SQLite 3.6.23.1 (ISHIGAKI)
- Resolved#56693: [PATCH] Fix spelling errors (patch by
Ansgar Burchardt) (ISHIGAKI)
- Added compile_options() to get compile options (ISHIGAKI)
- Fixed punctuation; suggested by Father Chrysostomos (ISHIGAKI)
- Ignore unknown collations, as they may be installed without
using DBD::SQLite's api. This should help ICU plugin. (ISHIGAKI)
1.30_02 Tue 30 Mar 2010
- Implemented sqlite_use_immediate_transaction database handle
attribute to avoid deadlocks easily (ISHIGAKI)
- Resolved#55466: Problem with names in DB that using square
bracers (ISHIGAKI)
- Added SQLITE_ENABLE_LOCKING_STYLE=0 for Mac OSX to avoid
compile error (ISHIGAKI)
1.30_01 Wed 10 Mar 2010
*** CHANGES THAT MAY POSSIBLY BREAK YOUR OLD APPLICATIONS ***
- Resolved#54271: Inserting a string with utf-8 flag on
corrupts BLOB data; now BLOB data is always stored as bytes
(without the utf-8 flag) even if it has the flag set (ISHIGAKI)
- Updated to SQLite 3.6.23 (DUNCAND)
- Implemented NUM_OF_PARAMS statement handle attribute (ISHIGAKI)
- Added experimental "sqlite_allow_multiple_statements"
database handle attribute, and "sqlite_unprepared_statements"
statement handle attribute, to allow processing a SQL dump.
(ISHIGAKI)
- Resolved#53579: Added a note and a test of placeholders.
(ISHIGAKI)
- Resolved#45113, which was actually an issue of dequoting
primary key column names (ISHIGAKI)
- You can now retrieve some of the statement handle attributes
before you execute. (ISHIGAKI)
- Added preamble to copy sqlite3.[hc] files into a share
directory (where you can access via File::ShareDir) to allow
extension authors to use the same C source/header as they
used to build DBD::SQLite itself. (ISHIGAKI)
* Added Performance event monitoring support for DTrace and SystemTap which can
be enabled during configuration. Static probes have been defined where
statistics values are updated, where mutex or transactional consistency lock
waits occur, and where some other potentially lengthy operations may be
initiated.
* Added a new acknowledge policy - DB_REPMGR_ACKS_ALL_AVAILABLE.
* Added transactional bulk loading optimization for non-nested transactions.
* Added exclusive transaction support for the SQL API.
* Added support for bulk update and delete in C# API.
* Added a db_replicate utility.
* Added an implementation of the Online Backup API.
* Added support in Berkeley DB SQL for the vacuum and incremental vacuum
pragmas.
* Added an option to automatically convert SQLite databases to Berkeley DB on
opening.
* Added BDBSQL_SHARE_PRIVATE, an option to enable inter-process sharing of
DB_PRIVATE environments using multiple-reader.
* Added database-level locking to optimize single-threaded operations and
remove locking limitations for database load operations.
* Added support for DB_INIT_REP, DB_PRIVATE, DB_REGISTER and DB_THREAD in
DB_CONFIG file.
* Added support for the BDBSQL_DEFAULT_PAGE_SIZE pragma to override Berkeley
DB's choice of page size depending on the filesystem. Use
SQLITE_DEFAULT_PAGE_SIZE rather than a hard-coded default.
* Added an extension that allows access to binary files stored outside of the
database. What is stored in the database is a pointer to the binary file.
* Added .stat command to dbsql shell to print environment, table, and index
statistics.
* Added enhancements to reduce the size of indexes in the SQL API by allowing
duplicates in the index database and moving the rowid from the index key into
the index data.
* Added a compile time flag BDBSQL_FILE_PER_TABLE that causes each table to be
created in a separate file. This flag replaces the BDBSQL_SPLIT_META_TABLE
flag.
* Added the handling of read only and read write open of the same database in
BDB SQL.
* Added an encryption implementation to the SQL API.pkg
= Active Record -- Object-relational mapping put on rails
Active Record connects classes to relational database tables to establish an
almost zero-configuration persistence layer for applications. The library
provides a base class that, when subclassed, sets up a mapping between the new
class and an existing table in the database. In context of an application,
these classes are commonly referred to as *models*. Models can also be
connected to other models; this is done by defining *associations*.
(This is part of Ruby on Rails 3.)
## Abstract ##
Arel is a Relational Algebra for Ruby.
1) simplifies the generation complex of SQL queries
2) adapts to various RDBMS systems
It is intended to be a framework framework; that is, you can build
your own ORM with it, focusing on innovative object and collection
modeling as opposed to database compatibility and query generation.
## Status ##
For the moment, Arel uses ActiveRecord's connection adapters to
connect to the various engines, connection pooling, perform quoting,
and do type conversion. On the horizon is the use of DataObjects
instead.
The long term goal, following both LINQ and DataMapper, is to have
Arel adapt to engines beyond RDBMS, including XML, IMAP, YAML, etc.
Now ruby-datamapper is a "meta-gem" package like a meta-package in pkgsrc.
* Use lang/ruby/gem.mk instead of misc/rubygems/rubygem.mk.
* Add LICENSE.
* Ajust new ruby package's framework.
* Update dependency according to gemspec.
= dm-transactions
This gem adds transaction support for datamapper. The currently
supported adapters are
* postgres
* mysql
* sqlite3
* oracle
* sqlserver