Skip to content

Commit

Permalink
work
Browse files Browse the repository at this point in the history
  • Loading branch information
hyperknot committed Dec 18, 2023
1 parent 3079f34 commit 49f3a51
Show file tree
Hide file tree
Showing 4 changed files with 27 additions and 19 deletions.
7 changes: 7 additions & 0 deletions init-server.py
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,13 @@ def debug_tmp(c):
permissions='755',
owner='ofm',
)
put(
c,
scripts / 'shrink_btrfs' / 'shrink_btrfs.py',
TILE_GEN_BIN,
permissions='755',
owner='ofm',
)

return
c.sudo('rm -rf /data/ofm/logs')
Expand Down
6 changes: 2 additions & 4 deletions scripts/extract_mbtiles/extract_mbtiles.py
Original file line number Diff line number Diff line change
Expand Up @@ -35,13 +35,11 @@ def cli(mbtiles_path: Path, dir_path: Path):
write_dedupl_files(c, dir_path=dir_path)
write_tile_files(c, dir_path=dir_path)

# remove dedupl files at the end
shutil.rmtree(dir_path / 'dedupl')

# if it's a full planet run,
# make sure there are exactly the right number of files generated
if 'planet' in mbtiles_path.parent.name:
if 'planet' in mbtiles_path.resolve().parent.name:
assert count_files(dir_path / 'tiles') == calculate_tiles_sum(14)
print(f'Tile number: {calculate_tiles_sum(14)} - OK')

print('DONE')

Expand Down
6 changes: 3 additions & 3 deletions scripts/shrink_btrfs/shrink_btrfs.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
import click


# btrfs cannot shrink smaller than about 256 MiB
# btrfs cannot shrink smaller than 256 MiB
SMALLEST_SIZE = 256 * 1024 * 1024


Expand Down Expand Up @@ -49,11 +49,11 @@ def cli(btrfs_img: Path):

free_bytes = get_usage(mnt_dir, 'Device unallocated')
device_size = get_usage(mnt_dir, 'Device size')
shrink_idea = free_bytes * 0.9
shrink_idea = free_bytes * 0.7

# workaround for the SMALLEST_SIZE limit
if device_size - free_bytes < SMALLEST_SIZE:
shrink_idea = (device_size - SMALLEST_SIZE) * 0.9
shrink_idea = (device_size - SMALLEST_SIZE) * 0.7

# stop if 10 MB left
if shrink_idea < 10_000_000:
Expand Down
27 changes: 15 additions & 12 deletions scripts/tile_gen/extract_btrfs.sh
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ sudo umount mnt_rw 2> /dev/null || true
sudo umount mnt_rw2 2> /dev/null || true
rm -rf mnt_rw* tmp_*
rm -f *.btrfs *.gz
rm -f *.log
rm -f *.log *.txt

# make an empty file that's definitely bigger then the current OSM output
fallocate -l 200G image.btrfs
Expand Down Expand Up @@ -44,7 +44,10 @@ grep fixed extract_out.log > dedupl_fixed.log || true

# Unfortunately, by deleting files from the btrfs partition, the size _grows_.
# So we need to rsync onto a new partition.
rsync -avH mnt_rw/extract/ mnt_rw2/extract/ > rsync_out.log 2> rsync_err.log
rsync -avH \
--exclude dedupl \
mnt_rw/extract/ mnt_rw2/extract/ \
> rsync_out.log 2> rsync_err.log


# collect stats
Expand All @@ -61,11 +64,11 @@ sudo btrfs filesystem show mnt_rw
echo -e "\n\nbtrfs filesystem usage"
sudo btrfs filesystem usage mnt_rw

echo -e "\n\nbtrfs filesystem du -s"
sudo btrfs filesystem du -s mnt_rw

echo -e "\n\ncompsize -x"
sudo compsize -x mnt_rw 2> /dev/null || true
# takes a lot of time, should only be used when debugging
#echo -e "\n\nbtrfs filesystem du -s"
#sudo btrfs filesystem du -s mnt_rw
#echo -e "\n\ncompsize -x"
#sudo compsize -x mnt_rw 2> /dev/null || true
} > stats1.txt

{
Expand All @@ -81,11 +84,11 @@ sudo btrfs filesystem show mnt_rw2
echo -e "\n\nbtrfs filesystem usage"
sudo btrfs filesystem usage mnt_rw2

echo -e "\n\nbtrfs filesystem du -s"
sudo btrfs filesystem du -s mnt_rw2

echo -e "\n\ncompsize -x"
sudo compsize -x mnt_rw2 2> /dev/null || true
# takes a lot of time, should only be used when debugging
#echo -e "\n\nbtrfs filesystem du -s"
#sudo btrfs filesystem du -s mnt_rw2
#echo -e "\n\ncompsize -x"
#sudo compsize -x mnt_rw2 2> /dev/null || true
} > stats2.txt


Expand Down

0 comments on commit 49f3a51

Please sign in to comment.