Avoid a rescan of all images every time we upload something.
authorSteinar H. Gunderson <sesse@debian.org>
Sun, 30 Jul 2006 12:50:19 +0000 (14:50 +0200)
committerSteinar H. Gunderson <sesse@debian.org>
Sun, 30 Jul 2006 12:50:19 +0000 (14:50 +0200)
perl/Sesse/pr0n/Common.pm

index 76da6befeb3466f6620f354ad5a8ef251b7f99a6..ecc039e15d8144cb9443891c0929d7cbf8e0d5e8 100644 (file)
@@ -192,8 +192,8 @@ sub update_width_height {
 
        # update the last_picture cache as well (this should of course be done
        # via a trigger, but this is less complicated :-) )
 
        # update the last_picture cache as well (this should of course be done
        # via a trigger, but this is less complicated :-) )
-       $dbh->do('UPDATE events SET last_picture=(SELECT COALESCE(MAX(date),\'1970-01-01 00:00:00\') FROM images WHERE event=events.id) WHERE id=(SELECT event FROM images WHERE id=?)',
-               undef, $id)
+       $dbh->do('UPDATE events SET last_picture=GREATEST(last_picture, ?) FROM images WHERE event=events.id) WHERE id=(SELECT event FROM images WHERE id=?)',
+               undef, $datetime, $id)
                or die "Couldn't update last_picture in SQL: $!";
 }
 
                or die "Couldn't update last_picture in SQL: $!";
 }