use base 'DBIx::Class::ResultSet';
-use Debbugs::DB::Util qw(select_one);
-
use List::AllUtils qw(natatime);
=cut
sub update_bug_status {
- my ($self,@args) = @_;
- return $self->result_source->schema->storage->
- dbh_do(sub {
- my ($s,$dbh,$bug,$suite,$arch,$status,$modified,$asof) = @_;
- select_one($dbh,<<'SQL',$bug,$suite,$arch,$status,$status);
+ my ($self,$bug,$suite,$arch,$status,$modified,$asof) = @_;
+ return $self->result_source->schema->
+ select_one(<<'SQL',$bug,$suite,$arch,$status,$status);
INSERT INTO bug_status_cache AS bsc
(bug,suite,arch,status,modified,asof)
VALUES (?,?,?,?,NOW(),NOW())
SET asof=NOW(),modified=CASE WHEN bsc.status=? THEN bsc.modified ELSE NOW() END
RETURNING status;
SQL
- },
- @args
- );
}