our $jqcachemisses = 0;
our $jqtotal = 0;
-sub cacheable_query ($$$) {
- my ($q, $jr, $cachekey) = @_;
+sub cacheable_fn ($$$) {
+ my ($jr, $cachekey, $fn) = @_;
$jqtotal++;
$cachekey = '%'.$cachekey;
my $cached = $jr->{$cachekey};
if (!$cached) {
$jqcachemisses++;
- $q->execute($jr->{flight}, $jr->{job});
- $cached = $q->fetchrow_hashref();
+ $cached = $fn->();
$jr->{$cachekey} = $cached;
}
return $cached;
}
+sub cacheable_query ($$$) {
+ my ($q, $jr, $cachekey) = @_;
+ cacheable_fn($jr, $cachekey, sub {
+ $q->execute($jr->{flight}, $jr->{job});
+ return $q->fetchrow_hashref();
+ });
+}
+
our %hosts;
sub mainquery ($) {