13 years agofix some spelling mistakes
Justin Hunter [Thu, 14 Apr 2011 15:46:54 +0000]
fix some spelling mistakes

13 years agosupport sub-second precision for TIMESTAMPs for Firebird over ODBC
Rafael Kitover [Sat, 9 Apr 2011 21:48:38 +0000]
support sub-second precision for TIMESTAMPs for Firebird over ODBC

13 years agoFix complex limits with subqueries in selectors
Arthur Axel 'fREW' Schmidt [Fri, 8 Apr 2011 16:02:43 +0000]
Fix complex limits with subqueries in selectors

(fix both incorrect splitting of the selector list and duplication of binds)

13 years agosupport for DBD::Firebird
Rafael Kitover [Sat, 9 Apr 2011 19:54:00 +0000]
support for DBD::Firebird

13 years agoParameterize pagination
Arthur Axel 'fREW' Schmidt [Thu, 20 Jan 2011 05:03:04 +0000]
Parameterize pagination

13 years agoUse _is_binary_lob_type to determine datatypes in need of PG bytea binds
Rafael Kitover [Sat, 9 Apr 2011 13:16:33 +0000]
Use _is_binary_lob_type to determine datatypes in need of PG bytea binds

13 years agoRemove use of _resolve_column_info call from _prep_for_execute in NoBindVars
Rafael Kitover [Sat, 9 Apr 2011 13:00:47 +0000]
Remove use of _resolve_column_info call from _prep_for_execute in NoBindVars

Use the datatype as passed via the bind attribute resolution

13 years agoSome test fixes and TODOs for older Oracle versions
Peter Rabbitson [Mon, 4 Apr 2011 07:28:18 +0000]
Some test fixes and TODOs for older Oracle versions

13 years agoRefactor/improve support of DBD::Sybase compiled against FreeTDS (mainly MSSQL)
Rafael Kitover [Fri, 24 Dec 2010 12:53:11 +0000]
Refactor/improve support of DBD::Sybase compiled against FreeTDS (mainly MSSQL)

13 years agoExtend tests for MARs under MSSQL over DBD::Sybase
Rafael Kitover [Fri, 24 Dec 2010 12:53:11 +0000]
Extend tests for MARs under MSSQL over DBD::Sybase

13 years agoConsistently use MyApp::Schema throught the documentation
Rafael Kitover [Fri, 24 Dec 2010 12:53:11 +0000]
Consistently use MyApp::Schema throught the documentation

13 years agoTest for an insane yet valid rel condition with subquery
Moritz Onken [Tue, 25 Jan 2011 16:08:16 +0000]
Test for an insane yet valid rel condition with subquery

13 years agoMerge branch 0.08200_track into master
Peter Rabbitson [Thu, 7 Apr 2011 23:55:41 +0000]
Merge branch 0.08200_track into master

13 years agoConsolidate all constants under DBIC::_ENV_, bump n::c breakage to < 5.8.5
Peter Rabbitson [Mon, 4 Apr 2011 08:13:34 +0000]
Consolidate all constants under DBIC::_ENV_, bump n::c breakage to < 5.8.5

13 years agoOverhaul populate code - fix \[] support and exotic values (arrays, etc.)
Peter Rabbitson [Wed, 9 Mar 2011 10:21:36 +0000]
Overhaul populate code - fix \[] support and exotic values (arrays, etc.)

In addition cleanup populate() error messages a bit

13 years agoComprehensive MSAccess support over both DBD::ODBC and DBD::ADO
Rafael Kitover [Sun, 23 Jan 2011 12:03:13 +0000]
Comprehensive MSAccess support over both DBD::ODBC and DBD::ADO

13 years agoFix/clarify Oracle decision whether to use WhereJoins
Peter Rabbitson [Wed, 30 Mar 2011 11:11:28 +0000]
Fix/clarify Oracle decision whether to use WhereJoins

Remove the suggestion that 8i supports ANSI but is slow - leave it
as a test only (the docs are confusing enough already)

13 years agoFix (and test) quoting with the older style of WhereJoins used by Oracle
Peter Rabbitson [Wed, 30 Mar 2011 11:03:25 +0000]
Fix (and test) quoting with the older style of WhereJoins used by Oracle

Also simplify the join overload process a bit

13 years agofix from => $rs->as_query
Arthur Axel 'fREW' Schmidt [Sat, 26 Mar 2011 01:05:55 +0000]
fix from => $rs->as_query

13 years agomake the DB2/AS400 storage a subclass of DB2, do RNO detection, fix FetchFirst
Rafael Kitover [Mon, 28 Mar 2011 08:34:23 +0000]
make the DB2/AS400 storage a subclass of DB2, do RNO detection, fix FetchFirst

13 years agoSeveral 5.8.old fixes
Peter Rabbitson [Tue, 29 Mar 2011 23:31:20 +0000]
Several 5.8.old fixes

* Stop running threading tests on < 5.8.5 - DBD::Pg is *really* unhappy there
* Switch t/55namespaces_cleaned.t to Package::Stash - the hand-written syntax
  breaks 5.8.1 and I'm lazy (and it's an implicit dep anyway)
* Stop auto-cleaning the imports of DBIC::Carp - it segfaults all over the
  place on 5.8.1 (will revisit when I rewrite n::c in pure-perl)

13 years agoMassive rewrite of bind handling, and overall simplification of ::Storage::DBI
Peter Rabbitson [Wed, 26 Jan 2011 13:03:22 +0000]
Massive rewrite of bind handling, and overall simplification of ::Storage::DBI

There's no practical way to split this into smaller pieces so here it goes:

Bind attribute handling was badly integrated into dbic almost from the
start. Until now the only information about a value was encoded as the
column name contained as the first element of the bind arrayref. The
column name was then resolved to the proper colinfo (deep in ::Storage::DBI)
and then a match was ran on the datatype to try to find an appropriate
set of bind attributes. Besides being fragile and inefficient, this
method also broke down completely when:
  * No column name could be associated with a bind (arguments to complex
    literal functions)
  * as_query results would encode the column names that can no longer
    be resolved since the inner result sources are no longer visible

To fix this all up and provide more flexibility the standard [ $col => $val ]
was replaced with [ \%args => $val ]. The format of \%args is currently:

  {
    dbd_attrs => '
      If present (in any form) this is what is being passed directly to
      bind_param. Note that different DBD's expect different bind args,
      e.g. DBD::SQLite takes a single numerical type, while DBD::Pg takes
      a hashref if bind options. If this is specified all other bind
      options described below are ignored
    ',
    sqlt_datatype => '
      If present it is used to infer the actual bind attribute by passing
      to $resolved_storage->bind_attribute_by_data_type(). Note that the
      data type is somewhat freeform (hence the sqlt_ prefix) - currently
      drivers are expected to dtrt when given a common datatype name (not
      ideal, but that's what we got at this point). Defaults to the
      "data_type" from the add_columns colinfo.
    ',
    sqlt_size => '
      Currently used to correctly allocate buffers for bind_param_inout().
      Defaults to "size" from the add_columns colinfo, or to a sensible value
      based on the "data_type"
    ',
    dbic_colname => '
      Used to fill in missing sqlt_datatype and sqlt_size attributes (if
      they are explicitly specified they are never overriden). Also used
      by some weird DBDs where the column name should be available at
      bind_param time (hello Oracle).
    ',
  }

For backcompat/convenience the following shortcuts are supported:

  [ $name => $val ] === [ { dbic_colname => $name }, $val ]

  [ \$dt => $val ] === [ { sqlt_datatype => $dt }, $val ]

  [ undef => $val ] === [ {}, $val ]

  ( pending in the next patch: [ $val ] === [ {}, $val ] )

On each passage through the storages (either for execute or for as_query
formatting) the information is filled in whenever available, so that by
the time the final binds_param takes place ::Storage::DBI::_dbi_attrs_for_bind
has all the available information about a particular bind value (no matter
where it came from).

A side efect of this is that as_query now always returns resolved
[ \%args => $val ] forms of bind values (hence the huge amount of test changes
in this patchset). While it should not be a major concern, it could
potentially throw off tests that expect a specific output of as_query. If
this becomes a problem a "compat mode as_query" flag will be introduced asap.

Additional changes in this patchset are:

* The signatures of pretty much the entire execution chain changed. Luckily
  everything that required changing was private. All drivers were adjusted
  appropriately (though something could have been missed). Affected methods
  on ::Storage::DBI are:

  _prep_for_execute
  _dbh_execute
  _execute
  _select_args_to_query
  _max_column_bytesize

  additionally the invocation of _prep_for_execute moved from _dbh_execute
  to _execute, and the return of _select_args also changed

* source_bind_attributes was deprecated. Luckily it was never documented in
  the main documentation. Sadly it was documented in individual storage
  drivers. As such it was necessary to provide a compat shim that would invoke
  the thing if it is detected (with the approproate warning)

* _fix_bind_params was renamed to _format_for_trace

13 years agoPrivatize _sth
Peter Rabbitson [Mon, 28 Mar 2011 11:45:40 +0000]
Privatize _sth

13 years agoShuffle tests around (no changes)
Peter Rabbitson [Wed, 9 Mar 2011 12:59:07 +0000]
Shuffle tests around (no changes)

13 years agoCorrectly select the root source of the inner part of a complex prefetch
Peter Rabbitson [Sat, 12 Mar 2011 23:47:40 +0000]
Correctly select the root source of the inner part of a complex prefetch

Also better diagnostics to aid source mis-application during colinfo
resolution

13 years agoStop flooding the console with garbage on pg blob errors
Peter Rabbitson [Mon, 28 Mar 2011 13:21:35 +0000]
Stop flooding the console with garbage on pg blob errors

13 years agoDitch Carp::Clan for our own thing
Peter Rabbitson [Fri, 14 Jan 2011 10:52:02 +0000]
Ditch Carp::Clan for our own thing

13 years agoFix syntax error that slipped into 9c1700e3
Peter Rabbitson [Fri, 25 Mar 2011 23:10:13 +0000]
Fix syntax error that slipped into 9c1700e3

13 years agouse relationship bridge consistently w/ many_to_many speak
Mateu X Hunter [Sun, 20 Mar 2011 00:20:21 +0000]
use relationship bridge consistently w/ many_to_many speak

13 years agoDelete duplicated test (somehow 1:1 with t/search/subquery.t)
Peter Rabbitson [Tue, 15 Mar 2011 23:00:16 +0000]
Delete duplicated test (somehow 1:1 with t/search/subquery.t)

13 years agoFix long relationship/column names in oracle for good
Peter Rabbitson [Sun, 20 Mar 2011 11:25:55 +0000]
Fix long relationship/column names in oracle for good

Do not pass in the relname as "keyword" anymore - it will interfere
with the aliasing since ::Storage::Oracle and SQLMaker::Oracle will
produce different results

13 years agoFixup SQLA monkeypatch in anticipation of new SQLA version
Peter Rabbitson [Fri, 18 Mar 2011 09:07:15 +0000]
Fixup SQLA monkeypatch in anticipation of new SQLA version

13 years agoCleanup that namespacing mess
Peter Rabbitson [Sat, 19 Mar 2011 11:40:45 +0000]
Cleanup that namespacing mess

13 years agoRemove significance of some test envvars (and add a test to trip up downstream packagers)
Peter Rabbitson [Fri, 18 Mar 2011 09:07:15 +0000]
Remove significance of some test envvars (and add a test to trip up downstream packagers)

13 years agoRemove test prototype that was never completed further than a loop calling ok(1)
Peter Rabbitson [Thu, 17 Mar 2011 16:47:28 +0000]
Remove test prototype that was never completed further than a loop calling ok(1)

Makes DBICTEST_STORAGE_STRESS redundant

13 years agoAdd startup sanity check of the ::DBI::Replicated method dispatch tables
Peter Rabbitson [Sat, 12 Mar 2011 22:58:13 +0000]
Add startup sanity check of the ::DBI::Replicated method dispatch tables

In order to do this during testing only introduce the ::_ENV_::DBICTEST macro,
and also make sure DBICTest::RunMode is loaded before the macro is set
(therefore the multiple test changes)

13 years agoLazily load DBD::Pg in ::Storage::DBI::Pg, only when typing is required
Peter Rabbitson [Fri, 11 Mar 2011 17:54:25 +0000]
Lazily load DBD::Pg in ::Storage::DBI::Pg, only when typing is required

13 years agoFixed bug in _strip_cond_qualifiers, patch generously by Grant Street Group.
Rob Kinyon [Sat, 12 Mar 2011 03:34:28 +0000]
Fixed bug in _strip_cond_qualifiers, patch generously by Grant Street Group.

13 years agoFixed: RS example code was broken
Matt Phillips [Thu, 17 Mar 2011 01:00:44 +0000]
Fixed: RS example code was broken

13 years agocascading delete on a nonexistent relation should warn instead of
Robert Buels [Sat, 12 Mar 2011 23:06:39 +0000]
cascading delete on a nonexistent relation should warn instead of
dieing uninformatively.

13 years agoreorganize docs for load_namespaces method
Robert Buels [Wed, 9 Mar 2011 16:53:45 +0000]
reorganize docs for load_namespaces method

13 years agoFix 'exit via next' warning from DBIx::Class::ResultSource::sequence
Jason Mills [Fri, 11 Mar 2011 01:16:53 +0000]
Fix 'exit via next' warning from DBIx::Class::ResultSource::sequence

13 years agoMake sure the component_class autoloader works across module reloads
Peter Rabbitson [Tue, 8 Mar 2011 12:58:38 +0000]
Make sure the component_class autoloader works across module reloads

(works around corner cases from db29433c)

13 years agofixup Firebird ODBC driver for DBD::ODBC 1.29
Rafael Kitover [Mon, 7 Mar 2011 04:22:57 +0000]
fixup Firebird ODBC driver for DBD::ODBC 1.29

13 years agoSwitch sql_maker_class and datetime_parser_type to component_class accessors
Peter Rabbitson [Tue, 1 Mar 2011 08:14:55 +0000]
Switch sql_maker_class and datetime_parser_type to component_class accessors

13 years agoSwitch cursor accessor to CAG's component_class type for autoloading
Justin Hunter [Mon, 28 Feb 2011 23:28:53 +0000]
Switch cursor accessor to CAG's component_class type for autoloading

13 years agocreate file_columns table when DBICTEST_SQLT_DEPLOY env var is not set
Rafael Kitover [Tue, 1 Mar 2011 04:02:15 +0000]
create file_columns table when DBICTEST_SQLT_DEPLOY env var is not set

Breakage introduced in 123df52

13 years agoMinor POD spelling and link fixes
Jonathan Yu [Fri, 25 Feb 2011 12:11:29 +0000]
Minor POD spelling and link fixes

* Use proper L<Pod::Name/Section> style, rather than the incorrect
  L<Pod::Name#Section> style (thanks mst)
* Some minor spelling errors picked up by Lintian

13 years agoModified: small doc patch explaining a gotcha
Matt Phillips [Sat, 26 Feb 2011 20:35:42 +0000]
Modified: small doc patch explaining a gotcha

13 years agoExtra test for mysql_auto_reconnect and fork
Peter Rabbitson [Tue, 1 Feb 2011 08:12:20 +0000]
Extra test for mysql_auto_reconnect and fork

13 years agoLazy-load as many of the non-essential modules as possible
Peter Rabbitson [Tue, 22 Feb 2011 16:20:41 +0000]
Lazy-load as many of the non-essential modules as possible

13 years agoCleanup C3 handling, require updated Class::C3::Componentised
Peter Rabbitson [Mon, 31 Jan 2011 12:29:53 +0000]
Cleanup C3 handling, require updated Class::C3::Componentised

13 years agoFix quote_names assumption of DBD::* availability
Peter Rabbitson [Wed, 23 Feb 2011 13:10:24 +0000]
Fix quote_names assumption of DBD::* availability

13 years agoMove the test bits related to deprecated IC::File out of the main testschema
Peter Rabbitson [Tue, 22 Feb 2011 12:52:58 +0000]
Move the test bits related to deprecated IC::File out of the main testschema

13 years agoMake pg tests cleanup better after themselves
Peter Rabbitson [Fri, 21 Jan 2011 17:49:57 +0000]
Make pg tests cleanup better after themselves

13 years agoFix rev_rel_info on prototype sources
Peter Rabbitson [Tue, 15 Feb 2011 11:36:35 +0000]
Fix rev_rel_info on prototype sources

13 years agoSimplify implementation of reverse_relationship_info (no func. changes)
Peter Rabbitson [Tue, 15 Feb 2011 09:44:05 +0000]
Simplify implementation of reverse_relationship_info (no func. changes)
The only difference is getting rid of an arrayref support condition, but
it is not supported at the top level anyway

13 years agoTemporarily monkeypatch DBD::ADO to fix warnings during global destruction
Rafael Kitover [Tue, 8 Feb 2011 15:57:35 +0000]
Temporarily monkeypatch DBD::ADO to fix warnings during global destruction

13 years agorewrite SQLAnywhere GUID normalizing as a cursor_class (formerly a _select_args hack)
Rafael Kitover [Sun, 6 Feb 2011 11:12:54 +0000]
rewrite SQLAnywhere GUID normalizing as a cursor_class (formerly a _select_args hack)

13 years agoRefactor UUID generation logic in ::Storage::DBI::UniqueIdentifier
Rafael Kitover [Fri, 4 Feb 2011 14:42:31 +0000]
Refactor UUID generation logic in ::Storage::DBI::UniqueIdentifier

13 years agoPatch to schema->deploy against a file
milki [Sun, 13 Feb 2011 21:04:33 +0000]
Patch to schema->deploy against a file

Fixes skipped lines when a comment is followed by a statement
Explicitly split on single line comments and not just ;\n
Add some FIXME comments on the state of deploy

13 years agouse -in SQL::Abstract operator instead of literal 'IN' in cookbook
Alexander Hartmaier [Tue, 22 Feb 2011 09:11:04 +0000]
use -in SQL::Abstract operator instead of literal 'IN' in cookbook

13 years agoDisplay a warning when an ODBC or ADO subclass is not found
Rafael Kitover [Sat, 19 Feb 2011 17:14:16 +0000]
Display a warning when an ODBC or ADO subclass is not found

13 years agoMultiple code/test/doc improvements for MSSQL over DBD::ADO
Rafael Kitover [Sun, 6 Feb 2011 20:22:34 +0000]
Multiple code/test/doc improvements for MSSQL over DBD::ADO

13 years agoAdd extra test blob type
Rafael Kitover [Sun, 23 Jan 2011 12:03:13 +0000]
Add extra test blob type

13 years agoCleanup/extend blob/clob detection/checks
Rafael Kitover [Sun, 23 Jan 2011 12:03:13 +0000]
Cleanup/extend blob/clob detection/checks

13 years agoUse a safer $dbh->get_info
Rafael Kitover [Sun, 23 Jan 2011 12:03:13 +0000]
Use a safer $dbh->get_info

13 years agoFix replicated fails introduced with 2b8cc2f2
Peter Rabbitson [Tue, 15 Feb 2011 09:42:45 +0000]
Fix replicated fails introduced with 2b8cc2f2

13 years agofixed description to cookbook example
Moritz Onken [Sun, 13 Feb 2011 09:53:35 +0000]
fixed description to cookbook example

13 years agofixed cookbook example
Moritz Onken [Sun, 13 Feb 2011 09:49:08 +0000]
fixed cookbook example

13 years agoadd mailmap for consistency
Arthur Axel 'fREW' Schmidt [Fri, 11 Feb 2011 15:37:14 +0000]
add mailmap for consistency

13 years agoAdd proper DateTime handling to t/52leaks.t
Peter Rabbitson [Tue, 1 Feb 2011 15:16:00 +0000]
Add proper DateTime handling to t/52leaks.t

13 years agoBetter exception when things get really really bad with prepare()
Peter Rabbitson [Mon, 31 Jan 2011 16:00:46 +0000]
Better exception when things get really really bad with prepare()

13 years agoadd quote_names connect_info option
Rafael Kitover [Wed, 2 Feb 2011 14:55:27 +0000]
add quote_names connect_info option

13 years agoFix wrong author email from f92a9d79
Peter Rabbitson [Sat, 29 Jan 2011 14:46:49 +0000]
Fix wrong author email from f92a9d79

13 years agoFix broken sections links in POD
Ronald J Kimball [Tue, 25 Jan 2011 15:53:10 +0000]
Fix broken sections links in POD

13 years agoFix for SpeedyCGI and an extensive test of persistent environments (RT#65131)
Peter Rabbitson [Thu, 27 Jan 2011 00:02:47 +0000]
Fix for SpeedyCGI and an extensive test of persistent environments (RT#65131)

13 years agoIgnore to-be-leaktested classdata, instead of forcibly freeing it
Peter Rabbitson [Thu, 27 Jan 2011 00:02:33 +0000]
Ignore to-be-leaktested classdata, instead of forcibly freeing it

13 years agoCorrect Makefile.PL authortests borkage
Peter Rabbitson [Wed, 26 Jan 2011 11:37:50 +0000]
Correct Makefile.PL authortests borkage

Fix last-resort error message and do an explicit require (though
it should *not* be necessary people broke it somehow)

13 years agoStop eating syntax errors in ODBC drivers
Peter Rabbitson [Tue, 25 Jan 2011 12:20:42 +0000]
Stop eating syntax errors in ODBC drivers

13 years agoFix broken select/group bind in Oracle (after 0542ec57 & 4c2b30d6)
Peter Rabbitson [Mon, 24 Jan 2011 10:12:19 +0000]
Fix broken select/group bind in Oracle (after 0542ec57 & 4c2b30d6)

13 years agoDisable default mysql_auto_reconnect for MySQL
Peter Rabbitson [Thu, 20 Jan 2011 22:59:07 +0000]
Disable default mysql_auto_reconnect for MySQL

13 years agoimprove MSSQL+ODBC initialization, clarify docs on SCOPE_IDENTITY() and dynamic cursors
Rafael Kitover [Fri, 21 Jan 2011 12:24:31 +0000]
improve MSSQL+ODBC initialization, clarify docs on SCOPE_IDENTITY() and dynamic cursors

13 years agoRelease 0.08190 v0.08190
Peter Rabbitson [Tue, 25 Jan 2011 08:51:16 +0000]
Release 0.08190

13 years agoremove mention of name_sep from Schema::Loader doc
Rafael Kitover [Mon, 24 Jan 2011 17:52:37 +0000]
remove mention of name_sep from Schema::Loader doc

13 years agoupdate Schema::Loader docs
Rafael Kitover [Mon, 24 Jan 2011 14:40:24 +0000]
update Schema::Loader docs

13 years agoMerge branch 'people/riba/extrels' into 0.08200_track_do_not_rebase
Peter Rabbitson [Thu, 20 Jan 2011 11:41:40 +0000]
Merge branch 'people/riba/extrels' into 0.08200_track_do_not_rebase

13 years agoRewrite the check for nontrivial joinfree conditions to throw on both new_related...
Peter Rabbitson [Mon, 17 Jan 2011 10:50:07 +0000]
Rewrite the check for nontrivial joinfree conditions to throw on both new_related and set_from_related

13 years agoAdd some extra tests written while debugging, remove design draft
Peter Rabbitson [Mon, 17 Jan 2011 03:17:44 +0000]
Add some extra tests written while debugging, remove design draft

13 years agoFix $object->search_related aliasing, change semantics of _resolve_condition
Peter Rabbitson [Sun, 16 Jan 2011 00:14:03 +0000]
Fix $object->search_related aliasing, change semantics of _resolve_condition

Change the RV of _resolve_condition one last time. Now it checks the RV of the
resolved coderef (if any), and chooses (preferrably) the join-free condition
or the cross-table one. In list context returns a flag signifying if the
resulting condition is available for standalone use (false) or requires the
joins to remain (true)

13 years agoPass relationship name to _resolve_condition explicitly
Peter Rabbitson [Mon, 17 Jan 2011 02:49:54 +0000]
Pass relationship name to _resolve_condition explicitly

The API is ambuguous at best, will need a cleanup some day, for now just do by
tackling even more arguments to the method, yielding insanity like:
_resolve_condition($cond, $obj, $f_rel, $f_rel) BLEH!

13 years agoSanity check args passed to a coderef conditionmaker
Peter Rabbitson [Tue, 14 Dec 2010 12:35:34 +0000]
Sanity check args passed to a coderef conditionmaker

13 years agouse $self->{from_bind} for extra binds transport
Daniel Ruoso [Mon, 13 Dec 2010 13:13:36 +0000]
use $self->{from_bind} for extra binds transport

The __overriden_select method was used to build extra binds
that should be transported in the $self->{from_bind} array
instead.

13 years agoUntodoify tests - these are not 'nice to have', they must work
Peter Rabbitson [Sun, 12 Dec 2010 07:14:10 +0000]
Untodoify tests - these are not 'nice to have', they must work

13 years agoBack out "support for prefetch from resultsource using extended_rels"
Peter Rabbitson [Sun, 12 Dec 2010 07:10:54 +0000]
Back out "support for prefetch from resultsource using extended_rels"

Blindly taking the condition retuned by an incomplete (not
all pieces of the hashref are supplied) call to the condition
maker, and attempting to order by its keys assuming it is a
hash is... naive

13 years agodo not use "me" on the related_resultset pessimization
Daniel Ruoso [Tue, 30 Nov 2010 13:24:35 +0000]
do not use "me" on the related_resultset pessimization

This was requested by ribasushi, but it is still incomplete.
Added a TODO test with the expected final query.

Problem is: the alias is defined in $source->_resolve_join,
which is completely disconnected from the search context
so it cannot receive a different alias

13 years agorefuse to invoke create_related as class method
Daniel Ruoso [Wed, 24 Nov 2010 19:08:07 +0000]
refuse to invoke create_related as class method

t/cdbi/09-has-many.t has a specific test for it.

13 years agofix the alias in the identity column
Daniel Ruoso [Wed, 24 Nov 2010 18:33:07 +0000]
fix the alias in the identity column

When building the identity where clause, discover the current_source_alias
to build the hash correctly

13 years agoeager check if the create_related is at all possible
Daniel Ruoso [Wed, 24 Nov 2010 18:26:20 +0000]
eager check if the create_related is at all possible

When calling create_related, it should stop trying if the extended rel
does not provide the complete relationship definition.

13 years agoWhen getting a related_resultset in a row with custom rels without the extended defin...
Daniel Ruoso [Wed, 24 Nov 2010 17:35:02 +0000]
When getting a related_resultset in a row with custom rels without the extended definition, we step back, get a rs equivalent to the current row and do a search_related there.