def reserve_apr_task():
    try:
        tasks = get_tasks_to_process(AddPageRequest, DB_TIMEOUT_SECS)[:1]    
        if not len(tasks):
            return None

        task = tasks[0]
        if not mark_task(task):
            return reserve_apr_task()
        return task
    except:
        return None
def reserve_tq_task():
    try:
        tasks = get_tasks_to_process(ThumbQueue, DB_TIMEOUT_SECS)[:1]    
        if not len(tasks):
            transition.commit()
            return None

        task = tasks[0]
        if not mark_task(task):
            return reserve_tq_task()
        return task
    except:
        return None