Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 428bfc18

Von Moritz Bunkus vor mehr als 9 Jahren hinzugefügt

  • ID 428bfc18faf4e37bf8f5203aab4402945dba3327
  • Vorgänger 58c87e38
  • Nachfolger 77c9e010

Task-Server: vor Schlafen aufräumen

Dabei werden unter Anderem potenziell noch laufende Transaktionen
beendet und zumindest das Standard-DBH (nicht das von Rose)
geschlossen. Dadurch sollten alle Locks, die durch die Jobs
evtl. entstanden sind, wieder aufgelöst worden sein.

Unterschiede anzeigen:

scripts/task_server.pl
82 82
  $::form->{__ERROR_HANDLER} = sub { die @_ };
83 83
}
84 84

  
85
sub cleanup_kivitendo {
86
  eval { SL::DB::Auth->new->db->dbh->rollback; };
87
  eval { SL::DB::BackgroundJob->new->db->dbh->rollback; };
88

  
89
  $::auth->save_session;
90
  $::auth->expire_sessions;
91
  $::auth->reset;
92

  
93
  $::form     = undef;
94
  $::myconfig = ();
95
  $::request  = undef;
96
  Form::disconnect_standard_dbh;
97
}
98

  
85 99
sub drop_privileges {
86 100
  my $user = $lx_office_conf{task_server}->{run_as};
87 101
  return unless $user;
......
199 213
      notify_on_failure(exception => $error);
200 214
    }
201 215

  
216
    cleanup_kivitendo();
217

  
202 218
    debug("Sleeping");
203 219

  
204 220
    my $seconds = 60 - (localtime)[0];

Auch abrufbar als: Unified diff