Skip to content

Commit 98bffab

Browse files
updated the expire limit for testcases
1 parent dbc7451 commit 98bffab

File tree

2 files changed

+8
-6
lines changed

2 files changed

+8
-6
lines changed

judge-image-for-worker/workers/index.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -180,7 +180,7 @@ async function processJob(ques_name, code, language, testcases) {
180180
await redis_server.hSet(`job:${ques_name}:status`, {
181181
state: "completed",
182182
});
183-
await redis_server.expire(`job:${ques_name}:status`, 30);
183+
await redis_server.expire(`job:${ques_name}:status`, 300);
184184
} catch (err) {
185185
console.error("Error during job processing:", err);
186186
await redis_server.setEx(

lib/src/run.js

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -80,11 +80,13 @@ export async function judge({
8080
);
8181

8282
// 7. Push each batch to Redis queue
83-
for (const batch of batches) {
84-
await redis.rPush(`testcase_queue:${ques_name}`, JSON.stringify(batch));
85-
await redis.lPush("job_queue", ques_name);
83+
for (let i = 0; i < batches.length; i++) {
84+
const batchName = `${ques_name}_batch_${i + 1}`;
85+
await redis.rPush(`testcase_queue:${batchName}`, JSON.stringify(batches[i]));
86+
await redis.lPush("job_queue", batchName); // push unique batch name
8687
}
8788

89+
8890
// 8. Initialize job status
8991
await redis.hSet(`job:${ques_name}:status`, {
9092
status: "queued",
@@ -97,8 +99,8 @@ export async function judge({
9799

98100
// 9. Wait for job completion
99101
const waitUntilCompleted = async () => {
100-
const POLL_INTERVAL = 500; // ms
101-
const MAX_ATTEMPTS = 60; // 30 seconds
102+
const POLL_INTERVAL = 1000; // ms
103+
const MAX_ATTEMPTS = 120; // 30 seconds
102104
let attempts = 0;
103105

104106
while (attempts < MAX_ATTEMPTS) {

0 commit comments

Comments
 (0)