diff --git a/hostingtoot/.env b/hostingtoot/.env new file mode 100644 index 0000000..a5e6c5d --- /dev/null +++ b/hostingtoot/.env @@ -0,0 +1,6 @@ + GNU nano 7.2 .env +DB_USER= +DB_PASSWORD= +DB_NAME= +DB_HOST_PRIMARY= +MASTODON_ACCESS_TOKEN= diff --git a/miscellaneous/bash/dbv1.sh b/miscellaneous/bash/dbv1.sh index 6eed970..68b0406 100755 --- a/miscellaneous/bash/dbv1.sh +++ b/miscellaneous/bash/dbv1.sh @@ -1,14 +1,14 @@ #!/bin/bash # ---- CONFIG ---- -PG_REMOTE_USER="postgres" -PG_REMOTE_HOST="cluster.db2.genesishostingtechnologies.com" +PG_REMOTE_USER="doc" +PG_REMOTE_HOST="zcluster.technodrome2.sshjunkie.com" PG_REMOTE_PORT="5432" PG_LOCAL_PORT="5432" DUMP_DIR="/tmp/pgbackup_verify" BACKUP_TARGET="root@backup.sshjunkie.com:/mnt/backup/pgdumps" CC_TARGET="doc@clustercontrol.sshjunkie.com:/home/doc/backups" -DBS=("mastodon_production" "giteaprod" "hostingtootdb" "radiotootdb") +DBS=("mastodon_production" "hostingtootdb" "radiotootdb") LOGFILE="$DUMP_DIR/verify_log_$(date +%Y%m%d_%H%M%S).txt" mkdir -p "$DUMP_DIR" diff --git a/miscellaneous/bash/dbv2.sh b/miscellaneous/bash/dbv2.sh new file mode 100755 index 0000000..0221c7b --- /dev/null +++ b/miscellaneous/bash/dbv2.sh @@ -0,0 +1,74 @@ +#!/bin/bash +# verify_postgres_snapshot.sh +# Verify PostgreSQL backup snapshot remotely using ZFS, pg_verifybackup, and pg_checksums + +set -euo pipefail + +# === CONFIG === +REMOTE_HOST="zcluster.technodrome2.sshjunkie.com" +ZFS_DATASET="pgpool/postgresbackups/db2" +MOUNT_ROOT="/mnt/pgsnapshot_verify" +PG_BIN_DIR="/usr/lib/postgresql/16/bin" # adjust if needed on remote host +LOGFILE="/var/log/pgsnapshot_verify_$(date +%Y%m%d_%H%M%S).log" +DB_NAME="mastodon_production" + +# === MASTODON ALERTING === +MASTODON_TOKEN="rimxBLi-eaJAcwagkmoj6UoW7Lc473tQY0cOM041Euw" +MASTODON_API="https://chatwithus.live/api/v1/statuses" +TOOT_ACCOUNT_ID="114386383616633367" + +mastodon_alert() { + local msg="$1" + curl -sS -X POST "$MASTODON_API" \ + -H "Authorization: Bearer $MASTODON_TOKEN" \ + --data-urlencode "status=$msg" \ + --data "visibility=direct" \ + --data "in_reply_to_account_id=$TOOT_ACCOUNT_ID" >/dev/null +} + +# === RUN REMOTELY === +echo "📦 Verifying latest snapshot for $ZFS_DATASET on $REMOTE_HOST" | tee "$LOGFILE" +ssh root@$REMOTE_HOST bash <> "$LOGFILE" 2>&1; then + echo "❌ pg_verifybackup failed on snapshot \$LATEST_SNAPSHOT" | tee -a "$LOGFILE" + zfs destroy "${ZFS_DATASET}@verifytemp" + exit 2 +fi + +# Optional: pg_checksums +if "$PG_BIN_DIR/pg_checksums" --check --data-directory="\$MOUNTPOINT" >> "$LOGFILE" 2>&1; then + echo "✅ pg_checksums passed." | tee -a "$LOGFILE" +else + echo "⚠️ pg_checksums failed or not enabled." | tee -a "$LOGFILE" +fi + +zfs destroy "${ZFS_DATASET}@verifytemp" +rmdir "\$MOUNTPOINT" +EOF + +# === ALERT BASED ON SSH EXIT CODE === +EXIT_CODE=$? +if [[ $EXIT_CODE -eq 1 ]]; then + mastodon_alert "🚨 ZFS PostgreSQL snapshot verification failed: No snapshot found for $ZFS_DATASET on $REMOTE_HOST at $(date)." +elif [[ $EXIT_CODE -eq 2 ]]; then + mastodon_alert "🚨 pg_verifybackup failed for snapshot of $ZFS_DATASET on $REMOTE_HOST at $(date)." +fi + +echo "✅ PostgreSQL remote snapshot verification complete." | tee -a "$LOGFILE" +exit 0 diff --git a/miscellaneous/bash/malips.sh b/miscellaneous/bash/malips.sh index 09173e7..4929e68 100755 --- a/miscellaneous/bash/malips.sh +++ b/miscellaneous/bash/malips.sh @@ -4,7 +4,7 @@ SNORT_LOG="/var/log/snort/snort.alert.fast" # Database connection details -DB_HOST="38.102.127.174" +DB_HOST="zcluster.technodrome1.sshjunkie.com" DB_USER="ipblocks_user" DB_PASS="rusty2281" DB_NAME="ipblocks" diff --git a/miscellaneous/bash/prompt_prod.sh b/miscellaneous/bash/prompt_prod.sh new file mode 100755 index 0000000..38d69e3 --- /dev/null +++ b/miscellaneous/bash/prompt_prod.sh @@ -0,0 +1,6 @@ +#!/bin/bash +# /etc/profile.d/prompt_env.sh for Production + +if [[ $- == *i* ]]; then + export PS1="\[\e[1;31m\][prod] \u@\h:\w\\$ \[\e[0m\]" +fi diff --git a/miscellaneous/bash/rsync_zfs_sync_helper.sh b/miscellaneous/bash/rsync_zfs_sync_helper.sh new file mode 100644 index 0000000..685eb88 --- /dev/null +++ b/miscellaneous/bash/rsync_zfs_sync_helper.sh @@ -0,0 +1,56 @@ +#!/bin/bash +# sync_to_vault.sh +# Rsync + ZFS sanity tool with built-in slash wisdom + +set -euo pipefail + +# === CONFIG === +VAULT_HOST="thevault.sshjunkie.com" +BASE_TARGET="/nexus/miniodata/assets" + +# === USAGE === +if [[ $# -lt 2 ]]; then + echo "Usage: $0 " + echo "Example: $0 /mnt/backup3/tempshit/genesisassets/ genesisassets-secure" + exit 1 +fi + +SRC="$1" +BUCKET="$2" +DST="${BASE_TARGET}/${BUCKET}/" + +# === WISDOM === +echo "🧘 Trailing slashes, my friend. — John Northrup" +echo + +if [[ "$SRC" != */ ]]; then + echo "⚠️ Warning: Source path does not end in a slash." + echo " You may be copying the folder itself instead of its contents." + echo " You probably want: ${SRC}/" + echo +fi + +# === VERIFY SOURCE === +if [[ ! -d "$SRC" ]]; then + echo "❌ Source directory does not exist: $SRC" + exit 1 +fi + +# === CREATE ZFS DATASET ON REMOTE IF MISSING === +echo "🔍 Ensuring dataset exists on $VAULT_HOST..." +ssh root@$VAULT_HOST "zfs list nexus/miniodata/assets/$BUCKET" >/dev/null 2>&1 || { + echo "📁 Creating dataset nexus/miniodata/assets/$BUCKET on $VAULT_HOST" + ssh root@$VAULT_HOST "zfs create nexus/miniodata/assets/$BUCKET" +} + +# === RSYNC === +echo "🚀 Starting rsync from $SRC to $VAULT_HOST:$DST" +rsync -avhP "$SRC" root@$VAULT_HOST:"$DST" + +# === SNAPSHOT === +SNAPNAME="rsync_$(date +%Y%m%d_%H%M%S)" +echo "📸 Creating post-sync snapshot: $SNAPNAME" +ssh root@$VAULT_HOST "zfs snapshot nexus/miniodata/assets/$BUCKET@$SNAPNAME" + +# === DONE === +echo "✅ Sync and snapshot complete: $BUCKET@$SNAPNAME" diff --git a/miscellaneous/cron_backup.log b/miscellaneous/cron_backup.log index d410345..348abed 100644 --- a/miscellaneous/cron_backup.log +++ b/miscellaneous/cron_backup.log @@ -634063,3 +634063,11728 @@ Uploads to thevault successful. Uploading to ClusterControl controller at doc@clustercontrol.sshjunkie.com:/home/doc/backups Uploads to ClusterControl successful. DONE. Log: /tmp/pgbackup_verify/verify_log_20250501_100001.txt +📂 Ensuring remote path exists... +=== [Thu May 1 11:00:01 AM EDT 2025] Dumping mastodon_production from cluster.db2.genesishostingtechnologies.com === +Creating test database verify_mastodon_production_20273 +Restoring to verify_mastodon_production_20273 +SET +SET +SET +SET +SET + set_config +------------ + +(1 row) + +SET +SET +SET +SET +CREATE FUNCTION +ALTER FUNCTION +SET +SET +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE MATERIALIZED VIEW +ALTER MATERIALIZED VIEW +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE MATERIALIZED VIEW +ALTER MATERIALIZED VIEW +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE MATERIALIZED VIEW +ALTER MATERIALIZED VIEW +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE VIEW +ALTER VIEW +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +COPY 0 +COPY 376 +COPY 1 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 6375 +COPY 0 +COPY 0 +COPY 0 +COPY 7067 +COPY 18 +COPY 11 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 2 +COPY 0 +COPY 3 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 12648 +COPY 0 +COPY 1465 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 12 +COPY 5910 +COPY 0 +COPY 0 +COPY 6 +COPY 934 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 33 +COPY 8 +COPY 8028 +COPY 14834 +COPY 0 +COPY 0 +COPY 0 +COPY 1 +COPY 846 +COPY 0 +COPY 32 +COPY 24 +COPY 2709 +COPY 1 +COPY 67 +COPY 1 +COPY 0 +COPY 4034 +COPY 4348 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 11 +COPY 0 +COPY 529 +COPY 18 +COPY 15 +COPY 0 +COPY 4 +COPY 0 +COPY 411 +COPY 6863 +COPY 13441 +COPY 0 +COPY 30188 +COPY 33460 +COPY 2 +COPY 3 +COPY 12246 +COPY 1 +COPY 7301 +COPY 0 +COPY 5 +COPY 4 +COPY 7 +COPY 3 +COPY 5 +COPY 0 +COPY 0 + setval +-------- + 1 +(1 row) + + setval +-------- + 474 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 38407 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 7197 +(1 row) + + setval +-------- + 43 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 35 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 12757 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1556 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 77 +(1 row) + + setval +-------- + 6030 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1027 +(1 row) + + setval +-------- + 1034 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 128 +(1 row) + + setval +-------- + 40 +(1 row) + + setval +-------- + 8186 +(1 row) + + setval +-------- + 15230 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 33 +(1 row) + + setval +-------- + 963 +(1 row) + + setval +-------- + 43 +(1 row) + + setval +-------- + 146 +(1 row) + + setval +-------- + 88 +(1 row) + + setval +-------- + 2727 +(1 row) + + setval +-------- + 33 +(1 row) + + setval +-------- + 163 +(1 row) + + setval +-------- + 33 +(1 row) + + setval +-------- + 831 +(1 row) + + setval +-------- + 4167 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 11 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 133 +(1 row) + + setval +-------- + 15 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 5 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 502 +(1 row) + + setval +-------- + 7085 +(1 row) + + setval +-------- + 13698 +(1 row) + + setval +-------- + 782 +(1 row) + + setval +-------- + 10739 +(1 row) + + setval +-------- + 2 +(1 row) + + setval +-------- + 117608 +(1 row) + + setval +-------- + 12361 +(1 row) + + setval +-------- + 33 +(1 row) + + setval +-------- + 7425 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 5 +(1 row) + + setval +-------- + 3 +(1 row) + + setval +-------- + 7 +(1 row) + + setval +-------- + 37 +(1 row) + + setval +-------- + 37 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +REFRESH MATERIALIZED VIEW +REFRESH MATERIALIZED VIEW +REFRESH MATERIALIZED VIEW +Row count for 'users' table in verify_mastodon_production_20273: 7 +[PASS] Row count OK for 'users' table in mastodon_production. +[PASS] Checksum verified for mastodon_production. + List of relations + Schema | Name | Type | Owner +--------+-------------------------------------------+-------+---------- + public | account_aliases | table | mastodon + public | account_conversations | table | mastodon + public | account_deletion_requests | table | mastodon + public | account_domain_blocks | table | mastodon + public | account_migrations | table | mastodon + public | account_moderation_notes | table | mastodon + public | account_notes | table | mastodon + public | account_pins | table | mastodon + public | account_relationship_severance_events | table | mastodon + public | account_stats | table | mastodon + public | account_statuses_cleanup_policies | table | mastodon + public | account_warning_presets | table | mastodon + public | account_warnings | table | mastodon + public | accounts | table | mastodon + public | accounts_tags | table | mastodon + public | admin_action_logs | table | mastodon + public | announcement_mutes | table | mastodon + public | announcement_reactions | table | mastodon + public | announcements | table | mastodon + public | annual_report_statuses_per_account_counts | table | mastodon + public | appeals | table | mastodon + public | ar_internal_metadata | table | mastodon + public | backups | table | mastodon + public | blocks | table | mastodon + public | bookmarks | table | mastodon + public | bulk_import_rows | table | mastodon + public | bulk_imports | table | mastodon + public | canonical_email_blocks | table | mastodon + public | conversation_mutes | table | mastodon + public | conversations | table | mastodon + public | custom_emoji_categories | table | mastodon + public | custom_emojis | table | mastodon + public | custom_filter_keywords | table | mastodon + public | custom_filter_statuses | table | mastodon + public | custom_filters | table | mastodon + public | domain_allows | table | mastodon + public | domain_blocks | table | mastodon + public | email_domain_blocks | table | mastodon + public | favourites | table | mastodon + public | featured_tags | table | mastodon + public | follow_recommendation_mutes | table | mastodon + public | follow_recommendation_suppressions | table | mastodon + public | follow_requests | table | mastodon + public | follows | table | mastodon + public | generated_annual_reports | table | mastodon + public | identities | table | mastodon + public | imports | table | mastodon + public | invites | table | mastodon + public | ip_blocks | table | mastodon + public | list_accounts | table | mastodon + public | lists | table | mastodon + public | login_activities | table | mastodon + public | markers | table | mastodon + public | media_attachments | table | mastodon + public | mentions | table | mastodon + public | mutes | table | mastodon + public | notification_permissions | table | mastodon + public | notification_policies | table | mastodon + public | notification_requests | table | mastodon + public | notifications | table | mastodon + public | oauth_access_grants | table | mastodon + public | oauth_access_tokens | table | mastodon + public | oauth_applications | table | mastodon + public | pghero_space_stats | table | mastodon + public | poll_votes | table | mastodon + public | polls | table | mastodon + public | preview_card_providers | table | mastodon + public | preview_card_trends | table | mastodon + public | preview_cards | table | mastodon + public | preview_cards_statuses | table | mastodon + public | relationship_severance_events | table | mastodon + public | relays | table | mastodon + public | report_notes | table | mastodon + public | reports | table | mastodon + public | rules | table | mastodon + public | scheduled_statuses | table | mastodon + public | schema_migrations | table | mastodon + public | session_activations | table | mastodon + public | settings | table | mastodon + public | severed_relationships | table | mastodon + public | site_uploads | table | mastodon + public | software_updates | table | mastodon + public | status_edits | table | mastodon + public | status_pins | table | mastodon + public | status_stats | table | mastodon + public | status_trends | table | mastodon + public | statuses | table | mastodon + public | statuses_tags | table | mastodon + public | tag_follows | table | mastodon + public | tag_trends | table | mastodon + public | tags | table | mastodon + public | terms_of_services | table | mastodon + public | tombstones | table | mastodon + public | unavailable_domains | table | mastodon + public | user_invite_requests | table | mastodon + public | user_roles | table | mastodon + public | users | table | mastodon + public | web_push_subscriptions | table | mastodon + public | web_settings | table | mastodon + public | webauthn_credentials | table | mastodon + public | webhooks | table | mastodon +(101 rows) + +[PASS] mastodon_production: Dump and restore OK. +Cleaned up verify_mastodon_production_20273 + +=== [Thu May 1 11:00:12 AM EDT 2025] Dumping giteaprod from cluster.db2.genesishostingtechnologies.com === +Creating test database verify_giteaprod_27975 +Restoring to verify_giteaprod_27975 +SET +SET +SET +SET +SET + set_config +------------ + +(1 row) + +SET +SET +SET +SET +SET +SET +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +📸 Creating snapshot: /mnt/backup/images/genesis-tools/2025-05-01_11-00 +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 3 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 1 +COPY 0 +COPY 0 +COPY 0 + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 3 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +🔗 Updating 'latest' symlink... +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +🧹 Pruning snapshots older than 7 days... +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +✅ KodakMoment complete. +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +GRANT +ALTER DEFAULT PRIVILEGES +ALTER DEFAULT PRIVILEGES +ERROR: relation "users" does not exist +LINE 1: SELECT count(*) FROM users; + ^ +Row count for 'users' table in verify_giteaprod_27975: +/home/doc/genesis-tools/miscellaneous/bash/dbv1.sh: line 71: [: : integer expression expected +[PASS] Row count OK for 'users' table in giteaprod. +[PASS] Checksum verified for giteaprod. + List of relations + Schema | Name | Type | Owner +--------+---------------------------+-------+----------- + public | access | table | giteauser + public | access_token | table | giteauser + public | action | table | giteauser + public | action_artifact | table | giteauser + public | action_run | table | giteauser + public | action_run_index | table | giteauser + public | action_run_job | table | giteauser + public | action_runner | table | giteauser + public | action_runner_token | table | giteauser + public | action_schedule | table | giteauser + public | action_schedule_spec | table | giteauser + public | action_task | table | giteauser + public | action_task_output | table | giteauser + public | action_task_step | table | giteauser + public | action_tasks_version | table | giteauser + public | action_variable | table | giteauser + public | app_state | table | giteauser + public | attachment | table | giteauser + public | auth_token | table | giteauser + public | badge | table | giteauser + public | branch | table | giteauser + public | collaboration | table | giteauser + public | comment | table | giteauser + public | commit_status | table | giteauser + public | commit_status_index | table | giteauser + public | commit_status_summary | table | giteauser + public | dbfs_data | table | giteauser + public | dbfs_meta | table | giteauser + public | deploy_key | table | giteauser + public | email_address | table | giteauser + public | email_hash | table | giteauser + public | external_login_user | table | giteauser + public | follow | table | giteauser + public | gpg_key | table | giteauser + public | gpg_key_import | table | giteauser + public | hook_task | table | giteauser + public | issue | table | giteauser + public | issue_assignees | table | giteauser + public | issue_content_history | table | giteauser + public | issue_dependency | table | giteauser + public | issue_index | table | giteauser + public | issue_label | table | giteauser + public | issue_user | table | giteauser + public | issue_watch | table | giteauser + public | label | table | giteauser + public | language_stat | table | giteauser + public | lfs_lock | table | giteauser + public | lfs_meta_object | table | giteauser + public | login_source | table | giteauser + public | milestone | table | giteauser + public | mirror | table | giteauser + public | notice | table | giteauser + public | notification | table | giteauser + public | oauth2_application | table | giteauser + public | oauth2_authorization_code | table | giteauser + public | oauth2_grant | table | giteauser + public | org_user | table | giteauser + public | package | table | giteauser + public | package_blob | table | giteauser + public | package_blob_upload | table | giteauser + public | package_cleanup_rule | table | giteauser + public | package_file | table | giteauser + public | package_property | table | giteauser + public | package_version | table | giteauser + public | project | table | giteauser + public | project_board | table | giteauser + public | project_issue | table | giteauser + public | protected_branch | table | giteauser + public | protected_tag | table | giteauser + public | public_key | table | giteauser + public | pull_auto_merge | table | giteauser + public | pull_request | table | giteauser + public | push_mirror | table | giteauser + public | reaction | table | giteauser + public | release | table | giteauser + public | renamed_branch | table | giteauser + public | repo_archiver | table | giteauser + public | repo_indexer_status | table | giteauser + public | repo_license | table | giteauser + public | repo_redirect | table | giteauser + public | repo_topic | table | giteauser + public | repo_transfer | table | giteauser + public | repo_unit | table | giteauser + public | repository | table | giteauser + public | review | table | giteauser + public | review_state | table | giteauser + public | secret | table | giteauser + public | session | table | giteauser + public | star | table | giteauser + public | stopwatch | table | giteauser + public | system_setting | table | giteauser + public | task | table | giteauser + public | team | table | giteauser + public | team_invite | table | giteauser + public | team_repo | table | giteauser + public | team_unit | table | giteauser + public | team_user | table | giteauser + public | topic | table | giteauser + public | tracked_time | table | giteauser + public | two_factor | table | giteauser + public | upload | table | giteauser + public | user | table | giteauser + public | user_badge | table | giteauser + public | user_blocking | table | giteauser + public | user_open_id | table | giteauser + public | user_redirect | table | giteauser + public | user_setting | table | giteauser + public | version | table | giteauser + public | watch | table | giteauser + public | webauthn_credential | table | giteauser + public | webhook | table | giteauser +(111 rows) + +[PASS] giteaprod: Dump and restore OK. +Cleaned up verify_giteaprod_27975 + +=== [Thu May 1 11:00:23 AM EDT 2025] Dumping hostingtootdb from cluster.db2.genesishostingtechnologies.com === +Creating test database verify_hostingtootdb_31920 +Restoring to verify_hostingtootdb_31920 +SET +SET +SET +SET +SET + set_config +------------ + +(1 row) + +SET +SET +SET +SET +SET +SET +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +COPY 0 +COPY 1 +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +GRANT +ERROR: relation "users" does not exist +LINE 1: SELECT count(*) FROM users; + ^ +Row count for 'users' table in verify_hostingtootdb_31920: +/home/doc/genesis-tools/miscellaneous/bash/dbv1.sh: line 71: [: : integer expression expected +[PASS] Row count OK for 'users' table in hostingtootdb. +[PASS] Checksum verified for hostingtootdb. + List of relations + Schema | Name | Type | Owner +--------+------+-------+----------------- + public | toot | table | hostingtootuser + public | user | table | hostingtootuser +(2 rows) + +[PASS] hostingtootdb: Dump and restore OK. +Cleaned up verify_hostingtootdb_31920 + +=== [Thu May 1 11:00:24 AM EDT 2025] Dumping radiotootdb from cluster.db2.genesishostingtechnologies.com === +Creating test database verify_radiotootdb_23918 +Restoring to verify_radiotootdb_23918 +SET +SET +SET +SET +SET + set_config +------------ + +(1 row) + +SET +SET +SET +SET +SET +SET +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +COPY 0 +COPY 0 +COPY 1 + setval +-------- + 35 +(1 row) + +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +GRANT +ERROR: relation "users" does not exist +LINE 1: SELECT count(*) FROM users; + ^ +Row count for 'users' table in verify_radiotootdb_23918: +/home/doc/genesis-tools/miscellaneous/bash/dbv1.sh: line 71: [: : integer expression expected +[PASS] Row count OK for 'users' table in radiotootdb. +[PASS] Checksum verified for radiotootdb. + List of relations + Schema | Name | Type | Owner +--------+-----------------+-------+--------------- + public | alembic_version | table | radiotootuser + public | toot | table | radiotootuser + public | user | table | radiotootuser +(3 rows) + +[PASS] radiotootdb: Dump and restore OK. +Cleaned up verify_radiotootdb_23918 + +All dumps verified, sending to root@backup.sshjunkie.com:/mnt/backup/pgdumps +Uploads to thevault successful. +Uploading to ClusterControl controller at doc@clustercontrol.sshjunkie.com:/home/doc/backups +Uploads to ClusterControl successful. +DONE. Log: /tmp/pgbackup_verify/verify_log_20250501_110001.txt +📂 Ensuring remote path exists... +=== [Thu May 1 12:00:01 PM EDT 2025] Dumping mastodon_production from cluster.db2.genesishostingtechnologies.com === +Creating test database verify_mastodon_production_29840 +Restoring to verify_mastodon_production_29840 +SET +SET +SET +SET +SET + set_config +------------ + +(1 row) + +SET +SET +SET +SET +CREATE FUNCTION +ALTER FUNCTION +SET +SET +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE MATERIALIZED VIEW +ALTER MATERIALIZED VIEW +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE MATERIALIZED VIEW +ALTER MATERIALIZED VIEW +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE MATERIALIZED VIEW +ALTER MATERIALIZED VIEW +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE VIEW +ALTER VIEW +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +COPY 0 +COPY 376 +COPY 1 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 6387 +COPY 0 +COPY 0 +COPY 0 +COPY 7079 +COPY 18 +COPY 11 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 2 +COPY 0 +COPY 3 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 12749 +COPY 0 +COPY 1466 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 12 +COPY 5924 +COPY 0 +COPY 0 +COPY 6 +COPY 934 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 33 +COPY 8 +COPY 8049 +COPY 14902 +COPY 0 +COPY 0 +COPY 0 +COPY 1 +COPY 847 +COPY 0 +COPY 32 +COPY 24 +COPY 2709 +COPY 1 +COPY 67 +COPY 1 +COPY 0 +COPY 4054 +COPY 4374 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 11 +COPY 0 +COPY 529 +COPY 18 +COPY 15 +COPY 0 +COPY 4 +COPY 0 +COPY 413 +COPY 6894 +COPY 13482 +COPY 0 +COPY 30339 +COPY 33578 +COPY 2 +COPY 2 +COPY 12270 +COPY 1 +COPY 7324 +COPY 0 +COPY 5 +COPY 4 +COPY 7 +COPY 3 +COPY 5 +COPY 0 +COPY 0 + setval +-------- + 1 +(1 row) + + setval +-------- + 474 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 38549 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 7208 +(1 row) + + setval +-------- + 43 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 35 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 12848 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1557 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 77 +(1 row) + + setval +-------- + 6047 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1027 +(1 row) + + setval +-------- + 1034 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 128 +(1 row) + + setval +-------- + 40 +(1 row) + + setval +-------- + 8208 +(1 row) + + setval +-------- + 15290 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 33 +(1 row) + + setval +-------- + 964 +(1 row) + + setval +-------- + 43 +(1 row) + + setval +-------- + 146 +(1 row) + + setval +-------- + 88 +(1 row) + + setval +-------- + 2727 +(1 row) + + setval +-------- + 33 +(1 row) + + setval +-------- + 163 +(1 row) + + setval +-------- + 33 +(1 row) + + setval +-------- + 831 +(1 row) + + setval +-------- + 4183 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 11 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 133 +(1 row) + + setval +-------- + 15 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 5 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 504 +(1 row) + + setval +-------- + 7109 +(1 row) + + setval +-------- + 13737 +(1 row) + + setval +-------- + 782 +(1 row) + + setval +-------- + 10825 +(1 row) + + setval +-------- + 2 +(1 row) + + setval +-------- + 117653 +(1 row) + + setval +-------- + 12388 +(1 row) + + setval +-------- + 33 +(1 row) + + setval +-------- + 7448 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 5 +(1 row) + + setval +-------- + 3 +(1 row) + + setval +-------- + 7 +(1 row) + + setval +-------- + 37 +(1 row) + + setval +-------- + 37 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +📸 Creating snapshot: /mnt/backup/images/genesis-tools/2025-05-01_12-00 +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +🔗 Updating 'latest' symlink... +CREATE INDEX +CREATE INDEX +CREATE INDEX +🧹 Pruning snapshots older than 7 days... +CREATE INDEX +CREATE INDEX +CREATE INDEX +✅ KodakMoment complete. +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +REFRESH MATERIALIZED VIEW +REFRESH MATERIALIZED VIEW +REFRESH MATERIALIZED VIEW +Row count for 'users' table in verify_mastodon_production_29840: 7 +[PASS] Row count OK for 'users' table in mastodon_production. +[PASS] Checksum verified for mastodon_production. + List of relations + Schema | Name | Type | Owner +--------+-------------------------------------------+-------+---------- + public | account_aliases | table | mastodon + public | account_conversations | table | mastodon + public | account_deletion_requests | table | mastodon + public | account_domain_blocks | table | mastodon + public | account_migrations | table | mastodon + public | account_moderation_notes | table | mastodon + public | account_notes | table | mastodon + public | account_pins | table | mastodon + public | account_relationship_severance_events | table | mastodon + public | account_stats | table | mastodon + public | account_statuses_cleanup_policies | table | mastodon + public | account_warning_presets | table | mastodon + public | account_warnings | table | mastodon + public | accounts | table | mastodon + public | accounts_tags | table | mastodon + public | admin_action_logs | table | mastodon + public | announcement_mutes | table | mastodon + public | announcement_reactions | table | mastodon + public | announcements | table | mastodon + public | annual_report_statuses_per_account_counts | table | mastodon + public | appeals | table | mastodon + public | ar_internal_metadata | table | mastodon + public | backups | table | mastodon + public | blocks | table | mastodon + public | bookmarks | table | mastodon + public | bulk_import_rows | table | mastodon + public | bulk_imports | table | mastodon + public | canonical_email_blocks | table | mastodon + public | conversation_mutes | table | mastodon + public | conversations | table | mastodon + public | custom_emoji_categories | table | mastodon + public | custom_emojis | table | mastodon + public | custom_filter_keywords | table | mastodon + public | custom_filter_statuses | table | mastodon + public | custom_filters | table | mastodon + public | domain_allows | table | mastodon + public | domain_blocks | table | mastodon + public | email_domain_blocks | table | mastodon + public | favourites | table | mastodon + public | featured_tags | table | mastodon + public | follow_recommendation_mutes | table | mastodon + public | follow_recommendation_suppressions | table | mastodon + public | follow_requests | table | mastodon + public | follows | table | mastodon + public | generated_annual_reports | table | mastodon + public | identities | table | mastodon + public | imports | table | mastodon + public | invites | table | mastodon + public | ip_blocks | table | mastodon + public | list_accounts | table | mastodon + public | lists | table | mastodon + public | login_activities | table | mastodon + public | markers | table | mastodon + public | media_attachments | table | mastodon + public | mentions | table | mastodon + public | mutes | table | mastodon + public | notification_permissions | table | mastodon + public | notification_policies | table | mastodon + public | notification_requests | table | mastodon + public | notifications | table | mastodon + public | oauth_access_grants | table | mastodon + public | oauth_access_tokens | table | mastodon + public | oauth_applications | table | mastodon + public | pghero_space_stats | table | mastodon + public | poll_votes | table | mastodon + public | polls | table | mastodon + public | preview_card_providers | table | mastodon + public | preview_card_trends | table | mastodon + public | preview_cards | table | mastodon + public | preview_cards_statuses | table | mastodon + public | relationship_severance_events | table | mastodon + public | relays | table | mastodon + public | report_notes | table | mastodon + public | reports | table | mastodon + public | rules | table | mastodon + public | scheduled_statuses | table | mastodon + public | schema_migrations | table | mastodon + public | session_activations | table | mastodon + public | settings | table | mastodon + public | severed_relationships | table | mastodon + public | site_uploads | table | mastodon + public | software_updates | table | mastodon + public | status_edits | table | mastodon + public | status_pins | table | mastodon + public | status_stats | table | mastodon + public | status_trends | table | mastodon + public | statuses | table | mastodon + public | statuses_tags | table | mastodon + public | tag_follows | table | mastodon + public | tag_trends | table | mastodon + public | tags | table | mastodon + public | terms_of_services | table | mastodon + public | tombstones | table | mastodon + public | unavailable_domains | table | mastodon + public | user_invite_requests | table | mastodon + public | user_roles | table | mastodon + public | users | table | mastodon + public | web_push_subscriptions | table | mastodon + public | web_settings | table | mastodon + public | webauthn_credentials | table | mastodon + public | webhooks | table | mastodon +(101 rows) + +[PASS] mastodon_production: Dump and restore OK. +Cleaned up verify_mastodon_production_29840 + +=== [Thu May 1 12:00:15 PM EDT 2025] Dumping giteaprod from cluster.db2.genesishostingtechnologies.com === +Creating test database verify_giteaprod_28724 +Restoring to verify_giteaprod_28724 +SET +SET +SET +SET +SET + set_config +------------ + +(1 row) + +SET +SET +SET +SET +SET +SET +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 3 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 1 +COPY 0 +COPY 0 +COPY 0 + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 3 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +GRANT +ALTER DEFAULT PRIVILEGES +ALTER DEFAULT PRIVILEGES +ERROR: relation "users" does not exist +LINE 1: SELECT count(*) FROM users; + ^ +Row count for 'users' table in verify_giteaprod_28724: +/home/doc/genesis-tools/miscellaneous/bash/dbv1.sh: line 71: [: : integer expression expected +[PASS] Row count OK for 'users' table in giteaprod. +[PASS] Checksum verified for giteaprod. + List of relations + Schema | Name | Type | Owner +--------+---------------------------+-------+----------- + public | access | table | giteauser + public | access_token | table | giteauser + public | action | table | giteauser + public | action_artifact | table | giteauser + public | action_run | table | giteauser + public | action_run_index | table | giteauser + public | action_run_job | table | giteauser + public | action_runner | table | giteauser + public | action_runner_token | table | giteauser + public | action_schedule | table | giteauser + public | action_schedule_spec | table | giteauser + public | action_task | table | giteauser + public | action_task_output | table | giteauser + public | action_task_step | table | giteauser + public | action_tasks_version | table | giteauser + public | action_variable | table | giteauser + public | app_state | table | giteauser + public | attachment | table | giteauser + public | auth_token | table | giteauser + public | badge | table | giteauser + public | branch | table | giteauser + public | collaboration | table | giteauser + public | comment | table | giteauser + public | commit_status | table | giteauser + public | commit_status_index | table | giteauser + public | commit_status_summary | table | giteauser + public | dbfs_data | table | giteauser + public | dbfs_meta | table | giteauser + public | deploy_key | table | giteauser + public | email_address | table | giteauser + public | email_hash | table | giteauser + public | external_login_user | table | giteauser + public | follow | table | giteauser + public | gpg_key | table | giteauser + public | gpg_key_import | table | giteauser + public | hook_task | table | giteauser + public | issue | table | giteauser + public | issue_assignees | table | giteauser + public | issue_content_history | table | giteauser + public | issue_dependency | table | giteauser + public | issue_index | table | giteauser + public | issue_label | table | giteauser + public | issue_user | table | giteauser + public | issue_watch | table | giteauser + public | label | table | giteauser + public | language_stat | table | giteauser + public | lfs_lock | table | giteauser + public | lfs_meta_object | table | giteauser + public | login_source | table | giteauser + public | milestone | table | giteauser + public | mirror | table | giteauser + public | notice | table | giteauser + public | notification | table | giteauser + public | oauth2_application | table | giteauser + public | oauth2_authorization_code | table | giteauser + public | oauth2_grant | table | giteauser + public | org_user | table | giteauser + public | package | table | giteauser + public | package_blob | table | giteauser + public | package_blob_upload | table | giteauser + public | package_cleanup_rule | table | giteauser + public | package_file | table | giteauser + public | package_property | table | giteauser + public | package_version | table | giteauser + public | project | table | giteauser + public | project_board | table | giteauser + public | project_issue | table | giteauser + public | protected_branch | table | giteauser + public | protected_tag | table | giteauser + public | public_key | table | giteauser + public | pull_auto_merge | table | giteauser + public | pull_request | table | giteauser + public | push_mirror | table | giteauser + public | reaction | table | giteauser + public | release | table | giteauser + public | renamed_branch | table | giteauser + public | repo_archiver | table | giteauser + public | repo_indexer_status | table | giteauser + public | repo_license | table | giteauser + public | repo_redirect | table | giteauser + public | repo_topic | table | giteauser + public | repo_transfer | table | giteauser + public | repo_unit | table | giteauser + public | repository | table | giteauser + public | review | table | giteauser + public | review_state | table | giteauser + public | secret | table | giteauser + public | session | table | giteauser + public | star | table | giteauser + public | stopwatch | table | giteauser + public | system_setting | table | giteauser + public | task | table | giteauser + public | team | table | giteauser + public | team_invite | table | giteauser + public | team_repo | table | giteauser + public | team_unit | table | giteauser + public | team_user | table | giteauser + public | topic | table | giteauser + public | tracked_time | table | giteauser + public | two_factor | table | giteauser + public | upload | table | giteauser + public | user | table | giteauser + public | user_badge | table | giteauser + public | user_blocking | table | giteauser + public | user_open_id | table | giteauser + public | user_redirect | table | giteauser + public | user_setting | table | giteauser + public | version | table | giteauser + public | watch | table | giteauser + public | webauthn_credential | table | giteauser + public | webhook | table | giteauser +(111 rows) + +[PASS] giteaprod: Dump and restore OK. +Cleaned up verify_giteaprod_28724 + +=== [Thu May 1 12:00:27 PM EDT 2025] Dumping hostingtootdb from cluster.db2.genesishostingtechnologies.com === +Creating test database verify_hostingtootdb_13349 +Restoring to verify_hostingtootdb_13349 +SET +SET +SET +SET +SET + set_config +------------ + +(1 row) + +SET +SET +SET +SET +SET +SET +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +COPY 0 +COPY 1 +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +GRANT +ERROR: relation "users" does not exist +LINE 1: SELECT count(*) FROM users; + ^ +Row count for 'users' table in verify_hostingtootdb_13349: +/home/doc/genesis-tools/miscellaneous/bash/dbv1.sh: line 71: [: : integer expression expected +[PASS] Row count OK for 'users' table in hostingtootdb. +[PASS] Checksum verified for hostingtootdb. + List of relations + Schema | Name | Type | Owner +--------+------+-------+----------------- + public | toot | table | hostingtootuser + public | user | table | hostingtootuser +(2 rows) + +[PASS] hostingtootdb: Dump and restore OK. +Cleaned up verify_hostingtootdb_13349 + +=== [Thu May 1 12:00:28 PM EDT 2025] Dumping radiotootdb from cluster.db2.genesishostingtechnologies.com === +Creating test database verify_radiotootdb_13264 +Restoring to verify_radiotootdb_13264 +SET +SET +SET +SET +SET + set_config +------------ + +(1 row) + +SET +SET +SET +SET +SET +SET +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +COPY 0 +COPY 0 +COPY 1 + setval +-------- + 35 +(1 row) + +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +GRANT +ERROR: relation "users" does not exist +LINE 1: SELECT count(*) FROM users; + ^ +Row count for 'users' table in verify_radiotootdb_13264: +/home/doc/genesis-tools/miscellaneous/bash/dbv1.sh: line 71: [: : integer expression expected +[PASS] Row count OK for 'users' table in radiotootdb. +[PASS] Checksum verified for radiotootdb. + List of relations + Schema | Name | Type | Owner +--------+-----------------+-------+--------------- + public | alembic_version | table | radiotootuser + public | toot | table | radiotootuser + public | user | table | radiotootuser +(3 rows) + +[PASS] radiotootdb: Dump and restore OK. +Cleaned up verify_radiotootdb_13264 + +All dumps verified, sending to root@backup.sshjunkie.com:/mnt/backup/pgdumps +Uploads to thevault successful. +Uploading to ClusterControl controller at doc@clustercontrol.sshjunkie.com:/home/doc/backups +Uploads to ClusterControl successful. +DONE. Log: /tmp/pgbackup_verify/verify_log_20250501_120001.txt +📂 Ensuring remote path exists... +=== [Thu May 1 01:00:01 PM EDT 2025] Dumping mastodon_production from cluster.db2.genesishostingtechnologies.com === +Creating test database verify_mastodon_production_16547 +Restoring to verify_mastodon_production_16547 +SET +SET +SET +SET +SET + set_config +------------ + +(1 row) + +SET +SET +SET +SET +CREATE FUNCTION +ALTER FUNCTION +SET +SET +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE MATERIALIZED VIEW +ALTER MATERIALIZED VIEW +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE MATERIALIZED VIEW +ALTER MATERIALIZED VIEW +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE MATERIALIZED VIEW +ALTER MATERIALIZED VIEW +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE VIEW +ALTER VIEW +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +COPY 0 +COPY 376 +COPY 1 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 6407 +COPY 0 +COPY 0 +COPY 0 +COPY 7099 +COPY 18 +COPY 11 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 2 +COPY 0 +COPY 3 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 12792 +COPY 0 +COPY 1468 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 12 +COPY 5955 +COPY 0 +COPY 0 +COPY 6 +COPY 934 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 33 +COPY 8 +COPY 8057 +COPY 14935 +COPY 0 +COPY 0 +COPY 0 +COPY 1 +COPY 847 +COPY 0 +COPY 32 +COPY 24 +COPY 2709 +COPY 1 +COPY 67 +COPY 1 +COPY 0 +COPY 4066 +COPY 4387 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 11 +COPY 0 +COPY 529 +COPY 18 +COPY 15 +COPY 0 +COPY 4 +COPY 0 +COPY 413 +COPY 6916 +COPY 13502 +COPY 0 +COPY 30413 +COPY 33643 +COPY 2 +COPY 2 +COPY 12305 +COPY 1 +COPY 7339 +COPY 0 +COPY 5 +COPY 4 +COPY 7 +COPY 3 +COPY 5 +COPY 0 +COPY 0 + setval +-------- + 1 +(1 row) + + setval +-------- + 474 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 38662 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 7231 +(1 row) + + setval +-------- + 43 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 35 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 12904 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1559 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 77 +(1 row) + + setval +-------- + 6073 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1027 +(1 row) + + setval +-------- + 1034 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 128 +(1 row) + + setval +-------- + 40 +(1 row) + + setval +-------- + 8216 +(1 row) + + setval +-------- + 15332 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 33 +(1 row) + + setval +-------- + 964 +(1 row) + + setval +-------- + 43 +(1 row) + + setval +-------- + 146 +(1 row) + + setval +-------- + 88 +(1 row) + + setval +-------- + 2727 +(1 row) + + setval +-------- + 33 +(1 row) + + setval +-------- + 163 +(1 row) + + setval +-------- + 33 +(1 row) + + setval +-------- + 831 +(1 row) + + setval +-------- + 4199 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 11 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 133 +(1 row) + + setval +-------- + 15 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 5 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 504 +(1 row) + + setval +-------- + 7140 +(1 row) + + setval +-------- + 13759 +(1 row) + + setval +-------- + 782 +(1 row) + + setval +-------- + 10868 +(1 row) + + setval +-------- + 2 +(1 row) + + setval +-------- + 117679 +(1 row) + + setval +-------- + 12417 +(1 row) + + setval +-------- + 33 +(1 row) + + setval +-------- + 7459 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 5 +(1 row) + + setval +-------- + 3 +(1 row) + + setval +-------- + 7 +(1 row) + + setval +-------- + 37 +(1 row) + + setval +-------- + 37 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +📸 Creating snapshot: /mnt/backup/images/genesis-tools/2025-05-01_13-00 +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +REFRESH MATERIALIZED VIEW +REFRESH MATERIALIZED VIEW +REFRESH MATERIALIZED VIEW +Row count for 'users' table in verify_mastodon_production_16547: 7 +[PASS] Row count OK for 'users' table in mastodon_production. +[PASS] Checksum verified for mastodon_production. + List of relations + Schema | Name | Type | Owner +--------+-------------------------------------------+-------+---------- + public | account_aliases | table | mastodon + public | account_conversations | table | mastodon + public | account_deletion_requests | table | mastodon + public | account_domain_blocks | table | mastodon + public | account_migrations | table | mastodon + public | account_moderation_notes | table | mastodon + public | account_notes | table | mastodon + public | account_pins | table | mastodon + public | account_relationship_severance_events | table | mastodon + public | account_stats | table | mastodon + public | account_statuses_cleanup_policies | table | mastodon + public | account_warning_presets | table | mastodon + public | account_warnings | table | mastodon + public | accounts | table | mastodon + public | accounts_tags | table | mastodon + public | admin_action_logs | table | mastodon + public | announcement_mutes | table | mastodon + public | announcement_reactions | table | mastodon + public | announcements | table | mastodon + public | annual_report_statuses_per_account_counts | table | mastodon + public | appeals | table | mastodon + public | ar_internal_metadata | table | mastodon + public | backups | table | mastodon + public | blocks | table | mastodon + public | bookmarks | table | mastodon + public | bulk_import_rows | table | mastodon + public | bulk_imports | table | mastodon + public | canonical_email_blocks | table | mastodon + public | conversation_mutes | table | mastodon + public | conversations | table | mastodon + public | custom_emoji_categories | table | mastodon + public | custom_emojis | table | mastodon + public | custom_filter_keywords | table | mastodon + public | custom_filter_statuses | table | mastodon + public | custom_filters | table | mastodon + public | domain_allows | table | mastodon + public | domain_blocks | table | mastodon + public | email_domain_blocks | table | mastodon + public | favourites | table | mastodon + public | featured_tags | table | mastodon + public | follow_recommendation_mutes | table | mastodon + public | follow_recommendation_suppressions | table | mastodon + public | follow_requests | table | mastodon + public | follows | table | mastodon + public | generated_annual_reports | table | mastodon + public | identities | table | mastodon + public | imports | table | mastodon + public | invites | table | mastodon + public | ip_blocks | table | mastodon + public | list_accounts | table | mastodon + public | lists | table | mastodon + public | login_activities | table | mastodon + public | markers | table | mastodon + public | media_attachments | table | mastodon + public | mentions | table | mastodon + public | mutes | table | mastodon + public | notification_permissions | table | mastodon + public | notification_policies | table | mastodon + public | notification_requests | table | mastodon + public | notifications | table | mastodon + public | oauth_access_grants | table | mastodon + public | oauth_access_tokens | table | mastodon + public | oauth_applications | table | mastodon + public | pghero_space_stats | table | mastodon + public | poll_votes | table | mastodon + public | polls | table | mastodon + public | preview_card_providers | table | mastodon + public | preview_card_trends | table | mastodon + public | preview_cards | table | mastodon + public | preview_cards_statuses | table | mastodon + public | relationship_severance_events | table | mastodon + public | relays | table | mastodon + public | report_notes | table | mastodon + public | reports | table | mastodon + public | rules | table | mastodon + public | scheduled_statuses | table | mastodon + public | schema_migrations | table | mastodon + public | session_activations | table | mastodon + public | settings | table | mastodon + public | severed_relationships | table | mastodon + public | site_uploads | table | mastodon + public | software_updates | table | mastodon + public | status_edits | table | mastodon + public | status_pins | table | mastodon + public | status_stats | table | mastodon + public | status_trends | table | mastodon + public | statuses | table | mastodon + public | statuses_tags | table | mastodon + public | tag_follows | table | mastodon + public | tag_trends | table | mastodon + public | tags | table | mastodon + public | terms_of_services | table | mastodon + public | tombstones | table | mastodon + public | unavailable_domains | table | mastodon + public | user_invite_requests | table | mastodon + public | user_roles | table | mastodon + public | users | table | mastodon + public | web_push_subscriptions | table | mastodon + public | web_settings | table | mastodon + public | webauthn_credentials | table | mastodon + public | webhooks | table | mastodon +(101 rows) + +[PASS] mastodon_production: Dump and restore OK. +Cleaned up verify_mastodon_production_16547 + +=== [Thu May 1 01:00:11 PM EDT 2025] Dumping giteaprod from cluster.db2.genesishostingtechnologies.com === +🔗 Updating 'latest' symlink... +🧹 Pruning snapshots older than 7 days... +Creating test database verify_giteaprod_28897 +✅ KodakMoment complete. +Restoring to verify_giteaprod_28897 +SET +SET +SET +SET +SET + set_config +------------ + +(1 row) + +SET +SET +SET +SET +SET +SET +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +ALTER SEQUENCE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 3 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 0 +COPY 1 +COPY 0 +COPY 0 +COPY 0 + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 3 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + + setval +-------- + 1 +(1 row) + +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +CREATE INDEX +GRANT +ALTER DEFAULT PRIVILEGES +ALTER DEFAULT PRIVILEGES +ERROR: relation "users" does not exist +LINE 1: SELECT count(*) FROM users; + ^ +Row count for 'users' table in verify_giteaprod_28897: +/home/doc/genesis-tools/miscellaneous/bash/dbv1.sh: line 71: [: : integer expression expected +[PASS] Row count OK for 'users' table in giteaprod. +[PASS] Checksum verified for giteaprod. + List of relations + Schema | Name | Type | Owner +--------+---------------------------+-------+----------- + public | access | table | giteauser + public | access_token | table | giteauser + public | action | table | giteauser + public | action_artifact | table | giteauser + public | action_run | table | giteauser + public | action_run_index | table | giteauser + public | action_run_job | table | giteauser + public | action_runner | table | giteauser + public | action_runner_token | table | giteauser + public | action_schedule | table | giteauser + public | action_schedule_spec | table | giteauser + public | action_task | table | giteauser + public | action_task_output | table | giteauser + public | action_task_step | table | giteauser + public | action_tasks_version | table | giteauser + public | action_variable | table | giteauser + public | app_state | table | giteauser + public | attachment | table | giteauser + public | auth_token | table | giteauser + public | badge | table | giteauser + public | branch | table | giteauser + public | collaboration | table | giteauser + public | comment | table | giteauser + public | commit_status | table | giteauser + public | commit_status_index | table | giteauser + public | commit_status_summary | table | giteauser + public | dbfs_data | table | giteauser + public | dbfs_meta | table | giteauser + public | deploy_key | table | giteauser + public | email_address | table | giteauser + public | email_hash | table | giteauser + public | external_login_user | table | giteauser + public | follow | table | giteauser + public | gpg_key | table | giteauser + public | gpg_key_import | table | giteauser + public | hook_task | table | giteauser + public | issue | table | giteauser + public | issue_assignees | table | giteauser + public | issue_content_history | table | giteauser + public | issue_dependency | table | giteauser + public | issue_index | table | giteauser + public | issue_label | table | giteauser + public | issue_user | table | giteauser + public | issue_watch | table | giteauser + public | label | table | giteauser + public | language_stat | table | giteauser + public | lfs_lock | table | giteauser + public | lfs_meta_object | table | giteauser + public | login_source | table | giteauser + public | milestone | table | giteauser + public | mirror | table | giteauser + public | notice | table | giteauser + public | notification | table | giteauser + public | oauth2_application | table | giteauser + public | oauth2_authorization_code | table | giteauser + public | oauth2_grant | table | giteauser + public | org_user | table | giteauser + public | package | table | giteauser + public | package_blob | table | giteauser + public | package_blob_upload | table | giteauser + public | package_cleanup_rule | table | giteauser + public | package_file | table | giteauser + public | package_property | table | giteauser + public | package_version | table | giteauser + public | project | table | giteauser + public | project_board | table | giteauser + public | project_issue | table | giteauser + public | protected_branch | table | giteauser + public | protected_tag | table | giteauser + public | public_key | table | giteauser + public | pull_auto_merge | table | giteauser + public | pull_request | table | giteauser + public | push_mirror | table | giteauser + public | reaction | table | giteauser + public | release | table | giteauser + public | renamed_branch | table | giteauser + public | repo_archiver | table | giteauser + public | repo_indexer_status | table | giteauser + public | repo_license | table | giteauser + public | repo_redirect | table | giteauser + public | repo_topic | table | giteauser + public | repo_transfer | table | giteauser + public | repo_unit | table | giteauser + public | repository | table | giteauser + public | review | table | giteauser + public | review_state | table | giteauser + public | secret | table | giteauser + public | session | table | giteauser + public | star | table | giteauser + public | stopwatch | table | giteauser + public | system_setting | table | giteauser + public | task | table | giteauser + public | team | table | giteauser + public | team_invite | table | giteauser + public | team_repo | table | giteauser + public | team_unit | table | giteauser + public | team_user | table | giteauser + public | topic | table | giteauser + public | tracked_time | table | giteauser + public | two_factor | table | giteauser + public | upload | table | giteauser + public | user | table | giteauser + public | user_badge | table | giteauser + public | user_blocking | table | giteauser + public | user_open_id | table | giteauser + public | user_redirect | table | giteauser + public | user_setting | table | giteauser + public | version | table | giteauser + public | watch | table | giteauser + public | webauthn_credential | table | giteauser + public | webhook | table | giteauser +(111 rows) + +[PASS] giteaprod: Dump and restore OK. +Cleaned up verify_giteaprod_28897 + +=== [Thu May 1 01:00:20 PM EDT 2025] Dumping hostingtootdb from cluster.db2.genesishostingtechnologies.com === +Creating test database verify_hostingtootdb_9749 +Restoring to verify_hostingtootdb_9749 +SET +SET +SET +SET +SET + set_config +------------ + +(1 row) + +SET +SET +SET +SET +SET +SET +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +COPY 0 +COPY 1 +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +GRANT +ERROR: relation "users" does not exist +LINE 1: SELECT count(*) FROM users; + ^ +Row count for 'users' table in verify_hostingtootdb_9749: +/home/doc/genesis-tools/miscellaneous/bash/dbv1.sh: line 71: [: : integer expression expected +[PASS] Row count OK for 'users' table in hostingtootdb. +[PASS] Checksum verified for hostingtootdb. + List of relations + Schema | Name | Type | Owner +--------+------+-------+----------------- + public | toot | table | hostingtootuser + public | user | table | hostingtootuser +(2 rows) + +[PASS] hostingtootdb: Dump and restore OK. +Cleaned up verify_hostingtootdb_9749 + +=== [Thu May 1 01:00:21 PM EDT 2025] Dumping radiotootdb from cluster.db2.genesishostingtechnologies.com === +Creating test database verify_radiotootdb_16051 +Restoring to verify_radiotootdb_16051 +SET +SET +SET +SET +SET + set_config +------------ + +(1 row) + +SET +SET +SET +SET +SET +SET +CREATE TABLE +ALTER TABLE +CREATE TABLE +ALTER TABLE +CREATE SEQUENCE +ALTER SEQUENCE +CREATE TABLE +ALTER TABLE +COPY 0 +COPY 0 +COPY 1 + setval +-------- + 35 +(1 row) + +ALTER TABLE +ALTER TABLE +ALTER TABLE +ALTER TABLE +GRANT +ERROR: relation "users" does not exist +LINE 1: SELECT count(*) FROM users; + ^ +Row count for 'users' table in verify_radiotootdb_16051: +/home/doc/genesis-tools/miscellaneous/bash/dbv1.sh: line 71: [: : integer expression expected +[PASS] Row count OK for 'users' table in radiotootdb. +[PASS] Checksum verified for radiotootdb. + List of relations + Schema | Name | Type | Owner +--------+-----------------+-------+--------------- + public | alembic_version | table | radiotootuser + public | toot | table | radiotootuser + public | user | table | radiotootuser +(3 rows) + +[PASS] radiotootdb: Dump and restore OK. +Cleaned up verify_radiotootdb_16051 + +All dumps verified, sending to root@backup.sshjunkie.com:/mnt/backup/pgdumps +Uploads to thevault successful. +Uploading to ClusterControl controller at doc@clustercontrol.sshjunkie.com:/home/doc/backups +Uploads to ClusterControl successful. +DONE. Log: /tmp/pgbackup_verify/verify_log_20250501_130001.txt +📂 Ensuring remote path exists... +=== [Thu May 1 02:00:01 PM EDT 2025] Dumping mastodon_production from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump mastodon_production! Skipping upload. +=== [Thu May 1 02:00:03 PM EDT 2025] Dumping hostingtootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump hostingtootdb! Skipping upload. +=== [Thu May 1 02:00:03 PM EDT 2025] Dumping radiotootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump radiotootdb! Skipping upload. +Not all backups verified! Nothing uploaded. +DONE. Log: /tmp/pgbackup_verify/verify_log_20250501_140001.txt +ssh: connect to host backup.sshjunkie.com port 22: Connection timed out +=== [Thu May 1 03:00:01 PM EDT 2025] Dumping mastodon_production from zcluster.technodrome2.sshjunkie.com === +📂 Ensuring remote path exists... +Password: +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! +Someone could be eavesdropping on you right now (man-in-the-middle attack)! +It is also possible that a host key has just been changed. +The fingerprint for the ED25519 key sent by the remote host is +SHA256:wV18V5Dp5wIjH0HilrMXwdhDHtc/FKQRANL9fuX6VAk. +Please contact your system administrator. +Add correct host key in /home/doc/.ssh/known_hosts to get rid of this message. +Offending ECDSA key in /home/doc/.ssh/known_hosts:32 + remove with: + ssh-keygen -f '/home/doc/.ssh/known_hosts' -R 'backup.sshjunkie.com' +Host key for backup.sshjunkie.com has changed and you have requested strict checking. +Host key verification failed. +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump mastodon_production! Skipping upload. +=== [Thu May 1 03:00:02 PM EDT 2025] Dumping hostingtootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump hostingtootdb! Skipping upload. +=== [Thu May 1 03:00:03 PM EDT 2025] Dumping radiotootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump radiotootdb! Skipping upload. +Not all backups verified! Nothing uploaded. +DONE. Log: /tmp/pgbackup_verify/verify_log_20250501_150001.txt +📂 Ensuring remote path exists... +=== [Thu May 1 04:00:01 PM EDT 2025] Dumping mastodon_production from zcluster.technodrome2.sshjunkie.com === +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! +Someone could be eavesdropping on you right now (man-in-the-middle attack)! +It is also possible that a host key has just been changed. +The fingerprint for the ED25519 key sent by the remote host is +SHA256:Y/kbHZ3xg5+mm26geZlhMIm41c8S3tQh34UauRAW2pE. +Please contact your system administrator. +Add correct host key in /home/doc/.ssh/known_hosts to get rid of this message. +Offending ECDSA key in /home/doc/.ssh/known_hosts:32 + remove with: + ssh-keygen -f '/home/doc/.ssh/known_hosts' -R 'backup.sshjunkie.com' +Host key for backup.sshjunkie.com has changed and you have requested strict checking. +Host key verification failed. +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump mastodon_production! Skipping upload. +=== [Thu May 1 04:00:03 PM EDT 2025] Dumping hostingtootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump hostingtootdb! Skipping upload. +=== [Thu May 1 04:00:03 PM EDT 2025] Dumping radiotootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump radiotootdb! Skipping upload. +Not all backups verified! Nothing uploaded. +DONE. Log: /tmp/pgbackup_verify/verify_log_20250501_160001.txt +📂 Ensuring remote path exists... +=== [Thu May 1 05:00:01 PM EDT 2025] Dumping mastodon_production from zcluster.technodrome2.sshjunkie.com === +Password: +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! +Someone could be eavesdropping on you right now (man-in-the-middle attack)! +It is also possible that a host key has just been changed. +The fingerprint for the ED25519 key sent by the remote host is +SHA256:HB1SqCcc/yQnct/gUYBuuI6xVfvPMKVxAw0rcFU9Gy4. +Please contact your system administrator. +Add correct host key in /home/doc/.ssh/known_hosts to get rid of this message. +Offending ECDSA key in /home/doc/.ssh/known_hosts:32 + remove with: + ssh-keygen -f '/home/doc/.ssh/known_hosts' -R 'backup.sshjunkie.com' +Host key for backup.sshjunkie.com has changed and you have requested strict checking. +Host key verification failed. +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump mastodon_production! Skipping upload. +=== [Thu May 1 05:00:02 PM EDT 2025] Dumping hostingtootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump hostingtootdb! Skipping upload. +=== [Thu May 1 05:00:02 PM EDT 2025] Dumping radiotootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump radiotootdb! Skipping upload. +Not all backups verified! Nothing uploaded. +DONE. Log: /tmp/pgbackup_verify/verify_log_20250501_170001.txt +📂 Ensuring remote path exists... +=== [Thu May 1 06:00:02 PM EDT 2025] Dumping mastodon_production from zcluster.technodrome2.sshjunkie.com === +Password: +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! +Someone could be eavesdropping on you right now (man-in-the-middle attack)! +It is also possible that a host key has just been changed. +The fingerprint for the ED25519 key sent by the remote host is +SHA256:HB1SqCcc/yQnct/gUYBuuI6xVfvPMKVxAw0rcFU9Gy4. +Please contact your system administrator. +Add correct host key in /home/doc/.ssh/known_hosts to get rid of this message. +Offending ECDSA key in /home/doc/.ssh/known_hosts:32 + remove with: + ssh-keygen -f '/home/doc/.ssh/known_hosts' -R 'backup.sshjunkie.com' +Host key for backup.sshjunkie.com has changed and you have requested strict checking. +Host key verification failed. +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump mastodon_production! Skipping upload. +=== [Thu May 1 06:00:02 PM EDT 2025] Dumping hostingtootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump hostingtootdb! Skipping upload. +=== [Thu May 1 06:00:03 PM EDT 2025] Dumping radiotootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump radiotootdb! Skipping upload. +Not all backups verified! Nothing uploaded. +DONE. Log: /tmp/pgbackup_verify/verify_log_20250501_180002.txt +📂 Ensuring remote path exists... +=== [Thu May 1 07:00:01 PM EDT 2025] Dumping mastodon_production from zcluster.technodrome2.sshjunkie.com === +Password: +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! +Someone could be eavesdropping on you right now (man-in-the-middle attack)! +It is also possible that a host key has just been changed. +The fingerprint for the ED25519 key sent by the remote host is +SHA256:HB1SqCcc/yQnct/gUYBuuI6xVfvPMKVxAw0rcFU9Gy4. +Please contact your system administrator. +Add correct host key in /home/doc/.ssh/known_hosts to get rid of this message. +Offending ECDSA key in /home/doc/.ssh/known_hosts:32 + remove with: + ssh-keygen -f '/home/doc/.ssh/known_hosts' -R 'backup.sshjunkie.com' +Host key for backup.sshjunkie.com has changed and you have requested strict checking. +Host key verification failed. +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump mastodon_production! Skipping upload. +=== [Thu May 1 07:00:02 PM EDT 2025] Dumping hostingtootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump hostingtootdb! Skipping upload. +=== [Thu May 1 07:00:02 PM EDT 2025] Dumping radiotootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump radiotootdb! Skipping upload. +Not all backups verified! Nothing uploaded. +DONE. Log: /tmp/pgbackup_verify/verify_log_20250501_190001.txt +📂 Ensuring remote path exists... +=== [Thu May 1 08:00:01 PM EDT 2025] Dumping mastodon_production from zcluster.technodrome2.sshjunkie.com === +Password: +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! +Someone could be eavesdropping on you right now (man-in-the-middle attack)! +It is also possible that a host key has just been changed. +The fingerprint for the ED25519 key sent by the remote host is +SHA256:HB1SqCcc/yQnct/gUYBuuI6xVfvPMKVxAw0rcFU9Gy4. +Please contact your system administrator. +Add correct host key in /home/doc/.ssh/known_hosts to get rid of this message. +Offending ECDSA key in /home/doc/.ssh/known_hosts:32 + remove with: + ssh-keygen -f '/home/doc/.ssh/known_hosts' -R 'backup.sshjunkie.com' +Host key for backup.sshjunkie.com has changed and you have requested strict checking. +Host key verification failed. +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump mastodon_production! Skipping upload. +=== [Thu May 1 08:00:02 PM EDT 2025] Dumping hostingtootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump hostingtootdb! Skipping upload. +=== [Thu May 1 08:00:02 PM EDT 2025] Dumping radiotootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump radiotootdb! Skipping upload. +Not all backups verified! Nothing uploaded. +DONE. Log: /tmp/pgbackup_verify/verify_log_20250501_200001.txt +📂 Ensuring remote path exists... +=== [Thu May 1 09:00:01 PM EDT 2025] Dumping mastodon_production from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump mastodon_production! Skipping upload. +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! +Someone could be eavesdropping on you right now (man-in-the-middle attack)! +It is also possible that a host key has just been changed. +The fingerprint for the ED25519 key sent by the remote host is +SHA256:HB1SqCcc/yQnct/gUYBuuI6xVfvPMKVxAw0rcFU9Gy4. +Please contact your system administrator. +Add correct host key in /home/doc/.ssh/known_hosts to get rid of this message. +Offending ECDSA key in /home/doc/.ssh/known_hosts:32 + remove with: + ssh-keygen -f '/home/doc/.ssh/known_hosts' -R 'backup.sshjunkie.com' +Host key for backup.sshjunkie.com has changed and you have requested strict checking. +Host key verification failed. +=== [Thu May 1 09:00:02 PM EDT 2025] Dumping hostingtootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump hostingtootdb! Skipping upload. +=== [Thu May 1 09:00:05 PM EDT 2025] Dumping radiotootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump radiotootdb! Skipping upload. +Not all backups verified! Nothing uploaded. +DONE. Log: /tmp/pgbackup_verify/verify_log_20250501_210001.txt +=== [Thu May 1 10:00:01 PM EDT 2025] Dumping mastodon_production from zcluster.technodrome2.sshjunkie.com === +📂 Ensuring remote path exists... +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! +Someone could be eavesdropping on you right now (man-in-the-middle attack)! +It is also possible that a host key has just been changed. +The fingerprint for the ED25519 key sent by the remote host is +SHA256:HB1SqCcc/yQnct/gUYBuuI6xVfvPMKVxAw0rcFU9Gy4. +Please contact your system administrator. +Add correct host key in /home/doc/.ssh/known_hosts to get rid of this message. +Offending ECDSA key in /home/doc/.ssh/known_hosts:32 + remove with: + ssh-keygen -f '/home/doc/.ssh/known_hosts' -R 'backup.sshjunkie.com' +Host key for backup.sshjunkie.com has changed and you have requested strict checking. +Host key verification failed. +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump mastodon_production! Skipping upload. +=== [Thu May 1 10:00:03 PM EDT 2025] Dumping hostingtootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump hostingtootdb! Skipping upload. +=== [Thu May 1 10:00:03 PM EDT 2025] Dumping radiotootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump radiotootdb! Skipping upload. +Not all backups verified! Nothing uploaded. +DONE. Log: /tmp/pgbackup_verify/verify_log_20250501_220001.txt +📂 Ensuring remote path exists... +=== [Thu May 1 11:00:01 PM EDT 2025] Dumping mastodon_production from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump mastodon_production! Skipping upload. +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! +Someone could be eavesdropping on you right now (man-in-the-middle attack)! +It is also possible that a host key has just been changed. +The fingerprint for the ED25519 key sent by the remote host is +SHA256:HB1SqCcc/yQnct/gUYBuuI6xVfvPMKVxAw0rcFU9Gy4. +Please contact your system administrator. +Add correct host key in /home/doc/.ssh/known_hosts to get rid of this message. +Offending ECDSA key in /home/doc/.ssh/known_hosts:32 + remove with: + ssh-keygen -f '/home/doc/.ssh/known_hosts' -R 'backup.sshjunkie.com' +Host key for backup.sshjunkie.com has changed and you have requested strict checking. +Host key verification failed. +=== [Thu May 1 11:00:01 PM EDT 2025] Dumping hostingtootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump hostingtootdb! Skipping upload. +=== [Thu May 1 11:00:02 PM EDT 2025] Dumping radiotootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump radiotootdb! Skipping upload. +Not all backups verified! Nothing uploaded. +DONE. Log: /tmp/pgbackup_verify/verify_log_20250501_230001.txt +📂 Ensuring remote path exists... +=== [Fri May 2 12:00:01 AM EDT 2025] Dumping mastodon_production from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump mastodon_production! Skipping upload. +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! +Someone could be eavesdropping on you right now (man-in-the-middle attack)! +It is also possible that a host key has just been changed. +The fingerprint for the ED25519 key sent by the remote host is +SHA256:HB1SqCcc/yQnct/gUYBuuI6xVfvPMKVxAw0rcFU9Gy4. +Please contact your system administrator. +Add correct host key in /home/doc/.ssh/known_hosts to get rid of this message. +Offending ECDSA key in /home/doc/.ssh/known_hosts:32 + remove with: + ssh-keygen -f '/home/doc/.ssh/known_hosts' -R 'backup.sshjunkie.com' +Host key for backup.sshjunkie.com has changed and you have requested strict checking. +Host key verification failed. +=== [Fri May 2 12:00:01 AM EDT 2025] Dumping hostingtootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump hostingtootdb! Skipping upload. +=== [Fri May 2 12:00:02 AM EDT 2025] Dumping radiotootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump radiotootdb! Skipping upload. +Not all backups verified! Nothing uploaded. +DONE. Log: /tmp/pgbackup_verify/verify_log_20250502_000001.txt +📂 Ensuring remote path exists... +=== [Fri May 2 01:00:01 AM EDT 2025] Dumping mastodon_production from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump mastodon_production! Skipping upload. +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! +Someone could be eavesdropping on you right now (man-in-the-middle attack)! +It is also possible that a host key has just been changed. +The fingerprint for the ED25519 key sent by the remote host is +SHA256:HB1SqCcc/yQnct/gUYBuuI6xVfvPMKVxAw0rcFU9Gy4. +Please contact your system administrator. +Add correct host key in /home/doc/.ssh/known_hosts to get rid of this message. +Offending ECDSA key in /home/doc/.ssh/known_hosts:32 + remove with: + ssh-keygen -f '/home/doc/.ssh/known_hosts' -R 'backup.sshjunkie.com' +Host key for backup.sshjunkie.com has changed and you have requested strict checking. +Host key verification failed. +=== [Fri May 2 01:00:02 AM EDT 2025] Dumping hostingtootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump hostingtootdb! Skipping upload. +=== [Fri May 2 01:00:02 AM EDT 2025] Dumping radiotootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump radiotootdb! Skipping upload. +Not all backups verified! Nothing uploaded. +DONE. Log: /tmp/pgbackup_verify/verify_log_20250502_010001.txt +📂 Ensuring remote path exists... +=== [Fri May 2 02:00:01 AM EDT 2025] Dumping mastodon_production from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump mastodon_production! Skipping upload. +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! +Someone could be eavesdropping on you right now (man-in-the-middle attack)! +It is also possible that a host key has just been changed. +The fingerprint for the ED25519 key sent by the remote host is +SHA256:HB1SqCcc/yQnct/gUYBuuI6xVfvPMKVxAw0rcFU9Gy4. +Please contact your system administrator. +Add correct host key in /home/doc/.ssh/known_hosts to get rid of this message. +Offending ECDSA key in /home/doc/.ssh/known_hosts:32 + remove with: + ssh-keygen -f '/home/doc/.ssh/known_hosts' -R 'backup.sshjunkie.com' +Host key for backup.sshjunkie.com has changed and you have requested strict checking. +Host key verification failed. +=== [Fri May 2 02:00:01 AM EDT 2025] Dumping hostingtootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump hostingtootdb! Skipping upload. +=== [Fri May 2 02:00:02 AM EDT 2025] Dumping radiotootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump radiotootdb! Skipping upload. +Not all backups verified! Nothing uploaded. +DONE. Log: /tmp/pgbackup_verify/verify_log_20250502_020001.txt +📂 Ensuring remote path exists... +=== [Fri May 2 03:00:01 AM EDT 2025] Dumping mastodon_production from zcluster.technodrome2.sshjunkie.com === +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! +Someone could be eavesdropping on you right now (man-in-the-middle attack)! +It is also possible that a host key has just been changed. +The fingerprint for the ED25519 key sent by the remote host is +SHA256:HB1SqCcc/yQnct/gUYBuuI6xVfvPMKVxAw0rcFU9Gy4. +Please contact your system administrator. +Add correct host key in /home/doc/.ssh/known_hosts to get rid of this message. +Offending ECDSA key in /home/doc/.ssh/known_hosts:32 + remove with: + ssh-keygen -f '/home/doc/.ssh/known_hosts' -R 'backup.sshjunkie.com' +Host key for backup.sshjunkie.com has changed and you have requested strict checking. +Host key verification failed. +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump mastodon_production! Skipping upload. +=== [Fri May 2 03:00:02 AM EDT 2025] Dumping hostingtootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump hostingtootdb! Skipping upload. +=== [Fri May 2 03:00:02 AM EDT 2025] Dumping radiotootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump radiotootdb! Skipping upload. +Not all backups verified! Nothing uploaded. +DONE. Log: /tmp/pgbackup_verify/verify_log_20250502_030001.txt +📂 Ensuring remote path exists... +=== [Fri May 2 04:00:01 AM EDT 2025] Dumping mastodon_production from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump mastodon_production! Skipping upload. +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! +Someone could be eavesdropping on you right now (man-in-the-middle attack)! +It is also possible that a host key has just been changed. +The fingerprint for the ED25519 key sent by the remote host is +SHA256:HB1SqCcc/yQnct/gUYBuuI6xVfvPMKVxAw0rcFU9Gy4. +Please contact your system administrator. +Add correct host key in /home/doc/.ssh/known_hosts to get rid of this message. +Offending ECDSA key in /home/doc/.ssh/known_hosts:32 + remove with: + ssh-keygen -f '/home/doc/.ssh/known_hosts' -R 'backup.sshjunkie.com' +Host key for backup.sshjunkie.com has changed and you have requested strict checking. +Host key verification failed. +=== [Fri May 2 04:00:02 AM EDT 2025] Dumping hostingtootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump hostingtootdb! Skipping upload. +=== [Fri May 2 04:00:04 AM EDT 2025] Dumping radiotootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump radiotootdb! Skipping upload. +Not all backups verified! Nothing uploaded. +DONE. Log: /tmp/pgbackup_verify/verify_log_20250502_040001.txt +📂 Ensuring remote path exists... +=== [Fri May 2 05:00:01 AM EDT 2025] Dumping mastodon_production from zcluster.technodrome2.sshjunkie.com === +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! +Someone could be eavesdropping on you right now (man-in-the-middle attack)! +It is also possible that a host key has just been changed. +The fingerprint for the ED25519 key sent by the remote host is +SHA256:HB1SqCcc/yQnct/gUYBuuI6xVfvPMKVxAw0rcFU9Gy4. +Please contact your system administrator. +Add correct host key in /home/doc/.ssh/known_hosts to get rid of this message. +Offending ECDSA key in /home/doc/.ssh/known_hosts:32 + remove with: + ssh-keygen -f '/home/doc/.ssh/known_hosts' -R 'backup.sshjunkie.com' +Host key for backup.sshjunkie.com has changed and you have requested strict checking. +Host key verification failed. +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump mastodon_production! Skipping upload. +=== [Fri May 2 05:00:02 AM EDT 2025] Dumping hostingtootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump hostingtootdb! Skipping upload. +=== [Fri May 2 05:00:03 AM EDT 2025] Dumping radiotootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump radiotootdb! Skipping upload. +Not all backups verified! Nothing uploaded. +DONE. Log: /tmp/pgbackup_verify/verify_log_20250502_050001.txt +📂 Ensuring remote path exists... +=== [Fri May 2 06:00:02 AM EDT 2025] Dumping mastodon_production from zcluster.technodrome2.sshjunkie.com === +Password: +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! +Someone could be eavesdropping on you right now (man-in-the-middle attack)! +It is also possible that a host key has just been changed. +The fingerprint for the ED25519 key sent by the remote host is +SHA256:HB1SqCcc/yQnct/gUYBuuI6xVfvPMKVxAw0rcFU9Gy4. +Please contact your system administrator. +Add correct host key in /home/doc/.ssh/known_hosts to get rid of this message. +Offending ECDSA key in /home/doc/.ssh/known_hosts:32 + remove with: + ssh-keygen -f '/home/doc/.ssh/known_hosts' -R 'backup.sshjunkie.com' +Host key for backup.sshjunkie.com has changed and you have requested strict checking. +Host key verification failed. +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump mastodon_production! Skipping upload. +=== [Fri May 2 06:00:02 AM EDT 2025] Dumping hostingtootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump hostingtootdb! Skipping upload. +=== [Fri May 2 06:00:03 AM EDT 2025] Dumping radiotootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump radiotootdb! Skipping upload. +Not all backups verified! Nothing uploaded. +DONE. Log: /tmp/pgbackup_verify/verify_log_20250502_060002.txt +📂 Ensuring remote path exists... +=== [Fri May 2 07:00:01 AM EDT 2025] Dumping mastodon_production from zcluster.technodrome2.sshjunkie.com === +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! +Someone could be eavesdropping on you right now (man-in-the-middle attack)! +It is also possible that a host key has just been changed. +The fingerprint for the ED25519 key sent by the remote host is +SHA256:HB1SqCcc/yQnct/gUYBuuI6xVfvPMKVxAw0rcFU9Gy4. +Please contact your system administrator. +Add correct host key in /home/doc/.ssh/known_hosts to get rid of this message. +Offending ECDSA key in /home/doc/.ssh/known_hosts:32 + remove with: + ssh-keygen -f '/home/doc/.ssh/known_hosts' -R 'backup.sshjunkie.com' +Host key for backup.sshjunkie.com has changed and you have requested strict checking. +Host key verification failed. +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump mastodon_production! Skipping upload. +=== [Fri May 2 07:00:12 AM EDT 2025] Dumping hostingtootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump hostingtootdb! Skipping upload. +=== [Fri May 2 07:00:13 AM EDT 2025] Dumping radiotootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump radiotootdb! Skipping upload. +Not all backups verified! Nothing uploaded. +DONE. Log: /tmp/pgbackup_verify/verify_log_20250502_070001.txt +📂 Ensuring remote path exists... +=== [Fri May 2 08:00:01 AM EDT 2025] Dumping mastodon_production from zcluster.technodrome2.sshjunkie.com === +Password: +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! +Someone could be eavesdropping on you right now (man-in-the-middle attack)! +It is also possible that a host key has just been changed. +The fingerprint for the ED25519 key sent by the remote host is +SHA256:HB1SqCcc/yQnct/gUYBuuI6xVfvPMKVxAw0rcFU9Gy4. +Please contact your system administrator. +Add correct host key in /home/doc/.ssh/known_hosts to get rid of this message. +Offending ECDSA key in /home/doc/.ssh/known_hosts:32 + remove with: + ssh-keygen -f '/home/doc/.ssh/known_hosts' -R 'backup.sshjunkie.com' +Host key for backup.sshjunkie.com has changed and you have requested strict checking. +Host key verification failed. +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump mastodon_production! Skipping upload. +=== [Fri May 2 08:00:02 AM EDT 2025] Dumping hostingtootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump hostingtootdb! Skipping upload. +=== [Fri May 2 08:00:04 AM EDT 2025] Dumping radiotootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump radiotootdb! Skipping upload. +Not all backups verified! Nothing uploaded. +DONE. Log: /tmp/pgbackup_verify/verify_log_20250502_080001.txt +📂 Ensuring remote path exists... +=== [Fri May 2 09:00:01 AM EDT 2025] Dumping mastodon_production from zcluster.technodrome2.sshjunkie.com === +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! +Someone could be eavesdropping on you right now (man-in-the-middle attack)! +It is also possible that a host key has just been changed. +The fingerprint for the ED25519 key sent by the remote host is +SHA256:HB1SqCcc/yQnct/gUYBuuI6xVfvPMKVxAw0rcFU9Gy4. +Please contact your system administrator. +Add correct host key in /home/doc/.ssh/known_hosts to get rid of this message. +Offending ECDSA key in /home/doc/.ssh/known_hosts:32 + remove with: + ssh-keygen -f '/home/doc/.ssh/known_hosts' -R 'backup.sshjunkie.com' +Host key for backup.sshjunkie.com has changed and you have requested strict checking. +Host key verification failed. +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump mastodon_production! Skipping upload. +=== [Fri May 2 09:00:02 AM EDT 2025] Dumping hostingtootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump hostingtootdb! Skipping upload. +=== [Fri May 2 09:00:02 AM EDT 2025] Dumping radiotootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump radiotootdb! Skipping upload. +Not all backups verified! Nothing uploaded. +DONE. Log: /tmp/pgbackup_verify/verify_log_20250502_090001.txt +📂 Ensuring remote path exists... +=== [Fri May 2 10:00:01 AM EDT 2025] Dumping mastodon_production from zcluster.technodrome2.sshjunkie.com === +Password: +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! +Someone could be eavesdropping on you right now (man-in-the-middle attack)! +It is also possible that a host key has just been changed. +The fingerprint for the ED25519 key sent by the remote host is +SHA256:HB1SqCcc/yQnct/gUYBuuI6xVfvPMKVxAw0rcFU9Gy4. +Please contact your system administrator. +Add correct host key in /home/doc/.ssh/known_hosts to get rid of this message. +Offending ECDSA key in /home/doc/.ssh/known_hosts:32 + remove with: + ssh-keygen -f '/home/doc/.ssh/known_hosts' -R 'backup.sshjunkie.com' +Host key for backup.sshjunkie.com has changed and you have requested strict checking. +Host key verification failed. +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump mastodon_production! Skipping upload. +=== [Fri May 2 10:00:02 AM EDT 2025] Dumping hostingtootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump hostingtootdb! Skipping upload. +=== [Fri May 2 10:00:02 AM EDT 2025] Dumping radiotootdb from zcluster.technodrome2.sshjunkie.com === +Password: +pg_dump: error: connection to server at "zcluster.technodrome2.sshjunkie.com" (38.102.127.166), port 5432 failed: fe_sendauth: no password supplied +[FAIL] Failed to dump radiotootdb! Skipping upload. +Not all backups verified! Nothing uploaded. +DONE. Log: /tmp/pgbackup_verify/verify_log_20250502_100001.txt diff --git a/miscellaneous/dbcheck.log b/miscellaneous/dbcheck.log index e56b016..52306fe 100644 --- a/miscellaneous/dbcheck.log +++ b/miscellaneous/dbcheck.log @@ -1220,3 +1220,864 @@ Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 10:45:16 ⚠️ +⚡ 2 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 62 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +✅ Genesis Radio Healthcheck 2025-05-01 11:00:15: All systems normal. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 11:15:17 ⚠️ +⚡ 3 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +✅ Genesis Radio Healthcheck 2025-05-01 11:30:14: All systems normal. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +✅ Genesis Radio Healthcheck 2025-05-01 11:45:15: All systems normal. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +✅ Genesis Radio Healthcheck 2025-05-01 12:00:13: All systems normal. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +✅ Genesis Radio Healthcheck 2025-05-01 12:15:19: All systems normal. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +✅ Genesis Radio Healthcheck 2025-05-01 12:30:14: All systems normal. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 12:45:20 ⚠️ +⚡ 1 warnings found: +- 💥 [db2] WARNING: Replication lag is 428 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 13:00:18 ⚠️ +⚡ 1 warnings found: +- 💥 [db2] WARNING: Replication lag is 1325 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 13:15:17 ⚠️ +⚡ 2 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 2224 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 13:30:17 ⚠️ +⚡ 2 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 3124 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 13:45:18 ⚠️ +⚡ 1 warnings found: +- 💥 [db2] WARNING: Replication lag is 4025 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 14:00:19 ⚠️ +⚡ 1 warnings found: +- 💥 [db2] WARNING: Replication lag is 4926 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 14:15:16 ⚠️ +⚡ 1 warnings found: +- 💥 [db2] WARNING: Replication lag is 5823 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 14:30:16 ⚠️ +⚡ 1 warnings found: +- 💥 [db2] WARNING: Replication lag is 6723 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 14:45:16 ⚠️ +⚡ 1 warnings found: +- 💥 [db2] WARNING: Replication lag is 7623 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 15:00:17 ⚠️ +⚡ 1 warnings found: +- 💥 [db2] WARNING: Replication lag is 8524 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 15:15:17 ⚠️ +⚡ 1 warnings found: +- 💥 [db2] WARNING: Replication lag is 9425 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 15:30:18 ⚠️ +⚡ 1 warnings found: +- 💥 [db2] WARNING: Replication lag is 10325 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 15:45:19 ⚠️ +⚡ 2 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 11227 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 16:00:15 ⚠️ +⚡ 1 warnings found: +- 💥 [db2] WARNING: Replication lag is 12122 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 16:15:17 ⚠️ +⚡ 1 warnings found: +- 💥 [db2] WARNING: Replication lag is 13024 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 16:30:18 ⚠️ +⚡ 2 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 13925 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 16:45:23 ⚠️ +⚡ 2 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 14831 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 17:00:15 ⚠️ +⚡ 1 warnings found: +- 💥 [db2] WARNING: Replication lag is 15723 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 17:15:43 ⚠️ +⚡ 1 warnings found: +- 💥 [db2] WARNING: Replication lag is 16650 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 17:30:18 ⚠️ +⚡ 1 warnings found: +- 💥 [db2] WARNING: Replication lag is 17525 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 17:45:23 ⚠️ +⚡ 1 warnings found: +- 💥 [db2] WARNING: Replication lag is 18431 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 18:00:15 ⚠️ +⚡ 1 warnings found: +- 💥 [db2] WARNING: Replication lag is 19323 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 18:15:21 ⚠️ +⚡ 1 warnings found: +- 💥 [db2] WARNING: Replication lag is 20228 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 18:30:17 ⚠️ +⚡ 3 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 21124 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 18:45:17 ⚠️ +⚡ 2 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 22024 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 19:00:18 ⚠️ +⚡ 1 warnings found: +- 💥 [db2] WARNING: Replication lag is 22925 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 19:15:23 ⚠️ +⚡ 3 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 23830 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 19:30:16 ⚠️ +⚡ 1 warnings found: +- 💥 [db2] WARNING: Replication lag is 24723 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 19:45:26 ⚠️ +⚡ 2 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 25633 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 20:00:13 ⚠️ +⚡ 1 warnings found: +- 💥 [db2] WARNING: Replication lag is 26520 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 20:15:13 ⚠️ +⚡ 2 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 27420 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 20:30:13 ⚠️ +⚡ 1 warnings found: +- 💥 [db2] WARNING: Replication lag is 28321 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 20:45:22 ⚠️ +⚡ 3 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 29229 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 21:00:23 ⚠️ +⚡ 2 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 30131 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 21:15:16 ⚠️ +⚡ 3 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 31023 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 21:30:19 ⚠️ +⚡ 2 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 31926 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 21:45:26 ⚠️ +⚡ 2 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 32834 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 22:00:17 ⚠️ +⚡ 2 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 33724 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 22:15:18 ⚠️ +⚡ 2 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 34625 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 22:30:16 ⚠️ +⚡ 2 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 35523 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 22:45:24 ⚠️ +⚡ 1 warnings found: +- 💥 [db2] WARNING: Replication lag is 36432 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 23:00:12 ⚠️ +⚡ 1 warnings found: +- 💥 [db2] WARNING: Replication lag is 37320 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 23:15:19 ⚠️ +⚡ 3 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 38226 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 23:30:16 ⚠️ +⚡ 7 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 39123 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-01 23:45:16 ⚠️ +⚡ 4 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 40023 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-02 00:00:13 ⚠️ +⚡ 2 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 40920 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-02 00:15:17 ⚠️ +⚡ 4 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 41824 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-02 00:30:14 ⚠️ +⚡ 5 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 42721 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +Exception (client): Error reading SSH protocol banner +Traceback (most recent call last): + File "/home/doc/dbcheck/lib/python3.12/site-packages/paramiko/transport.py", line 2369, in _check_banner + buf = self.packetizer.readline(timeout) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/home/doc/dbcheck/lib/python3.12/site-packages/paramiko/packet.py", line 395, in readline + buf += self._read_timeout(timeout) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/home/doc/dbcheck/lib/python3.12/site-packages/paramiko/packet.py", line 665, in _read_timeout + raise EOFError() +EOFError + +During handling of the above exception, another exception occurred: + +Traceback (most recent call last): + File "/home/doc/dbcheck/lib/python3.12/site-packages/paramiko/transport.py", line 2185, in run + self._check_banner() + File "/home/doc/dbcheck/lib/python3.12/site-packages/paramiko/transport.py", line 2373, in _check_banner + raise SSHException( +paramiko.ssh_exception.SSHException: Error reading SSH protocol banner + +Exception (client): Error reading SSH protocol banner[Errno 104] Connection reset by peer +Traceback (most recent call last): + File "/home/doc/dbcheck/lib/python3.12/site-packages/paramiko/transport.py", line 2369, in _check_banner + buf = self.packetizer.readline(timeout) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/home/doc/dbcheck/lib/python3.12/site-packages/paramiko/packet.py", line 395, in readline + buf += self._read_timeout(timeout) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/home/doc/dbcheck/lib/python3.12/site-packages/paramiko/packet.py", line 663, in _read_timeout + x = self.__socket.recv(128) + ^^^^^^^^^^^^^^^^^^^^^^^ +ConnectionResetError: [Errno 104] Connection reset by peer + +During handling of the above exception, another exception occurred: + +Traceback (most recent call last): + File "/home/doc/dbcheck/lib/python3.12/site-packages/paramiko/transport.py", line 2185, in run + self._check_banner() + File "/home/doc/dbcheck/lib/python3.12/site-packages/paramiko/transport.py", line 2373, in _check_banner + raise SSHException( +paramiko.ssh_exception.SSHException: Error reading SSH protocol banner[Errno 104] Connection reset by peer + +Exception (client): Error reading SSH protocol banner +Traceback (most recent call last): + File "/home/doc/dbcheck/lib/python3.12/site-packages/paramiko/transport.py", line 2369, in _check_banner + buf = self.packetizer.readline(timeout) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/home/doc/dbcheck/lib/python3.12/site-packages/paramiko/packet.py", line 395, in readline + buf += self._read_timeout(timeout) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/home/doc/dbcheck/lib/python3.12/site-packages/paramiko/packet.py", line 665, in _read_timeout + raise EOFError() +EOFError + +During handling of the above exception, another exception occurred: + +Traceback (most recent call last): + File "/home/doc/dbcheck/lib/python3.12/site-packages/paramiko/transport.py", line 2185, in run + self._check_banner() + File "/home/doc/dbcheck/lib/python3.12/site-packages/paramiko/transport.py", line 2373, in _check_banner + raise SSHException( +paramiko.ssh_exception.SSHException: Error reading SSH protocol banner + +Exception (client): Error reading SSH protocol banner +Traceback (most recent call last): + File "/home/doc/dbcheck/lib/python3.12/site-packages/paramiko/transport.py", line 2369, in _check_banner + buf = self.packetizer.readline(timeout) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/home/doc/dbcheck/lib/python3.12/site-packages/paramiko/packet.py", line 395, in readline + buf += self._read_timeout(timeout) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/home/doc/dbcheck/lib/python3.12/site-packages/paramiko/packet.py", line 665, in _read_timeout + raise EOFError() +EOFError + +During handling of the above exception, another exception occurred: + +Traceback (most recent call last): + File "/home/doc/dbcheck/lib/python3.12/site-packages/paramiko/transport.py", line 2185, in run + self._check_banner() + File "/home/doc/dbcheck/lib/python3.12/site-packages/paramiko/transport.py", line 2373, in _check_banner + raise SSHException( +paramiko.ssh_exception.SSHException: Error reading SSH protocol banner + +Exception (client): Error reading SSH protocol banner +Traceback (most recent call last): + File "/home/doc/dbcheck/lib/python3.12/site-packages/paramiko/transport.py", line 2369, in _check_banner + buf = self.packetizer.readline(timeout) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/home/doc/dbcheck/lib/python3.12/site-packages/paramiko/packet.py", line 395, in readline + buf += self._read_timeout(timeout) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/home/doc/dbcheck/lib/python3.12/site-packages/paramiko/packet.py", line 665, in _read_timeout + raise EOFError() +EOFError + +During handling of the above exception, another exception occurred: + +Traceback (most recent call last): + File "/home/doc/dbcheck/lib/python3.12/site-packages/paramiko/transport.py", line 2185, in run + self._check_banner() + File "/home/doc/dbcheck/lib/python3.12/site-packages/paramiko/transport.py", line 2373, in _check_banner + raise SSHException( +paramiko.ssh_exception.SSHException: Error reading SSH protocol banner + +⚠️ Genesis Radio Warning Healthcheck 2025-05-02 00:45:15 ⚠️ +⚡ 13 warnings found: +- ⚠️ [shredder] ERROR: Could not read log /var/log/syslog: Error reading SSH protocol banner +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [db1] ERROR: Could not read log /var/log/nginx/error.log: Error reading SSH protocol banner +- 💥 [db2] WARNING: Replication lag is 43622 seconds. +- ⚠️ [db2] ERROR: Could not read log /var/log/syslog: Error reading SSH protocol banner +- ⚠️ [db2] ERROR: Could not read log /var/log/nginx/error.log: Error reading SSH protocol banner +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-02 01:00:12 ⚠️ +⚡ 5 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 44520 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-02 01:15:24 ⚠️ +⚡ 2 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 45431 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-02 01:30:15 ⚠️ +⚡ 3 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 46322 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-02 01:45:18 ⚠️ +⚡ 3 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 47226 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-02 02:00:09 ⚠️ +⚡ 3 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 48117 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-02 02:15:10 ⚠️ +⚡ 4 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 49017 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-02 02:30:10 ⚠️ +⚡ 3 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 49917 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-02 02:45:11 ⚠️ +⚡ 5 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 50818 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-02 03:00:14 ⚠️ +⚡ 9 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 51722 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-02 03:15:14 ⚠️ +⚡ 1 warnings found: +- 💥 [db2] WARNING: Replication lag is 52622 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-02 03:30:13 ⚠️ +⚡ 2 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 53521 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-02 03:45:12 ⚠️ +⚡ 4 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 54419 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-02 04:00:15 ⚠️ +⚡ 2 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 55322 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-02 04:15:13 ⚠️ +⚡ 2 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 56220 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-02 04:30:08 ⚠️ +⚡ 4 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 57116 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-02 04:45:18 ⚠️ +⚡ 2 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 58025 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-02 05:00:20 ⚠️ +⚡ 3 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 58928 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-02 05:15:18 ⚠️ +⚡ 4 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 59826 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-02 05:30:22 ⚠️ +⚡ 4 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 60729 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-02 05:45:22 ⚠️ +⚡ 2 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 61630 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-02 06:00:18 ⚠️ +⚡ 1 warnings found: +- 💥 [db2] WARNING: Replication lag is 62526 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-02 06:15:19 ⚠️ +⚡ 6 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 63426 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-02 06:30:23 ⚠️ +⚡ 5 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db2] WARNING: Replication lag is 64330 seconds. +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-02 06:46:10 ⚠️ +⚡ 7 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db1] ERROR: Replication check failed: connection to server at "cluster.db1.genesishostingtechnologies.com" (38.102.127.174), port 5432 failed: No route to host + Is the server running on that host and accepting TCP/IP connections? + +- ⚠️ [db1] ERROR: Could not read log /var/log/syslog: [Errno None] Unable to connect to port 22 on 38.102.127.174 +- ⚠️ [db1] ERROR: Could not read log /var/log/nginx/error.log: [Errno None] Unable to connect to port 22 on 38.102.127.174 +- 💥 [db2] ERROR: Replication check failed: connection to server at "cluster.db2.genesishostingtechnologies.com" (38.102.127.169), port 5432 failed: No route to host + Is the server running on that host and accepting TCP/IP connections? + +- ⚠️ [db2] ERROR: Could not read log /var/log/syslog: [Errno None] Unable to connect to port 22 on 38.102.127.169 +- ⚠️ [db2] ERROR: Could not read log /var/log/nginx/error.log: [Errno None] Unable to connect to port 22 on 38.102.127.169 +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-02 07:00:54 ⚠️ +⚡ 11 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db1] ERROR: Replication check failed: connection to server at "cluster.db1.genesishostingtechnologies.com" (38.102.127.174), port 5432 failed: No route to host + Is the server running on that host and accepting TCP/IP connections? + +- ⚠️ [db1] ERROR: Could not read log /var/log/syslog: [Errno None] Unable to connect to port 22 on 38.102.127.174 +- ⚠️ [db1] ERROR: Could not read log /var/log/nginx/error.log: [Errno None] Unable to connect to port 22 on 38.102.127.174 +- 💥 [db2] ERROR: Replication check failed: connection to server at "cluster.db2.genesishostingtechnologies.com" (38.102.127.169), port 5432 failed: No route to host + Is the server running on that host and accepting TCP/IP connections? + +- ⚠️ [db2] ERROR: Could not read log /var/log/syslog: [Errno None] Unable to connect to port 22 on 38.102.127.169 +- ⚠️ [db2] ERROR: Could not read log /var/log/nginx/error.log: [Errno None] Unable to connect to port 22 on 38.102.127.169 +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-02 07:15:53 ⚠️ +⚡ 6 warnings found: +- 💥 [db1] ERROR: Replication check failed: connection to server at "cluster.db1.genesishostingtechnologies.com" (38.102.127.174), port 5432 failed: No route to host + Is the server running on that host and accepting TCP/IP connections? + +- ⚠️ [db1] ERROR: Could not read log /var/log/syslog: [Errno None] Unable to connect to port 22 on 38.102.127.174 +- ⚠️ [db1] ERROR: Could not read log /var/log/nginx/error.log: [Errno None] Unable to connect to port 22 on 38.102.127.174 +- 💥 [db2] ERROR: Replication check failed: connection to server at "cluster.db2.genesishostingtechnologies.com" (38.102.127.169), port 5432 failed: No route to host + Is the server running on that host and accepting TCP/IP connections? + +- ⚠️ [db2] ERROR: Could not read log /var/log/syslog: [Errno None] Unable to connect to port 22 on 38.102.127.169 +- ⚠️ [db2] ERROR: Could not read log /var/log/nginx/error.log: [Errno None] Unable to connect to port 22 on 38.102.127.169 +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-02 07:30:47 ⚠️ +⚡ 8 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db1] ERROR: Replication check failed: connection to server at "cluster.db1.genesishostingtechnologies.com" (38.102.127.174), port 5432 failed: No route to host + Is the server running on that host and accepting TCP/IP connections? + +- ⚠️ [db1] ERROR: Could not read log /var/log/syslog: [Errno None] Unable to connect to port 22 on 38.102.127.174 +- ⚠️ [db1] ERROR: Could not read log /var/log/nginx/error.log: [Errno None] Unable to connect to port 22 on 38.102.127.174 +- 💥 [db2] ERROR: Replication check failed: connection to server at "cluster.db2.genesishostingtechnologies.com" (38.102.127.169), port 5432 failed: No route to host + Is the server running on that host and accepting TCP/IP connections? + +- ⚠️ [db2] ERROR: Could not read log /var/log/syslog: [Errno None] Unable to connect to port 22 on 38.102.127.169 +- ⚠️ [db2] ERROR: Could not read log /var/log/nginx/error.log: [Errno None] Unable to connect to port 22 on 38.102.127.169 +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-02 07:45:49 ⚠️ +⚡ 9 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db1] ERROR: Replication check failed: connection to server at "cluster.db1.genesishostingtechnologies.com" (38.102.127.174), port 5432 failed: No route to host + Is the server running on that host and accepting TCP/IP connections? + +- ⚠️ [db1] ERROR: Could not read log /var/log/syslog: [Errno None] Unable to connect to port 22 on 38.102.127.174 +- ⚠️ [db1] ERROR: Could not read log /var/log/nginx/error.log: [Errno None] Unable to connect to port 22 on 38.102.127.174 +- 💥 [db2] ERROR: Replication check failed: connection to server at "cluster.db2.genesishostingtechnologies.com" (38.102.127.169), port 5432 failed: No route to host + Is the server running on that host and accepting TCP/IP connections? + +- ⚠️ [db2] ERROR: Could not read log /var/log/syslog: [Errno None] Unable to connect to port 22 on 38.102.127.169 +- ⚠️ [db2] ERROR: Could not read log /var/log/nginx/error.log: [Errno None] Unable to connect to port 22 on 38.102.127.169 +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-02 08:00:50 ⚠️ +⚡ 8 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db1] ERROR: Replication check failed: connection to server at "cluster.db1.genesishostingtechnologies.com" (38.102.127.174), port 5432 failed: No route to host + Is the server running on that host and accepting TCP/IP connections? + +- ⚠️ [db1] ERROR: Could not read log /var/log/syslog: [Errno None] Unable to connect to port 22 on 38.102.127.174 +- ⚠️ [db1] ERROR: Could not read log /var/log/nginx/error.log: [Errno None] Unable to connect to port 22 on 38.102.127.174 +- 💥 [db2] ERROR: Replication check failed: connection to server at "cluster.db2.genesishostingtechnologies.com" (38.102.127.169), port 5432 failed: No route to host + Is the server running on that host and accepting TCP/IP connections? + +- ⚠️ [db2] ERROR: Could not read log /var/log/syslog: [Errno None] Unable to connect to port 22 on 38.102.127.169 +- ⚠️ [db2] ERROR: Could not read log /var/log/nginx/error.log: [Errno None] Unable to connect to port 22 on 38.102.127.169 +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-02 08:15:46 ⚠️ +⚡ 38 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db1] ERROR: Replication check failed: connection to server at "cluster.db1.genesishostingtechnologies.com" (38.102.127.174), port 5432 failed: No route to host + Is the server running on that host and accepting TCP/IP connections? + +- ⚠️ [db1] ERROR: Could not read log /var/log/syslog: [Errno None] Unable to connect to port 22 on 38.102.127.174 +- ⚠️ [db1] ERROR: Could not read log /var/log/nginx/error.log: [Errno None] Unable to connect to port 22 on 38.102.127.174 +- 💥 [db2] ERROR: Replication check failed: connection to server at "cluster.db2.genesishostingtechnologies.com" (38.102.127.169), port 5432 failed: No route to host + Is the server running on that host and accepting TCP/IP connections? + +- ⚠️ [db2] ERROR: Could not read log /var/log/syslog: [Errno None] Unable to connect to port 22 on 38.102.127.169 +- ⚠️ [db2] ERROR: Could not read log /var/log/nginx/error.log: [Errno None] Unable to connect to port 22 on 38.102.127.169 +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +⚠️ Genesis Radio Warning Healthcheck 2025-05-02 08:30:48 ⚠️ +⚡ 7 warnings found: +- ⚠️ [mastodon] WARNING: Pattern 'ERROR' in /var/log/syslog +- 💥 [db1] ERROR: Replication check failed: connection to server at "cluster.db1.genesishostingtechnologies.com" (38.102.127.174), port 5432 failed: No route to host + Is the server running on that host and accepting TCP/IP connections? + +- ⚠️ [db1] ERROR: Could not read log /var/log/syslog: [Errno None] Unable to connect to port 22 on 38.102.127.174 +- ⚠️ [db1] ERROR: Could not read log /var/log/nginx/error.log: [Errno None] Unable to connect to port 22 on 38.102.127.174 +- 💥 [db2] ERROR: Replication check failed: connection to server at "cluster.db2.genesishostingtechnologies.com" (38.102.127.169), port 5432 failed: No route to host + Is the server running on that host and accepting TCP/IP connections? + +- ⚠️ [db2] ERROR: Could not read log /var/log/syslog: [Errno None] Unable to connect to port 22 on 38.102.127.169 +- ⚠️ [db2] ERROR: Could not read log /var/log/nginx/error.log: [Errno None] Unable to connect to port 22 on 38.102.127.169 +Failed to send Mastodon DM (attempt 1): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 2): {"error":"The access token is invalid"} +Failed to send Mastodon DM (attempt 3): {"error":"The access token is invalid"} +/home/doc/dbcheck/bin/python: can't open file '/home/doc/genesis-tools/miscellaneous/python/dbcheck1.py': [Errno 2] No such file or directory +/home/doc/dbcheck/bin/python: can't open file '/home/doc/genesis-tools/miscellaneous/python/dbcheck1.py': [Errno 2] No such file or directory +/home/doc/dbcheck/bin/python: can't open file '/home/doc/genesis-tools/miscellaneous/python/dbcheck1.py': [Errno 2] No such file or directory +/home/doc/dbcheck/bin/python: can't open file '/home/doc/genesis-tools/miscellaneous/python/dbcheck1.py': [Errno 2] No such file or directory +/home/doc/dbcheck/bin/python: can't open file '/home/doc/genesis-tools/miscellaneous/python/dbcheck1.py': [Errno 2] No such file or directory +/home/doc/dbcheck/bin/python: can't open file '/home/doc/genesis-tools/miscellaneous/python/dbcheck1.py': [Errno 2] No such file or directory +/home/doc/dbcheck/bin/python: can't open file '/home/doc/genesis-tools/miscellaneous/python/dbcheck1.py': [Errno 2] No such file or directory +/home/doc/dbcheck/bin/python: can't open file '/home/doc/genesis-tools/miscellaneous/python/dbcheck1.py': [Errno 2] No such file or directory +/home/doc/dbcheck/bin/python: can't open file '/home/doc/genesis-tools/miscellaneous/python/dbcheck1.py': [Errno 2] No such file or directory diff --git a/miscellaneous/python/dbcheck1.py b/miscellaneous/python/dbcheck1.py deleted file mode 100644 index 965a190..0000000 --- a/miscellaneous/python/dbcheck1.py +++ /dev/null @@ -1,233 +0,0 @@ -import os -import requests -import datetime -import paramiko -import time -import psycopg2 - -# ==== CONFIG ==== -MASTODON_INSTANCE = "https://chatwithus.live" -MASTODON_TOKEN = "" -MASTODON_USER_ID = "" -HEALTHCHECK_HTML = "/var/www/html/healthcheck.html" - -DISK_WARN_THRESHOLD = 10 -INODE_WARN_THRESHOLD = 10 -LOG_FILES = ["/var/log/syslog", "/var/log/nginx/error.log"] -LOG_PATTERNS = ["ERROR", "FATAL", "disk full", "out of memory"] -SUPPRESSED_PATTERNS = ["SomeKnownHarmlessMastodonError"] - -NODES = [ - {"name": "shredder", "host": "38.102.127.171", "ssh_user": "doc", "services": ["minio.service"], "disks": ["/", "/mnt/raid5"], "db": False, "raid": True}, - {"name": "mastodon", "host": "chatwithus.live", "ssh_user": "root", "services": ["nginx", "mastodon-web"], "disks": ["/"], "db": False, "raid": False}, - {"name": "db1", "host": "cluster.db1.genesishostingtechnologies.com", "ssh_user": "doc", "services": ["postgresql@16-main.service"], "disks": ["/", "/var/lib/postgresql"], "db": True, "raid": False}, - {"name": "db2", "host": "cluster.db2.genesishostingtechnologies.com", "ssh_user": "doc", "services": ["postgresql@16-main.service"], "disks": ["/", "/var/lib/postgresql"], "db": True, "raid": False} -] - -# ==== Mastodon DM ==== -def mastodon_dm(message, retries=3): - url = f"{MASTODON_INSTANCE}/api/v1/statuses" - headers = {"Authorization": f"Bearer {MASTODON_TOKEN}"} - payload = {"status": message, "visibility": "direct", "in_reply_to_account_id": MASTODON_USER_ID} - for attempt in range(retries): - resp = requests.post(url, headers=headers, data=payload) - if resp.status_code == 200: - return - print(f"Failed to send Mastodon DM (attempt {attempt+1}): {resp.text}") - time.sleep(5) - -# ==== SSH Helper ==== -def ssh_command(host, user, cmd): - ssh = paramiko.SSHClient() - ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) - ssh.connect(hostname=host, username=user, timeout=10) - stdin, stdout, stderr = ssh.exec_command(cmd) - out = stdout.read().decode().strip() - ssh.close() - return out - -# ==== Health Check Helpers ==== -def choose_emoji(line): - if "RAID" in line: - return "🧨" - if "disk" in line.lower(): - return "📈" - if "rclone" in line.lower(): - return "🐢" - if "Service" in line: - return "🛑" - if "Replication" in line: - return "💥" - return "⚠️" - -def check_remote_disk(host, user, path, node_name): - try: - cmd = f"df --output=pcent {path} | tail -1 | tr -dc '0-9'" - out = ssh_command(host, user, cmd) - if not out: - return f"[{node_name}] ERROR: Disk {path} not found or could not check disk usage." - percent = int(out) - if percent > (100 - DISK_WARN_THRESHOLD): - return f"[{node_name}] WARNING: Only {100 - percent}% disk free on {path}." - except Exception as e: - return f"[{node_name}] ERROR: Disk check failed: {e}" - return None - -def check_remote_service(host, user, service, node_name): - try: - cmd = f"systemctl is-active {service}" - out = ssh_command(host, user, cmd) - if out.strip() != "active": - return f"[{node_name}] CRITICAL: Service {service} not running!" - except Exception as e: - return f"[{node_name}] ERROR: Service check failed: {e}" - return None - -def check_replication(host, node_name): - try: - conn = psycopg2.connect(host=host, dbname="postgres", user="postgres", connect_timeout=5) - cur = conn.cursor() - cur.execute("SELECT pg_is_in_recovery();") - is_replica = cur.fetchone()[0] - if is_replica: - cur.execute("SELECT EXTRACT(EPOCH FROM (now() - pg_last_xact_replay_timestamp()))::INT;") - lag = cur.fetchone()[0] - if lag is None: - return f"[{node_name}] CRITICAL: Standby not streaming! Replication down." - elif lag >= 60: - return f"[{node_name}] WARNING: Replication lag is {lag} seconds." - cur.close() - conn.close() - except Exception as e: - return f"[{node_name}] ERROR: Replication check failed: {e}" - return None - -def check_remote_raid_md0(host, user, node_name): - try: - mdstat = ssh_command(host, user, "cat /proc/mdstat") - lines = mdstat.splitlines() - status = None - inside_md0 = False - for line in lines: - if line.startswith("md0"): - inside_md0 = True - elif inside_md0: - if "[" in line and "]" in line: - status = line[line.index("["):line.index("]")+1] - break - if line.strip() == "" or ":" in line: - break - if status is None: - return f"[{node_name}] CRITICAL: /dev/md0 RAID status string not found!" - if "_" in status: - return f"[{node_name}] WARNING: /dev/md0 RAID degraded! Status: {status}" - except Exception as e: - return f"[{node_name}] ERROR: RAID check failed: {e}" - return None - -def check_remote_logs(host, user, node_name): - alerts = [] - for log in LOG_FILES: - cmd = f"tail -500 {log}" - try: - out = ssh_command(host, user, cmd) - lines = out.split("\n") - for pattern in LOG_PATTERNS: - for line in lines: - if pattern in line and not any(suppress in line for suppress in SUPPRESSED_PATTERNS): - alerts.append(f"[{node_name}] WARNING: Pattern '{pattern}' in {log}") - except Exception as e: - alerts.append(f"[{node_name}] ERROR: Could not read log {log}: {e}") - return alerts - -# ==== Main Routine ==== -def main(): - critical_problems = [] - warning_problems = [] - node_status = {} - - for node in NODES: - status = " Healthy" - - for disk in node["disks"]: - res = check_remote_disk(node["host"], node["ssh_user"], disk, node["name"]) - if res: - if "CRITICAL" in res: - critical_problems.append(res) - status = "🚨 Critical" - elif "WARNING" in res and status != "🚨 Critical": - warning_problems.append(res) - status = "Warning" - - for svc in node["services"]: - res = check_remote_service(node["host"], node["ssh_user"], svc, node["name"]) - if res: - if "CRITICAL" in res: - critical_problems.append(res) - status = "🚨 Critical" - elif "WARNING" in res and status != "🚨 Critical": - warning_problems.append(res) - status = "⚠️ Warning" - - if node.get("db"): - res = check_replication(node["host"], node["name"]) - if res: - if "CRITICAL" in res: - critical_problems.append(res) - status = " Critical" - else: - warning_problems.append(res) - if status != " Critical": - status = " Warning" - - if node.get("raid", False): - res = check_remote_raid_md0(node["host"], node["ssh_user"], node["name"]) - if res: - if "CRITICAL" in res: - critical_problems.append(res) - status = "Critical" - else: - warning_problems.append(res) - if status != "Critical": - status = "Warning" - - logs = check_remote_logs(node["host"], node["ssh_user"], node["name"]) - for log_alert in logs: - warning_problems.append(log_alert) - if status != "Critical": - status = "Warning" - - node_status[node["name"]] = status - - now = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S") - - if critical_problems: - formatted = "\n".join(f"- {choose_emoji(p)} {p}" for p in critical_problems) - msg = f"🚨 Genesis Radio Critical Healthcheck {now} 🚨\n⚡ {len(critical_problems)} critical issues found:\n{formatted}" - print(msg) - mastodon_dm(msg) - - if warning_problems: - formatted = "\n".join(f"- {choose_emoji(p)} {p}" for p in warning_problems) - msg = f"⚠️ Genesis Radio Warning Healthcheck {now} ⚠️\n⚡ {len(warning_problems)} warnings found:\n{formatted}" - print(msg) - mastodon_dm(msg) - - if not critical_problems and not warning_problems: - msg = f"✅ Genesis Radio Healthcheck {now}: All systems normal." - print(msg) - mastodon_dm(msg) - - # Write dashboard - with open(HEALTHCHECK_HTML, "w") as f: - f.write("Genesis Radio Healthcheck") - f.write(f"

Genesis Radio System Health

") - f.write(f"

Last Checked: {now}

") - f.write("") - for node, status in node_status.items(): - color = 'green' if 'Healthy' in status else ('orange' if 'Warning' in status else 'red') - f.write(f"") - f.write("
SystemStatus
{node}{status}
") - -if __name__ == "__main__": - main() diff --git a/miscellaneous/python/dbcheck3.py b/miscellaneous/python/dbcheck3.py new file mode 100644 index 0000000..cdcca0f --- /dev/null +++ b/miscellaneous/python/dbcheck3.py @@ -0,0 +1,284 @@ +import subprocess +import os +import requests +import datetime +import paramiko +import time +import psycopg2 + +# ==== CONFIG ==== +MASTODON_INSTANCE = "https://chatwithus.live" +MASTODON_TOKEN = "rimxBLi-eaJAcwagkmoj6UoW7Lc473tQY0cOM041Euw" +MASTODON_USER_ID = "114386383616633367" +HEALTHCHECK_HTML = "/var/www/html/healthcheck.html" + +SUDO_PASSWORD = 'rusty2281' + +DISK_WARN_THRESHOLD = 10 +INODE_WARN_THRESHOLD = 10 +LOG_FILES = ["/var/log/syslog", "/var/log/nginx/error.log"] +LOG_PATTERNS = ["ERROR", "FATAL", "disk full", "out of memory"] +SUPPRESSED_PATTERNS = ["SomeKnownHarmlessMastodonError"] + +NODES = [ + {"name": "shredder", "host": "38.102.127.172", "ssh_user": "doc", "services": ["minio.service"], "disks": ["/", "/mnt/raid5"], "db": False, "raid": True}, + {"name": "mastodon", "host": "chatwithus.live", "ssh_user": "root", "services": ["nginx", "mastodon-web"], "disks": ["/"], "db": False, "raid": False}, + {"name": "db1", "host": "zcluster.technodrome1.sshjunkie.com", "ssh_user": "doc", "services": ["postgresql@16-main.service"], "disks": ["/", "/var/lib/postgresql"], "db": True, "raid": True}, + {"name": "db2", "host": "zcluster.technodrome1.sshjunkie.com", "ssh_user": "doc", "services": ["postgresql@16-main.service"], "disks": ["/", "/var/lib/postgresql"], "db": True, "raid": True} +] + +def mastodon_dm(message, retries=3): + url = f"{MASTODON_INSTANCE}/api/v1/statuses" + headers = {"Authorization": f"Bearer {MASTODON_TOKEN}"} + payload = {"status": message, "visibility": "direct", "in_reply_to_account_id": MASTODON_USER_ID} + for attempt in range(retries): + try: + resp = requests.post(url, headers=headers, data=payload, timeout=10) + if resp.status_code == 200: + return + print(f"Failed to send Mastodon DM (attempt {attempt+1}): {resp.text}") + except Exception as e: + print(f"Exception during Mastodon DM (attempt {attempt+1}): {e}") + time.sleep(5) + +def ssh_command(host, user, cmd): + ssh = paramiko.SSHClient() + ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) + ssh.connect(hostname=host, username=user, key_filename=os.path.expanduser("~/.ssh/genesis_healthcheck"), timeout=10) + + stdin, stdout, stderr = ssh.exec_command(cmd) + out = stdout.read().decode().strip() + err = stderr.read().decode().strip() + + if not out or "permission denied" in err.lower() or "sudo:" in err.lower(): + sudo_cmd = f"echo '{SUDO_PASSWORD}' | sudo -S {cmd}" + stdin, stdout, stderr = ssh.exec_command(sudo_cmd) + out = stdout.read().decode().strip() + err = stderr.read().decode().strip() + + ssh.close() + return out if out else err + +def choose_emoji(line): + if "RAID" in line: + if "disk" in line.lower(): + return "📈" + if "rclone" in line.lower(): + return "🐢" + if "Service" in line: + return "🚩" + if "Replication" in line: + return "💥" + return "⚠️" + +def check_remote_disk(host, user, path, node_name): + try: + cmd = f"df --output=pcent {path} | tail -1 | tr -dc '0-9'" + out = ssh_command(host, user, cmd) + if not out: + return f"[{node_name}] ERROR: Disk {path} not found or could not check disk usage." + percent = int(out) + if percent > (100 - DISK_WARN_THRESHOLD): + return f"[{node_name}] WARNING: Only {100 - percent}% disk free on {path}." + except Exception as e: + return f"[{node_name}] ERROR: Disk check failed: {e}" + return None + +def check_remote_service(host, user, service, node_name): + try: + cmd = f"systemctl is-active {service}" + out = ssh_command(host, user, cmd) + if out.strip() != "active": + return f"[{node_name}] CRITICAL: Service {service} not running!" + except Exception as e: + return f"[{node_name}] ERROR: Service check failed: {e}" + return None + +def check_replication(host, node_name): + try: + conn = psycopg2.connect(host=host, dbname="postgres", user="postgres", connect_timeout=5) + cur = conn.cursor() + cur.execute("SELECT pg_is_in_recovery();") + is_replica = cur.fetchone()[0] + if is_replica: + cur.execute("SELECT EXTRACT(EPOCH FROM (now() - pg_last_xact_replay_timestamp()))::INT;") + lag = cur.fetchone()[0] + if lag is None: + return f"[{node_name}] CRITICAL: Standby not streaming! Replication down." + elif lag >= 60: + return f"[{node_name}] WARNING: Replication lag is {lag} seconds." + cur.close() + conn.close() + except Exception as e: + return f"[{node_name}] ERROR: Replication check failed: {e}" + return None + +def check_remote_raid_md0(host, user, node_name): + alerts = [] + try: + pools_output = ssh_command(host, user, "zpool list -H -o name") + pool_names = pools_output.strip().splitlines() + for pool in pool_names: + health_cmd = f"zpool status -x {pool}" + health_out = ssh_command(host, user, health_cmd) + if f"pool '{pool}' is healthy" not in health_out.lower(): + alerts.append(f"[{node_name}] WARNING: ZFS pool '{pool}' is not healthy: {health_out.strip()}") + + snap_cmd = f"zfs list -t snapshot -o name,creation -s creation -H -r {pool}" + snap_out = ssh_command(host, user, snap_cmd) + if not snap_out.strip(): + alerts.append(f"[{node_name}] WARNING: No snapshots found in ZFS pool '{pool}'") + else: + last_snap = snap_out.strip().splitlines()[-1] + snap_parts = last_snap.split("\t") + if len(snap_parts) == 2: + snap_time_str = snap_parts[1].strip() + snap_time = datetime.datetime.strptime(snap_time_str, "%a %b %d %H:%M %Y") + delta = datetime.datetime.now() - snap_time + if delta.total_seconds() > 86400: + alerts.append(f"[{node_name}] WARNING: Last snapshot on pool '{pool}' is older than 24h: {snap_time_str}") + except Exception as e: + alerts.append(f"[{node_name}] ERROR: ZFS RAID check failed: {e}") + try: + mdstat = ssh_command(host, user, "cat /proc/mdstat") + lines = mdstat.splitlines() + status = None + inside_md0 = False + for line in lines: + if line.startswith("md0"): + inside_md0 = True + elif inside_md0: + if "[" in line and "]" in line: + status = line[line.index("["):line.index("]")+1] + break + if line.strip() == "" or ":" in line: + break + if status is None: + alerts.append(f"[{node_name}] CRITICAL: /dev/md0 RAID status string not found!") + elif "_" in status: + alerts.append(f"[{node_name}] WARNING: /dev/md0 RAID degraded! Status: {status}") + except Exception as fallback_e: + alerts.append(f"[{node_name}] ERROR: RAID check failed (ZFS+mdstat): {e}; {fallback_e}") + return "\n".join(alerts) if alerts else None + +def check_remote_logs(host, user, node_name): + alerts = [] + for log in LOG_FILES: + cmd = f"tail -500 {log}" + try: + out = ssh_command(host, user, cmd) + lines = out.split("\n") + for pattern in LOG_PATTERNS: + for line in lines: + if pattern in line and not any(suppress in line for suppress in SUPPRESSED_PATTERNS): + alerts.append(f"[{node_name}] WARNING: Pattern '{pattern}' in {log}") + except Exception as e: + alerts.append(f"[{node_name}] ERROR: Could not read log {log}: {e}") + return alerts + +def check_postgres_snapshot(): + try: + result = subprocess.run( + ["sudo", "-S", "bash", "-c", "/root/genesis-tools/miscellaneous/bash/dbv2.sh"], + input=f"{SUDO_PASSWORD}\n", + capture_output=True, + text=True + ) + if result.returncode != 0: + mastodon_dm(f"🚨 Snapshot verification failed:\nstdout:\n{result.stdout.strip()}\nstderr:\n{result.stderr.strip()}") + except Exception as e: + mastodon_dm(f"🚨 Snapshot verification failed to run: {e}") + +def main(): + critical_problems = [] + warning_problems = [] + node_status = {} + + for node in NODES: + status = "Healthy" + raid_info = "All pools healthy" + + for disk in node["disks"]: + disk_res = check_remote_disk(node["host"], node["ssh_user"], disk, node["name"]) + if disk_res: + if "CRITICAL" in disk_res: + critical_problems.append(disk_res) + status = "Critical" + elif "WARNING" in disk_res and status != "Critical": + warning_problems.append(disk_res) + status = "Warning" + + for svc in node["services"]: + svc_res = check_remote_service(node["host"], node["ssh_user"], svc, node["name"]) + if svc_res: + if "CRITICAL" in svc_res: + critical_problems.append(svc_res) + status = "Critical" + elif "WARNING" in svc_res and status != "Critical": + warning_problems.append(svc_res) + status = "Warning" + + if node.get("db"): + rep_res = check_replication(node["host"], node["name"]) + if rep_res: + if "CRITICAL" in rep_res: + critical_problems.append(rep_res) + status = "Critical" + else: + warning_problems.append(rep_res) + if status != "Critical": + status = "Warning" + + if node.get("raid", False): + raid_res = check_remote_raid_md0(node["host"], node["ssh_user"], node["name"]) + if raid_res: + if "CRITICAL" in raid_res: + critical_problems.append(raid_res) + status = "Critical" + else: + warning_problems.append(raid_res) + if status != "Critical": + status = "Warning" + raid_info = raid_res + + logs = check_remote_logs(node["host"], node["ssh_user"], node["name"]) + for log_alert in logs: + warning_problems.append(log_alert) + if status != "Critical": + status = "Warning" + + node_status[node["name"]] = (status, raid_info) + + now = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S") + + if critical_problems: + formatted = "\n".join(f"- {choose_emoji(p)} {p}" for p in critical_problems) + msg = f"🚨 Genesis Radio Critical Healthcheck {now} 🚨\n⚡ {len(critical_problems)} critical issues found:\n{formatted}" + print(msg) + mastodon_dm(msg) + + if warning_problems: + formatted = "\n".join(f"- {choose_emoji(p)} {p}" for p in warning_problems) + msg = f"⚠️ Genesis Radio Warning Healthcheck {now} ⚠️\n⚡ {len(warning_problems)} warnings found:\n{formatted}" + print(msg) + mastodon_dm(msg) + + if not critical_problems and not warning_problems: + msg = f"✅ Genesis Radio Healthcheck {now}: All systems normal." + print(msg) + mastodon_dm(msg) + + with open(HEALTHCHECK_HTML, "w") as f: + f.write("Genesis Radio Healthcheck") + f.write(f"

Genesis Radio System Health

") + f.write(f"

Last Checked: {now}

") + f.write("") + for node, (status, zfs_info) in node_status.items(): + color = 'green' if 'Healthy' in status else ('orange' if 'Warning' in status else 'red') + f.write(f"") + f.write("
SystemStatusZFS Details
{node}{status}
{zfs_info}
") + + check_postgres_snapshot() + +if __name__ == "__main__": + main() diff --git a/radiotoot/.env b/radiotoot/.env new file mode 100644 index 0000000..291da69 --- /dev/null +++ b/radiotoot/.env @@ -0,0 +1,5 @@ +DB_USER=radiotootuser +DB_PASSWORD=rusty2281 +DB_NAME=radiotootdb +DB_HOST_PRIMARY=zcluster.technodrome1.sshjunkie.com +MASTODON_ACCESS_TOKEN=07w3Emdw-cv_TncysrNU8Ed_sHJhwtnvKmnLqKlHmKA