WorldEdit

WorldEdit

42M Downloads

Snapshots are not detected in uncompressed directories

drakon64 opened this issue ยท 5 comments

commented

WorldEdit Version

7.2.10

Platform Version

git-Pufferfish-67 (MC: 1.18.2)

Confirmations

  • I am using the most recent Minecraft release.
  • I am using a version of WorldEdit compatible with my Minecraft version.
  • I am using the latest or recommended version of my platform software.
  • I am NOT using a hybrid server, e.g. a server that combines Bukkit and Forge. Examples include Arclight, Mohist, and Cardboard.
  • I am NOT using a fork of WorldEdit, such as FastAsyncWorldEdit (FAWE) or AsyncWorldEdit (AWE)

Bug Description

/snap list doesn't find any snapshots when snapshots.directory contains uncompressed directory snapshots.

I have tested where snapshots.directory is a BorgFS mount, when it is a standard directory which contains a mount to a BorgFS archive, and when it is a normal XFS filesystem.

[opc@minecraft ~]$ sudo -u minecraft ls /opt/minecraft/snapshot/
2022-05-07-18-00-03  2022-05-08-07-00-03
2022-05-07-19-00-03  2022-05-08-08-00-03
2022-05-07-20-00-03  2022-05-08-09-00-03
2022-05-07-21-00-03  2022-05-08-10-00-03
2022-05-07-22-00-03  2022-05-08-11-00-03
2022-05-07-23-00-01  2022-05-08-12-00-02
2022-05-08-01-00-01  2022-05-08-13-00-03
2022-05-08-02-00-03  2022-05-08-14-00-03
2022-05-08-03-00-03  2022-05-08-15-00-03
2022-05-08-04-00-03  2022-05-08-16-00-03
2022-05-08-05-00-03  2022-05-08-17-00-00
2022-05-08-06-00-03  2022-05-08-18-00-03
[opc@minecraft ~]$ sudo -u minecraft ls -hl /opt/minecraft/snapshot/2022-05-08-19-00-03
total 55M
-rw-r--r--. 1 minecraft minecraft    2 May  8 11:59 banned-ips.json
-rw-r--r--. 1 minecraft minecraft    2 May  8 11:59 banned-players.json
drwxr-xr-x. 1 minecraft minecraft    0 May  8 19:04 bluemap
-rw-r--r--. 1 minecraft minecraft 1.3K May  8 11:59 bukkit.yml
-rw-r--r--. 1 minecraft minecraft  597 May  8 11:59 commands.yml
-rw-r--r--. 1 minecraft minecraft    9 Mar 29 18:59 eula.txt
-rw-r--r--. 1 minecraft minecraft    0 Mar 29 19:01 help.yml
drwxr-xr-x. 1 minecraft minecraft    0 May  8 11:58 logs
-rw-r--r--. 1 minecraft minecraft  137 May  8 11:59 ops.json
-rw-r--r--. 1 minecraft minecraft  11K May  8 11:59 paper.yml
-rw-r--r--. 1 minecraft minecraft    0 Mar 29 19:01 permissions.yml
drwxr-xr-x. 1 minecraft minecraft    0 May  8 11:57 plugins
-rw-r--r--. 1 minecraft minecraft 1.2K May  8 11:59 pufferfish.yml
-rwxr-xr-x. 1 minecraft minecraft  19M Apr 29 21:57 server
-rw-r--r--. 1 minecraft minecraft 7.1K May  8 11:58 server-icon.png
-rw-r--r--. 1 minecraft minecraft  36M May  8 09:50 server.jar
-rw-r--r--. 1 minecraft minecraft 1.3K May  8 11:59 server.properties
-rw-r--r--. 1 minecraft minecraft 4.8K May  8 11:59 spigot.yml
-rw-r--r--. 1 minecraft minecraft  541 May  8 17:39 usercache.json
-rw-r--r--. 1 minecraft minecraft   97 May  8 09:54 version_history.json
-rw-r--r--. 1 minecraft minecraft 1.5K Mar 29 19:01 wepif.yml
-rw-r--r--. 1 minecraft minecraft  433 May  1 19:13 whitelist.json
drwxr-xr-x. 1 minecraft minecraft    0 May  8 19:00 world
drwxr-xr-x. 1 minecraft minecraft    0 May  8 19:00 world_nether
drwxr-xr-x. 1 minecraft minecraft    0 May  8 19:00 world_the_end
[opc@minecraft ~]$ sudo -u minecraft ls -hl /opt/minecraft/snapshot/2022-05-08-19-00-03/world/
total 4.0K
drwxr-xr-x. 1 minecraft minecraft    0 May  3 23:56 advancements
drwxr-xr-x. 1 minecraft minecraft    0 Apr 15 17:16 data
drwxr-xr-x. 1 minecraft minecraft    0 Mar 29 19:01 datapacks
drwxr-xr-x. 1 minecraft minecraft    0 Apr 16 14:09 entities
-rw-r--r--. 1 minecraft minecraft 1.3K May  8 19:00 level.dat
-rw-r--r--. 1 minecraft minecraft 1.3K May  8 18:55 level.dat_old
drwxr-xr-x. 1 minecraft minecraft    0 May  8 19:00 playerdata
drwxr-xr-x. 1 minecraft minecraft    0 May  3 21:15 poi
drwxr-xr-x. 1 minecraft minecraft    0 Apr 15 12:26 region
-rw-r--r--. 1 minecraft minecraft    3 May  8 11:59 session.lock
drwxr-xr-x. 1 minecraft minecraft    0 May  3 23:56 stats
-rw-r--r--. 1 minecraft minecraft   16 Mar 29 19:01 uid.dat
[opc@minecraft ~]$ sudo -u minecraft ls -hl /opt/minecraft/snapshot/2022-05-08-19-00-03/world/region
total 570M
-rw-r--r--. 1 minecraft minecraft  12M May  8 19:00 r.0.0.mca
-rw-r--r--. 1 minecraft minecraft  12M May  8 19:00 r.0.-1.mca
-rw-r--r--. 1 minecraft minecraft  12M May  8 17:37 r.0.1.mca
-rw-r--r--. 1 minecraft minecraft  12M May  8 19:00 r.0.-2.mca
-rw-r--r--. 1 minecraft minecraft  11M May  7 20:08 r.0.2.mca
-rw-r--r--. 1 minecraft minecraft  12M May  7 23:33 r.0.-3.mca
-rw-r--r--. 1 minecraft minecraft 8.4M Apr 10 16:28 r.0.3.mca
-rw-r--r--. 1 minecraft minecraft 3.8M Apr 25 19:09 r.0.-4.mca
-rw-r--r--. 1 minecraft minecraft 5.7M Apr  9 06:00 r.0.4.mca
-rw-r--r--. 1 minecraft minecraft 136K Apr 15 12:46 r.0.-5.mca
-rw-r--r--. 1 minecraft minecraft  11M May  8 19:00 r.-1.0.mca
-rw-r--r--. 1 minecraft minecraft 9.9M May  8 15:47 r.1.0.mca
-rw-r--r--. 1 minecraft minecraft  11M May  8 19:00 r.-1.-1.mca
-rw-r--r--. 1 minecraft minecraft  11M May  8 17:33 r.-1.1.mca
-rw-r--r--. 1 minecraft minecraft  13M May  8 15:47 r.1.-1.mca
-rw-r--r--. 1 minecraft minecraft  11M May  2 22:49 r.1.1.mca
-rw-r--r--. 1 minecraft minecraft  12M May  8 19:00 r.-1.-2.mca
-rw-r--r--. 1 minecraft minecraft  11M May  7 20:08 r.-1.2.mca
-rw-r--r--. 1 minecraft minecraft  13M May  8 15:47 r.1.-2.mca
-rw-r--r--. 1 minecraft minecraft 9.5M Apr 20 22:07 r.1.2.mca
-rw-r--r--. 1 minecraft minecraft  12M May  7 23:33 r.-1.-3.mca
-rw-r--r--. 1 minecraft minecraft 9.1M May  7 20:07 r.-1.3.mca
-rw-r--r--. 1 minecraft minecraft  11M Apr 16 06:00 r.1.-3.mca
-rw-r--r--. 1 minecraft minecraft 9.0M Apr 11 06:00 r.1.3.mca
-rw-r--r--. 1 minecraft minecraft 8.7M May  4 01:02 r.-1.-4.mca
-rw-r--r--. 1 minecraft minecraft 3.6M Apr  9 06:00 r.-1.4.mca
-rw-r--r--. 1 minecraft minecraft 1.7M Apr  9 18:21 r.1.-4.mca
-rw-r--r--. 1 minecraft minecraft 5.8M Apr  9 06:00 r.1.4.mca
-rw-r--r--. 1 minecraft minecraft 2.1M Apr 15 12:46 r.-1.-5.mca
-rw-r--r--. 1 minecraft minecraft  12M May  8 19:00 r.-2.0.mca
-rw-r--r--. 1 minecraft minecraft  11M May  2 22:47 r.2.0.mca
-rw-r--r--. 1 minecraft minecraft  12M May  8 19:00 r.-2.-1.mca
-rw-r--r--. 1 minecraft minecraft  11M May  8 17:33 r.-2.1.mca
-rw-r--r--. 1 minecraft minecraft  11M May  2 22:47 r.2.-1.mca
-rw-r--r--. 1 minecraft minecraft 8.8M May  2 22:47 r.2.1.mca
-rw-r--r--. 1 minecraft minecraft  13M May  8 19:00 r.-2.-2.mca
-rw-r--r--. 1 minecraft minecraft  12M May  7 20:08 r.-2.2.mca
-rw-r--r--. 1 minecraft minecraft  11M May  2 22:47 r.2.-2.mca
-rw-r--r--. 1 minecraft minecraft 8.5M Apr 10 13:14 r.2.2.mca
-rw-r--r--. 1 minecraft minecraft 8.5M May  7 23:33 r.-2.-3.mca
-rw-r--r--. 1 minecraft minecraft 3.2M May  7 20:14 r.-2.3.mca
-rw-r--r--. 1 minecraft minecraft  11M Apr  9 18:21 r.2.-3.mca
-rw-r--r--. 1 minecraft minecraft 6.8M Apr 11 06:00 r.2.3.mca
-rw-r--r--. 1 minecraft minecraft 9.0M May  4 01:02 r.-2.-4.mca
-rw-r--r--. 1 minecraft minecraft 1.6M Apr  9 18:21 r.2.-4.mca
-rw-r--r--. 1 minecraft minecraft 2.0M Apr  9 06:00 r.2.4.mca
-rw-r--r--. 1 minecraft minecraft 2.5M Apr 15 12:46 r.-2.-5.mca
-rw-r--r--. 1 minecraft minecraft  12M May  7 23:34 r.-3.0.mca
-rw-r--r--. 1 minecraft minecraft 7.4M Apr 15 12:35 r.3.0.mca
-rw-r--r--. 1 minecraft minecraft  12M May  7 23:33 r.-3.-1.mca
-rw-r--r--. 1 minecraft minecraft  12M May  7 20:08 r.-3.1.mca
-rw-r--r--. 1 minecraft minecraft 8.0M Apr 15 12:35 r.3.-1.mca
-rw-r--r--. 1 minecraft minecraft 6.7M Apr 11 06:00 r.3.1.mca
-rw-r--r--. 1 minecraft minecraft  10M May  7 23:33 r.-3.-2.mca
-rw-r--r--. 1 minecraft minecraft  13M May  7 20:08 r.-3.2.mca
-rw-r--r--. 1 minecraft minecraft 6.1M Apr 15 12:46 r.3.-2.mca
-rw-r--r--. 1 minecraft minecraft 6.4M Apr 10 13:14 r.3.2.mca
-rw-r--r--. 1 minecraft minecraft 8.7M May  7 15:25 r.-3.-3.mca
-rw-r--r--. 1 minecraft minecraft 2.1M May  7 20:07 r.-3.3.mca
-rw-r--r--. 1 minecraft minecraft 2.2M Apr  9 18:21 r.3.-3.mca
-rw-r--r--. 1 minecraft minecraft 3.5M Apr 11 06:00 r.3.3.mca
-rw-r--r--. 1 minecraft minecraft 9.3M May  4 01:02 r.-3.-4.mca
-rw-r--r--. 1 minecraft minecraft 572K Apr  9 18:21 r.3.-4.mca
-rw-r--r--. 1 minecraft minecraft 2.5M Apr  4 19:58 r.-3.-5.mca
-rw-r--r--. 1 minecraft minecraft 7.1M Apr 17 06:00 r.-4.0.mca
-rw-r--r--. 1 minecraft minecraft 136K Apr  9 06:00 r.4.0.mca
-rw-r--r--. 1 minecraft minecraft 7.6M Apr 17 06:00 r.-4.-1.mca
-rw-r--r--. 1 minecraft minecraft 2.1M Apr 17 06:00 r.-4.1.mca
-rw-r--r--. 1 minecraft minecraft 136K Apr  9 06:00 r.4.-1.mca
-rw-r--r--. 1 minecraft minecraft  48K Apr  9 06:00 r.4.1.mca
-rw-r--r--. 1 minecraft minecraft 8.4M Apr 17 06:00 r.-4.-2.mca
-rw-r--r--. 1 minecraft minecraft 1.8M Apr  9 18:21 r.-4.2.mca
-rw-r--r--. 1 minecraft minecraft 104K Apr  9 06:00 r.4.-2.mca
-rw-r--r--. 1 minecraft minecraft 8.4M Apr  9 13:44 r.-4.-3.mca
-rw-r--r--. 1 minecraft minecraft 580K Apr  9 18:21 r.-4.3.mca
-rw-r--r--. 1 minecraft minecraft 8.2M Apr  9 13:46 r.-4.-4.mca
-rw-r--r--. 1 minecraft minecraft 1.8M Apr  4 15:28 r.-4.-5.mca
-rw-r--r--. 1 minecraft minecraft 128K Apr  4 15:28 r.-5.-2.mca
-rw-r--r--. 1 minecraft minecraft 136K Apr  4 15:28 r.-5.-3.mca
-rw-r--r--. 1 minecraft minecraft 124K Apr  4 15:28 r.-5.-4.mca
-rw-r--r--. 1 minecraft minecraft  12K Apr  9 15:42 r.-5.-5.mca

Expected Behavior

/snap list shows a list of snapshots

Reproduction Steps

  1. Create a Borg archive containing the server directory
    borg create /opt/minecraft/backup::2022-05-08-19-00-03 /opt/minecraft/server
  2. Mount the Borg repository as a filesystem
    borg mount /opt/minecraft/backup /opt/minecraft/snapshot
  3. Use the mount point as the WorldEdit snapshot path
  4. Run snap list

Anything Else?

No response

commented

Doesn't work with XFS either. The structure was based on https://worldedit.enginehub.org/en/latest/usage/snapshots/.

As before, this worked with a Zip backup following the same structure but not straight directories. Could that be the issue?

commented

does it work if you mount on a "normal" fs? i'd be quicker to expect that it's a format (i.e. layout of your snapshot) issue than a fs issue. though if it is an fs issue it's more likely a java issue since we just load that stuff with standard java io (unless it's inside a zip, which it's not here)

commented

It's worked when I've recreated the same structure as a Zip, will try with a 'normal' FS

commented

yes, there are known inconsistencies between snapshot detection in the zipped and "normal" chunk stores. you may want to try turning on experimental snapshots in config.

commented

Setting snapshots.experimental to true does seem to fix it. Guess this should be closed if it's a known issue.