for my $tr ($cd->tracks->all) {
push @{$data->{tracks}}, { $tr->get_columns };
}
+ @{$data->{tracks}} = sort { $a->{trackid} <=> $b->{trackid} } @{$data->{tracks}};
push @cds_and_tracks, $data;
}
for my $tr ($cd->tracks->all) {
push @{$data->{tracks}}, { $tr->get_columns };
}
+ @{$data->{tracks}} = sort { $a->{trackid} <=> $b->{trackid} } @{$data->{tracks}};
push @pref_cds_and_tracks, $data;
}
);
cmp_deeply (
- [ $pref_rs->search ({}, { result_class => 'DBIx::Class::ResultClass::HashRefInflator' })->all ],
+ $pref_rs->search ({}, { order_by => [ { -desc => 'me.year' }, 'trackid' ] })->all_hri,
\@cds_and_tracks,
'Correct HRI collapsing on non-unique primary object'
);
my $pref_rs = $schema->resultset('Owners')->search({}, {
rows => 3,
offset => 1,
+ order_by => 'name',
columns => 'name', # only the owner name, still prefetch all the books
prefetch => 'books',
});
FROM (
SELECT me.name, me.id
FROM owners me
+ ORDER BY name
LIMIT ?
OFFSET ?
) me
LEFT JOIN books books
ON books.owner = me.id
+ ORDER BY name
)',
[ [ { sqlt_datatype => "integer" } => 3 ], [ { sqlt_datatype => "integer" } => 1 ] ],
'Expected SQL on complex limited prefetch with non-selected join condition',