diff --git a/dhfs-parent/.run/Main 2.run.xml b/dhfs-parent/.run/Main 2.run.xml index 67ea3715..a439d27e 100644 --- a/dhfs-parent/.run/Main 2.run.xml +++ b/dhfs-parent/.run/Main 2.run.xml @@ -1,16 +1,17 @@ - - + + \ No newline at end of file diff --git a/dhfs-parent/.run/Main.run.xml b/dhfs-parent/.run/Main.run.xml index 601c96ed..cf3d6aae 100644 --- a/dhfs-parent/.run/Main.run.xml +++ b/dhfs-parent/.run/Main.run.xml @@ -1,16 +1,18 @@ - - + + \ No newline at end of file diff --git a/dhfs-parent/dhfs-app/src/test/java/com/usatiuk/dhfsapp/TestDataCleaner.java b/dhfs-parent/dhfs-app/src/test/java/com/usatiuk/dhfsapp/TestDataCleaner.java index fc819a74..20587626 100644 --- a/dhfs-parent/dhfs-app/src/test/java/com/usatiuk/dhfsapp/TestDataCleaner.java +++ b/dhfs-parent/dhfs-app/src/test/java/com/usatiuk/dhfsapp/TestDataCleaner.java @@ -18,18 +18,6 @@ public class TestDataCleaner { @ConfigProperty(name = "dhfs.objects.persistence.files.root") String tempDirectory; - void init(@Observes @Priority(1) StartupEvent event) throws IOException { - try { - purgeDirectory(Path.of(tempDirectory).toFile()); - } catch (Exception ignored) { - Log.warn("Couldn't cleanup test data on init"); - } - } - - void shutdown(@Observes @Priority(1000000000) ShutdownEvent event) throws IOException { - purgeDirectory(Path.of(tempDirectory).toFile()); - } - public static void purgeDirectory(File dir) { try { for (File file : Objects.requireNonNull(dir.listFiles())) { @@ -41,4 +29,16 @@ public class TestDataCleaner { Log.error("Couldn't purge directory " + dir, e); } } + + void init(@Observes @Priority(1) StartupEvent event) throws IOException { + try { + purgeDirectory(Path.of(tempDirectory).toFile()); + } catch (Exception ignored) { + Log.warn("Couldn't cleanup test data on init"); + } + } + + void shutdown(@Observes @Priority(1000000000) ShutdownEvent event) throws IOException { + purgeDirectory(Path.of(tempDirectory).toFile()); + } } diff --git a/dhfs-parent/dhfs-app/src/test/java/com/usatiuk/dhfsapp/integration/LazyFs.java b/dhfs-parent/dhfs-app/src/test/java/com/usatiuk/dhfsapp/integration/LazyFs.java index 59dddffc..ab81ecaf 100644 --- a/dhfs-parent/dhfs-app/src/test/java/com/usatiuk/dhfsapp/integration/LazyFs.java +++ b/dhfs-parent/dhfs-app/src/test/java/com/usatiuk/dhfsapp/integration/LazyFs.java @@ -6,25 +6,26 @@ import java.io.*; import java.nio.file.Path; import java.util.ArrayList; import java.util.concurrent.CountDownLatch; -import java.util.concurrent.CyclicBarrier; import java.util.concurrent.ThreadLocalRandom; import java.util.concurrent.TimeUnit; public class LazyFs { private static final String lazyFsPath; - private final String mountRoot; - private final String dataRoot; - private final String name; - - private final File configFile; - private final File fifoFile; - static { lazyFsPath = System.getProperty("lazyFsPath"); System.out.println("LazyFs Path: " + lazyFsPath); } + private final String mountRoot; + private final String dataRoot; + private final String name; + private final File configFile; + private final File fifoFile; + private Thread errPiper; + private Thread outPiper; + private CountDownLatch startLatch; + private Process fs; public LazyFs(String name, String mountRoot, String dataRoot) { this.name = name; this.mountRoot = mountRoot; @@ -43,11 +44,6 @@ public class LazyFs { Runtime.getRuntime().addShutdownHook(new Thread(this::stop)); } - private Thread errPiper; - private Thread outPiper; - private CountDownLatch startLatch; - private Process fs; - private String fifoPath() { return fifoFile.getAbsolutePath(); } diff --git a/dhfs-parent/dhfs-app/src/test/java/com/usatiuk/dhfsapp/integration/LazyFsIT.java b/dhfs-parent/dhfs-app/src/test/java/com/usatiuk/dhfsapp/integration/LazyFsIT.java index 99396670..f4825cb1 100644 --- a/dhfs-parent/dhfs-app/src/test/java/com/usatiuk/dhfsapp/integration/LazyFsIT.java +++ b/dhfs-parent/dhfs-app/src/test/java/com/usatiuk/dhfsapp/integration/LazyFsIT.java @@ -4,8 +4,8 @@ import com.github.dockerjava.api.model.Device; import com.usatiuk.dhfsapp.TestDataCleaner; import io.quarkus.logging.Log; import org.junit.jupiter.api.*; -import org.junit.jupiter.params.provider.EnumSource; import org.junit.jupiter.params.ParameterizedTest; +import org.junit.jupiter.params.provider.EnumSource; import org.slf4j.LoggerFactory; import org.testcontainers.DockerClientFactory; import org.testcontainers.containers.GenericContainer; @@ -137,12 +137,6 @@ public class LazyFsIT { }); } - private static enum CrashType { - CRASH, - TORN_OP, - TORN_SEQ - } - @ParameterizedTest @EnumSource(CrashType.class) void killTest(CrashType crashType, TestInfo testInfo) throws Exception { @@ -220,7 +214,6 @@ public class LazyFsIT { checkConsistency(testInfo.getDisplayName()); } - @ParameterizedTest @EnumSource(CrashType.class) void killTestDirs(CrashType crashType, TestInfo testInfo) throws Exception { @@ -380,7 +373,6 @@ public class LazyFsIT { checkConsistency(testInfo.getDisplayName()); } - @ParameterizedTest @EnumSource(CrashType.class) void killTestDirs2(CrashType crashType, TestInfo testInfo) throws Exception { @@ -464,4 +456,11 @@ public class LazyFsIT { } + private static enum CrashType { + CRASH, + TORN_OP, + TORN_SEQ + } + + } diff --git a/dhfs-parent/dhfs-fs/src/main/java/com/usatiuk/dhfsfs/objects/ChunkData.java b/dhfs-parent/dhfs-fs/src/main/java/com/usatiuk/dhfsfs/objects/ChunkData.java index 78930fdb..ffe0fc31 100644 --- a/dhfs-parent/dhfs-fs/src/main/java/com/usatiuk/dhfsfs/objects/ChunkData.java +++ b/dhfs-parent/dhfs-fs/src/main/java/com/usatiuk/dhfsfs/objects/ChunkData.java @@ -2,8 +2,8 @@ package com.usatiuk.dhfsfs.objects; import com.google.protobuf.ByteString; import com.usatiuk.dhfs.remoteobj.JDataRemote; -import com.usatiuk.objects.JObjectKey; import com.usatiuk.dhfs.remoteobj.JDataRemoteDto; +import com.usatiuk.objects.JObjectKey; public record ChunkData(JObjectKey key, ByteString data) implements JDataRemote, JDataRemoteDto { @Override diff --git a/dhfs-parent/dhfs-fs/src/main/java/com/usatiuk/dhfsfs/objects/ChunkDataProtoSerializer.java b/dhfs-parent/dhfs-fs/src/main/java/com/usatiuk/dhfsfs/objects/ChunkDataProtoSerializer.java index f83ae380..482d66d4 100644 --- a/dhfs-parent/dhfs-fs/src/main/java/com/usatiuk/dhfsfs/objects/ChunkDataProtoSerializer.java +++ b/dhfs-parent/dhfs-fs/src/main/java/com/usatiuk/dhfsfs/objects/ChunkDataProtoSerializer.java @@ -1,9 +1,9 @@ package com.usatiuk.dhfsfs.objects; import com.usatiuk.dhfs.ProtoSerializer; -import com.usatiuk.objects.JObjectKey; import com.usatiuk.dhfs.persistence.ChunkDataP; import com.usatiuk.dhfs.persistence.JObjectKeyP; +import com.usatiuk.objects.JObjectKey; import jakarta.inject.Singleton; @Singleton diff --git a/dhfs-parent/dhfs-fs/src/main/java/com/usatiuk/dhfsfs/objects/File.java b/dhfs-parent/dhfs-fs/src/main/java/com/usatiuk/dhfsfs/objects/File.java index defd8489..26aab23d 100644 --- a/dhfs-parent/dhfs-fs/src/main/java/com/usatiuk/dhfsfs/objects/File.java +++ b/dhfs-parent/dhfs-fs/src/main/java/com/usatiuk/dhfsfs/objects/File.java @@ -1,8 +1,8 @@ package com.usatiuk.dhfsfs.objects; -import com.usatiuk.dhfs.remoteobj.JDataRemote; import com.usatiuk.dhfs.jmap.JMapHolder; import com.usatiuk.dhfs.jmap.JMapLongKey; +import com.usatiuk.dhfs.remoteobj.JDataRemote; import com.usatiuk.dhfs.remoteobj.JDataRemoteDto; import com.usatiuk.objects.JObjectKey; diff --git a/dhfs-parent/dhfs-fs/src/main/java/com/usatiuk/dhfsfs/objects/FileDto.java b/dhfs-parent/dhfs-fs/src/main/java/com/usatiuk/dhfsfs/objects/FileDto.java index 1e5b4565..a657427b 100644 --- a/dhfs-parent/dhfs-fs/src/main/java/com/usatiuk/dhfsfs/objects/FileDto.java +++ b/dhfs-parent/dhfs-fs/src/main/java/com/usatiuk/dhfsfs/objects/FileDto.java @@ -1,8 +1,8 @@ package com.usatiuk.dhfsfs.objects; import com.usatiuk.dhfs.remoteobj.JDataRemote; -import com.usatiuk.objects.JObjectKey; import com.usatiuk.dhfs.remoteobj.JDataRemoteDto; +import com.usatiuk.objects.JObjectKey; import org.apache.commons.lang3.tuple.Pair; import java.util.List; diff --git a/dhfs-parent/dhfs-fs/src/main/java/com/usatiuk/dhfsfs/objects/FileHelper.java b/dhfs-parent/dhfs-fs/src/main/java/com/usatiuk/dhfsfs/objects/FileHelper.java index a59cbb97..ac53169c 100644 --- a/dhfs-parent/dhfs-fs/src/main/java/com/usatiuk/dhfsfs/objects/FileHelper.java +++ b/dhfs-parent/dhfs-fs/src/main/java/com/usatiuk/dhfsfs/objects/FileHelper.java @@ -1,8 +1,8 @@ package com.usatiuk.dhfsfs.objects; -import com.usatiuk.objects.JObjectKey; import com.usatiuk.dhfs.jmap.JMapHelper; import com.usatiuk.dhfs.jmap.JMapLongKey; +import com.usatiuk.objects.JObjectKey; import jakarta.enterprise.context.ApplicationScoped; import jakarta.inject.Inject; import org.apache.commons.lang3.tuple.Pair; diff --git a/dhfs-parent/dhfs-fs/src/test/java/com/usatiuk/dhfsfs/DhfsFileServiceSimpleTestImpl.java b/dhfs-parent/dhfs-fs/src/test/java/com/usatiuk/dhfsfs/DhfsFileServiceSimpleTestImpl.java index 731b09b3..509d5e83 100644 --- a/dhfs-parent/dhfs-fs/src/test/java/com/usatiuk/dhfsfs/DhfsFileServiceSimpleTestImpl.java +++ b/dhfs-parent/dhfs-fs/src/test/java/com/usatiuk/dhfsfs/DhfsFileServiceSimpleTestImpl.java @@ -125,7 +125,7 @@ public abstract class DhfsFileServiceSimpleTestImpl { var newMtime = fileService.getattr(uuid).get().mtime(); Assertions.assertTrue(newMtime > curMtime); - + fileService.unlink("/writeTest"); Assertions.assertFalse(fileService.open("/writeTest").isPresent()); } diff --git a/dhfs-parent/dhfs-fuse/src/main/java/com/usatiuk/dhfsfuse/DhfsFuse.java b/dhfs-parent/dhfs-fuse/src/main/java/com/usatiuk/dhfsfuse/DhfsFuse.java index ccc92e29..891beaca 100644 --- a/dhfs-parent/dhfs-fuse/src/main/java/com/usatiuk/dhfsfuse/DhfsFuse.java +++ b/dhfs-parent/dhfs-fuse/src/main/java/com/usatiuk/dhfsfuse/DhfsFuse.java @@ -40,6 +40,8 @@ import static jnr.posix.FileStat.*; public class DhfsFuse extends FuseStubFS { private static final int blksize = 1048576; private static final int iosize = 1048576; + private final ConcurrentHashMap _openHandles = new ConcurrentHashMap<>(); + private final AtomicLong _fh = new AtomicLong(1); @ConfigProperty(name = "dhfs.fuse.root") String root; @ConfigProperty(name = "dhfs.fuse.enabled") @@ -53,9 +55,6 @@ public class DhfsFuse extends FuseStubFS { @Inject DhfsFileService fileService; - private final ConcurrentHashMap _openHandles = new ConcurrentHashMap<>(); - private final AtomicLong _fh = new AtomicLong(1); - private long allocateHandle(JObjectKey key) { while (true) { var newFh = _fh.getAndIncrement(); diff --git a/dhfs-parent/objects/src/main/java/com/usatiuk/objects/JDataVersionedWrapperLazy.java b/dhfs-parent/objects/src/main/java/com/usatiuk/objects/JDataVersionedWrapperLazy.java index a17b800c..b1ef09e6 100644 --- a/dhfs-parent/objects/src/main/java/com/usatiuk/objects/JDataVersionedWrapperLazy.java +++ b/dhfs-parent/objects/src/main/java/com/usatiuk/objects/JDataVersionedWrapperLazy.java @@ -3,9 +3,9 @@ package com.usatiuk.objects; import java.util.function.Supplier; public final class JDataVersionedWrapperLazy implements JDataVersionedWrapper { - private JData _data; private final long _version; private final int _estimatedSize; + private JData _data; private Supplier _producer; public JDataVersionedWrapperLazy(long version, int estimatedSize, Supplier producer) { diff --git a/dhfs-parent/objects/src/main/java/com/usatiuk/objects/iterators/Data.java b/dhfs-parent/objects/src/main/java/com/usatiuk/objects/iterators/Data.java index 98c487ad..a129633e 100644 --- a/dhfs-parent/objects/src/main/java/com/usatiuk/objects/iterators/Data.java +++ b/dhfs-parent/objects/src/main/java/com/usatiuk/objects/iterators/Data.java @@ -1,7 +1,5 @@ package com.usatiuk.objects.iterators; -import java.util.Optional; - public interface Data extends MaybeTombstone { V value(); } diff --git a/dhfs-parent/objects/src/main/java/com/usatiuk/objects/iterators/DataWrapper.java b/dhfs-parent/objects/src/main/java/com/usatiuk/objects/iterators/DataWrapper.java index 585bd654..5f38c7e4 100644 --- a/dhfs-parent/objects/src/main/java/com/usatiuk/objects/iterators/DataWrapper.java +++ b/dhfs-parent/objects/src/main/java/com/usatiuk/objects/iterators/DataWrapper.java @@ -1,6 +1,4 @@ package com.usatiuk.objects.iterators; -import java.util.Optional; - public record DataWrapper(V value) implements Data { } diff --git a/dhfs-parent/objects/src/main/java/com/usatiuk/objects/iterators/MaybeTombstone.java b/dhfs-parent/objects/src/main/java/com/usatiuk/objects/iterators/MaybeTombstone.java index 7e04e01f..1cb713e4 100644 --- a/dhfs-parent/objects/src/main/java/com/usatiuk/objects/iterators/MaybeTombstone.java +++ b/dhfs-parent/objects/src/main/java/com/usatiuk/objects/iterators/MaybeTombstone.java @@ -1,6 +1,4 @@ package com.usatiuk.objects.iterators; -import java.util.Optional; - public interface MaybeTombstone { } diff --git a/dhfs-parent/objects/src/main/java/com/usatiuk/objects/iterators/MergingKvIterator.java b/dhfs-parent/objects/src/main/java/com/usatiuk/objects/iterators/MergingKvIterator.java index a772de19..49953199 100644 --- a/dhfs-parent/objects/src/main/java/com/usatiuk/objects/iterators/MergingKvIterator.java +++ b/dhfs-parent/objects/src/main/java/com/usatiuk/objects/iterators/MergingKvIterator.java @@ -10,16 +10,9 @@ import java.util.NoSuchElementException; import java.util.TreeMap; public class MergingKvIterator, V> extends ReversibleKvIterator { - private record IteratorEntry, V>(int priority, CloseableKvIterator iterator) { - public IteratorEntry reversed() { - return new IteratorEntry<>(priority, iterator.reversed()); - } - } - private final NavigableMap> _sortedIterators = new TreeMap<>(); private final String _name; private final List> _iterators; - public MergingKvIterator(String name, IteratorStart startType, K startKey, List> iterators) { _goingForward = true; _name = name; @@ -215,6 +208,12 @@ public class MergingKvIterator, V> extends ReversibleKvI private interface FirstMatchState, V> { } + private record IteratorEntry, V>(int priority, CloseableKvIterator iterator) { + public IteratorEntry reversed() { + return new IteratorEntry<>(priority, iterator.reversed()); + } + } + private record FirstMatchNone, V>() implements FirstMatchState { } diff --git a/dhfs-parent/objects/src/main/java/com/usatiuk/objects/iterators/PredicateKvIterator.java b/dhfs-parent/objects/src/main/java/com/usatiuk/objects/iterators/PredicateKvIterator.java index cd61324c..d042ed1e 100644 --- a/dhfs-parent/objects/src/main/java/com/usatiuk/objects/iterators/PredicateKvIterator.java +++ b/dhfs-parent/objects/src/main/java/com/usatiuk/objects/iterators/PredicateKvIterator.java @@ -1,6 +1,5 @@ package com.usatiuk.objects.iterators; -import io.quarkus.logging.Log; import org.apache.commons.lang3.tuple.Pair; import java.util.NoSuchElementException; diff --git a/dhfs-parent/objects/src/main/java/com/usatiuk/objects/iterators/Tombstone.java b/dhfs-parent/objects/src/main/java/com/usatiuk/objects/iterators/Tombstone.java index 425c8c65..1619ce2b 100644 --- a/dhfs-parent/objects/src/main/java/com/usatiuk/objects/iterators/Tombstone.java +++ b/dhfs-parent/objects/src/main/java/com/usatiuk/objects/iterators/Tombstone.java @@ -1,6 +1,4 @@ package com.usatiuk.objects.iterators; -import java.util.Optional; - public interface Tombstone extends MaybeTombstone { } diff --git a/dhfs-parent/objects/src/main/java/com/usatiuk/objects/iterators/TombstoneMergingKvIterator.java b/dhfs-parent/objects/src/main/java/com/usatiuk/objects/iterators/TombstoneMergingKvIterator.java index 925802c6..097b23e8 100644 --- a/dhfs-parent/objects/src/main/java/com/usatiuk/objects/iterators/TombstoneMergingKvIterator.java +++ b/dhfs-parent/objects/src/main/java/com/usatiuk/objects/iterators/TombstoneMergingKvIterator.java @@ -1,7 +1,5 @@ package com.usatiuk.objects.iterators; -import io.quarkus.logging.Log; - import java.util.List; public abstract class TombstoneMergingKvIterator { diff --git a/dhfs-parent/objects/src/main/java/com/usatiuk/objects/stores/CachingObjectPersistentStore.java b/dhfs-parent/objects/src/main/java/com/usatiuk/objects/stores/CachingObjectPersistentStore.java index 80dbdf53..a04c70e8 100644 --- a/dhfs-parent/objects/src/main/java/com/usatiuk/objects/stores/CachingObjectPersistentStore.java +++ b/dhfs-parent/objects/src/main/java/com/usatiuk/objects/stores/CachingObjectPersistentStore.java @@ -24,52 +24,15 @@ import java.util.concurrent.atomic.AtomicReference; @ApplicationScoped public class CachingObjectPersistentStore { + private final AtomicReference _cache; @Inject SerializingObjectPersistentStore delegate; @ConfigProperty(name = "dhfs.objects.lru.print-stats") boolean printStats; - - private record Cache(TreePMap map, - int size, - long version, - int sizeLimit) { - public Cache withPut(JObjectKey key, Optional obj) { - var entry = obj.map(o -> new CacheEntryPresent(o, o.estimateSize())).orElse(new CacheEntryMiss()); - - int newSize = size() + entry.size(); - - var old = map.get(key); - if (old != null) - newSize -= old.size(); - - TreePMap newCache = map(); - - while (newSize > sizeLimit) { - var del = newCache.firstEntry(); - newCache = newCache.minusFirstEntry(); - newSize -= del.getValue().size(); - } - - newCache = newCache.plus(key, entry); - return new Cache( - newCache, - newSize, - version, - sizeLimit - ); - } - - public Cache withVersion(long version) { - return new Cache(map, size, version, sizeLimit); - } - } - - private final AtomicReference _cache; private ExecutorService _commitExecutor; private ExecutorService _statusExecutor; private AtomicLong _cached = new AtomicLong(); private AtomicLong _cacheTries = new AtomicLong(); - public CachingObjectPersistentStore(@ConfigProperty(name = "dhfs.objects.lru.limit") int sizeLimit) { _cache = new AtomicReference<>( new Cache(TreePMap.empty(), 0, -1, sizeLimit) @@ -142,10 +105,10 @@ public class CachingObjectPersistentStore { Snapshot finalBacking = backing; Cache finalCurCache = curCache; return new Snapshot() { - private boolean _invalid = false; - private boolean _closed = false; private final Cache _curCache = finalCurCache; private final Snapshot _backing = finalBacking; + private boolean _invalid = false; + private boolean _closed = false; private void doCache(JObjectKey key, Optional obj) { _cacheTries.incrementAndGet(); @@ -292,6 +255,41 @@ public class CachingObjectPersistentStore { int size(); } + private record Cache(TreePMap map, + int size, + long version, + int sizeLimit) { + public Cache withPut(JObjectKey key, Optional obj) { + var entry = obj.map(o -> new CacheEntryPresent(o, o.estimateSize())).orElse(new CacheEntryMiss()); + + int newSize = size() + entry.size(); + + var old = map.get(key); + if (old != null) + newSize -= old.size(); + + TreePMap newCache = map(); + + while (newSize > sizeLimit) { + var del = newCache.firstEntry(); + newCache = newCache.minusFirstEntry(); + newSize -= del.getValue().size(); + } + + newCache = newCache.plus(key, entry); + return new Cache( + newCache, + newSize, + version, + sizeLimit + ); + } + + public Cache withVersion(long version) { + return new Cache(map, size, version, sizeLimit); + } + } + private record CacheEntryPresent(JDataVersionedWrapper value, int size) implements CacheEntry, Data { } diff --git a/dhfs-parent/objects/src/main/java/com/usatiuk/objects/stores/LmdbObjectPersistentStore.java b/dhfs-parent/objects/src/main/java/com/usatiuk/objects/stores/LmdbObjectPersistentStore.java index ac06ef7e..353ce333 100644 --- a/dhfs-parent/objects/src/main/java/com/usatiuk/objects/stores/LmdbObjectPersistentStore.java +++ b/dhfs-parent/objects/src/main/java/com/usatiuk/objects/stores/LmdbObjectPersistentStore.java @@ -2,7 +2,6 @@ package com.usatiuk.objects.stores; import com.google.protobuf.ByteString; import com.google.protobuf.UnsafeByteOperations; -import com.usatiuk.utils.RefcountedCloseable; import com.usatiuk.objects.JObjectKey; import com.usatiuk.objects.JObjectKeyMax; import com.usatiuk.objects.JObjectKeyMin; @@ -11,6 +10,7 @@ import com.usatiuk.objects.iterators.IteratorStart; import com.usatiuk.objects.iterators.KeyPredicateKvIterator; import com.usatiuk.objects.iterators.ReversibleKvIterator; import com.usatiuk.objects.snapshot.Snapshot; +import com.usatiuk.utils.RefcountedCloseable; import io.quarkus.arc.properties.IfBuildProperty; import io.quarkus.logging.Log; import io.quarkus.runtime.ShutdownEvent; diff --git a/dhfs-parent/objects/src/main/java/com/usatiuk/objects/stores/MemoryObjectPersistentStore.java b/dhfs-parent/objects/src/main/java/com/usatiuk/objects/stores/MemoryObjectPersistentStore.java index de38845c..8e3af9ba 100644 --- a/dhfs-parent/objects/src/main/java/com/usatiuk/objects/stores/MemoryObjectPersistentStore.java +++ b/dhfs-parent/objects/src/main/java/com/usatiuk/objects/stores/MemoryObjectPersistentStore.java @@ -2,7 +2,6 @@ package com.usatiuk.objects.stores; import com.google.protobuf.ByteString; import com.usatiuk.objects.JObjectKey; -import com.usatiuk.objects.JObjectKeyImpl; import com.usatiuk.objects.iterators.CloseableKvIterator; import com.usatiuk.objects.iterators.IteratorStart; import com.usatiuk.objects.iterators.NavigableMapKvIterator; diff --git a/dhfs-parent/objects/src/main/java/com/usatiuk/objects/stores/ObjectPersistentStore.java b/dhfs-parent/objects/src/main/java/com/usatiuk/objects/stores/ObjectPersistentStore.java index 6cb8f0f6..b84adb94 100644 --- a/dhfs-parent/objects/src/main/java/com/usatiuk/objects/stores/ObjectPersistentStore.java +++ b/dhfs-parent/objects/src/main/java/com/usatiuk/objects/stores/ObjectPersistentStore.java @@ -2,13 +2,10 @@ package com.usatiuk.objects.stores; import com.google.protobuf.ByteString; import com.usatiuk.objects.JObjectKey; -import com.usatiuk.objects.iterators.CloseableKvIterator; -import com.usatiuk.objects.iterators.IteratorStart; import com.usatiuk.objects.snapshot.Snapshot; import javax.annotation.Nonnull; import java.util.Optional; -import java.util.function.Consumer; // Persistent storage of objects // All changes are written as sequential transactions diff --git a/dhfs-parent/objects/src/main/java/com/usatiuk/objects/stores/PendingWrite.java b/dhfs-parent/objects/src/main/java/com/usatiuk/objects/stores/PendingWrite.java index 42dd0cee..b5b8708a 100644 --- a/dhfs-parent/objects/src/main/java/com/usatiuk/objects/stores/PendingWrite.java +++ b/dhfs-parent/objects/src/main/java/com/usatiuk/objects/stores/PendingWrite.java @@ -3,5 +3,6 @@ package com.usatiuk.objects.stores; import com.usatiuk.objects.JDataVersionedWrapper; import com.usatiuk.objects.iterators.Data; -public record PendingWrite(JDataVersionedWrapper value, long bundleId) implements PendingWriteEntry, Data { +public record PendingWrite(JDataVersionedWrapper value, + long bundleId) implements PendingWriteEntry, Data { } diff --git a/dhfs-parent/objects/src/main/java/com/usatiuk/objects/stores/WritebackObjectPersistentStore.java b/dhfs-parent/objects/src/main/java/com/usatiuk/objects/stores/WritebackObjectPersistentStore.java index b0e205a9..41a449e9 100644 --- a/dhfs-parent/objects/src/main/java/com/usatiuk/objects/stores/WritebackObjectPersistentStore.java +++ b/dhfs-parent/objects/src/main/java/com/usatiuk/objects/stores/WritebackObjectPersistentStore.java @@ -32,19 +32,10 @@ import java.util.function.Consumer; public class WritebackObjectPersistentStore { private final LinkedList _pendingBundles = new LinkedList<>(); private final LinkedHashMap _notFlushedBundles = new LinkedHashMap<>(); - - private record PendingWriteData(TreePMap pendingWrites, - long lastFlushedId, - long lastCommittedId) { - } - private final AtomicReference _pendingWrites = new AtomicReference<>(null); - private final Object _flushWaitSynchronizer = new Object(); - private final AtomicLong _lastWrittenId = new AtomicLong(-1); private final AtomicLong _lastCommittedId = new AtomicLong(); - private final AtomicLong _waitedTotal = new AtomicLong(0); @Inject CachingObjectPersistentStore cachedStore; @@ -351,7 +342,7 @@ public class WritebackObjectPersistentStore { @Override public CloseableKvIterator getIterator(IteratorStart start, JObjectKey key) { - return TombstoneMergingKvIterator.of("writeback-ps", start, key, + return TombstoneMergingKvIterator.of("writeback-ps", start, key, (tS, tK) -> new NavigableMapKvIterator<>(_pendingWrites, tS, tK), (tS, tK) -> (CloseableKvIterator>) (CloseableKvIterator) _cache.getIterator(tS, tK)); } @@ -393,6 +384,11 @@ public class WritebackObjectPersistentStore { public interface VerboseReadResult { } + private record PendingWriteData(TreePMap pendingWrites, + long lastFlushedId, + long lastCommittedId) { + } + private static class TxBundle { private final LinkedHashMap _entries = new LinkedHashMap<>(); private final ArrayList _callbacks = new ArrayList<>(); diff --git a/dhfs-parent/objects/src/main/java/com/usatiuk/objects/transaction/CurrentTransaction.java b/dhfs-parent/objects/src/main/java/com/usatiuk/objects/transaction/CurrentTransaction.java index 2e00974a..c5f01714 100644 --- a/dhfs-parent/objects/src/main/java/com/usatiuk/objects/transaction/CurrentTransaction.java +++ b/dhfs-parent/objects/src/main/java/com/usatiuk/objects/transaction/CurrentTransaction.java @@ -4,7 +4,6 @@ import com.usatiuk.objects.JData; import com.usatiuk.objects.JObjectKey; import com.usatiuk.objects.iterators.CloseableKvIterator; import com.usatiuk.objects.iterators.IteratorStart; -import jakarta.enterprise.context.ApplicationScoped; import jakarta.inject.Inject; import jakarta.inject.Singleton; diff --git a/dhfs-parent/objects/src/main/java/com/usatiuk/objects/transaction/JObjectManager.java b/dhfs-parent/objects/src/main/java/com/usatiuk/objects/transaction/JObjectManager.java index c4b58680..0093ab3f 100644 --- a/dhfs-parent/objects/src/main/java/com/usatiuk/objects/transaction/JObjectManager.java +++ b/dhfs-parent/objects/src/main/java/com/usatiuk/objects/transaction/JObjectManager.java @@ -1,11 +1,11 @@ package com.usatiuk.objects.transaction; -import com.usatiuk.utils.AutoCloseableNoThrow; import com.usatiuk.objects.JData; import com.usatiuk.objects.JDataVersionedWrapper; import com.usatiuk.objects.JObjectKey; import com.usatiuk.objects.snapshot.Snapshot; import com.usatiuk.objects.stores.WritebackObjectPersistentStore; +import com.usatiuk.utils.AutoCloseableNoThrow; import io.quarkus.logging.Log; import io.quarkus.runtime.StartupEvent; import jakarta.annotation.Priority; @@ -23,12 +23,6 @@ import java.util.stream.Stream; @ApplicationScoped public class JObjectManager { private final List _preCommitTxHooks; - - private record CommitHookIterationData(PreCommitTxHook hook, - Map> lastWrites, - Map> pendingWrites) { - } - @Inject WritebackObjectPersistentStore writebackObjectPersistentStore; @Inject @@ -36,7 +30,6 @@ public class JObjectManager { @Inject LockManager lockManager; private boolean _ready = false; - JObjectManager(Instance preCommitTxHooks) { _preCommitTxHooks = List.copyOf(preCommitTxHooks.stream().sorted(Comparator.comparingInt(PreCommitTxHook::getPriority)).toList()); Log.debugv("Pre-commit hooks: {0}", String.join("->", _preCommitTxHooks.stream().map(Objects::toString).toList())); @@ -277,4 +270,9 @@ public class JObjectManager { }); tx.close(); } + + private record CommitHookIterationData(PreCommitTxHook hook, + Map> lastWrites, + Map> pendingWrites) { + } } \ No newline at end of file diff --git a/dhfs-parent/objects/src/main/java/com/usatiuk/objects/transaction/TransactionManagerImpl.java b/dhfs-parent/objects/src/main/java/com/usatiuk/objects/transaction/TransactionManagerImpl.java index a3aeeaa7..7aad9dd3 100644 --- a/dhfs-parent/objects/src/main/java/com/usatiuk/objects/transaction/TransactionManagerImpl.java +++ b/dhfs-parent/objects/src/main/java/com/usatiuk/objects/transaction/TransactionManagerImpl.java @@ -1,7 +1,6 @@ package com.usatiuk.objects.transaction; import io.quarkus.logging.Log; -import jakarta.enterprise.context.ApplicationScoped; import jakarta.inject.Inject; import jakarta.inject.Singleton; import org.apache.commons.lang3.tuple.Pair; diff --git a/dhfs-parent/objects/src/test/java/com/usatiuk/objects/ObjectsIterateAllTest.java b/dhfs-parent/objects/src/test/java/com/usatiuk/objects/ObjectsIterateAllTest.java index e9f6257d..9a49d067 100644 --- a/dhfs-parent/objects/src/test/java/com/usatiuk/objects/ObjectsIterateAllTest.java +++ b/dhfs-parent/objects/src/test/java/com/usatiuk/objects/ObjectsIterateAllTest.java @@ -7,11 +7,8 @@ import io.quarkus.test.junit.QuarkusTest; import io.quarkus.test.junit.TestProfile; import jakarta.inject.Inject; import org.apache.commons.lang3.tuple.Pair; -import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; -import java.util.List; -import java.util.Map; import java.util.stream.Stream; class ObjectsIterateAllTestProfiles { diff --git a/dhfs-parent/objects/src/test/java/com/usatiuk/objects/iterators/MergingKvIteratorPbtTest.java b/dhfs-parent/objects/src/test/java/com/usatiuk/objects/iterators/MergingKvIteratorPbtTest.java index f756cb67..3a66148f 100644 --- a/dhfs-parent/objects/src/test/java/com/usatiuk/objects/iterators/MergingKvIteratorPbtTest.java +++ b/dhfs-parent/objects/src/test/java/com/usatiuk/objects/iterators/MergingKvIteratorPbtTest.java @@ -6,9 +6,42 @@ import net.jqwik.api.state.ActionChain; import org.apache.commons.lang3.tuple.Pair; import org.junit.jupiter.api.Assertions; -import java.util.*; +import java.util.List; +import java.util.Map; +import java.util.TreeMap; public class MergingKvIteratorPbtTest { + @Property + public void checkMergingIterator(@ForAll("actions") ActionChain actions) { + actions.run(); + } + + @Provide + Arbitrary> actions(@ForAll("lists") List>> list, + @ForAll IteratorStart iteratorStart, @ForAll("startKey") Integer startKey) { + return ActionChain.startWith(() -> new MergingIteratorModel(list, iteratorStart, startKey)) + .withAction(new NextAction()) + .withAction(new PeekNextKeyAction()) + .withAction(new SkipAction()) + .withAction(new PeekPrevKeyAction()) + .withAction(new SkipPrevAction()) + .withAction(new PrevAction()) + .withAction(new HasNextAction()) + .withAction(new HasPrevAction()); + } + + @Provide + Arbitrary>>> lists() { + return Arbitraries.entries(Arbitraries.integers().between(-50, 50), Arbitraries.integers().between(-50, 50)) + .list().uniqueElements(Map.Entry::getKey).ofMinSize(0).ofMaxSize(20) + .list().ofMinSize(1).ofMaxSize(5); + } + + @Provide + Arbitrary startKey() { + return Arbitraries.integers().between(-51, 51); + } + static class MergingIteratorModel implements CloseableKvIterator { private final CloseableKvIterator mergedIterator; private final CloseableKvIterator mergingIterator; @@ -228,35 +261,4 @@ public class MergingKvIteratorPbtTest { return "Has prev key"; } } - - @Property - public void checkMergingIterator(@ForAll("actions") ActionChain actions) { - actions.run(); - } - - @Provide - Arbitrary> actions(@ForAll("lists") List>> list, - @ForAll IteratorStart iteratorStart, @ForAll("startKey") Integer startKey) { - return ActionChain.startWith(() -> new MergingIteratorModel(list, iteratorStart, startKey)) - .withAction(new NextAction()) - .withAction(new PeekNextKeyAction()) - .withAction(new SkipAction()) - .withAction(new PeekPrevKeyAction()) - .withAction(new SkipPrevAction()) - .withAction(new PrevAction()) - .withAction(new HasNextAction()) - .withAction(new HasPrevAction()); - } - - @Provide - Arbitrary>>> lists() { - return Arbitraries.entries(Arbitraries.integers().between(-50, 50), Arbitraries.integers().between(-50, 50)) - .list().uniqueElements(Map.Entry::getKey).ofMinSize(0).ofMaxSize(20) - .list().ofMinSize(1).ofMaxSize(5); - } - - @Provide - Arbitrary startKey() { - return Arbitraries.integers().between(-51, 51); - } } \ No newline at end of file diff --git a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/JObjectKeyProtoSerializer.java b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/JObjectKeyProtoSerializer.java index 5a0c85df..3e00a91e 100644 --- a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/JObjectKeyProtoSerializer.java +++ b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/JObjectKeyProtoSerializer.java @@ -1,7 +1,7 @@ package com.usatiuk.dhfs; -import com.usatiuk.objects.JObjectKey; import com.usatiuk.dhfs.persistence.JObjectKeyP; +import com.usatiuk.objects.JObjectKey; import jakarta.inject.Singleton; @Singleton diff --git a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/TemporaryOpSerializer.java b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/TemporaryOpSerializer.java index 64d1d4f6..4d7d0ee4 100644 --- a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/TemporaryOpSerializer.java +++ b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/TemporaryOpSerializer.java @@ -1,7 +1,7 @@ package com.usatiuk.dhfs; -import com.usatiuk.dhfs.repository.OpP; import com.usatiuk.dhfs.invalidation.Op; +import com.usatiuk.dhfs.repository.OpP; import com.usatiuk.utils.SerializationHelper; import jakarta.inject.Singleton; diff --git a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/autosync/AutosyncTxHook.java b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/autosync/AutosyncTxHook.java index 117d7820..47096849 100644 --- a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/autosync/AutosyncTxHook.java +++ b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/autosync/AutosyncTxHook.java @@ -1,9 +1,9 @@ package com.usatiuk.dhfs.autosync; +import com.usatiuk.dhfs.invalidation.InvalidationQueueService; +import com.usatiuk.dhfs.remoteobj.RemoteObjectMeta; import com.usatiuk.objects.JData; import com.usatiuk.objects.JObjectKey; -import com.usatiuk.dhfs.remoteobj.RemoteObjectMeta; -import com.usatiuk.dhfs.invalidation.InvalidationQueueService; import com.usatiuk.objects.transaction.PreCommitTxHook; import com.usatiuk.objects.transaction.Transaction; import jakarta.inject.Inject; diff --git a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/invalidation/DeferredInvalidationQueueService.java b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/invalidation/DeferredInvalidationQueueService.java index b3431c35..affb19f8 100644 --- a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/invalidation/DeferredInvalidationQueueService.java +++ b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/invalidation/DeferredInvalidationQueueService.java @@ -1,7 +1,7 @@ package com.usatiuk.dhfs.invalidation; -import com.usatiuk.dhfs.peersync.PeerId; import com.usatiuk.dhfs.peersync.PeerConnectedEventListener; +import com.usatiuk.dhfs.peersync.PeerId; import com.usatiuk.dhfs.peersync.PeerManager; import com.usatiuk.utils.SerializationHelper; import io.quarkus.logging.Log; diff --git a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/invalidation/IndexUpdateOp.java b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/invalidation/IndexUpdateOp.java index 74b128fc..9688d247 100644 --- a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/invalidation/IndexUpdateOp.java +++ b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/invalidation/IndexUpdateOp.java @@ -1,8 +1,8 @@ package com.usatiuk.dhfs.invalidation; -import com.usatiuk.objects.JObjectKey; import com.usatiuk.dhfs.peersync.PeerId; import com.usatiuk.dhfs.remoteobj.JDataRemoteDto; +import com.usatiuk.objects.JObjectKey; import org.pcollections.PMap; import java.util.Collection; diff --git a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/invalidation/InvalidationQueueEntry.java b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/invalidation/InvalidationQueueEntry.java index 78b0d104..3fd2aee9 100644 --- a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/invalidation/InvalidationQueueEntry.java +++ b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/invalidation/InvalidationQueueEntry.java @@ -1,7 +1,7 @@ package com.usatiuk.dhfs.invalidation; -import com.usatiuk.objects.JObjectKey; import com.usatiuk.dhfs.peersync.PeerId; +import com.usatiuk.objects.JObjectKey; import java.io.Serializable; diff --git a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/invalidation/InvalidationQueueService.java b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/invalidation/InvalidationQueueService.java index 9934f844..8d635e4c 100644 --- a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/invalidation/InvalidationQueueService.java +++ b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/invalidation/InvalidationQueueService.java @@ -1,17 +1,17 @@ package com.usatiuk.dhfs.invalidation; import com.usatiuk.dhfs.peersync.PeerId; +import com.usatiuk.dhfs.peersync.PeerInfoService; import com.usatiuk.dhfs.peersync.PeerManager; import com.usatiuk.dhfs.peersync.PersistentPeerDataService; import com.usatiuk.dhfs.rpc.RemoteObjectServiceClient; -import com.usatiuk.dhfs.peersync.PeerInfoService; -import com.usatiuk.utils.AutoCloseableNoThrow; -import com.usatiuk.utils.DataLocker; -import com.usatiuk.utils.HashSetDelayedBlockingQueue; import com.usatiuk.objects.JData; import com.usatiuk.objects.JObjectKey; import com.usatiuk.objects.transaction.Transaction; import com.usatiuk.objects.transaction.TransactionManager; +import com.usatiuk.utils.AutoCloseableNoThrow; +import com.usatiuk.utils.DataLocker; +import com.usatiuk.utils.HashSetDelayedBlockingQueue; import io.quarkus.logging.Log; import io.quarkus.runtime.ShutdownEvent; import io.quarkus.runtime.StartupEvent; @@ -35,6 +35,7 @@ import java.util.concurrent.atomic.AtomicReference; public class InvalidationQueueService { private final HashSetDelayedBlockingQueue _queue; private final AtomicReference> _toAllQueue = new AtomicReference<>(new ConcurrentHashSet<>()); + private final DataLocker _locker = new DataLocker(); @Inject PeerManager remoteHostManager; @Inject @@ -45,13 +46,10 @@ public class InvalidationQueueService { TransactionManager txm; @Inject Transaction curTx; - @ConfigProperty(name = "dhfs.objects.invalidation.threads") int threads; @Inject PersistentPeerDataService persistentPeerDataService; - - private final DataLocker _locker = new DataLocker(); @Inject RemoteObjectServiceClient remoteObjectServiceClient; @Inject diff --git a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/invalidation/OpHandler.java b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/invalidation/OpHandler.java index 15371976..ecc0f13e 100644 --- a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/invalidation/OpHandler.java +++ b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/invalidation/OpHandler.java @@ -1,9 +1,9 @@ package com.usatiuk.dhfs.invalidation; -import com.usatiuk.dhfs.peersync.PeerId; import com.usatiuk.dhfs.jkleppmanntree.JKleppmannTreeManager; import com.usatiuk.dhfs.jkleppmanntree.JKleppmannTreeOpWrapper; import com.usatiuk.dhfs.jkleppmanntree.JKleppmannTreePeriodicPushOp; +import com.usatiuk.dhfs.peersync.PeerId; import com.usatiuk.objects.transaction.Transaction; import jakarta.enterprise.context.ApplicationScoped; import jakarta.inject.Inject; diff --git a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/invalidation/RemoteObjectMetaOpExtractor.java b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/invalidation/RemoteObjectMetaOpExtractor.java index f79b2a77..e470e07b 100644 --- a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/invalidation/RemoteObjectMetaOpExtractor.java +++ b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/invalidation/RemoteObjectMetaOpExtractor.java @@ -1,10 +1,10 @@ package com.usatiuk.dhfs.invalidation; import com.usatiuk.dhfs.peersync.PeerId; -import com.usatiuk.dhfs.remoteobj.RemoteObjectMeta; -import com.usatiuk.dhfs.remoteobj.RemoteTransaction; import com.usatiuk.dhfs.remoteobj.JDataRemoteDto; import com.usatiuk.dhfs.remoteobj.JDataRemotePush; +import com.usatiuk.dhfs.remoteobj.RemoteObjectMeta; +import com.usatiuk.dhfs.remoteobj.RemoteTransaction; import com.usatiuk.dhfs.syncmap.DtoMapperService; import com.usatiuk.objects.transaction.Transaction; import com.usatiuk.objects.transaction.TransactionManager; diff --git a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/jkleppmanntree/JKleppmannTreePeerInterface.java b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/jkleppmanntree/JKleppmannTreePeerInterface.java index 50425a4a..153ab400 100644 --- a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/jkleppmanntree/JKleppmannTreePeerInterface.java +++ b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/jkleppmanntree/JKleppmannTreePeerInterface.java @@ -1,9 +1,9 @@ package com.usatiuk.dhfs.jkleppmanntree; import com.usatiuk.dhfs.peersync.PeerId; -import com.usatiuk.dhfs.peersync.PersistentPeerDataService; import com.usatiuk.dhfs.peersync.PeerInfo; import com.usatiuk.dhfs.peersync.PeerInfoService; +import com.usatiuk.dhfs.peersync.PersistentPeerDataService; import com.usatiuk.kleppmanntree.PeerInterface; import jakarta.inject.Inject; import jakarta.inject.Singleton; diff --git a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/jkleppmanntree/JKleppmannTreePeriodicPushOp.java b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/jkleppmanntree/JKleppmannTreePeriodicPushOp.java index c56d43cc..fc6e9c8e 100644 --- a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/jkleppmanntree/JKleppmannTreePeriodicPushOp.java +++ b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/jkleppmanntree/JKleppmannTreePeriodicPushOp.java @@ -1,8 +1,8 @@ package com.usatiuk.dhfs.jkleppmanntree; -import com.usatiuk.objects.JObjectKey; -import com.usatiuk.dhfs.peersync.PeerId; import com.usatiuk.dhfs.invalidation.Op; +import com.usatiuk.dhfs.peersync.PeerId; +import com.usatiuk.objects.JObjectKey; import java.io.Serializable; import java.util.Collection; diff --git a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/jkleppmanntree/structs/JKleppmannTreePersistentData.java b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/jkleppmanntree/structs/JKleppmannTreePersistentData.java index 8d2d07e7..c7186e75 100644 --- a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/jkleppmanntree/structs/JKleppmannTreePersistentData.java +++ b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/jkleppmanntree/structs/JKleppmannTreePersistentData.java @@ -1,12 +1,12 @@ package com.usatiuk.dhfs.jkleppmanntree.structs; +import com.usatiuk.dhfs.peersync.PeerId; import com.usatiuk.dhfs.refcount.JDataRef; import com.usatiuk.dhfs.refcount.JDataRefcounted; -import com.usatiuk.objects.JObjectKey; -import com.usatiuk.dhfs.peersync.PeerId; import com.usatiuk.kleppmanntree.CombinedTimestamp; import com.usatiuk.kleppmanntree.LogRecord; import com.usatiuk.kleppmanntree.OpMove; +import com.usatiuk.objects.JObjectKey; import org.pcollections.PCollection; import org.pcollections.PMap; import org.pcollections.PSortedMap; diff --git a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/jmap/JMapHelper.java b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/jmap/JMapHelper.java index 55e2b46b..e6d93992 100644 --- a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/jmap/JMapHelper.java +++ b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/jmap/JMapHelper.java @@ -5,7 +5,6 @@ import com.usatiuk.objects.iterators.CloseableKvIterator; import com.usatiuk.objects.iterators.IteratorStart; import com.usatiuk.objects.transaction.Transaction; import io.quarkus.logging.Log; -import jakarta.enterprise.context.ApplicationScoped; import jakarta.inject.Inject; import jakarta.inject.Singleton; diff --git a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/jmap/JMapRefcounterTxHook.java b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/jmap/JMapRefcounterTxHook.java index 2fd327d6..39b82ba1 100644 --- a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/jmap/JMapRefcounterTxHook.java +++ b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/jmap/JMapRefcounterTxHook.java @@ -1,9 +1,9 @@ package com.usatiuk.dhfs.jmap; -import com.usatiuk.objects.JData; import com.usatiuk.dhfs.refcount.JDataRefcounted; -import com.usatiuk.objects.JObjectKey; import com.usatiuk.dhfs.remoteobj.RemoteObjectMeta; +import com.usatiuk.objects.JData; +import com.usatiuk.objects.JObjectKey; import com.usatiuk.objects.transaction.PreCommitTxHook; import com.usatiuk.objects.transaction.Transaction; import io.quarkus.logging.Log; diff --git a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/peerdiscovery/local/LocalPeerDiscoveryBroadcaster.java b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/peerdiscovery/local/LocalPeerDiscoveryBroadcaster.java index c22fdb55..9e79a923 100644 --- a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/peerdiscovery/local/LocalPeerDiscoveryBroadcaster.java +++ b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/peerdiscovery/local/LocalPeerDiscoveryBroadcaster.java @@ -1,7 +1,7 @@ package com.usatiuk.dhfs.peerdiscovery.local; -import com.usatiuk.dhfs.peersync.PersistentPeerDataService; import com.usatiuk.dhfs.peerdiscovery.PeerDiscoveryInfo; +import com.usatiuk.dhfs.peersync.PersistentPeerDataService; import io.quarkus.arc.properties.IfBuildProperty; import io.quarkus.logging.Log; import io.quarkus.runtime.ShutdownEvent; diff --git a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/peerdiscovery/local/LocalPeerDiscoveryClient.java b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/peerdiscovery/local/LocalPeerDiscoveryClient.java index dca99631..aaec3d95 100644 --- a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/peerdiscovery/local/LocalPeerDiscoveryClient.java +++ b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/peerdiscovery/local/LocalPeerDiscoveryClient.java @@ -1,11 +1,11 @@ package com.usatiuk.dhfs.peerdiscovery.local; import com.google.protobuf.InvalidProtocolBufferException; -import com.usatiuk.dhfs.peersync.PeerId; import com.usatiuk.dhfs.peerdiscovery.IpPeerAddress; import com.usatiuk.dhfs.peerdiscovery.PeerAddressType; import com.usatiuk.dhfs.peerdiscovery.PeerDiscoveryDirectory; import com.usatiuk.dhfs.peerdiscovery.PeerDiscoveryInfo; +import com.usatiuk.dhfs.peersync.PeerId; import io.quarkus.arc.properties.IfBuildProperty; import io.quarkus.logging.Log; import io.quarkus.runtime.ShutdownEvent; diff --git a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/peersync/InitialSyncProcessor.java b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/peersync/InitialSyncProcessor.java index 055319c9..6b7e1fb3 100644 --- a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/peersync/InitialSyncProcessor.java +++ b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/peersync/InitialSyncProcessor.java @@ -5,5 +5,6 @@ import com.usatiuk.objects.JObjectKey; public interface InitialSyncProcessor { void prepareForInitialSync(PeerId from, JObjectKey key); + void handleCrash(JObjectKey key); } diff --git a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/peersync/PeerInfo.java b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/peersync/PeerInfo.java index e4f5f526..1eca8b79 100644 --- a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/peersync/PeerInfo.java +++ b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/peersync/PeerInfo.java @@ -1,11 +1,11 @@ package com.usatiuk.dhfs.peersync; import com.google.protobuf.ByteString; -import com.usatiuk.dhfs.remoteobj.JDataRemote; -import com.usatiuk.objects.JObjectKey; import com.usatiuk.dhfs.peertrust.CertificateTools; +import com.usatiuk.dhfs.remoteobj.JDataRemote; import com.usatiuk.dhfs.remoteobj.JDataRemoteDto; import com.usatiuk.dhfs.remoteobj.JDataRemotePush; +import com.usatiuk.objects.JObjectKey; import java.security.cert.X509Certificate; diff --git a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/peersync/PeerInfoSyncHandler.java b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/peersync/PeerInfoSyncHandler.java index fc990e35..96001d59 100644 --- a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/peersync/PeerInfoSyncHandler.java +++ b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/peersync/PeerInfoSyncHandler.java @@ -1,10 +1,6 @@ package com.usatiuk.dhfs.peersync; -import com.usatiuk.dhfs.remoteobj.RemoteObjectDataWrapper; -import com.usatiuk.dhfs.remoteobj.RemoteObjectMeta; -import com.usatiuk.dhfs.remoteobj.RemoteTransaction; -import com.usatiuk.dhfs.remoteobj.ObjSyncHandler; -import com.usatiuk.dhfs.remoteobj.SyncHelper; +import com.usatiuk.dhfs.remoteobj.*; import com.usatiuk.objects.JObjectKey; import com.usatiuk.objects.transaction.Transaction; import io.grpc.Status; diff --git a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/peersync/PeerManager.java b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/peersync/PeerManager.java index 628c3715..a0788716 100644 --- a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/peersync/PeerManager.java +++ b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/peersync/PeerManager.java @@ -4,9 +4,9 @@ import com.usatiuk.dhfs.peerdiscovery.PeerAddress; import com.usatiuk.dhfs.peerdiscovery.PeerDiscoveryDirectory; import com.usatiuk.dhfs.peersync.api.PeerSyncApiClientDynamic; import com.usatiuk.dhfs.peertrust.PeerTrustManager; +import com.usatiuk.dhfs.remoteobj.SyncHandler; import com.usatiuk.dhfs.repository.PingRequest; import com.usatiuk.dhfs.rpc.RpcClientFactory; -import com.usatiuk.dhfs.remoteobj.SyncHandler; import com.usatiuk.objects.transaction.Transaction; import com.usatiuk.objects.transaction.TransactionManager; import io.quarkus.logging.Log; diff --git a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/peersync/PersistentPeerDataService.java b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/peersync/PersistentPeerDataService.java index de3d3277..53da2a6c 100644 --- a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/peersync/PersistentPeerDataService.java +++ b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/peersync/PersistentPeerDataService.java @@ -2,14 +2,14 @@ package com.usatiuk.dhfs.peersync; import com.google.protobuf.ByteString; import com.usatiuk.dhfs.ShutdownChecker; -import com.usatiuk.dhfs.peertrust.CertificateTools; import com.usatiuk.dhfs.peerdiscovery.IpPeerAddress; import com.usatiuk.dhfs.peerdiscovery.PeerAddressType; +import com.usatiuk.dhfs.peertrust.CertificateTools; import com.usatiuk.dhfs.peertrust.PeerTrustManager; import com.usatiuk.dhfs.rpc.RpcClientFactory; -import com.usatiuk.utils.SerializationHelper; import com.usatiuk.objects.transaction.Transaction; import com.usatiuk.objects.transaction.TransactionManager; +import com.usatiuk.utils.SerializationHelper; import io.quarkus.logging.Log; import io.quarkus.runtime.StartupEvent; import jakarta.annotation.Priority; diff --git a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/peersync/structs/JKleppmannTreeNodeMetaPeer.java b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/peersync/structs/JKleppmannTreeNodeMetaPeer.java index 7bc4e1fa..f52cb286 100644 --- a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/peersync/structs/JKleppmannTreeNodeMetaPeer.java +++ b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/peersync/structs/JKleppmannTreeNodeMetaPeer.java @@ -1,8 +1,8 @@ package com.usatiuk.dhfs.peersync.structs; -import com.usatiuk.objects.JObjectKey; -import com.usatiuk.dhfs.peersync.PeerId; import com.usatiuk.dhfs.jkleppmanntree.structs.JKleppmannTreeNodeMeta; +import com.usatiuk.dhfs.peersync.PeerId; +import com.usatiuk.objects.JObjectKey; import java.util.Collection; import java.util.List; diff --git a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/peertrust/PeerInfoCertUpdateTxHook.java b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/peertrust/PeerInfoCertUpdateTxHook.java index 1eb21dd8..37e4c9bd 100644 --- a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/peertrust/PeerInfoCertUpdateTxHook.java +++ b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/peertrust/PeerInfoCertUpdateTxHook.java @@ -1,14 +1,14 @@ package com.usatiuk.dhfs.peertrust; -import com.usatiuk.objects.JData; -import com.usatiuk.objects.JObjectKey; -import com.usatiuk.dhfs.remoteobj.RemoteObjectDataWrapper; -import com.usatiuk.dhfs.jkleppmanntree.structs.JKleppmannTreeNode; -import com.usatiuk.dhfs.peersync.PersistentPeerDataService; import com.usatiuk.dhfs.invalidation.InvalidationQueueService; +import com.usatiuk.dhfs.jkleppmanntree.structs.JKleppmannTreeNode; import com.usatiuk.dhfs.peersync.PeerInfo; import com.usatiuk.dhfs.peersync.PeerInfoService; +import com.usatiuk.dhfs.peersync.PersistentPeerDataService; import com.usatiuk.dhfs.peersync.structs.JKleppmannTreeNodeMetaPeer; +import com.usatiuk.dhfs.remoteobj.RemoteObjectDataWrapper; +import com.usatiuk.objects.JData; +import com.usatiuk.objects.JObjectKey; import com.usatiuk.objects.transaction.PreCommitTxHook; import com.usatiuk.objects.transaction.Transaction; import io.quarkus.logging.Log; diff --git a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/remoteobj/ObjSyncHandler.java b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/remoteobj/ObjSyncHandler.java index d3ae1fcf..2d11cb6c 100644 --- a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/remoteobj/ObjSyncHandler.java +++ b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/remoteobj/ObjSyncHandler.java @@ -1,7 +1,7 @@ package com.usatiuk.dhfs.remoteobj; -import com.usatiuk.objects.JObjectKey; import com.usatiuk.dhfs.peersync.PeerId; +import com.usatiuk.objects.JObjectKey; import org.pcollections.PMap; import javax.annotation.Nullable; diff --git a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/remoteobj/RemoteObjPusherTxHook.java b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/remoteobj/RemoteObjPusherTxHook.java index afda6b90..7f2b0176 100644 --- a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/remoteobj/RemoteObjPusherTxHook.java +++ b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/remoteobj/RemoteObjPusherTxHook.java @@ -1,9 +1,9 @@ package com.usatiuk.dhfs.remoteobj; +import com.usatiuk.dhfs.invalidation.InvalidationQueueService; import com.usatiuk.dhfs.jkleppmanntree.structs.JKleppmannTreePersistentData; import com.usatiuk.objects.JData; import com.usatiuk.objects.JObjectKey; -import com.usatiuk.dhfs.invalidation.InvalidationQueueService; import com.usatiuk.objects.transaction.PreCommitTxHook; import com.usatiuk.objects.transaction.Transaction; import jakarta.inject.Inject; diff --git a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/remoteobj/RemoteObjectDeleter.java b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/remoteobj/RemoteObjectDeleter.java index 96c76470..b3555794 100644 --- a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/remoteobj/RemoteObjectDeleter.java +++ b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/remoteobj/RemoteObjectDeleter.java @@ -1,12 +1,12 @@ package com.usatiuk.dhfs.remoteobj; -import com.usatiuk.dhfs.refcount.JDataRefcounted; -import com.usatiuk.dhfs.peersync.PeerId; -import com.usatiuk.objects.JObjectKey; import com.usatiuk.dhfs.autosync.AutosyncProcessor; -import com.usatiuk.dhfs.rpc.RemoteObjectServiceClient; +import com.usatiuk.dhfs.peersync.PeerId; import com.usatiuk.dhfs.peersync.PeerInfo; import com.usatiuk.dhfs.peersync.PeerInfoService; +import com.usatiuk.dhfs.refcount.JDataRefcounted; +import com.usatiuk.dhfs.rpc.RemoteObjectServiceClient; +import com.usatiuk.objects.JObjectKey; import com.usatiuk.objects.transaction.Transaction; import com.usatiuk.objects.transaction.TransactionManager; import com.usatiuk.utils.HashSetDelayedBlockingQueue; diff --git a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/remoteobj/RemoteObjectInitialSyncProcessor.java b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/remoteobj/RemoteObjectInitialSyncProcessor.java index 4a9ad5bf..4a0e2bdb 100644 --- a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/remoteobj/RemoteObjectInitialSyncProcessor.java +++ b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/remoteobj/RemoteObjectInitialSyncProcessor.java @@ -1,8 +1,8 @@ package com.usatiuk.dhfs.remoteobj; -import com.usatiuk.dhfs.peersync.PeerId; -import com.usatiuk.dhfs.peersync.InitialSyncProcessor; import com.usatiuk.dhfs.invalidation.InvalidationQueueService; +import com.usatiuk.dhfs.peersync.InitialSyncProcessor; +import com.usatiuk.dhfs.peersync.PeerId; import com.usatiuk.dhfs.peersync.PeerInfoService; import com.usatiuk.objects.JObjectKey; import com.usatiuk.objects.transaction.Transaction; diff --git a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/remoteobj/RemoteObjectMeta.java b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/remoteobj/RemoteObjectMeta.java index 13ce4dc9..10242b49 100644 --- a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/remoteobj/RemoteObjectMeta.java +++ b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/remoteobj/RemoteObjectMeta.java @@ -1,8 +1,8 @@ package com.usatiuk.dhfs.remoteobj; +import com.usatiuk.dhfs.peersync.PeerId; import com.usatiuk.dhfs.refcount.JDataRef; import com.usatiuk.dhfs.refcount.JDataRefcounted; -import com.usatiuk.dhfs.peersync.PeerId; import com.usatiuk.objects.JObjectKey; import org.pcollections.*; diff --git a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/remoteobj/RemoteTransaction.java b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/remoteobj/RemoteTransaction.java index 2a594555..50f5f694 100644 --- a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/remoteobj/RemoteTransaction.java +++ b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/remoteobj/RemoteTransaction.java @@ -1,8 +1,8 @@ package com.usatiuk.dhfs.remoteobj; -import com.usatiuk.objects.JObjectKey; import com.usatiuk.dhfs.peersync.PersistentPeerDataService; import com.usatiuk.dhfs.rpc.RemoteObjectServiceClient; +import com.usatiuk.objects.JObjectKey; import com.usatiuk.objects.transaction.LockingStrategy; import com.usatiuk.objects.transaction.Transaction; import io.quarkus.logging.Log; diff --git a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/remoteobj/SyncHandler.java b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/remoteobj/SyncHandler.java index c50dfaa5..aaf6ab8e 100644 --- a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/remoteobj/SyncHandler.java +++ b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/remoteobj/SyncHandler.java @@ -1,10 +1,10 @@ package com.usatiuk.dhfs.remoteobj; -import com.usatiuk.dhfs.peersync.InitialSyncProcessor; -import com.usatiuk.dhfs.peersync.PersistentPeerDataService; -import com.usatiuk.dhfs.peersync.PeerId; import com.usatiuk.dhfs.ShutdownChecker; import com.usatiuk.dhfs.invalidation.InvalidationQueueService; +import com.usatiuk.dhfs.peersync.InitialSyncProcessor; +import com.usatiuk.dhfs.peersync.PeerId; +import com.usatiuk.dhfs.peersync.PersistentPeerDataService; import com.usatiuk.dhfs.rpc.RemoteObjectServiceClient; import com.usatiuk.objects.JData; import com.usatiuk.objects.JObjectKey; diff --git a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/rpc/RemoteObjectServiceClient.java b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/rpc/RemoteObjectServiceClient.java index 8677187e..de0413a7 100644 --- a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/rpc/RemoteObjectServiceClient.java +++ b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/rpc/RemoteObjectServiceClient.java @@ -1,6 +1,8 @@ package com.usatiuk.dhfs.rpc; import com.usatiuk.dhfs.ProtoSerializer; +import com.usatiuk.dhfs.invalidation.InvalidationQueueService; +import com.usatiuk.dhfs.invalidation.Op; import com.usatiuk.dhfs.peersync.PeerId; import com.usatiuk.dhfs.peersync.PeerManager; import com.usatiuk.dhfs.peersync.PersistentPeerDataService; @@ -9,8 +11,6 @@ import com.usatiuk.dhfs.refcount.JDataRef; import com.usatiuk.dhfs.remoteobj.ReceivedObject; import com.usatiuk.dhfs.remoteobj.RemoteObjectMeta; import com.usatiuk.dhfs.remoteobj.RemoteTransaction; -import com.usatiuk.dhfs.invalidation.InvalidationQueueService; -import com.usatiuk.dhfs.invalidation.Op; import com.usatiuk.dhfs.remoteobj.SyncHandler; import com.usatiuk.dhfs.repository.*; import com.usatiuk.objects.JObjectKey; diff --git a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/rpc/RemoteObjectServiceServerImpl.java b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/rpc/RemoteObjectServiceServerImpl.java index 7dd207f4..9d14455c 100644 --- a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/rpc/RemoteObjectServiceServerImpl.java +++ b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/rpc/RemoteObjectServiceServerImpl.java @@ -1,13 +1,13 @@ package com.usatiuk.dhfs.rpc; -import com.usatiuk.dhfs.*; +import com.usatiuk.dhfs.ProtoSerializer; import com.usatiuk.dhfs.autosync.AutosyncProcessor; +import com.usatiuk.dhfs.invalidation.Op; +import com.usatiuk.dhfs.invalidation.OpHandler; import com.usatiuk.dhfs.peersync.PeerId; import com.usatiuk.dhfs.peersync.PeerManager; import com.usatiuk.dhfs.persistence.JObjectKeyP; import com.usatiuk.dhfs.remoteobj.*; -import com.usatiuk.dhfs.invalidation.Op; -import com.usatiuk.dhfs.invalidation.OpHandler; import com.usatiuk.dhfs.repository.*; import com.usatiuk.dhfs.syncmap.DtoMapperService; import com.usatiuk.objects.JObjectKey; diff --git a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/rpc/RpcClientFactory.java b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/rpc/RpcClientFactory.java index 4d61bb4e..aedeef61 100644 --- a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/rpc/RpcClientFactory.java +++ b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/rpc/RpcClientFactory.java @@ -1,9 +1,9 @@ package com.usatiuk.dhfs.rpc; -import com.usatiuk.dhfs.peersync.PeerId; -import com.usatiuk.dhfs.peersync.PeerDisconnectedEventListener; import com.usatiuk.dhfs.peerdiscovery.IpPeerAddress; import com.usatiuk.dhfs.peerdiscovery.PeerAddress; +import com.usatiuk.dhfs.peersync.PeerDisconnectedEventListener; +import com.usatiuk.dhfs.peersync.PeerId; import com.usatiuk.dhfs.peersync.PeerManager; import com.usatiuk.dhfs.repository.DhfsObjectSyncGrpcGrpc; import io.grpc.ManagedChannel; diff --git a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/rpc/TemporaryReceivedObjectSerializer.java b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/rpc/TemporaryReceivedObjectSerializer.java index 5793f223..cbc47498 100644 --- a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/rpc/TemporaryReceivedObjectSerializer.java +++ b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/rpc/TemporaryReceivedObjectSerializer.java @@ -2,11 +2,11 @@ package com.usatiuk.dhfs.rpc; import com.usatiuk.dhfs.ProtoSerializer; import com.usatiuk.dhfs.peersync.PeerId; -import com.usatiuk.dhfs.remoteobj.JDataRemoteDto; -import com.usatiuk.dhfs.remoteobj.ReceivedObject; import com.usatiuk.dhfs.persistence.JDataRemoteDtoP; import com.usatiuk.dhfs.persistence.JObjectKeyP; import com.usatiuk.dhfs.persistence.PeerIdP; +import com.usatiuk.dhfs.remoteobj.JDataRemoteDto; +import com.usatiuk.dhfs.remoteobj.ReceivedObject; import com.usatiuk.dhfs.repository.GetObjectReply; import jakarta.enterprise.context.ApplicationScoped; import jakarta.inject.Inject; diff --git a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/webapi/PeerManagementApi.java b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/webapi/PeerManagementApi.java index 46cf1447..66a60915 100644 --- a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/webapi/PeerManagementApi.java +++ b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/webapi/PeerManagementApi.java @@ -1,9 +1,9 @@ package com.usatiuk.dhfs.webapi; import com.usatiuk.dhfs.peersync.PeerId; +import com.usatiuk.dhfs.peersync.PeerInfoService; import com.usatiuk.dhfs.peersync.PeerManager; import com.usatiuk.dhfs.peersync.PersistentPeerDataService; -import com.usatiuk.dhfs.peersync.PeerInfoService; import jakarta.inject.Inject; import jakarta.ws.rs.DELETE; import jakarta.ws.rs.GET; diff --git a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/webapi/PersistentPeerAddressApi.java b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/webapi/PersistentPeerAddressApi.java index 95fce2ab..40555ae4 100644 --- a/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/webapi/PersistentPeerAddressApi.java +++ b/dhfs-parent/sync-base/src/main/java/com/usatiuk/dhfs/webapi/PersistentPeerAddressApi.java @@ -1,10 +1,10 @@ package com.usatiuk.dhfs.webapi; +import com.usatiuk.dhfs.peerdiscovery.PeerAddrStringHelper; import com.usatiuk.dhfs.peersync.PeerId; +import com.usatiuk.dhfs.peersync.PeerInfoService; import com.usatiuk.dhfs.peersync.PeerManager; import com.usatiuk.dhfs.peersync.PersistentPeerDataService; -import com.usatiuk.dhfs.peerdiscovery.PeerAddrStringHelper; -import com.usatiuk.dhfs.peersync.PeerInfoService; import jakarta.inject.Inject; import jakarta.ws.rs.*; diff --git a/dhfs-parent/sync-base/src/test/java/com/usatiuk/dhfs/RefcounterTest.java b/dhfs-parent/sync-base/src/test/java/com/usatiuk/dhfs/RefcounterTest.java index af3d4da6..b48b8f93 100644 --- a/dhfs-parent/sync-base/src/test/java/com/usatiuk/dhfs/RefcounterTest.java +++ b/dhfs-parent/sync-base/src/test/java/com/usatiuk/dhfs/RefcounterTest.java @@ -1,8 +1,8 @@ package com.usatiuk.dhfs; import com.usatiuk.dhfs.refcount.JDataRef; -import com.usatiuk.objects.JObjectKey; import com.usatiuk.dhfs.testobjs.TestRefcount; +import com.usatiuk.objects.JObjectKey; import com.usatiuk.objects.transaction.Transaction; import com.usatiuk.objects.transaction.TransactionManager; import io.quarkus.test.junit.QuarkusTest;