- $bugs = $s->resultset('Bug')->
- search_rs({-or => {'bin_associations.modified' => {'>=',$last_query_time},
- 'src_associations.modified' => {'>=',$last_query_time},
- 'me.log_modified' => {'>=',$last_query_time},
- 'me.last_modified' => {'>=',$last_query_time},
- }
+ # select all bugs which are in packages which have had a binary
+ # association modified
+ push @bugs,
+ map {$_->{bug_binpackages}{bug}}
+ $s->resultset('BinAssociation')->
+ search_rs({'me.modified' => {'>=',$last_query_time},
+ },
+ {columns => [qw(bug_binpackages.bug)],
+ join => {bin =>
+ {bin_pkg =>
+ 'bug_binpackages'
+ }},
+ result_class => 'DBIx::Class::ResultClass::HashRefInflator',
+ },
+ )->all();
+ # or a source association modified
+ push @bugs,
+ map {$_->{bug_srcpackages}{bug}}
+ $s->resultset('SrcAssociation')->
+ search_rs({'me.modified' => {'>=',$last_query_time},