mirror of
https://github.com/MarginaliaSearch/MarginaliaSearch.git
synced 2025-02-23 13:09:00 +00:00
(control) Filter out heartbeats that are stopped
This commit is contained in:
parent
8d1c3c754d
commit
95f74c5ea7
@ -58,6 +58,7 @@ public class HeartbeatService {
|
||||
var stmt = conn.prepareStatement("""
|
||||
SELECT TASK_NAME, TASK_BASE, NODE, INSTANCE, SERVICE_INSTANCE, STATUS, STAGE_NAME, PROGRESS, TIMESTAMPDIFF(MICROSECOND, TASK_HEARTBEAT.HEARTBEAT_TIME, CURRENT_TIMESTAMP(6)) AS TSDIFF
|
||||
FROM TASK_HEARTBEAT
|
||||
WHERE STATUS = 'RUNNING'
|
||||
""")) {
|
||||
var rs = stmt.executeQuery();
|
||||
while (rs.next()) {
|
||||
@ -88,6 +89,7 @@ public class HeartbeatService {
|
||||
SELECT TASK_NAME, TASK_BASE, NODE, INSTANCE, SERVICE_INSTANCE, STATUS, STAGE_NAME, PROGRESS, TIMESTAMPDIFF(MICROSECOND, TASK_HEARTBEAT.HEARTBEAT_TIME, CURRENT_TIMESTAMP(6)) AS TSDIFF
|
||||
FROM TASK_HEARTBEAT
|
||||
WHERE NODE=?
|
||||
AND STATUS='RUNNING'
|
||||
""")) {
|
||||
stmt.setInt(1, node);
|
||||
var rs = stmt.executeQuery();
|
||||
@ -134,6 +136,7 @@ public class HeartbeatService {
|
||||
SELECT PROCESS_NAME, PROCESS_BASE, NODE, INSTANCE, STATUS, PROGRESS,
|
||||
TIMESTAMPDIFF(MICROSECOND, HEARTBEAT_TIME, CURRENT_TIMESTAMP(6)) AS TSDIFF
|
||||
FROM PROCESS_HEARTBEAT
|
||||
WHERE STATUS = 'RUNNING'
|
||||
""")) {
|
||||
|
||||
var rs = stmt.executeQuery();
|
||||
@ -166,6 +169,7 @@ public class HeartbeatService {
|
||||
TIMESTAMPDIFF(MICROSECOND, HEARTBEAT_TIME, CURRENT_TIMESTAMP(6)) AS TSDIFF
|
||||
FROM PROCESS_HEARTBEAT
|
||||
WHERE NODE=?
|
||||
AND STATUS='RUNNING'
|
||||
""")) {
|
||||
|
||||
stmt.setInt(1, node);
|
||||
@ -191,22 +195,4 @@ public class HeartbeatService {
|
||||
return heartbeats;
|
||||
}
|
||||
|
||||
public void flagProcessAsStopped(ProcessHeartbeat processHeartbeat) {
|
||||
eventLogService.logEvent("PROCESS-MISSING", "Marking stale process heartbeat "
|
||||
+ processHeartbeat.processId() + " / " + processHeartbeat.uuidFull() + " as stopped");
|
||||
|
||||
try (var conn = dataSource.getConnection();
|
||||
var stmt = conn.prepareStatement("""
|
||||
UPDATE PROCESS_HEARTBEAT
|
||||
SET STATUS = 'STOPPED'
|
||||
WHERE INSTANCE = ?
|
||||
""")) {
|
||||
|
||||
stmt.setString(1, processHeartbeat.uuidFull());
|
||||
stmt.executeUpdate();
|
||||
}
|
||||
catch (SQLException ex) {
|
||||
throw new RuntimeException(ex);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -28,14 +28,14 @@
|
||||
<h2>Jobs</h2>
|
||||
<table id="jobs" class="table">
|
||||
<tr>
|
||||
<th>Process ID</th>
|
||||
<th>Job</th>
|
||||
<th>Status</th>
|
||||
<th>Progress</th>
|
||||
<th>Last Seen (ms)</th>
|
||||
</tr>
|
||||
{{#each jobs}}
|
||||
<tr class="{{#if isMissing}}missing{{/if}}">
|
||||
<td>{{taskBase}}</td>
|
||||
<td>{{taskName}}</td>
|
||||
<td>{{status}}</td>
|
||||
<td style="{{progressStyle}}">{{#if progress}}{{progress}}%{{/if}} {{stage}}</td>
|
||||
<td>{{#unless isStopped}}{{lastSeenMillis}}{{/unless}}</td>
|
||||
|
Loading…
Reference in New Issue
Block a user