From 93833cce48edd0495f61fc851d4f85866d8253cf Mon Sep 17 00:00:00 2001 From: Luke Petre Date: Wed, 7 Apr 2010 13:15:05 +0100 Subject: [PATCH] * DM performance improvements --- lib/delayed/backend/data_mapper.rb | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/lib/delayed/backend/data_mapper.rb b/lib/delayed/backend/data_mapper.rb index 053d7a0b4..66b8b2945 100644 --- a/lib/delayed/backend/data_mapper.rb +++ b/lib/delayed/backend/data_mapper.rb @@ -30,9 +30,9 @@ class Job property :id, Serial property :priority, Integer, :default => 0, :index => :run_at_priority property :attempts, Integer, :default => 0 - property :handler, Text + property :handler, Text, :lazy => false property :run_at, Time, :index => :run_at_priority - property :locked_at, Time + property :locked_at, Time, :index => true property :locked_by, String property :failed_at, Time property :last_error, Text @@ -69,6 +69,7 @@ def self.clear_locks!(worker_name) # Lock this job for this worker. # Returns true if we have the lock, false otherwise. def lock_exclusively!(max_run_time, worker = worker_name) + now = self.class.db_time_now overtime = now - max_run_time