Clear queue before new job
This commit is contained in:
@@ -177,6 +177,33 @@ class QueueRemote:
|
|||||||
CATEGORY = "remote/advanced"
|
CATEGORY = "remote/advanced"
|
||||||
TITLE = "Queue on remote (worker)"
|
TITLE = "Queue on remote (worker)"
|
||||||
|
|
||||||
|
def clear_remote_queue(self, remote_url):
|
||||||
|
def parse_job(data):
|
||||||
|
gid = data[1]
|
||||||
|
client_id = data[3].get("client_id")
|
||||||
|
job_id = data[3].get("job_id")
|
||||||
|
return gid, client_id, job_id
|
||||||
|
|
||||||
|
r = requests.get(remote_url + "queue")
|
||||||
|
r.raise_for_status()
|
||||||
|
queue = r.json()
|
||||||
|
|
||||||
|
to_cancel = []
|
||||||
|
for k in queue.get("queue_pending", []):
|
||||||
|
if k[3].get("client_id") == get_client_id():
|
||||||
|
to_cancel.append(k[1]) # job UUID
|
||||||
|
r = requests.post(
|
||||||
|
remote_url+"queue",
|
||||||
|
json={ "delete" : to_cancel }
|
||||||
|
)
|
||||||
|
r.raise_for_status()
|
||||||
|
|
||||||
|
for k in queue.get("queue_running", []):
|
||||||
|
if k[3].get("client_id") == get_client_id():
|
||||||
|
r = requests.post(remote_url+"interrupt", json={})
|
||||||
|
r.raise_for_status()
|
||||||
|
break
|
||||||
|
|
||||||
def queue_on_remote(self, remote_chain, remote_url, batch_override, enabled):
|
def queue_on_remote(self, remote_chain, remote_url, batch_override, enabled):
|
||||||
batch = batch_override if batch_override > 0 else remote_chain["batch"]
|
batch = batch_override if batch_override > 0 else remote_chain["batch"]
|
||||||
remote_chain["seed"] += batch
|
remote_chain["seed"] += batch
|
||||||
@@ -275,6 +302,7 @@ class QueueRemote:
|
|||||||
"job_id": remote_info["job_id"],
|
"job_id": remote_info["job_id"],
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
self.clear_remote_queue(remote_url)
|
||||||
ar = requests.post(remote_url+"prompt", json=data)
|
ar = requests.post(remote_url+"prompt", json=data)
|
||||||
ar.raise_for_status()
|
ar.raise_for_status()
|
||||||
return(remote_chain, remote_info)
|
return(remote_chain, remote_info)
|
||||||
|
|||||||
Reference in New Issue
Block a user