Пример #1
0
 def delete(self, for_resonance_id):
     if self._phase_storage == PhaseStorage.redis:
         REDIS.delete(_get_rediskey_name(for_resonance_id))
     elif self._phase_storage == PhaseStorage.db:
         conn = engine.connect()
         conn.execute("DELETE FROM %s WHERE resonance_id = %s;" % (TABLENAME, for_resonance_id))
     elif self._phase_storage == PhaseStorage.file:
         filepath = get_file_name(for_resonance_id)
         if os.path.exists(filepath):
             os.remove(filepath)
Пример #2
0
def clear_phases(start: int, stop: int, planets: Tuple[str]):
    conn = engine.connect()
    resonance_ids = []
    redis_logged = False
    for resonance in get_resonances(start, stop, False, planets):
        try:
            REDIS.delete('%s:%i' % (TABLENAME, resonance.id))
        except ConnectionError:
            redis_logged = _log_redis(redis_logged)

        resonance_ids.append(str(resonance.id))

        filename = get_file_name(resonance.id)
        if os.path.exists(filename):
            os.remove(filename)

    conn.execute("DELETE FROM %s WHERE resonance_id = ANY('{%s}'::int[]);" %
                 (TABLENAME, ','.join(resonance_ids)))