fix: redeploy wipe uses umount+remount instead of rm -rf
Remounting tmpfs is instant (kernel frees pages), while rm -rf on 400GB+ of accounts files traverses every inode. Recover playbook keeps rm -rf because the kind node's bind mount prevents umount while the container is running. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>fix/kind-mount-propagation
parent
b2342bc539
commit
ec12e6079b
|
|
@ -92,8 +92,8 @@
|
||||||
when: agave_procs.rc == 0
|
when: agave_procs.rc == 0
|
||||||
|
|
||||||
# ---- step 3: wipe accounts ramdisk -----------------------------------------
|
# ---- step 3: wipe accounts ramdisk -----------------------------------------
|
||||||
# Cannot umount+mkfs because the kind node's bind mount holds it open.
|
# Cannot umount+remount because the kind node's bind mount holds it open.
|
||||||
# Instead, delete contents. This is sufficient — agave starts clean.
|
# rm -rf is required here (slower than remount but the only option).
|
||||||
- name: Wipe accounts data
|
- name: Wipe accounts data
|
||||||
ansible.builtin.shell: |
|
ansible.builtin.shell: |
|
||||||
rm -rf {{ accounts_dir }}/*
|
rm -rf {{ accounts_dir }}/*
|
||||||
|
|
|
||||||
|
|
@ -139,9 +139,10 @@
|
||||||
when: wipe_ledger | bool
|
when: wipe_ledger | bool
|
||||||
tags: [wipe]
|
tags: [wipe]
|
||||||
|
|
||||||
- name: Wipe accounts ramdisk
|
- name: Wipe accounts ramdisk (remount tmpfs)
|
||||||
ansible.builtin.shell: |
|
ansible.builtin.shell: |
|
||||||
rm -rf {{ accounts_dir }}/*
|
umount {{ ramdisk_mount }} 2>/dev/null || true
|
||||||
|
mount -t tmpfs -o nodev,nosuid,noexec,nodiratime,size={{ ramdisk_size }} tmpfs {{ ramdisk_mount }}
|
||||||
mkdir -p {{ accounts_dir }}
|
mkdir -p {{ accounts_dir }}
|
||||||
chown solana:solana {{ ramdisk_mount }} {{ accounts_dir }}
|
chown solana:solana {{ ramdisk_mount }} {{ accounts_dir }}
|
||||||
become: true
|
become: true
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue