I think I have found a bug with search_literal. If you get a resultset that came from a search_literal, and try to apply another search_literal to it, the bind values are in the wrong order eg.

my $rs = $schema->resultset('Foo')->search_literal('foo = ?', 1);
$rs = $rs->search_literal('bar = ?',2);

Spits out the sql

SELECT foo.field
FROM foo
WHERE ( ( foo.bar = ? AND foo.foo = ? ) )

With a bind values array of "[1,2]". It should be a bind values array of "[2,1]".

It seems to be adding the second literal string to the front of the where clause, but adding the values to the end of the array.

I'm using 0.08003 but a quick search in the change log doesn't mention anything about search_literal

Cheers,
Brett Gardner


_______________________________________________
List: http://lists.rawmode.org/cgi-bin/mailman/listinfo/dbix-class
IRC: irc.perl.org#dbix-class
SVN: http://dev.catalyst.perl.org/repos/bast/DBIx-Class/
Searchable Archive: http://www.grokbase.com/group/[EMAIL PROTECTED]

Reply via email to