X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/mfinanz.git/blobdiff_plain/076728675218b25f451543caa69346d79809eb2e..d8cfd3f937ac59a385e91532fe03134d5a4ff14c:/scripts/task_server.pl diff --git a/scripts/task_server.pl b/scripts/task_server.pl index 1de0a6761..f22ce13b0 100755 --- a/scripts/task_server.pl +++ b/scripts/task_server.pl @@ -64,7 +64,6 @@ sub initialize_kivitendo { package main; - Form::disconnect_standard_dbh; $::lxdebug = LXDebug->new; $::locale = Locale->new($::lx_office_conf{system}->{language}); $::form = Form->new; @@ -94,8 +93,7 @@ sub initialize_kivitendo { } sub cleanup_kivitendo { - eval { SL::DB::Auth->new->db->dbh->rollback; }; - eval { SL::DB::BackgroundJob->new->db->dbh->rollback; }; + eval { SL::DB->client->dbh->rollback; }; $::auth->save_session; $::auth->expire_sessions; @@ -108,9 +106,10 @@ sub cleanup_kivitendo { } sub clean_before_sleeping { - Form::disconnect_standard_dbh; SL::DBConnect::Cache->disconnect_all_and_clear; SL::DB->db_cache->clear; + + File::Temp::cleanup(); } sub drop_privileges { @@ -272,6 +271,8 @@ sub run_once_for_all_clients { sub gd_run { while (1) { + $SIG{'ALRM'} = 'IGNORE'; + run_once_for_all_clients(); debug("Sleeping"); @@ -280,7 +281,8 @@ sub gd_run { my $seconds = 60 - (localtime)[0]; if (!eval { - local $SIG{'ALRM'} = sub { + $SIG{'ALRM'} = sub { + $SIG{'ALRM'} = 'IGNORE'; debug("Got woken up by SIGALRM"); die "Alarm!\n" }; @@ -292,17 +294,6 @@ sub gd_run { } } -sub end_of_request { - $main::lxdebug->show_backtrace(); - die <