clean up
This commit is contained in:
parent
2ebe75b3bd
commit
9f3e5bea93
@ -1,63 +0,0 @@
|
||||
#!/usr/bin/env python3
|
||||
"""
|
||||
migrate_cache.py
|
||||
|
||||
Migrate DiskCache caches from “old” in‐memory entries (bytes, mime) into
|
||||
“new” on‐disk read=True entries so that Flask can send them via send_file(path).
|
||||
|
||||
Usage:
|
||||
python migrate_cache.py /path/to/filecache_audio \
|
||||
/path/to/filecache_image \
|
||||
/path/to/filecache_video \
|
||||
/path/to/filecache_other
|
||||
"""
|
||||
|
||||
import io
|
||||
import sys
|
||||
from diskcache import Cache
|
||||
|
||||
def migrate_cache(cache_path):
|
||||
"""
|
||||
Walks every key in the cache at `cache_path`. If the value is a tuple of
|
||||
(bytes, mime), re‐writes it via read=True so DiskCache stores it as a file.
|
||||
"""
|
||||
print(f"➡ Migrating cache at {cache_path!r}")
|
||||
cache = Cache(cache_path)
|
||||
migrated = 0
|
||||
skipped = 0
|
||||
|
||||
# Iterate keys without loading everything into memory
|
||||
for key in cache.iterkeys():
|
||||
try:
|
||||
val = cache.get(key)
|
||||
except Exception as e:
|
||||
print(f" [ERROR] key={key!r} get failed: {e}")
|
||||
continue
|
||||
|
||||
# Detect old‐style entries: (bytes, mime)
|
||||
if (
|
||||
isinstance(val, tuple)
|
||||
and len(val) == 2
|
||||
and isinstance(val[0], (bytes, bytearray))
|
||||
and isinstance(val[1], str)
|
||||
):
|
||||
data, mime = val
|
||||
buf = io.BytesIO(data)
|
||||
buf.seek(0)
|
||||
# Re‐store as an on‐disk file
|
||||
cache.set(key, buf, read=True)
|
||||
migrated += 1
|
||||
else:
|
||||
skipped += 1
|
||||
|
||||
cache.close()
|
||||
print(f" → Done: migrated={migrated}, skipped={skipped}\n")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
if len(sys.argv) < 2:
|
||||
print("Usage: migrate_cache.py <cache_dir1> [<cache_dir2> ...]")
|
||||
sys.exit(1)
|
||||
|
||||
for directory in sys.argv[1:]:
|
||||
migrate_cache(directory)
|
||||
@ -1,34 +0,0 @@
|
||||
#!/usr/bin/env python3
|
||||
import sqlite3
|
||||
|
||||
# — CONFIGURE —
|
||||
DB_NAME = 'access_log.db'
|
||||
INDICATORS = [
|
||||
"Germany",
|
||||
"Canada",
|
||||
"Paraguay",
|
||||
"Uruguay",
|
||||
"France",
|
||||
"Australia",
|
||||
"Ukraine",
|
||||
"India"
|
||||
]
|
||||
# — END CONFIG —
|
||||
|
||||
# connect exactly as you use elsewhere
|
||||
log_db = sqlite3.connect(DB_NAME, check_same_thread=False)
|
||||
|
||||
# build and run the swap
|
||||
placeholders = ",".join("?" for _ in INDICATORS)
|
||||
sql = f"""
|
||||
UPDATE file_access_log
|
||||
SET city = country,
|
||||
country = city
|
||||
WHERE city IN ({placeholders})
|
||||
"""
|
||||
cur = log_db.cursor()
|
||||
cur.execute(sql, INDICATORS)
|
||||
log_db.commit()
|
||||
|
||||
print(f"Swapped city↔country on {cur.rowcount} row{'s' if cur.rowcount!=1 else ''}.")
|
||||
log_db.close()
|
||||
Loading…
x
Reference in New Issue
Block a user