Fix job ID mismatch in progress updates - use full job_id instead of...

Fix job ID mismatch in progress updates - use full job_id instead of job_id_int for database lookups
parent c6922c9c
...@@ -189,7 +189,7 @@ def analyze_media(media_path, prompt, model_path, interval=10, job_id_int=None, ...@@ -189,7 +189,7 @@ def analyze_media(media_path, prompt, model_path, interval=10, job_id_int=None,
# Send initial progress update # Send initial progress update
if comm: if comm:
progress_msg = Message('progress', f'progress_{job_id_int}', { progress_msg = Message('progress', f'progress_{job_id_int}', {
'job_id': job_id_int, 'job_id': job_id,
'stage': 'initializing', 'stage': 'initializing',
'progress': 5, 'progress': 5,
'message': 'Initializing analysis job', 'message': 'Initializing analysis job',
...@@ -211,7 +211,7 @@ def analyze_media(media_path, prompt, model_path, interval=10, job_id_int=None, ...@@ -211,7 +211,7 @@ def analyze_media(media_path, prompt, model_path, interval=10, job_id_int=None,
# Send progress update after model loading # Send progress update after model loading
if comm: if comm:
progress_msg = Message('progress', f'progress_{job_id_int}', { progress_msg = Message('progress', f'progress_{job_id_int}', {
'job_id': job_id_int, 'job_id': job_id,
'stage': 'model_loaded', 'stage': 'model_loaded',
'progress': 8, 'progress': 8,
'message': f'Model {model_path.split("/")[-1]} loaded successfully' 'message': f'Model {model_path.split("/")[-1]} loaded successfully'
...@@ -240,7 +240,7 @@ def analyze_media(media_path, prompt, model_path, interval=10, job_id_int=None, ...@@ -240,7 +240,7 @@ def analyze_media(media_path, prompt, model_path, interval=10, job_id_int=None,
# Send progress update for frame extraction # Send progress update for frame extraction
if comm: if comm:
progress_msg = Message('progress', f'progress_{job_id_int}', { progress_msg = Message('progress', f'progress_{job_id_int}', {
'job_id': job_id_int, 'job_id': job_id,
'stage': 'frame_extraction', 'stage': 'frame_extraction',
'progress': 10, 'progress': 10,
'message': f'Extracted {total_frames} frames' 'message': f'Extracted {total_frames} frames'
...@@ -258,7 +258,7 @@ def analyze_media(media_path, prompt, model_path, interval=10, job_id_int=None, ...@@ -258,7 +258,7 @@ def analyze_media(media_path, prompt, model_path, interval=10, job_id_int=None,
if comm: if comm:
progress_percent = 10 + int(i / total_frames * 70) # 10-80% for frame processing progress_percent = 10 + int(i / total_frames * 70) # 10-80% for frame processing
progress_msg = Message('progress', f'progress_{job_id_int}', { progress_msg = Message('progress', f'progress_{job_id_int}', {
'job_id': job_id_int, 'job_id': job_id,
'stage': 'frame_analysis', 'stage': 'frame_analysis',
'progress': progress_percent, 'progress': progress_percent,
'message': f'Processing frame {i+1}/{total_frames} at {ts:.1f}s' 'message': f'Processing frame {i+1}/{total_frames} at {ts:.1f}s'
...@@ -267,7 +267,7 @@ def analyze_media(media_path, prompt, model_path, interval=10, job_id_int=None, ...@@ -267,7 +267,7 @@ def analyze_media(media_path, prompt, model_path, interval=10, job_id_int=None,
print(f"PROGRESS: Job {job_id_int} - {progress_percent}% - Processing frame {i+1}/{total_frames}") print(f"PROGRESS: Job {job_id_int} - {progress_percent}% - Processing frame {i+1}/{total_frames}")
# Check for cancellation # Check for cancellation
if job_id_int and check_job_cancelled(job_id_int): if job_id and check_job_cancelled(job_id):
if get_debug(): if get_debug():
print(f"DEBUG: Job {job_id_int} cancelled during frame processing") print(f"DEBUG: Job {job_id_int} cancelled during frame processing")
# Clean up and return cancelled message # Clean up and return cancelled message
...@@ -295,7 +295,7 @@ def analyze_media(media_path, prompt, model_path, interval=10, job_id_int=None, ...@@ -295,7 +295,7 @@ def analyze_media(media_path, prompt, model_path, interval=10, job_id_int=None,
if comm and (i + 1) % max(1, total_frames // 10) == 0: # Update every 10% or at least every frame for small videos if comm and (i + 1) % max(1, total_frames // 10) == 0: # Update every 10% or at least every frame for small videos
progress_percent = 10 + int((i + 1) / total_frames * 70) progress_percent = 10 + int((i + 1) / total_frames * 70)
progress_msg = Message('progress', f'progress_{job_id_int}', { progress_msg = Message('progress', f'progress_{job_id_int}', {
'job_id': job_id_int, 'job_id': job_id,
'stage': 'frame_analysis', 'stage': 'frame_analysis',
'progress': progress_percent, 'progress': progress_percent,
'message': f'Completed frame {i+1}/{total_frames} ({progress_percent}%)', 'message': f'Completed frame {i+1}/{total_frames} ({progress_percent}%)',
...@@ -307,7 +307,7 @@ def analyze_media(media_path, prompt, model_path, interval=10, job_id_int=None, ...@@ -307,7 +307,7 @@ def analyze_media(media_path, prompt, model_path, interval=10, job_id_int=None,
# Send ping every 30 seconds to keep connection alive # Send ping every 30 seconds to keep connection alive
if comm and (i + 1) % max(1, total_frames // (total_frames // 30 + 1)) == 0: if comm and (i + 1) % max(1, total_frames // (total_frames // 30 + 1)) == 0:
ping_msg = Message('ping', f'ping_{job_id_int}_{i+1}', { ping_msg = Message('ping', f'ping_{job_id_int}_{i+1}', {
'job_id': job_id_int, 'job_id': job_id,
'timestamp': time.time() 'timestamp': time.time()
}) })
comm.send_message(ping_msg) comm.send_message(ping_msg)
...@@ -323,7 +323,7 @@ def analyze_media(media_path, prompt, model_path, interval=10, job_id_int=None, ...@@ -323,7 +323,7 @@ def analyze_media(media_path, prompt, model_path, interval=10, job_id_int=None,
# Send progress update for summary generation # Send progress update for summary generation
if comm: if comm:
progress_msg = Message('progress', f'progress_{job_id_int}', { progress_msg = Message('progress', f'progress_{job_id_int}', {
'job_id': job_id_int, 'job_id': job_id,
'stage': 'summary_generation', 'stage': 'summary_generation',
'progress': 85, 'progress': 85,
'message': 'Generating video summary' 'message': 'Generating video summary'
...@@ -332,7 +332,7 @@ def analyze_media(media_path, prompt, model_path, interval=10, job_id_int=None, ...@@ -332,7 +332,7 @@ def analyze_media(media_path, prompt, model_path, interval=10, job_id_int=None,
print(f"PROGRESS: Job {job_id_int} - 85% - Generating video summary") print(f"PROGRESS: Job {job_id_int} - 85% - Generating video summary")
# Check for cancellation before summary # Check for cancellation before summary
if job_id_int and check_job_cancelled(job_id_int): if job_id and check_job_cancelled(job_id):
if get_debug(): if get_debug():
print(f"DEBUG: Job {job_id_int} cancelled before summary") print(f"DEBUG: Job {job_id_int} cancelled before summary")
return "Job cancelled by user", total_tokens return "Job cancelled by user", total_tokens
...@@ -378,7 +378,7 @@ def analyze_media(media_path, prompt, model_path, interval=10, job_id_int=None, ...@@ -378,7 +378,7 @@ def analyze_media(media_path, prompt, model_path, interval=10, job_id_int=None,
# Send final progress update # Send final progress update
if comm: if comm:
progress_msg = Message('progress', f'progress_{job_id_int}', { progress_msg = Message('progress', f'progress_{job_id_int}', {
'job_id': job_id_int, 'job_id': job_id,
'stage': 'completed', 'stage': 'completed',
'progress': 100, 'progress': 100,
'message': 'Analysis completed' 'message': 'Analysis completed'
...@@ -395,7 +395,7 @@ def analyze_media(media_path, prompt, model_path, interval=10, job_id_int=None, ...@@ -395,7 +395,7 @@ def analyze_media(media_path, prompt, model_path, interval=10, job_id_int=None,
# Send progress update for image analysis start # Send progress update for image analysis start
if comm: if comm:
progress_msg = Message('progress', f'progress_{job_id_int}', { progress_msg = Message('progress', f'progress_{job_id_int}', {
'job_id': job_id_int, 'job_id': job_id,
'stage': 'image_analysis', 'stage': 'image_analysis',
'progress': 20, 'progress': 20,
'message': 'Starting image analysis' 'message': 'Starting image analysis'
...@@ -404,7 +404,7 @@ def analyze_media(media_path, prompt, model_path, interval=10, job_id_int=None, ...@@ -404,7 +404,7 @@ def analyze_media(media_path, prompt, model_path, interval=10, job_id_int=None,
print(f"PROGRESS: Job {job_id_int} - 20% - Starting image analysis") print(f"PROGRESS: Job {job_id_int} - 20% - Starting image analysis")
# Check for cancellation before processing image # Check for cancellation before processing image
if job_id_int and check_job_cancelled(job_id_int): if job_id and check_job_cancelled(job_id):
if get_debug(): if get_debug():
print(f"DEBUG: Job {job_id_int} cancelled before image analysis") print(f"DEBUG: Job {job_id_int} cancelled before image analysis")
return "Job cancelled by user", total_tokens return "Job cancelled by user", total_tokens
...@@ -412,7 +412,7 @@ def analyze_media(media_path, prompt, model_path, interval=10, job_id_int=None, ...@@ -412,7 +412,7 @@ def analyze_media(media_path, prompt, model_path, interval=10, job_id_int=None,
# Send progress update before model inference # Send progress update before model inference
if comm: if comm:
progress_msg = Message('progress', f'progress_{job_id_int}', { progress_msg = Message('progress', f'progress_{job_id_int}', {
'job_id': job_id_int, 'job_id': job_id,
'stage': 'image_processing', 'stage': 'image_processing',
'progress': 50, 'progress': 50,
'message': 'Processing image with AI model' 'message': 'Processing image with AI model'
...@@ -428,7 +428,7 @@ def analyze_media(media_path, prompt, model_path, interval=10, job_id_int=None, ...@@ -428,7 +428,7 @@ def analyze_media(media_path, prompt, model_path, interval=10, job_id_int=None,
# Send progress update for completion # Send progress update for completion
if comm: if comm:
progress_msg = Message('progress', f'progress_{job_id_int}', { progress_msg = Message('progress', f'progress_{job_id_int}', {
'job_id': job_id_int, 'job_id': job_id,
'stage': 'finalizing', 'stage': 'finalizing',
'progress': 90, 'progress': 90,
'message': 'Finalizing analysis results' 'message': 'Finalizing analysis results'
...@@ -439,7 +439,7 @@ def analyze_media(media_path, prompt, model_path, interval=10, job_id_int=None, ...@@ -439,7 +439,7 @@ def analyze_media(media_path, prompt, model_path, interval=10, job_id_int=None,
# Send final progress update # Send final progress update
if comm: if comm:
progress_msg = Message('progress', f'progress_{job_id_int}', { progress_msg = Message('progress', f'progress_{job_id_int}', {
'job_id': job_id_int, 'job_id': job_id,
'stage': 'completed', 'stage': 'completed',
'progress': 100, 'progress': 100,
'message': 'Image analysis completed successfully' 'message': 'Image analysis completed successfully'
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment