Rafael Kitover [Wed, 18 May 2011 09:45:47 +0000]
Factor out IDENTITY_INSERT for Sybase ASE and MSSQL into a component
This not only greatly simplifies the code of multiple storages, but the
reduction of identity retrieval calls fixes multiple issues with some
odd driver combinations.
Peter Rabbitson [Tue, 20 Mar 2012 03:14:53 +0000]
Run the sybase C subtest *after* the main test
Peter Rabbitson [Tue, 20 Mar 2012 03:12:06 +0000]
Remove todoified tests reflecting a conceptual brainfart
Peter Rabbitson [Sun, 18 Mar 2012 19:29:46 +0000]
Make sure do_query retries on potentially disconnected $dbh
Peter Rabbitson [Mon, 30 Jan 2012 11:08:54 +0000]
Move Oracle blob tests into separate file (no functional changes!)
Rafael Kitover [Sat, 17 Mar 2012 00:24:36 +0000]
remove some Win32 workarounds in tests from cygwin
Cygwin can delete open files, so change some workarounds we had in tests
for closing open files before deleting them that were for both MSWin32
and cygwin to be for MSWin32 only.
Peter Rabbitson [Sat, 17 Mar 2012 10:28:11 +0000]
base.pm now repeatedly require()s modules, exposing missing Exporter exemption
Peter Rabbitson [Wed, 14 Mar 2012 12:40:44 +0000]
Add all storage instances to the test suite leaktracing pool
Peter Rabbitson [Wed, 14 Mar 2012 12:40:44 +0000]
Fix leak of oracle storage objects in its _dbh_execute override
Replace with a much cleaner (and leak free) blockrunner instance
Peter Rabbitson [Wed, 14 Mar 2012 12:40:44 +0000]
Fix the pure-perl in_global_destruction() emulation under threads
Also it seems that threads just don't work too well on < 5.8.5, ajust
the skip message to reflect this.
Peter Rabbitson [Wed, 14 Mar 2012 12:40:44 +0000]
Make sure we load threads.pm before Test::More
Alexander Hartmaier [Fri, 16 Mar 2012 12:08:14 +0000]
removed unnecessary use of Test::Exception
ack -l Test::Exception t/ | xargs egrep -L 'lives_ok|dies_ok|throws_ok|lives_and'
Peter Rabbitson [Tue, 29 Nov 2011 06:31:21 +0000]
Adjust tests to work correctly with the upcoming Test::Builder 1.005
Also deduplicate code in the persistence runners of t/52leaks.t
Rafael Kitover [Tue, 13 Mar 2012 17:57:27 +0000]
fix Win32 file use error in t/storage/reconnect.t
Even though the fake SQLite db file is chmod 0000, for some reason
SQLite still opens it on Win32 and holds it open; this prevents deleting
it and replacing it with the original db file so that the rest of the
tests can run.
TODO: followup with the DBD::SQLite folks.
Disconnect the $dbh on Win32 so the unlink can succeed, and remove the
following SKIP: block (for if db is "encrypted") which is no longer
necessary.
Rafael Kitover [Mon, 12 Mar 2012 21:00:04 +0000]
Update t/751msaccess.t broken by leak checker
65d35121
Can't have the cleanup sub close over $schema.
Rafael Kitover [Sun, 11 Mar 2012 20:56:53 +0000]
add SQLT dep if DBICTEST_SQLT_DEPLOY env is set
Add some code to Makefile.PL to check for $ENV{DBICTEST_SQLT_DEPLOY},
which if set requires SQL::Translator to be available or the tests
will fail. Add the dep as a test_requires directly, so that it is
scrubbed out of the META.yml in author mode due to not being in the
$test_requires hash.
Eden Cardim [Tue, 28 Feb 2012 12:23:57 +0000]
making config flags actually recognize config files
Peter Rabbitson [Mon, 12 Mar 2012 06:48:29 +0000]
Fix t/inflate/datetime.t warning on older perls
Peter Rabbitson [Mon, 12 Mar 2012 06:47:10 +0000]
Fix failures with DBICTEST_SQLITE_USE_FILE=1 introduced by
50261284
Peter Rabbitson [Tue, 14 Feb 2012 22:05:04 +0000]
Test suite wide leaktesting
Peter Rabbitson [Fri, 9 Dec 2011 16:35:53 +0000]
Rewrite txn_do and dbh_do to use a (hidden for now) blockrunner
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.