More workflows that need to obey the TTL.
This commit is contained in:
parent
ca1f5e1c86
commit
ac3255e0c6
3 changed files with 7 additions and 2 deletions
|
|
@ -119,7 +119,7 @@ sub execute {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
# taking too long, give up
|
# taking too long, give up
|
||||||
return $self->WAITING(1) if (time() - $start > 50);
|
return $self->WAITING(1) if (time() - $start > $self->getTTL);
|
||||||
}
|
}
|
||||||
|
|
||||||
# kill temporary files
|
# kill temporary files
|
||||||
|
|
|
||||||
|
|
@ -76,7 +76,7 @@ sub execute {
|
||||||
# keep track of how much time it's taking
|
# keep track of how much time it's taking
|
||||||
my $start = time;
|
my $start = time;
|
||||||
my $limit = 2_500;
|
my $limit = 2_500;
|
||||||
my $timeLimit = 60;
|
my $timeLimit = $self->getTTL;
|
||||||
|
|
||||||
my $list = $root->getLineage( ['descendants'], { returnObjects => 1,
|
my $list = $root->getLineage( ['descendants'], { returnObjects => 1,
|
||||||
includeOnlyClasses => ['WebGUI::Asset::EMSSubmissionForm'],
|
includeOnlyClasses => ['WebGUI::Asset::EMSSubmissionForm'],
|
||||||
|
|
|
||||||
|
|
@ -87,6 +87,7 @@ sub execute {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
my $sth = $self->session->db->read("select groupId,deleteOffset,groupCacheTimeout from groups");
|
my $sth = $self->session->db->read("select groupId,deleteOffset,groupCacheTimeout from groups");
|
||||||
|
my $expireTime = time() + $self->getTTL();
|
||||||
while (my $data = $sth->hashRef) {
|
while (my $data = $sth->hashRef) {
|
||||||
if ($data->{groupCacheTimeout} > 0) {
|
if ($data->{groupCacheTimeout} > 0) {
|
||||||
# there is no need to wait deleteOffset days for expired external group cache data
|
# there is no need to wait deleteOffset days for expired external group cache data
|
||||||
|
|
@ -94,6 +95,10 @@ sub execute {
|
||||||
} else {
|
} else {
|
||||||
$self->session->db->write("delete from groupings where groupId=? and expireDate < ?", [$data->{groupId}, time()-$data->{deleteOffset}]);
|
$self->session->db->write("delete from groupings where groupId=? and expireDate < ?", [$data->{groupId}, time()-$data->{deleteOffset}]);
|
||||||
}
|
}
|
||||||
|
if (time() > $expireTime) {
|
||||||
|
$sth->finish;
|
||||||
|
return $self->WAITING(1);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return $self->COMPLETE;
|
return $self->COMPLETE;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue