Rafael Kitover [Mon, 12 Mar 2012 16:45:45 +0000]
make Ordered support skimming (eg. TOP) limits
Skimming limits like TOP now require a unique key in the order_by clause
for stability, but Ordered only uses the position column in its order_by
clauses, while Result classes using Ordered generally have a compound
unique constraint on the grouping column and position column.
Append the grouping column to the end of the Ordered order_by clauses so
that it uses the full unique constraint and satisfy the skimming limit
stability requirements. This is harmless as the rows will still be
ordered on the position column.
Peter Rabbitson [Tue, 14 Feb 2012 22:05:04 +0000]
Fix more $schema leaks in the SQLT DBIC Parser (AUGHHHHH!!!!)
Peter Rabbitson [Tue, 14 Feb 2012 22:05:04 +0000]
Add a TODO test for a very elaborate stack leak scenario
Peter Rabbitson [Fri, 9 Mar 2012 03:40:28 +0000]
Fix fallout from
a807d012 (folks please run your podtests when hacking POD)
- Stray =end in DBIC/DB.pm
- Inadvertently hidden documentation of txn_scope_guard
(the =for comment never applied to the POD-block previously)
Jess Robinson [Wed, 7 Mar 2012 17:10:18 +0000]
Minor messing with syntactically incorrect POD (no =headX blocks inside =begin, and =for is a one-paragraph block)
Peter Rabbitson [Sat, 25 Feb 2012 14:36:43 +0000]
Simplify code of GenericSubQ limit dialect
Peter Rabbitson [Sat, 25 Feb 2012 14:36:43 +0000]
Some cleanups and code dedup of Top and FetchFirst limit dialects
Relax requirement of having a primary key declared on table
Peter Rabbitson [Sat, 25 Feb 2012 14:36:43 +0000]
Simplify RowNumber Over limit dialect implementation
Peter Rabbitson [Sat, 25 Feb 2012 14:36:43 +0000]
Deduplicate code in rownum limit emulation
Use the RSRC unique constraint traversal to determine if an order_by is stable
Peter Rabbitson [Sat, 25 Feb 2012 14:36:43 +0000]
Deduplicate code in RSC, use the RSRC unique constraint traversal instead
Peter Rabbitson [Sat, 25 Feb 2012 14:36:43 +0000]
Add an internal unique colset finder and relax complex $rs update/delete code
As long as there is something to correlate the subquery by we are good
Peter Rabbitson [Fri, 2 Mar 2012 10:41:42 +0000]
Remove the "row-by-row shift" Ordered.pm pessimization
The idea this is necessary was born when working with buggy old 1.1x
SQLite versions back in 2008. This no longer seems to be necessary,
but if I am wrong we can always bring it back with an actual
storage capability flag
Peter Rabbitson [Tue, 14 Feb 2012 22:05:04 +0000]
Fix embarrassing leak triggered on calling new_related on an uninserted object
Reason is a typo-ed hash element in a weaken() call back in
68f3b0dd. Add a
bunch of extra tests to catch this, and also better validate the new_related
behavior.
Peter Rabbitson [Fri, 17 Feb 2012 11:54:09 +0000]
Fix rogue child disconnecting a parent $dbh - no idea how I even missed that
Peter Rabbitson [Mon, 31 May 2010 22:26:39 +0000]
Majorly cleanup $rs->update/delete (no $rs-aware code should be in ::Storages)
Peter Rabbitson [Sat, 10 Dec 2011 23:51:12 +0000]
Overhaul of variable \[] handling in populate, and a lot of extra tests
Now things like multi-value \[ ' ? || ?', [...], [...] ] and populate
datasets where the values of the \[] change per row work correctly
Peter Rabbitson [Sat, 10 Dec 2011 23:44:37 +0000]
Switch from using execute_array to execute_for_fetch directly
This saves us from pivoting our data into column slices, which execute_array
promptly turns back into our initial row-based format to feed to
execute_for_fetch. Apart from the obvious speed gain, this saves a lot of
memory since it avoids 2 copies of the (possibly rather large) dataset
Peter Rabbitson [Sun, 11 Dec 2011 20:15:05 +0000]
Fix ASE bulk_insert for bind changes in
0e773352
When using the bulk API, update the binds to the structure expected by
_execute_array. Also temporarily disable $sth->finish in the bulk API
codepath because for some reason it rolls everything back. Modify the
test to always exercise both codepaths from now on.
Peter Rabbitson [Sat, 10 Dec 2011 22:50:36 +0000]
Factor out bindattr resolver and tighten code a bit
Zero functional changes
Peter Rabbitson [Fri, 3 Feb 2012 08:31:27 +0000]
Allow users to disable the "DT in search" warning introduced in
e1038213
Peter Rabbitson [Sat, 4 Feb 2012 21:27:51 +0000]
Shuffle things around, maint/ is now a proper toolchain tooldir
Peter Rabbitson [Sat, 4 Feb 2012 16:19:27 +0000]
Normalize -'s and _'s in maint names and Makefile options
Caleb Cushing [Thu, 2 Feb 2012 21:25:44 +0000]
remove stale link and doc readonly pool queries
transactions cause an implicit force to master, this documents how you can
override this to force to pool
Signed-off-by: Caleb Cushing <xenoterracide@gmail.com>
Caleb Cushing [Thu, 2 Feb 2012 20:50:43 +0000]
add a link to SQL::Abstract for WHERE clauses
Signed-off-by: Caleb Cushing <xenoterracide@gmail.com>
Peter Rabbitson [Mon, 30 Jan 2012 10:33:12 +0000]
Fix forgotten whitespace - this is what I get for no prove xt
Peter Rabbitson [Mon, 30 Jan 2012 08:45:55 +0000]
Only invoke the author Makefile.PL includes if we are not part of a `make` run
Matt Phillips [Mon, 30 Jan 2012 02:17:52 +0000]
Comment typo
Peter Rabbitson [Sun, 29 Jan 2012 12:37:08 +0000]
Forgotten diag and some clarifications of
fc4b0448
Peter Rabbitson [Tue, 24 Jan 2012 11:47:44 +0000]
Factor out the Makefile.PL into easily digestable snippets
Also add explicit guard for attempts to `make dist` from within non-author mode.
The rationale is to disallow dist building on machines that do not have the optdeps
installed (this still does not giarantee `make test` will run, but is at least a
nudge in the right direction)
Peter Rabbitson [Thu, 26 Jan 2012 11:11:15 +0000]
Assert that complex bindtytyping passage works for the search() bind attribute
Graham Knop [Tue, 17 Jan 2012 17:18:43 +0000]
use more correct subsection links in POD
Graham Knop [Tue, 17 Jan 2012 17:25:49 +0000]
remove ::Storage::DBI::sth from POD as it should never have been public
Graham Knop [Tue, 17 Jan 2012 17:22:00 +0000]
fix PrettyPrint package link in POD
Graham Knop [Tue, 17 Jan 2012 17:20:34 +0000]
correct organization for SQLite POD
Rafael Kitover [Wed, 18 Jan 2012 14:56:18 +0000]
issue warning for DateTimes passed to ->search
Issue a carp_unique when DateTime objects are detected in binds in
::Storage::DBI with a pointer to the Cookbook recipe for formatting
DateTime objects for queries.
Add a test for the warning in t/inflate/datetime.t, which already has
TODO tests for DTs in ->search.
Rafael Kitover [Tue, 10 Jan 2012 21:56:03 +0000]
add POD on how to use Moose in custom ResultSets
Thanks to mst for providing the relevant info.
Peter Rabbitson [Thu, 5 Jan 2012 02:59:41 +0000]
Trailing WS crusade - got to save them bits
Jess Robinson [Fri, 9 Dec 2011 17:00:45 +0000]
Add link to SQLHackers documentation
Brad Davis [Wed, 4 Jan 2012 04:52:02 +0000]
- Fix typo (s/get_colum/get_column).
Alexander Hartmaier [Tue, 3 Jan 2012 12:00:47 +0000]
use Path::Class for finding subdirs of t and don't use global filehandle for slurping
Alexander Hartmaier [Wed, 14 Dec 2011 10:15:44 +0000]
refactored HashRefInflators internals
Peter Rabbitson [Mon, 19 Dec 2011 05:55:18 +0000]
Rewrite the HRI bench to produce consistent numbers with less handholding
- Now we auto-pull from git what we want to benchmark (by default last
2 commits + uncommitted changes if any)
- Run a very tight benchmarking loop, without requerying SQLite or have
any other unrelated distractions
- use DumbBench (much saner implementation and results, though slower)
Rafael Kitover [Thu, 1 Dec 2011 17:29:51 +0000]
Add live Firebird test for paging fix
8b31f62e
Peter Rabbitson [Thu, 1 Dec 2011 16:50:57 +0000]
Fix and test first_skip/skip_first limit dialects
Codebase didn't take in account the fact that limit bindvals for
SELECT FIRST x SKIP y and SELECT FIRST x SKIP y need to be inserted
at the head of the bind-assembly chain. Hence introducing a new
bind-chunk position 'pre_select'. While at it move the TOP dialect
to use it as well.
Extensive tests for both dialects, and also augment the test for
the Oracle RowNum dialect (no fixes necessary)
Peter Rabbitson [Tue, 29 Nov 2011 06:00:23 +0000]
Standardize hobbs' email address
Andrew Rodland [Tue, 29 Nov 2011 05:34:15 +0000]
Release 0.08196
Peter Rabbitson [Tue, 29 Nov 2011 05:31:45 +0000]
More test fixes following
4a425300 and new DBD::SQLite release
Peter Rabbitson [Sat, 26 Nov 2011 10:00:53 +0000]
Fix some logic pitfalls in the require tracer
Peter Rabbitson [Sat, 26 Nov 2011 01:41:16 +0000]
Fix the join/prefetch resolver when dealing with ''/undef/()
Peter Valdemar Mørch [Tue, 2 Aug 2011 18:18:17 +0000]
Modifying links to /condition to point to DBIC::Relationship::Base
Because that is where the condition description is to be found
Peter Rabbitson [Fri, 25 Nov 2011 23:22:17 +0000]
Fix copyright... in November
Peter Rabbitson [Fri, 25 Nov 2011 23:20:16 +0000]
Make both pg and mysql execute t/98savepoints.t if present
Peter Rabbitson [Fri, 25 Nov 2011 23:01:46 +0000]
Make tests pass with DBIC_TRACE and DBIC_TRACE_PROFILE set
Peter Rabbitson [Fri, 25 Nov 2011 22:20:44 +0000]
Fix TxnScopeGuard misbehaving on externally set $@ without inner exceptions
The guard is supposed to warn when it goes out of scope without a commit.
However this doesn't work if $@ was already set before the guard was created
and there were no eval{}s to clear it between definition and destruction.
Fixing this by storing a weakref to the current exception (if any) and
disregarding the contents of $@ if they match the ref we started with.
Peter Rabbitson [Thu, 24 Nov 2011 17:38:09 +0000]
Abstract away the CORE::GLOBAL::require override code, foolproof tests
Rewrite prompted by some weirdness in Package::Stash::XS and require overrides
on older perls < 5.8.7. Besides the cleaner code add a kick-ass require
tracer.
Peter Rabbitson [Fri, 25 Nov 2011 10:44:16 +0000]
More robust test suite skip-checks, check ENV before loading modules
Peter Rabbitson [Fri, 25 Nov 2011 10:35:00 +0000]
Switch the nobindvars test from MySQL to the always available SQLite
Peter Rabbitson [Tue, 23 Aug 2011 14:10:09 +0000]
Skip error/warn frames within CAG - saner callsite error messages this way
Mark A. Stratman [Tue, 14 Jun 2011 17:48:34 +0000]
Documented $resultsource->name
Peter Rabbitson [Tue, 6 Sep 2011 08:06:12 +0000]
Drop Math::BigInt optdep: no fixes concerning us were made since
Rafael Kitover [Thu, 24 Nov 2011 18:31:22 +0000]
Silence freetds/ODBC test warnings
The freetds+dynamic cursors TODO tests are throwing a warning for undef
in ->find, set the DBIC_NULLABLE_KEY_NOWARN env var to silence them.
This is not a solution of course, but we will deal with it when we
resolve the underlying issues with freetds and dynamic cursors.
Peter Rabbitson [Thu, 24 Nov 2011 13:49:11 +0000]
Start caching the result of various bind_attribute_by_data_type invocations
Not only is this a speed win - it also avoids multiple querying of DBD
versions, which can lead to a memory leak (because version.pm is silly).
Still go even further and only check the VERSION of a DBD once unless the
DBD got reloaded.
Peter Rabbitson [Thu, 24 Nov 2011 13:45:32 +0000]
Fix uninitializied warnings in ::Storage::Sybase::ASE, shuffle logic a bit
Peter Rabbitson [Thu, 24 Nov 2011 11:44:58 +0000]
Fix incorrect Test::Builder dep (RT#72282)
Peter Rabbitson [Thu, 6 Jan 2011 08:58:55 +0000]
Unhide ::SQLMaker::OracleJoins to properly appear on s.c.o.
Peter Rabbitson [Tue, 25 Oct 2011 09:08:22 +0000]
Pass tests with DBICTEST_SQLITE_USE_FILE set
Peter Rabbitson [Mon, 21 Nov 2011 22:34:40 +0000]
Changes for 135e8ce
Dagfinn Ilmari Mannsåker [Wed, 26 Oct 2011 10:56:12 +0000]
Mark ->with_deferred_fk_checks as RDBMS-specific
Peter Rabbitson [Fri, 12 Aug 2011 15:59:39 +0000]
Fixxor pause indexing
Peter Rabbitson [Fri, 12 Aug 2011 15:54:56 +0000]
Ensure t/53lean_startup.t remains lean
Peter Rabbitson [Fri, 12 Aug 2011 15:22:52 +0000]
Cleanup compose_namespace(), clarify leaktests wrt classdata
Peter Rabbitson [Thu, 11 Aug 2011 07:16:25 +0000]
Fix segfault in t/storage/quote_names.t
Peter Rabbitson [Tue, 9 Aug 2011 04:49:06 +0000]
Throw a sensible error when a malformed 'as'-spec is supplied
Peter Rabbitson [Tue, 9 Aug 2011 01:24:21 +0000]
Cleanup warnings in t/55namespaces_cleaned, sophisticate require overload
Peter Rabbitson [Sun, 7 Aug 2011 10:41:46 +0000]
Remove the transparrent hook lazy-pager-count experiment
It has proven a very stable and reliable implementation, but in the quest
for fatpacked DBIC should now go to the archives.
Peter Rabbitson [Sun, 31 Jul 2011 20:47:23 +0000]
This atrocity will be removed from sqla, do not use here either
Peter Rabbitson [Tue, 25 Oct 2011 03:50:18 +0000]
Fix find() pessimization when invoked with bare values
Dagfinn Ilmari Mannsåker [Tue, 25 Oct 2011 01:10:32 +0000]
Add Changes entry for DBD::SQLite fixes.
Dagfinn Ilmari Mannsåker [Tue, 25 Oct 2011 00:51:02 +0000]
Relax expected error message syntax.
SQLite 1.34 includes more detail in the error, allow any message
starting with "datatype mismatch".
Dagfinn Ilmari Mannsåker [Tue, 25 Oct 2011 00:48:44 +0000]
Don't rely on GROUP BY and DISTINCT() sorting identically.
Alexander Hartmaier [Wed, 27 Jul 2011 16:23:20 +0000]
Release 0.08195
Peter Rabbitson [Wed, 27 Jul 2011 15:37:44 +0000]
Fix oracle (I am so stupid)
Alexander Hartmaier [Wed, 20 Jul 2011 16:13:47 +0000]
Release 0.08194
Uwe [Wed, 20 Jul 2011 13:22:57 +0000]
fix link in replication introduction
Rafael Kitover [Tue, 19 Jul 2011 18:02:49 +0000]
Check DBD::Pg >= 2.17.2 with Pg >= 9.0 for BYTEA
Checks for DBD::Pg < 2.17.2 when using PostgreSQL version 9.0 or greater
when BYTEA column binds are encountered and prints a warning that a
newer version of DBD::Pg is needed for these types of columns to work in
bind_attribute_by_data_type in the Pg storage.
Skips the t/72pg_bytea.t tests for this combination of versions, as well
as for versions of DBD::Pg less than 2.9.2 regardless of Pg version.
Rafael Kitover [Tue, 19 Jul 2011 17:01:20 +0000]
fix popups during tests on Win32 (hopefully)
A tester reports that t/73oracle_hq.t causes an error popup on Win32.
This test was checking for DBD::Oracle (and thereby trying to load it)
before checking for the DBICTEST_ORA_DSN environment variables.
This commit moves the check for necessary environment variables for the
t/73oracle.t and t/73oracle_hq.t test files to before the module
requirements tests, thereby not trying to load DBD::Oracle, and causing
an error popup.
Rafael Kitover [Tue, 19 Jul 2011 14:13:37 +0000]
fix a couple test failures on Win32
Adds a skip_all to t/storage/global_destruction.t due to it causing a
segfault triggered by some sort of perl bug.
Adds a \Q...\E to t/94versioning.t in a warning regex as well as
changing a `perl -pi -e` to `perl -pi.bak -e` and removing an extraneous
semicolon for the test to pass.
Rafael Kitover [Mon, 18 Jul 2011 16:28:48 +0000]
Oracle: fix LOB conversions for non-LOBs (RT#69548)
Recalculates the LOB binds index for UPDATE queries, as it was
erroneosly not recalculated before. This resulted in non-LOB columns
being treated as LOBs by the SQL mangling code.
ribasushi also optimizes the code for the predominant case of queries
without LOBs in the WHERE clause.
Peter Rabbitson [Sun, 17 Jul 2011 19:08:49 +0000]
Fix last test susceptible to spurious warnings, cleanup a bit
Peter Rabbitson [Sun, 17 Jul 2011 17:43:06 +0000]
Reshuffle Makefile.PL a bit and add parallel-testing exception
Peter Rabbitson [Sun, 17 Jul 2011 16:58:02 +0000]
Stop Data::Compare from loading plugins at will
Peter Rabbitson [Fri, 15 Jul 2011 16:30:36 +0000]
Moar gitignore
Peter Rabbitson [Fri, 15 Jul 2011 16:30:20 +0000]
Rip out forgotten dep
Peter Rabbitson [Fri, 15 Jul 2011 15:50:02 +0000]
Really fix t/53lean_startup.t
Matt S Trout [Fri, 15 Jul 2011 10:49:30 +0000]
fix $rs->populate([]) to be a no-op rather than an exception
Arthur Axel 'fREW' Schmidt [Thu, 14 Jul 2011 21:56:13 +0000]
Fix spurious test failures caused by use of Data::Compare
Arthur Axel 'fREW' Schmidt [Thu, 14 Jul 2011 17:33:11 +0000]
fix spurious PAUSE message
Alexander Hartmaier [Thu, 14 Jul 2011 17:02:30 +0000]
Release 0.08193
Alexander Hartmaier [Thu, 14 Jul 2011 13:54:54 +0000]
replaced Test::Deep::NoTest with Data::Compare to not break Test::Deep tests
Peter Rabbitson [Wed, 13 Jul 2011 07:58:49 +0000]
Stop leaking cursors on oracle sequence retrieval