From 48bf045825d261b311b027094560214c6ced4128 Mon Sep 17 00:00:00 2001 From: iceBear67 Date: Wed, 1 Oct 2025 16:59:17 +0800 Subject: [PATCH] fix fix fix --- build.gradle | 4 +- bundler/build.gradle | 15 ++--- .../io/ib67/sfcraft/bundler/BundleReader.java | 8 ++- .../io/ib67/sfcraft/bundler/BundleWriter.java | 21 ++++--- .../java/io/ib67/sfcraft/bundler/Main.java | 6 +- .../sfcraft/bundler/region/RegionFile.java | 20 +++++-- .../sfcraft/bundler/region/RegionParser.java | 5 +- .../ib67/bundler/TestRegionReassembler.java | 18 +++++- bundler/src/test/resources/region/r.-1.-1.mca | Bin 0 -> 815104 bytes src/main/java/io/ib67/sfcraft/Backup.java | 2 +- .../java/io/ib67/sfcraft/BackupCommands.java | 54 +++++++++++++++--- .../java/io/ib67/sfcraft/BackupWorker.java | 9 +-- .../io/ib67/sfcraft/FileWatcherThread.java | 32 +++++++++-- .../java/io/ib67/sfcraft/JustBackupMod.java | 31 +++++++--- .../sfcraft/strategy/LocalBackupStrategy.java | 5 +- src/main/resources/justbackup.mixins.json | 1 - 16 files changed, 172 insertions(+), 59 deletions(-) create mode 100644 bundler/src/test/resources/region/r.-1.-1.mca diff --git a/build.gradle b/build.gradle index 8b3145b..867efaf 100644 --- a/build.gradle +++ b/build.gradle @@ -67,13 +67,15 @@ dependencies { shadow project(":bundler") shadow 'software.amazon.awssdk:s3:2.34.0' } - configurations.implementation.extendsFrom(configurations.shadow) shadowJar { configurations = [project.configurations.shadow] exclude("META-INF") dependencies { exclude(dependency("software.amazon.awssdk:aws-xml-protocol:.*")) + exclude(dependency("org.lz4:lz4-java:.*")) + exclude(dependency("it.unimi.dsi:fastutil:.*")) + exclude(dependency("io.netty:netty-all:.*")) } minimize() //relocate 'com.google', 'sfcraft.relocation.google' diff --git a/bundler/build.gradle b/bundler/build.gradle index 2ef49dc..88fb217 100644 --- a/bundler/build.gradle +++ b/bundler/build.gradle @@ -8,18 +8,19 @@ plugins { dependencies { api 'com.github.luben:zstd-jni:1.5.7-4' - compileOnly 'io.netty:netty-all:4.2.6.Final' + testCompileOnly 'io.netty:netty-all:4.2.6.Final' api "io.ib67.kiwi:lang:1.2.3-SNAPSHOT" - compileOnly 'io.netty:netty-all:4.2.6.Final' - compileOnly 'it.unimi.dsi:fastutil:8.5.15' - compileOnly 'org.lz4:lz4-java:1.8.0' - compileOnly 'org.lz4:lz4-java:1.8.0' + implementation 'io.netty:netty-all:4.2.6.Final' + implementation 'it.unimi.dsi:fastutil:8.5.15' + implementation 'org.lz4:lz4-java:1.8.0' testImplementation 'org.junit.jupiter:junit-jupiter:5.13.4' testRuntimeOnly 'org.junit.platform:junit-platform-launcher' } -shadowJar { - minimize() +configurations { + testRuntimeOnly { + extendsFrom compileOnly + } } test { diff --git a/bundler/src/main/java/io/ib67/sfcraft/bundler/BundleReader.java b/bundler/src/main/java/io/ib67/sfcraft/bundler/BundleReader.java index 72e9c90..534037e 100644 --- a/bundler/src/main/java/io/ib67/sfcraft/bundler/BundleReader.java +++ b/bundler/src/main/java/io/ib67/sfcraft/bundler/BundleReader.java @@ -62,12 +62,18 @@ public class BundleReader { entryData.writeBytes(buffer, 0, read); } try (var reassembler = new RegionParser(entryData, allocator)) { - var result = reassembler.writeReassembled(RegionFile.CompressType.GZIP); + var result = reassembler.writeReassembled(RegionFile.CompressType.ZLIB); try (var fc = FileChannel.open(path, StandardOpenOption.CREATE, StandardOpenOption.WRITE)) { result.readBytes(fc, 0, result.readableBytes()); } finally { result.release(); } + } catch (Exception e) { + try (var ch = FileChannel.open(Path.of("dump.mca"), StandardOpenOption.CREATE, StandardOpenOption.WRITE)) { + entryData.readerIndex(0); + entryData.readBytes(ch, 0, entryData.readableBytes()); + } + throw new IOException("Error while reassembling " + entry.name(), e); } } else { writePlain(path, entry, in); diff --git a/bundler/src/main/java/io/ib67/sfcraft/bundler/BundleWriter.java b/bundler/src/main/java/io/ib67/sfcraft/bundler/BundleWriter.java index 670b4a5..ff22d1f 100644 --- a/bundler/src/main/java/io/ib67/sfcraft/bundler/BundleWriter.java +++ b/bundler/src/main/java/io/ib67/sfcraft/bundler/BundleWriter.java @@ -75,7 +75,7 @@ public class BundleWriter implements Closeable { var futures = new ArrayList>(); for (int i = 0; i < parted.size(); i++) { var pathList = parted.get(i); - var output = parentOfBundle.resolve("Worker_" + System.currentTimeMillis() + "_" + i + ".jbp.zst"); + var output = parentOfBundle.resolve("Worker_" + System.currentTimeMillis() + "_" + i + ".swb.zst"); var future = CompletableFuture.supplyAsync(() -> createBundleWorker(pathList, output, config), executor); futures.add(future); } @@ -142,7 +142,7 @@ public class BundleWriter implements Closeable { } public void write(Path path, boolean suggestGunzip) throws IOException { - if (suggestGunzip) { + if (suggestGunzip && allowReassemble) { //todo size limit writeReassembleInMem(path); return; @@ -158,22 +158,26 @@ public class BundleWriter implements Closeable { return; } if(verbose) System.out.println("Reassembling " + path); - var uncompressed = allocator.buffer(); + var finalResult = allocator.buffer(); var rPath = relativeRoot.toAbsolutePath().relativize(path.toAbsolutePath()); - try (var out = new EntryOutputStream(new ByteBufOutputStream(uncompressed)); + try (var out = new EntryOutputStream(new ByteBufOutputStream(finalResult)); var rf = new RegionParser(path, allocator)) { + // uncompressed result var result = rf.writeReassembled(RegionFile.CompressType.NONE); var length = result.readableBytes(); out.writeEntryHeader(rPath.toString(), BundleEntry.ATTR_REASSEMBLE, length, System.currentTimeMillis()); result.readBytes(out, length); result.release(); - uncompressed.readBytes(outputStream, uncompressed.readableBytes()); + // all done } catch (IOException e) { System.err.println("Failed to parse region " + path + ": " + e); + finalResult.release(); writePlain(path); - } finally { - uncompressed.release(); + return; } + finalResult.readBytes(outputStream, finalResult.readableBytes()); + finalResult.release(); + } private void writePlain(Path path) throws IOException { @@ -186,6 +190,9 @@ public class BundleWriter implements Closeable { while ((read = fs.read(buffer)) > 0) { outputStream.write(buffer, 0, read); } + }catch(IOException e){ + System.err.println("Error while bundling "+path); + throw e; } } diff --git a/bundler/src/main/java/io/ib67/sfcraft/bundler/Main.java b/bundler/src/main/java/io/ib67/sfcraft/bundler/Main.java index 3654ee5..fb8e501 100644 --- a/bundler/src/main/java/io/ib67/sfcraft/bundler/Main.java +++ b/bundler/src/main/java/io/ib67/sfcraft/bundler/Main.java @@ -26,7 +26,7 @@ public class Main { @SneakyThrows public static void main(String[] args) { var opts = ArgOpts.builder() - .args(args).description("Tools for .jbp.zst format bundle").programName("jpack").build(); + .args(args).description("Tools for .swb.zst format bundle").programName("jpack").build(); var in = opts.string("in", "Input. Can be directory or jpack bundle", null); var out = opts.string("out", "Output. Can be jpack bundle or directory", null); var help = opts.bool("help", false); @@ -81,9 +81,9 @@ public class Main { return; } - if (in.endsWith(".jbp.zst")) { + if (in.endsWith(".swb.zst")) { BundleReader.builder().build().extract(inPath, outPath); - } else if (out.endsWith(".jbp.zst")) { + } else if (out.endsWith(".swb.zst")) { UnaryOperator cfg = it -> it .allowGunzip(allowGunzip) .relativeRoot(inPath) diff --git a/bundler/src/main/java/io/ib67/sfcraft/bundler/region/RegionFile.java b/bundler/src/main/java/io/ib67/sfcraft/bundler/region/RegionFile.java index 9c8d875..378b91c 100644 --- a/bundler/src/main/java/io/ib67/sfcraft/bundler/region/RegionFile.java +++ b/bundler/src/main/java/io/ib67/sfcraft/bundler/region/RegionFile.java @@ -89,11 +89,14 @@ public class RegionFile implements Closeable { } public ByteBuf writeOutput() { - var sect = allocator.buffer(8192); + var sect = allocator.buffer(4096); + sect.setZero(0, 4096); + sect.writerIndex(4096); var compositeByteBuf = allocator.compositeBuffer(2 + regionData.size()); var beginSector = 2; compositeByteBuf.addComponent(true, sect); timestamp.retain(); + timestamp.readerIndex(0); compositeByteBuf.addComponent(true, timestamp); for (var entry : regionData.short2ObjectEntrySet()) { var chunkKey = entry.getShortKey(); @@ -102,12 +105,21 @@ public class RegionFile implements Closeable { var chunk = entry.getValue(); var size = chunk.readableBytes(); var sizeSectors = Math.ceilDiv(size, 4096); + var zeros = 4096 - (size % 4096); + for (int i = 0; i < zeros; i++) { + chunk.writeByte(0); + } if (sizeSectors > 255) { throw new IllegalArgumentException("MCC not supported."); } - var indexEntry = Integer.reverseBytes(beginSector) << 1 | (sizeSectors & 0xFF); - // sect = int[1024] - sect.setInt((x + 32 * z) * 4, indexEntry); + if(sizeSectors < 0) { + throw new IllegalArgumentException("Invalid sizeSectors: "+sizeSectors); + } + var begin = (x + 32 * z) * 4; + sect.setByte(begin, (beginSector >>> 16) & 0xFF); + sect.setByte(begin+1, (beginSector >>> 8) & 0xFF); + sect.setByte(begin+2, beginSector & 0xFF); + sect.setByte(begin+3, sizeSectors & 0xFF); chunk.retain(); // retain a local reference compositeByteBuf.addComponent(true, chunk); beginSector += sizeSectors; diff --git a/bundler/src/main/java/io/ib67/sfcraft/bundler/region/RegionParser.java b/bundler/src/main/java/io/ib67/sfcraft/bundler/region/RegionParser.java index b9063e0..ea527d9 100644 --- a/bundler/src/main/java/io/ib67/sfcraft/bundler/region/RegionParser.java +++ b/bundler/src/main/java/io/ib67/sfcraft/bundler/region/RegionParser.java @@ -22,12 +22,12 @@ public class RegionParser implements Closeable { this.allocator = allocator; var size = (int) Files.size(file); if (size < 8192) throw new IOException("The region file " + file + " has been truncated"); - if(size > 8388608 * 2) throw new IOException("The region file " + file + " is too large"); //todo bug + if (size > 8388608 * 2) throw new IOException("The region file " + file + " is too large"); //todo bug source = allocator.buffer(size); try (var fc = FileChannel.open(file, StandardOpenOption.READ)) { var toRead = size; - while(toRead > 0){ + while (toRead > 0) { toRead -= source.writeBytes(fc, 0L, (int) size); } } @@ -66,6 +66,7 @@ public class RegionParser implements Closeable { if (compressType < 0) { // mcc todo } + if (sectorLen == 0) return compressType; buf.writeBytes(source, sectorLen - 1); return compressType; } diff --git a/bundler/src/test/java/io/ib67/bundler/TestRegionReassembler.java b/bundler/src/test/java/io/ib67/bundler/TestRegionReassembler.java index dfde0c6..e90cf8a 100644 --- a/bundler/src/test/java/io/ib67/bundler/TestRegionReassembler.java +++ b/bundler/src/test/java/io/ib67/bundler/TestRegionReassembler.java @@ -7,16 +7,32 @@ import io.netty.buffer.Unpooled; import org.junit.jupiter.api.Test; import java.io.IOException; +import java.nio.channels.FileChannel; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.StandardOpenOption; public class TestRegionReassembler { @Test public void testReassembler() throws IOException { + testMethod("region/r.9.-5.mca"); + testMethod("region/r.-1.-1.mca"); + } + + private static void testMethod(String key) throws IOException { byte[] bytes; - try(var in = TestRegionReassembler.class.getClassLoader().getResourceAsStream("region/r.9.-5.mca")){ + try(var in = TestRegionReassembler.class.getClassLoader().getResourceAsStream(key)){ bytes = in.readAllBytes(); } try(var reasm = new RegionParser(Unpooled.wrappedBuffer(bytes), ByteBufAllocator.DEFAULT)) { var result = reasm.writeReassembled(RegionFile.CompressType.NONE); + try(var foc = FileChannel.open(Path.of("./test.mca"), StandardOpenOption.CREATE, StandardOpenOption.WRITE)) { + result.readBytes(foc, 0, result.readableBytes()); + } + result.readerIndex(0); + try(var reader = new RegionFile(ByteBufAllocator.DEFAULT)) { + result = reasm.writeReassembled(RegionFile.CompressType.ZLIB); + } } } } diff --git a/bundler/src/test/resources/region/r.-1.-1.mca b/bundler/src/test/resources/region/r.-1.-1.mca new file mode 100644 index 0000000000000000000000000000000000000000..ae1df0578fa5cf0f663917f04ac7b3ba1c4181dd GIT binary patch literal 815104 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
Fzg-rM_hdguO1`K_- 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 z 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 literal 0 HcmV?d00001 diff --git a/src/main/java/io/ib67/sfcraft/Backup.java b/src/main/java/io/ib67/sfcraft/Backup.java index 306f484..28982c5 100644 --- a/src/main/java/io/ib67/sfcraft/Backup.java +++ b/src/main/java/io/ib67/sfcraft/Backup.java @@ -11,7 +11,7 @@ public record Backup( long sizeTotal ) { public Text toText(){ - return Text.of("sizeTotal: "+((sizeTotal / 1024.0) / 1024.0) + "GiB, "+ + return Text.of("sizeTotal: "+Math.round(((sizeTotal / 1024.0) / 1024.0) * 100) * 0.01 + "MiB, "+ (incremental ? "incremental" :"") + ", type: "+type+"." ); } diff --git a/src/main/java/io/ib67/sfcraft/BackupCommands.java b/src/main/java/io/ib67/sfcraft/BackupCommands.java index f5b9b51..50b5fde 100644 --- a/src/main/java/io/ib67/sfcraft/BackupCommands.java +++ b/src/main/java/io/ib67/sfcraft/BackupCommands.java @@ -7,6 +7,7 @@ import com.mojang.brigadier.arguments.StringArgumentType; import com.mojang.brigadier.context.CommandContext; import com.mojang.brigadier.suggestion.Suggestions; import com.mojang.brigadier.suggestion.SuggestionsBuilder; +import io.ib67.sfcraft.bundler.BundleReader; import lombok.extern.log4j.Log4j2; import net.minecraft.command.CommandRegistryAccess; import net.minecraft.server.command.CommandManager; @@ -15,7 +16,10 @@ import net.minecraft.text.ClickEvent; import net.minecraft.text.Text; import java.awt.*; +import java.io.IOException; import java.lang.ref.WeakReference; +import java.nio.file.Files; +import java.nio.file.Path; import java.util.List; import java.util.Map; import java.util.concurrent.CompletableFuture; @@ -33,10 +37,10 @@ public class BackupCommands { " -- Show this message", " /backup list ", " -- List backups", - " /backup restore ", + " /backup restore ", " -- Restore the backup on next server restart.", " Can be cancelled by /backup cancelrestore", - " /backup delete ", + " /backup delete ", " -- Delete a backup. This does not ask for a confirmation.", " /backup create ", " -- Create a backup.", @@ -61,11 +65,11 @@ public class BackupCommands { .then(literal("list").executes(this::cmdList)) .then(literal("cancelrestore").executes(this::cmdCancelRestore)) .then(literal("delete") - .then(argument("backupName", StringArgumentType.greedyString()) + .then(argument("backupKey", StringArgumentType.greedyString()) .suggests(this::suggestBackups) .executes(this::cmdDelete))) .then(literal("restore") - .then(argument("backupName", StringArgumentType.greedyString()) + .then(argument("backupKey", StringArgumentType.greedyString()) .suggests(this::suggestBackups) .executes(this::cmdRestore))) .then(literal("create") @@ -128,19 +132,49 @@ public class BackupCommands { s.sendMessage(Text.of("TIP: Use `/backup cancelrestore` to cancel that request.")); return 0; } - var backupName = StringArgumentType.getString(context, "backupName"); + var backupKey = StringArgumentType.getString(context, "backupKey"); + var backup = mod.tracker.getTrackedBackups().get(backupKey); + if (backup == null) { + s.sendMessage(Text.of("Invalid backup " + backupKey + ". Note: Use backupKey instead of backupName!")); + return 0; + } restoreIssued = () -> { - //todo implementation + log.warn("EXTRACTING BACKUP " + backup + " TO " + backup.from()); + log.warn(" == STEP 1 == Make a backup for the destination."); + var destination = Path.of(backup.from()); + var movedDst = destination.resolveSibling(destination.getFileName().toString()+"_bak_"+System.currentTimeMillis()); + try{ + Files.move(destination, movedDst); + log.info("{} has been moved to {}", destination, movedDst); + } catch (IOException e) { + log.error(e); + log.error("CANNOT MOVE "+destination+" TO "+movedDst); + log.error("BACKUP INTERRUPTED. Here are some tips helping you out:"); + log.error(" -- A. Merge already moved files"); + log.error(" Try this command in your server directory: (linux)"); + log.error(" $ cp ./"+movedDst+"/* ./"+destination); + log.error(" -- B. Remove them all and use external unbundler tools"); + log.error(" You may want to copy them elsewhere first (see kind A)"); + log.error(" $ rm -r ./"+destination+" ./"+movedDst); + log.error(" Visit https://github.com/saltedfishclub/justbackup for the usage of bundler tools"); + log.error(" ------- ERROR END -------"); + return; + } + log.info(" == STEP 2 == Recovering backup "+backup); + mod.tracker.recoverBackup(backup, destination); + log.info("Backup has been recovered."); }; + s.sendMessage(Text.of("Backup restoration task has been scheduled!")); + s.sendMessage(Text.of("Restart your server to take changes.")); return Command.SINGLE_SUCCESS; } private int cmdDelete(CommandContext context) { - var backupName = StringArgumentType.getString(context, "backupName"); - var backup = mod.tracker.getTrackedBackups().get(backupName); + var backupKey = StringArgumentType.getString(context, "backupKey"); + var backup = mod.tracker.getTrackedBackups().get(backupKey); var source = context.getSource(); if (backup == null) { - source.sendMessage(Text.of("Invalid backup. No backups are named '" + backupName + "'")); + source.sendMessage(Text.of("Invalid backup. No backups are named '" + backupKey + "'")); return 0; } try { @@ -194,6 +228,8 @@ public class BackupCommands { for (String s : helpMessage) { if (s.startsWith(" /")) { source.sendMessage(Text.literal(s).withColor(Color.CYAN.getRGB())); + } else { + source.sendMessage(Text.of(s)); } } return Command.SINGLE_SUCCESS; diff --git a/src/main/java/io/ib67/sfcraft/BackupWorker.java b/src/main/java/io/ib67/sfcraft/BackupWorker.java index a1399bf..1bb680a 100644 --- a/src/main/java/io/ib67/sfcraft/BackupWorker.java +++ b/src/main/java/io/ib67/sfcraft/BackupWorker.java @@ -33,19 +33,14 @@ public record BackupWorker( if (server == null) { throw new IllegalStateException("MinecraftServer is not initialized yet, not doing backup"); } - int i = 0; + server.saveAll(true, true, false); while (!BACKUP_LOCK.compareAndSet(IOState.IDLE, IOState.BACKUP)) { log.info("Server is saving world while performing backup! waiting..."); - i++; Thread.sleep(2000); } // performing backup is now true - var tmpBundle = tmpDir.resolve("backup_" + subject + "_" + System.currentTimeMillis() + ".swb.zst"); + var tmpBundle = tmpDir.resolve("backup_" + subject.name() + "_" + System.currentTimeMillis() + ".swb.zst"); try { - if (i == 0) { - // not saved yet. - server.saveAll(true, true, false); - } // tmp file path log.info("Creating bundle {}", tmpBundle); BundleWriter.createBundle(tmpBundle, subject.changedFiles(), config); diff --git a/src/main/java/io/ib67/sfcraft/FileWatcherThread.java b/src/main/java/io/ib67/sfcraft/FileWatcherThread.java index 68c13cf..4ea8b28 100644 --- a/src/main/java/io/ib67/sfcraft/FileWatcherThread.java +++ b/src/main/java/io/ib67/sfcraft/FileWatcherThread.java @@ -1,8 +1,10 @@ package io.ib67.sfcraft; import lombok.SneakyThrows; +import lombok.extern.log4j.Log4j2; import java.nio.file.*; +import java.util.HashMap; import java.util.Map; import java.util.Objects; import java.util.concurrent.TimeUnit; @@ -10,6 +12,7 @@ import java.util.function.BiConsumer; import java.util.stream.Collectors; import java.util.stream.Stream; +@Log4j2 public class FileWatcherThread extends Thread { protected final Map watchSubject; protected final BiConsumer eventListener; @@ -20,17 +23,24 @@ public class FileWatcherThread extends Thread { ) { this.watchSubject = watchSubject.entrySet() .stream() - .flatMap(it -> walkThrough(it.getValue()).map(r -> Map.entry(r, it.getKey()))) + // todo support for nonexist dir + .flatMap(it -> walkThrough(it.getValue()).map(r -> Map.entry(r.toAbsolutePath(), it.getKey()))) + .filter(it->Files.isDirectory(it.getKey())) .collect(Collectors.toMap( Map.Entry::getKey, Map.Entry::getValue )); this.eventListener = eventListener; setName("JustBackup/FileWatcher"); + setDaemon(true); } @SneakyThrows private static Stream walkThrough(Path path) { + if(Files.notExists(path)){ + log.error("{} not found. Creating directory for it..", path); + Files.createDirectories(path); + } return Files.walk(path); } @@ -38,12 +48,14 @@ public class FileWatcherThread extends Thread { @SneakyThrows public void run() { try (var watcher = FileSystems.getDefault().newWatchService()) { + var keyToParent = new HashMap(); for (Path value : watchSubject.keySet()) { - value.register( + var key = value.register( watcher, StandardWatchEventKinds.ENTRY_CREATE, StandardWatchEventKinds.ENTRY_MODIFY ); + keyToParent.put(key, value); } for (; ; ) { var key = watcher.poll(10, TimeUnit.SECONDS); @@ -53,17 +65,25 @@ public class FileWatcherThread extends Thread { var kind = ev.kind(); if (kind == StandardWatchEventKinds.OVERFLOW) continue; - var path = ((WatchEvent) ev).context(); - var subject = Objects.requireNonNull(watchSubject.get(path.getParent())); + var parent = keyToParent.get(key); + var subject = watchSubject.get(parent); + if(subject == null) { + log.warn("Ignoring changes in "+parent); + continue; + } + var path = parent.resolve(((WatchEvent) ev).context()); if (Files.isRegularFile(path)) { - eventListener.accept(subject, path.getParent()); + eventListener.accept(subject, parent); } else if (Files.isDirectory(path) && kind == StandardWatchEventKinds.ENTRY_CREATE) { - path.register(watcher, StandardWatchEventKinds.ENTRY_CREATE, StandardWatchEventKinds.ENTRY_MODIFY); + var nK = path.register(watcher, StandardWatchEventKinds.ENTRY_CREATE, StandardWatchEventKinds.ENTRY_MODIFY); watchSubject.put(path, subject); + keyToParent.put(nK, path); } } key.reset(); } + }catch (InterruptedException interruptedException){ + log.info("FileWatcherThread is quitting!"); } } } diff --git a/src/main/java/io/ib67/sfcraft/JustBackupMod.java b/src/main/java/io/ib67/sfcraft/JustBackupMod.java index 48bb07b..9f4d6bc 100644 --- a/src/main/java/io/ib67/sfcraft/JustBackupMod.java +++ b/src/main/java/io/ib67/sfcraft/JustBackupMod.java @@ -30,13 +30,13 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.Executors; import java.util.concurrent.ScheduledExecutorService; import java.util.concurrent.TimeUnit; -import java.util.concurrent.atomic.AtomicBoolean; import java.util.stream.Collectors; public class JustBackupMod implements ModInitializer { public static final String MOD_ID = "justbackup"; public static final Logger LOGGER = LoggerFactory.getLogger(MOD_ID); protected final Map backupSubjects = new HashMap<>(); + protected int lastBackupServerTicks; protected volatile MinecraftServer server; protected volatile boolean suspend; protected byte[] zstdDict; @@ -63,7 +63,7 @@ public class JustBackupMod implements ModInitializer { config.backupSubjects().forEach((k, v) -> { var subjectPath = Path.of(v); if (Files.notExists(subjectPath)) { - LOGGER.error("Backup subject {} does not exist.", v); + LOGGER.error("Backup _subject {} does not exist.", v); return; } backupSubjects.put(k, new BackupSubject(k, subjectPath, new ArrayList<>())); @@ -93,9 +93,11 @@ public class JustBackupMod implements ModInitializer { watcherThread.start(); } - private void handleFileChanges(String subject, Path path) { + private void handleFileChanges(String _subject, Path path) { synchronized (backupSubjects) { - backupSubjects.get(subject).changedFiles().add(path); + var subject = backupSubjects.get(_subject); + if (subject != null) + subject.changedFiles().add(path); // check null } } @@ -108,6 +110,12 @@ public class JustBackupMod implements ModInitializer { backupAll(false); } scheduledBackupExecutor.scheduleAtFixedRate(() -> { + if (lastBackupServerTicks > 0 && lastBackupServerTicks == server.getTicks()) { + // the server is idling + LOGGER.debug("Server is idling, not backing up."); + return; + } + lastBackupServerTicks = server.getTicks(); if (!suspend) backupAll(config.incremental()).thenAccept(it -> { LOGGER.info("Backup success!"); it.forEach((k, v) -> LOGGER.info(k + ": " + v)); @@ -125,6 +133,7 @@ public class JustBackupMod implements ModInitializer { var command = new BackupCommands(this); CommandRegistrationCallback.EVENT.register(command::registerCommand); ServerLifecycleEvents.SERVER_STOPPED.register(server -> { + LOGGER.info("Shutting down the executor"); scheduledBackupExecutor.shutdown(); if (command.restoreIssued != null) { command.restoreIssued.run(); @@ -134,6 +143,7 @@ public class JustBackupMod implements ModInitializer { } public CompletableFuture> backupAll(boolean incremental) { + if (backupSubjects.isEmpty()) return CompletableFuture.completedFuture(Map.of()); var map = new HashMap>(); server.getPlayerManager().broadcast( Text.literal(" BACKUP >> ").withColor(Color.RED.getRGB()).styled(it -> it.withBold(true)) @@ -146,7 +156,11 @@ public class JustBackupMod implements ModInitializer { return CompletableFuture.allOf(map.values().toArray(new CompletableFuture[0])) .thenApply(it -> { var _map = new HashMap(); - map.forEach((k, v) -> _map.put(k, v.join())); + map.forEach((k, v) -> { + var result = v.join(); + LOGGER.info("Backup information of {}: {}", k, result); + _map.put(k, result); + }); return _map; }); } @@ -154,15 +168,18 @@ public class JustBackupMod implements ModInitializer { public CompletableFuture issueBackup(String subjectName, boolean incremental) { var subject = backupSubjects.get(subjectName); if (subject == null) - return CompletableFuture.failedFuture(new IllegalArgumentException("Unknown backup subject: " + subjectName)); + return CompletableFuture.failedFuture(new IllegalArgumentException("Unknown backup _subject: " + subjectName)); if (!incremental) { try (var s = Files.walk(subject.root())) { - subject = new BackupSubject(subject.name(), subject.root(), s.filter(Files::isRegularFile).toList()); + subject = new BackupSubject(subject.name(), subject.root(), s.filter(Files::isRegularFile) + .filter(it -> !it.getFileName().toString().equals("session.lock")) + .toList()); } catch (IOException e) { return CompletableFuture.failedFuture(new IllegalArgumentException("Cannot perform full backup for " + subjectName, e)); } } var finalSubject = subject; + if (config.allowGunzip()) LOGGER.info("Chunk reassembler is enabled!"); var worker = new BackupWorker(server, tracker, Path.of(config.temporaryBackupDir()), subject, c -> c.allowGunzip(config.allowGunzip()) diff --git a/src/main/java/io/ib67/sfcraft/strategy/LocalBackupStrategy.java b/src/main/java/io/ib67/sfcraft/strategy/LocalBackupStrategy.java index 139b4ee..5e104ee 100644 --- a/src/main/java/io/ib67/sfcraft/strategy/LocalBackupStrategy.java +++ b/src/main/java/io/ib67/sfcraft/strategy/LocalBackupStrategy.java @@ -26,14 +26,15 @@ public class LocalBackupStrategy implements BackupStrategy { @Override @SneakyThrows public Backup createBackup(String subject, Path from, Path pathToBundle) { + var parent = backupParentRoot.resolve(subject); var result = new Backup( pathToBundle.getFileName().toString(), - pathToBundle.getFileName().toString(), + Path.of(subject).resolve(pathToBundle.getFileName()).normalize().toString(), "local", from.toString(), false, Files.size(pathToBundle)); - var parent = backupParentRoot.resolve(subject); if(Files.notExists(parent)) { Files.createDirectories(parent); } + //todo new name Files.move(pathToBundle, parent.resolve(pathToBundle.getFileName())); return result; } diff --git a/src/main/resources/justbackup.mixins.json b/src/main/resources/justbackup.mixins.json index 6d4047c..50ccb18 100644 --- a/src/main/resources/justbackup.mixins.json +++ b/src/main/resources/justbackup.mixins.json @@ -3,7 +3,6 @@ "package": "io.ib67.sfcraft.mixin", "compatibilityLevel": "JAVA_21", "mixins": [ - "LevelStorageAccessor", "MixinMinecraftServer", "MixinRegionBasedStorage" ],