Top Level Namespace

Defined Under Namespace

Modules: Que

Instance Method Summary collapse

Instance Method Details

#delete_jobs_query(scope) ⇒ Object



32
33
34
35
36
37
38
39
40
41
# File 'lib/que/web/sql.rb', line 32

def delete_jobs_query(scope)
  <<-SQL.freeze
    WITH target AS (#{scope})
    DELETE FROM que_jobs
    USING target
    WHERE target.locked
    AND target.id = que_jobs.id
    RETURNING pg_advisory_unlock(target.id)
  SQL
end

#reschedule_all_jobs_query(scope) ⇒ Object



19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/que/web/sql.rb', line 19

def reschedule_all_jobs_query(scope)
  <<-SQL.freeze
    WITH target AS (#{scope})
    UPDATE que_jobs
    SET run_at = $1::timestamptz,
        expired_at = NULL
    FROM target
    WHERE target.locked
    AND target.id = que_jobs.id
    RETURNING pg_advisory_unlock(target.id)
  SQL
end