def remove_expired_from_elastic(ingest_collection):
    """Remove expired items from elastic which shouldn't be there anymore - expired before previous run."""
    ingest = superdesk.get_resource_service(ingest_collection)
    items = ingest.search({'filter': {'range': {'expiry': {'lt': 'now-5m/m'}}}})
    if items.count():
        logger.warning('there are expired items in elastic (%d)' % (items.count(), ))
        for item in items:
            logger.debug('doc only in elastic item=%s' % (item, ))
            ingest.remove_from_search(item)
Beispiel #2
0
def remove_expired_from_elastic(ingest_collection):
    """Remove expired items from elastic which shouldn't be there anymore - expired before previous run."""
    ingest = superdesk.get_resource_service(ingest_collection)
    items = ingest.search({'filter': {'range': {'expiry': {'lt': 'now-5m/m'}}}})
    if items.count():
        logger.warning('there are expired items in elastic (%d)' % (items.count(), ))
        for item in items:
            logger.debug('doc only in elastic item=%s' % (item, ))
            ingest.remove_from_search(item.get('_id'))
Beispiel #3
0
def unlock(task, host=None, remove=False):
    """Release lock on given task.

    Lock can be only released by host which locked it.

    :param task: task name
    :param host: current host id
    :param remove: remove lock when unlocking
    """
    if not host:
        host = get_host()
    logger.debug('releasing lock task=%s host=%s' % (task, host))
    return _lock.release(task, host, remove)
Beispiel #4
0
def unlock(task, host=None, remove=False):
    """Release lock on given task.

    Lock can be only released by host which locked it.

    :param task: task name
    :param host: current host id
    :param remove: remove lock when unlocking
    """
    if not host:
        host = get_host()
    logger.debug('releasing lock task=%s host=%s' % (task, host))
    return _lock.release(task, host, remove)
Beispiel #5
0
def lock(task, host=None, expire=300, timeout=None):
    """Try to lock task.

    :param task: task name
    :param host: current host id
    :param expire: lock ttl in seconds
    :param timeout: how long should it wait if task is locked
    """
    if not host:
        host = get_host()
    got_lock = _lock.lock(task, host, expire=expire, timeout=timeout)
    if got_lock:
        logger.debug('got lock task=%s host=%s' % (task, host))
    else:
        logger.debug('task locked already task=%s host=%s' % (task, host))
    return got_lock
Beispiel #6
0
def lock(task, host=None, expire=300, timeout=None):
    """Try to lock task.

    :param task: task name
    :param host: current host id
    :param expire: lock ttl in seconds
    :param timeout: how long should it wait if task is locked
    """
    if not host:
        host = get_host()
    got_lock = _lock.lock(task, host, expire=expire, timeout=timeout)
    if got_lock:
        logger.debug('got lock task=%s host=%s' % (task, host))
    else:
        logger.debug('task locked already task=%s host=%s' % (task, host))
    return got_lock
Beispiel #7
0
def remove_expired_from_elastic(ingest_collection):
    """Remove expired items from elastic which shouldn't be there anymore - expired before previous run."""
    ingest = superdesk.get_resource_service(ingest_collection)
    items = ingest.search(
        {"filter": {
            "range": {
                "expiry": {
                    "lt": "now-5m/m"
                }
            }
        }})
    if items.count():
        logger.warning("there are expired items in elastic (%d)" %
                       (items.count(), ))
        for item in items:
            logger.debug("doc only in elastic item=%s" % (item, ))
            ingest.remove_from_search(item)