5 Commits

204 changed files with 1212 additions and 881 deletions

View File

@@ -82,7 +82,7 @@
<profiles>
<profile>
<id>native-image</id>
<id>native</id>
<activation>
<property>
<name>native</name>

View File

@@ -1,10 +0,0 @@
package com.usatiuk.dhfs.objects.transaction;
import com.usatiuk.dhfs.objects.JData;
import com.usatiuk.dhfs.objects.JDataVersionedWrapper;
import java.util.Optional;
public interface TransactionObject<T extends JData> {
Optional<JDataVersionedWrapper> data();
}

View File

@@ -1,4 +1,4 @@
package com.usatiuk.dhfs.objects;
package com.usatiuk.objects;
import java.io.Serializable;

View File

@@ -1,4 +1,4 @@
package com.usatiuk.dhfs.objects;
package com.usatiuk.objects;
public interface JDataVersionedWrapper {
JData data();

View File

@@ -1,4 +1,4 @@
package com.usatiuk.dhfs.objects;
package com.usatiuk.objects;
import jakarta.annotation.Nonnull;

View File

@@ -1,4 +1,4 @@
package com.usatiuk.dhfs.objects;
package com.usatiuk.objects;
import java.util.function.Supplier;

View File

@@ -1,4 +1,4 @@
package com.usatiuk.dhfs.objects;
package com.usatiuk.objects;
import com.google.protobuf.ByteString;

View File

@@ -1,4 +1,4 @@
package com.usatiuk.dhfs.objects;
package com.usatiuk.objects;
import com.usatiuk.dhfs.supportlib.UninitializedByteBuffer;

View File

@@ -1,4 +1,4 @@
package com.usatiuk.dhfs.objects;
package com.usatiuk.objects;
import com.google.protobuf.ByteString;

View File

@@ -1,4 +1,4 @@
package com.usatiuk.dhfs.objects;
package com.usatiuk.objects;
import com.google.protobuf.ByteString;

View File

@@ -1,4 +1,4 @@
package com.usatiuk.dhfs.objects.iterators;
package com.usatiuk.objects.iterators;
import com.usatiuk.dhfs.utils.AutoCloseableNoThrow;
import org.apache.commons.lang3.tuple.Pair;

View File

@@ -1,4 +1,4 @@
package com.usatiuk.dhfs.objects.iterators;
package com.usatiuk.objects.iterators;
import java.util.Optional;

View File

@@ -1,4 +1,4 @@
package com.usatiuk.dhfs.objects.iterators;
package com.usatiuk.objects.iterators;
@FunctionalInterface
public interface IterProdFn<K extends Comparable<K>, V> {

View File

@@ -1,4 +1,4 @@
package com.usatiuk.dhfs.objects.iterators;
package com.usatiuk.objects.iterators;
public enum IteratorStart {
LT,

View File

@@ -1,4 +1,4 @@
package com.usatiuk.dhfs.objects.iterators;
package com.usatiuk.objects.iterators;
import org.apache.commons.lang3.tuple.Pair;

View File

@@ -1,4 +1,4 @@
package com.usatiuk.dhfs.objects.iterators;
package com.usatiuk.objects.iterators;
import org.apache.commons.lang3.tuple.Pair;

View File

@@ -1,4 +1,4 @@
package com.usatiuk.dhfs.objects.iterators;
package com.usatiuk.objects.iterators;
import java.util.Optional;

View File

@@ -1,4 +1,4 @@
package com.usatiuk.dhfs.objects.iterators;
package com.usatiuk.objects.iterators;
import io.quarkus.logging.Log;
import org.apache.commons.lang3.tuple.Pair;

View File

@@ -1,4 +1,4 @@
package com.usatiuk.dhfs.objects.iterators;
package com.usatiuk.objects.iterators;
import org.apache.commons.lang3.tuple.Pair;

View File

@@ -1,4 +1,4 @@
package com.usatiuk.dhfs.objects.iterators;
package com.usatiuk.objects.iterators;
import io.quarkus.logging.Log;
import org.apache.commons.lang3.tuple.Pair;

View File

@@ -1,4 +1,4 @@
package com.usatiuk.dhfs.objects.iterators;
package com.usatiuk.objects.iterators;
import org.apache.commons.lang3.tuple.Pair;

View File

@@ -1,4 +1,4 @@
package com.usatiuk.dhfs.objects.iterators;
package com.usatiuk.objects.iterators;
import org.apache.commons.lang3.tuple.Pair;

View File

@@ -1,4 +1,4 @@
package com.usatiuk.dhfs.objects.iterators;
package com.usatiuk.objects.iterators;
import java.util.Optional;

View File

@@ -1,4 +1,4 @@
package com.usatiuk.dhfs.objects.iterators;
package com.usatiuk.objects.iterators;
import io.quarkus.logging.Log;
import org.apache.commons.lang3.tuple.Pair;

View File

@@ -1,8 +1,8 @@
package com.usatiuk.dhfs.objects.snapshot;
package com.usatiuk.objects.snapshot;
import com.usatiuk.dhfs.objects.JObjectKey;
import com.usatiuk.dhfs.objects.iterators.CloseableKvIterator;
import com.usatiuk.dhfs.objects.iterators.IteratorStart;
import com.usatiuk.objects.JObjectKey;
import com.usatiuk.objects.iterators.CloseableKvIterator;
import com.usatiuk.objects.iterators.IteratorStart;
import com.usatiuk.dhfs.utils.AutoCloseableNoThrow;
import javax.annotation.Nonnull;

View File

@@ -1,4 +1,4 @@
package com.usatiuk.dhfs.objects.snapshot;
package com.usatiuk.objects.snapshot;
public interface SnapshotEntry {
long whenToRemove();

View File

@@ -1,4 +1,4 @@
package com.usatiuk.dhfs.objects.snapshot;
package com.usatiuk.objects.snapshot;
public record SnapshotEntryDeleted(long whenToRemove) implements SnapshotEntry {
@Override

View File

@@ -1,6 +1,6 @@
package com.usatiuk.dhfs.objects.snapshot;
package com.usatiuk.objects.snapshot;
import com.usatiuk.dhfs.objects.JDataVersionedWrapper;
import com.usatiuk.objects.JDataVersionedWrapper;
public record SnapshotEntryObject(JDataVersionedWrapper data, long whenToRemove) implements SnapshotEntry {
@Override

View File

@@ -1,6 +1,6 @@
package com.usatiuk.dhfs.objects.snapshot;
package com.usatiuk.objects.snapshot;
import com.usatiuk.dhfs.objects.JObjectKey;
import com.usatiuk.objects.JObjectKey;
import javax.annotation.Nonnull;
import java.util.Comparator;

View File

@@ -1,8 +1,9 @@
package com.usatiuk.dhfs.objects.snapshot;
package com.usatiuk.objects.snapshot;
import com.usatiuk.dhfs.objects.JDataVersionedWrapper;
import com.usatiuk.dhfs.objects.JObjectKey;
import com.usatiuk.dhfs.objects.iterators.*;
import com.usatiuk.objects.JDataVersionedWrapper;
import com.usatiuk.objects.JObjectKey;
import com.usatiuk.objects.iterators.*;
import com.usatiuk.objects.iterators.*;
import io.quarkus.logging.Log;
import org.apache.commons.lang3.tuple.Pair;

View File

@@ -1,9 +1,9 @@
package com.usatiuk.dhfs.objects.snapshot;
package com.usatiuk.objects.snapshot;
import com.usatiuk.dhfs.objects.JDataVersionedWrapper;
import com.usatiuk.dhfs.objects.JObjectKey;
import com.usatiuk.dhfs.objects.stores.WritebackObjectPersistentStore;
import com.usatiuk.dhfs.objects.transaction.TxRecord;
import com.usatiuk.objects.JDataVersionedWrapper;
import com.usatiuk.objects.JObjectKey;
import com.usatiuk.objects.stores.WritebackObjectPersistentStore;
import com.usatiuk.objects.transaction.TxRecord;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;

View File

@@ -1,10 +1,11 @@
package com.usatiuk.dhfs.objects.stores;
package com.usatiuk.objects.stores;
import com.usatiuk.dhfs.objects.JDataVersionedWrapper;
import com.usatiuk.dhfs.objects.JObjectKey;
import com.usatiuk.dhfs.objects.iterators.*;
import com.usatiuk.dhfs.objects.snapshot.Snapshot;
import com.usatiuk.dhfs.objects.transaction.LockManager;
import com.usatiuk.objects.JDataVersionedWrapper;
import com.usatiuk.objects.JObjectKey;
import com.usatiuk.objects.iterators.*;
import com.usatiuk.objects.iterators.*;
import com.usatiuk.objects.snapshot.Snapshot;
import com.usatiuk.objects.transaction.LockManager;
import io.quarkus.logging.Log;
import io.quarkus.runtime.Startup;
import jakarta.enterprise.context.ApplicationScoped;

View File

@@ -1,12 +1,12 @@
package com.usatiuk.dhfs.objects.stores;
package com.usatiuk.objects.stores;
import com.google.protobuf.ByteString;
import com.usatiuk.dhfs.objects.JObjectKey;
import com.usatiuk.dhfs.objects.iterators.CloseableKvIterator;
import com.usatiuk.dhfs.objects.iterators.IteratorStart;
import com.usatiuk.dhfs.objects.iterators.KeyPredicateKvIterator;
import com.usatiuk.dhfs.objects.iterators.ReversibleKvIterator;
import com.usatiuk.dhfs.objects.snapshot.Snapshot;
import com.usatiuk.objects.JObjectKey;
import com.usatiuk.objects.iterators.CloseableKvIterator;
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.dhfs.supportlib.UninitializedByteBuffer;
import com.usatiuk.dhfs.utils.RefcountedCloseable;
import io.quarkus.arc.properties.IfBuildProperty;

View File

@@ -1,11 +1,11 @@
package com.usatiuk.dhfs.objects.stores;
package com.usatiuk.objects.stores;
import com.google.protobuf.ByteString;
import com.usatiuk.dhfs.objects.JObjectKey;
import com.usatiuk.dhfs.objects.iterators.CloseableKvIterator;
import com.usatiuk.dhfs.objects.iterators.IteratorStart;
import com.usatiuk.dhfs.objects.iterators.NavigableMapKvIterator;
import com.usatiuk.dhfs.objects.snapshot.Snapshot;
import com.usatiuk.objects.JObjectKey;
import com.usatiuk.objects.iterators.CloseableKvIterator;
import com.usatiuk.objects.iterators.IteratorStart;
import com.usatiuk.objects.iterators.NavigableMapKvIterator;
import com.usatiuk.objects.snapshot.Snapshot;
import io.quarkus.arc.properties.IfBuildProperty;
import jakarta.enterprise.context.ApplicationScoped;
import org.pcollections.TreePMap;

View File

@@ -1,10 +1,10 @@
package com.usatiuk.dhfs.objects.stores;
package com.usatiuk.objects.stores;
import com.google.protobuf.ByteString;
import com.usatiuk.dhfs.objects.JObjectKey;
import com.usatiuk.dhfs.objects.iterators.CloseableKvIterator;
import com.usatiuk.dhfs.objects.iterators.IteratorStart;
import com.usatiuk.dhfs.objects.snapshot.Snapshot;
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;

View File

@@ -1,6 +1,6 @@
package com.usatiuk.dhfs.objects.stores;
package com.usatiuk.objects.stores;
import com.usatiuk.dhfs.objects.JObjectKey;
import com.usatiuk.objects.JObjectKey;
public record PendingDelete(JObjectKey key, long bundleId) implements PendingWriteEntry {
}

View File

@@ -1,6 +1,6 @@
package com.usatiuk.dhfs.objects.stores;
package com.usatiuk.objects.stores;
import com.usatiuk.dhfs.objects.JDataVersionedWrapper;
import com.usatiuk.objects.JDataVersionedWrapper;
public record PendingWrite(JDataVersionedWrapper data, long bundleId) implements PendingWriteEntry {
}

View File

@@ -1,4 +1,4 @@
package com.usatiuk.dhfs.objects.stores;
package com.usatiuk.objects.stores;
public interface PendingWriteEntry {
long bundleId();

View File

@@ -1,13 +1,13 @@
package com.usatiuk.dhfs.objects.stores;
package com.usatiuk.objects.stores;
import com.google.protobuf.ByteString;
import com.usatiuk.dhfs.objects.JDataVersionedWrapper;
import com.usatiuk.dhfs.objects.JObjectKey;
import com.usatiuk.dhfs.objects.ObjectSerializer;
import com.usatiuk.dhfs.objects.iterators.CloseableKvIterator;
import com.usatiuk.dhfs.objects.iterators.IteratorStart;
import com.usatiuk.dhfs.objects.iterators.MappingKvIterator;
import com.usatiuk.dhfs.objects.snapshot.Snapshot;
import com.usatiuk.objects.JDataVersionedWrapper;
import com.usatiuk.objects.JObjectKey;
import com.usatiuk.objects.ObjectSerializer;
import com.usatiuk.objects.iterators.CloseableKvIterator;
import com.usatiuk.objects.iterators.IteratorStart;
import com.usatiuk.objects.iterators.MappingKvIterator;
import com.usatiuk.objects.snapshot.Snapshot;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import org.apache.commons.lang3.tuple.Pair;

View File

@@ -1,6 +1,6 @@
package com.usatiuk.dhfs.objects.stores;
package com.usatiuk.objects.stores;
import com.usatiuk.dhfs.objects.JObjectKey;
import com.usatiuk.objects.JObjectKey;
import org.apache.commons.lang3.tuple.Pair;
import java.io.Serializable;

View File

@@ -1,7 +1,7 @@
package com.usatiuk.dhfs.objects.stores;
package com.usatiuk.objects.stores;
import com.google.protobuf.ByteString;
import com.usatiuk.dhfs.objects.JObjectKey;
import com.usatiuk.objects.JObjectKey;
import org.apache.commons.lang3.tuple.Pair;
import java.io.Serializable;

View File

@@ -1,12 +1,13 @@
package com.usatiuk.dhfs.objects.stores;
package com.usatiuk.objects.stores;
import com.usatiuk.dhfs.objects.JDataVersionedWrapper;
import com.usatiuk.dhfs.objects.JDataVersionedWrapperImpl;
import com.usatiuk.dhfs.objects.JObjectKey;
import com.usatiuk.dhfs.objects.iterators.*;
import com.usatiuk.dhfs.objects.snapshot.Snapshot;
import com.usatiuk.dhfs.objects.transaction.TxCommitException;
import com.usatiuk.dhfs.objects.transaction.TxRecord;
import com.usatiuk.objects.JDataVersionedWrapper;
import com.usatiuk.objects.JDataVersionedWrapperImpl;
import com.usatiuk.objects.JObjectKey;
import com.usatiuk.objects.iterators.*;
import com.usatiuk.objects.iterators.*;
import com.usatiuk.objects.snapshot.Snapshot;
import com.usatiuk.objects.transaction.TxCommitException;
import com.usatiuk.objects.transaction.TxRecord;
import io.quarkus.logging.Log;
import io.quarkus.runtime.ShutdownEvent;
import io.quarkus.runtime.StartupEvent;

View File

@@ -1,9 +1,9 @@
package com.usatiuk.dhfs.objects.transaction;
package com.usatiuk.objects.transaction;
import com.usatiuk.dhfs.objects.JData;
import com.usatiuk.dhfs.objects.JObjectKey;
import com.usatiuk.dhfs.objects.iterators.CloseableKvIterator;
import com.usatiuk.dhfs.objects.iterators.IteratorStart;
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;

View File

@@ -1,9 +1,9 @@
package com.usatiuk.dhfs.objects.transaction;
package com.usatiuk.objects.transaction;
import com.usatiuk.dhfs.objects.JData;
import com.usatiuk.dhfs.objects.JDataVersionedWrapper;
import com.usatiuk.dhfs.objects.JObjectKey;
import com.usatiuk.dhfs.objects.snapshot.SnapshotManager;
import com.usatiuk.objects.JData;
import com.usatiuk.objects.JDataVersionedWrapper;
import com.usatiuk.objects.JObjectKey;
import com.usatiuk.objects.snapshot.SnapshotManager;
import com.usatiuk.dhfs.utils.AutoCloseableNoThrow;
import io.quarkus.logging.Log;
import io.quarkus.runtime.StartupEvent;
@@ -19,7 +19,7 @@ import java.util.function.Consumer;
import java.util.function.Function;
import java.util.stream.Stream;
// Manages all access to com.usatiuk.dhfs.objects.JData objects.
// Manages all access to com.usatiuk.objects.JData objects.
// In particular, it serves as a source of truth for what is committed to the backing storage.
// All data goes through it, it is responsible for transaction atomicity
// TODO: persistent tx id

View File

@@ -1,6 +1,6 @@
package com.usatiuk.dhfs.objects.transaction;
package com.usatiuk.objects.transaction;
import com.usatiuk.dhfs.objects.JObjectKey;
import com.usatiuk.objects.JObjectKey;
import com.usatiuk.dhfs.utils.AutoCloseableNoThrow;
import com.usatiuk.dhfs.utils.DataLocker;
import jakarta.annotation.Nonnull;

View File

@@ -1,4 +1,4 @@
package com.usatiuk.dhfs.objects.transaction;
package com.usatiuk.objects.transaction;
public enum LockingStrategy {
OPTIMISTIC, // Optimistic write, no blocking other possible writers/readers

View File

@@ -1,7 +1,7 @@
package com.usatiuk.dhfs.objects.transaction;
package com.usatiuk.objects.transaction;
import com.usatiuk.dhfs.objects.JData;
import com.usatiuk.dhfs.objects.JObjectKey;
import com.usatiuk.objects.JData;
import com.usatiuk.objects.JObjectKey;
public interface PreCommitTxHook {
default void onChange(JObjectKey key, JData old, JData cur) {

View File

@@ -1,9 +1,9 @@
package com.usatiuk.dhfs.objects.transaction;
package com.usatiuk.objects.transaction;
import com.usatiuk.dhfs.objects.JData;
import com.usatiuk.dhfs.objects.JObjectKey;
import com.usatiuk.dhfs.objects.iterators.CloseableKvIterator;
import com.usatiuk.dhfs.objects.iterators.IteratorStart;
import com.usatiuk.objects.JData;
import com.usatiuk.objects.JObjectKey;
import com.usatiuk.objects.iterators.CloseableKvIterator;
import com.usatiuk.objects.iterators.IteratorStart;
import java.util.Optional;

View File

@@ -1,4 +1,4 @@
package com.usatiuk.dhfs.objects.transaction;
package com.usatiuk.objects.transaction;
public interface TransactionFactory {
TransactionPrivate createTransaction();

View File

@@ -1,11 +1,11 @@
package com.usatiuk.dhfs.objects.transaction;
package com.usatiuk.objects.transaction;
import com.usatiuk.dhfs.objects.JData;
import com.usatiuk.dhfs.objects.JDataVersionedWrapper;
import com.usatiuk.dhfs.objects.JObjectKey;
import com.usatiuk.dhfs.objects.iterators.*;
import com.usatiuk.dhfs.objects.snapshot.Snapshot;
import com.usatiuk.dhfs.objects.snapshot.SnapshotManager;
import com.usatiuk.objects.JData;
import com.usatiuk.objects.JDataVersionedWrapper;
import com.usatiuk.objects.JObjectKey;
import com.usatiuk.objects.iterators.*;
import com.usatiuk.objects.snapshot.Snapshot;
import com.usatiuk.objects.snapshot.SnapshotManager;
import io.quarkus.logging.Log;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;

View File

@@ -1,4 +1,4 @@
package com.usatiuk.dhfs.objects.transaction;
package com.usatiuk.objects.transaction;
public interface TransactionHandle {
void onFlush(Runnable runnable);

View File

@@ -1,4 +1,4 @@
package com.usatiuk.dhfs.objects.transaction;
package com.usatiuk.objects.transaction;
import java.util.Collection;

View File

@@ -1,4 +1,4 @@
package com.usatiuk.dhfs.objects.transaction;
package com.usatiuk.objects.transaction;
import com.usatiuk.dhfs.utils.VoidFn;
import io.quarkus.logging.Log;

View File

@@ -1,4 +1,4 @@
package com.usatiuk.dhfs.objects.transaction;
package com.usatiuk.objects.transaction;
import io.quarkus.logging.Log;
import jakarta.enterprise.context.ApplicationScoped;

View File

@@ -0,0 +1,10 @@
package com.usatiuk.objects.transaction;
import com.usatiuk.objects.JData;
import com.usatiuk.objects.JDataVersionedWrapper;
import java.util.Optional;
public interface TransactionObject<T extends JData> {
Optional<JDataVersionedWrapper> data();
}

View File

@@ -1,7 +1,7 @@
package com.usatiuk.dhfs.objects.transaction;
package com.usatiuk.objects.transaction;
import com.usatiuk.dhfs.objects.JData;
import com.usatiuk.dhfs.objects.JDataVersionedWrapper;
import com.usatiuk.objects.JData;
import com.usatiuk.objects.JDataVersionedWrapper;
import com.usatiuk.dhfs.utils.AutoCloseableNoThrow;
import java.util.Optional;

View File

@@ -1,7 +1,7 @@
package com.usatiuk.dhfs.objects.transaction;
package com.usatiuk.objects.transaction;
import com.usatiuk.dhfs.objects.JData;
import com.usatiuk.dhfs.objects.JDataVersionedWrapper;
import com.usatiuk.objects.JData;
import com.usatiuk.objects.JDataVersionedWrapper;
import java.util.Optional;

View File

@@ -1,9 +1,9 @@
package com.usatiuk.dhfs.objects.transaction;
package com.usatiuk.objects.transaction;
import com.usatiuk.dhfs.objects.JData;
import com.usatiuk.dhfs.objects.JDataVersionedWrapper;
import com.usatiuk.dhfs.objects.JObjectKey;
import com.usatiuk.dhfs.objects.snapshot.Snapshot;
import com.usatiuk.objects.JData;
import com.usatiuk.objects.JDataVersionedWrapper;
import com.usatiuk.objects.JObjectKey;
import com.usatiuk.objects.snapshot.Snapshot;
import com.usatiuk.dhfs.utils.AutoCloseableNoThrow;
import java.util.Collection;

View File

@@ -1,4 +1,4 @@
package com.usatiuk.dhfs.objects.transaction;
package com.usatiuk.objects.transaction;
public class TxCommitException extends RuntimeException {
public TxCommitException(String message) {

View File

@@ -1,7 +1,7 @@
package com.usatiuk.dhfs.objects.transaction;
package com.usatiuk.objects.transaction;
import com.usatiuk.dhfs.objects.JData;
import com.usatiuk.dhfs.objects.JObjectKey;
import com.usatiuk.objects.JData;
import com.usatiuk.objects.JObjectKey;
public class TxRecord {
public interface TxObjectRecord<T> {

View File

@@ -6,5 +6,5 @@ dhfs.objects.lock_timeout_secs=15
dhfs.objects.persistence.files.root=${HOME}/dhfs_default/data/objs
dhfs.objects.persistence.snapshot-extra-checks=false
dhfs.objects.transaction.never-lock=true
quarkus.log.category."com.usatiuk.dhfs.objects.iterators".level=INFO
quarkus.log.category."com.usatiuk.dhfs.objects.iterators".min-level=INFO
quarkus.log.category."com.usatiuk.objects.iterators".level=INFO
quarkus.log.category."com.usatiuk.objects.iterators".min-level=INFO

View File

@@ -1,4 +1,4 @@
package com.usatiuk.dhfs.objects;
package com.usatiuk.objects;
import org.junit.jupiter.api.Assertions;

View File

@@ -1,4 +1,4 @@
package com.usatiuk.dhfs.objects;
package com.usatiuk.objects;
import io.quarkus.test.junit.QuarkusTest;
import io.quarkus.test.junit.TestProfile;

View File

@@ -1,10 +1,10 @@
package com.usatiuk.dhfs.objects;
package com.usatiuk.objects;
import com.usatiuk.dhfs.objects.data.Parent;
import com.usatiuk.dhfs.objects.iterators.IteratorStart;
import com.usatiuk.dhfs.objects.transaction.LockingStrategy;
import com.usatiuk.dhfs.objects.transaction.Transaction;
import com.usatiuk.dhfs.objects.transaction.TransactionManager;
import com.usatiuk.objects.data.Parent;
import com.usatiuk.objects.iterators.IteratorStart;
import com.usatiuk.objects.transaction.LockingStrategy;
import com.usatiuk.objects.transaction.Transaction;
import com.usatiuk.objects.transaction.TransactionManager;
import io.quarkus.logging.Log;
import jakarta.inject.Inject;
import org.junit.jupiter.api.Assertions;

View File

@@ -1,4 +1,4 @@
package com.usatiuk.dhfs.objects;
package com.usatiuk.objects;
import io.quarkus.test.junit.QuarkusTest;
import io.quarkus.test.junit.TestProfile;

View File

@@ -1,9 +1,9 @@
package com.usatiuk.dhfs.objects;
package com.usatiuk.objects;
import com.usatiuk.dhfs.objects.data.Parent;
import com.usatiuk.dhfs.objects.transaction.PreCommitTxHook;
import com.usatiuk.dhfs.objects.transaction.Transaction;
import com.usatiuk.dhfs.objects.transaction.TransactionManager;
import com.usatiuk.objects.data.Parent;
import com.usatiuk.objects.transaction.PreCommitTxHook;
import com.usatiuk.objects.transaction.Transaction;
import com.usatiuk.objects.transaction.TransactionManager;
import io.quarkus.test.junit.QuarkusTest;
import io.quarkus.test.junit.TestProfile;
import io.quarkus.test.junit.mockito.InjectSpy;

View File

@@ -1,4 +1,4 @@
package com.usatiuk.dhfs.objects;
package com.usatiuk.objects;
import io.quarkus.test.junit.QuarkusTestProfile;

View File

@@ -1,4 +1,4 @@
package com.usatiuk.dhfs.objects;
package com.usatiuk.objects;
import io.quarkus.logging.Log;
import io.quarkus.runtime.ShutdownEvent;

View File

@@ -1,7 +1,7 @@
package com.usatiuk.dhfs.objects.data;
package com.usatiuk.objects.data;
import com.usatiuk.dhfs.objects.JData;
import com.usatiuk.dhfs.objects.JObjectKey;
import com.usatiuk.objects.JData;
import com.usatiuk.objects.JObjectKey;
public record Kid(JObjectKey key, String name) implements JData {
public Kid withName(String name) {

View File

@@ -1,7 +1,7 @@
package com.usatiuk.dhfs.objects.data;
package com.usatiuk.objects.data;
import com.usatiuk.dhfs.objects.JData;
import com.usatiuk.dhfs.objects.JObjectKey;
import com.usatiuk.objects.JData;
import com.usatiuk.objects.JObjectKey;
public record Parent(JObjectKey key, String name) implements JData {
public Parent withName(String name) {

View File

@@ -1,6 +1,6 @@
package com.usatiuk.dhfs.objects.iterators;
package com.usatiuk.objects.iterators;
import com.usatiuk.dhfs.objects.Just;
import com.usatiuk.objects.Just;
import org.apache.commons.lang3.tuple.Pair;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;

View File

@@ -1,6 +1,6 @@
package com.usatiuk.dhfs.objects.iterators;
package com.usatiuk.objects.iterators;
import com.usatiuk.dhfs.objects.Just;
import com.usatiuk.objects.Just;
import org.apache.commons.lang3.tuple.Pair;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;

View File

@@ -1,6 +1,6 @@
package com.usatiuk.dhfs.objects.iterators;
package com.usatiuk.objects.iterators;
import com.usatiuk.dhfs.objects.Just;
import com.usatiuk.objects.Just;
import org.apache.commons.lang3.tuple.Pair;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;

View File

@@ -1,6 +1,6 @@
package com.usatiuk.dhfs.objects.iterators;
package com.usatiuk.objects.iterators;
import com.usatiuk.dhfs.objects.Just;
import com.usatiuk.objects.Just;
import org.apache.commons.lang3.tuple.Pair;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;

View File

@@ -1,4 +1,4 @@
package com.usatiuk.dhfs.objects.snapshot;
package com.usatiuk.objects.snapshot;
public class SnapshotKvIteratorTest {

View File

@@ -1,11 +1,11 @@
package com.usatiuk.dhfs.objects.stores;
package com.usatiuk.objects.stores;
import com.google.protobuf.ByteString;
import com.usatiuk.dhfs.objects.JObjectKey;
import com.usatiuk.dhfs.objects.Just;
import com.usatiuk.dhfs.objects.TempDataProfile;
import com.usatiuk.dhfs.objects.iterators.IteratorStart;
import com.usatiuk.objects.JObjectKey;
import com.usatiuk.objects.Just;
import com.usatiuk.objects.TempDataProfile;
import com.usatiuk.objects.iterators.IteratorStart;
import io.quarkus.test.junit.QuarkusTest;
import io.quarkus.test.junit.TestProfile;
import jakarta.inject.Inject;

View File

@@ -29,7 +29,7 @@
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<quarkus.platform.artifact-id>quarkus-bom</quarkus.platform.artifact-id>
<quarkus.platform.group-id>io.quarkus.platform</quarkus.platform.group-id>
<quarkus.platform.version>3.15.2</quarkus.platform.version>
<quarkus.platform.version>3.20.0</quarkus.platform.version>
<surefire-plugin.version>3.5.2</surefire-plugin.version>
<dhfs.native-libs-dir>${project.parent.build.outputDirectory}/native</dhfs.native-libs-dir>
</properties>

View File

@@ -37,12 +37,10 @@
<dependency>
<groupId>org.bouncycastle</groupId>
<artifactId>bcprov-jdk18on</artifactId>
<version>1.78.1</version>
</dependency>
<dependency>
<groupId>org.bouncycastle</groupId>
<artifactId>bcpkix-jdk18on</artifactId>
<version>1.78.1</version>
</dependency>
<dependency>
<groupId>io.quarkus</groupId>

View File

@@ -1,4 +1,4 @@
package com.usatiuk.dhfs.objects;
package com.usatiuk.dhfs;
public interface ConflictResolver {
void resolve(PeerId fromPeer, RemoteObjectMeta ours, RemoteObjectMeta theirs);

View File

@@ -1,7 +1,9 @@
package com.usatiuk.dhfs.objects;
package com.usatiuk.dhfs;
import com.usatiuk.dhfs.objects.transaction.PreCommitTxHook;
import com.usatiuk.dhfs.objects.transaction.Transaction;
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;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;

View File

@@ -1,6 +1,7 @@
package com.usatiuk.dhfs.objects;
package com.usatiuk.dhfs;
import com.usatiuk.dhfs.objects.jmap.JMapRef;
import com.usatiuk.dhfs.jmap.JMapRef;
import com.usatiuk.objects.JObjectKey;
public record JDataNormalRef(JObjectKey obj) implements JDataRef {
@Override

View File

@@ -1,4 +1,6 @@
package com.usatiuk.dhfs.objects;
package com.usatiuk.dhfs;
import com.usatiuk.objects.JObjectKey;
import java.io.Serializable;

View File

@@ -1,5 +1,7 @@
package com.usatiuk.dhfs.objects;
package com.usatiuk.dhfs;
import com.usatiuk.objects.JData;
import com.usatiuk.objects.JObjectKey;
import org.pcollections.PCollection;
import java.util.Collection;

View File

@@ -1,6 +1,7 @@
package com.usatiuk.dhfs.objects;
package com.usatiuk.dhfs;
import com.usatiuk.dhfs.objects.repository.JDataRemoteDto;
import com.usatiuk.objects.JObjectKey;
import com.usatiuk.dhfs.repository.JDataRemoteDto;
import java.io.Serializable;
import java.util.Collection;

View File

@@ -1,7 +1,8 @@
package com.usatiuk.dhfs.objects;
package com.usatiuk.dhfs;
import com.usatiuk.autoprotomap.runtime.ProtoSerializer;
import com.usatiuk.dhfs.objects.persistence.JObjectKeyP;
import com.usatiuk.objects.JObjectKey;
import com.usatiuk.dhfs.persistence.JObjectKeyP;
import jakarta.inject.Singleton;
@Singleton

View File

@@ -1,4 +1,6 @@
package com.usatiuk.dhfs.objects;
package com.usatiuk.dhfs;
import com.usatiuk.objects.JObjectKey;
import java.io.Serializable;

View File

@@ -1,6 +1,6 @@
package com.usatiuk.dhfs.objects;
package com.usatiuk.dhfs;
import com.usatiuk.dhfs.objects.repository.JDataRemoteDto;
import com.usatiuk.dhfs.repository.JDataRemoteDto;
import org.pcollections.PMap;
public record ReceivedObject(PMap<PeerId, Long> changelog, JDataRemoteDto data) {

View File

@@ -1,7 +1,9 @@
package com.usatiuk.dhfs.objects;
package com.usatiuk.dhfs;
import com.usatiuk.dhfs.objects.transaction.PreCommitTxHook;
import com.usatiuk.dhfs.objects.transaction.Transaction;
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;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;

View File

@@ -1,9 +1,11 @@
package com.usatiuk.dhfs.objects;
package com.usatiuk.dhfs;
import com.usatiuk.dhfs.objects.jkleppmanntree.structs.JKleppmannTreePersistentData;
import com.usatiuk.dhfs.objects.repository.invalidation.InvalidationQueueService;
import com.usatiuk.dhfs.objects.transaction.PreCommitTxHook;
import com.usatiuk.dhfs.objects.transaction.Transaction;
import com.usatiuk.dhfs.jkleppmanntree.structs.JKleppmannTreePersistentData;
import com.usatiuk.objects.JData;
import com.usatiuk.objects.JObjectKey;
import com.usatiuk.dhfs.repository.invalidation.InvalidationQueueService;
import com.usatiuk.objects.transaction.PreCommitTxHook;
import com.usatiuk.objects.transaction.Transaction;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;

View File

@@ -1,5 +1,6 @@
package com.usatiuk.dhfs.objects;
package com.usatiuk.dhfs;
import com.usatiuk.objects.JObjectKey;
import org.pcollections.HashTreePSet;
import org.pcollections.PCollection;

View File

@@ -1,11 +1,12 @@
package com.usatiuk.dhfs.objects;
package com.usatiuk.dhfs;
import com.usatiuk.dhfs.objects.repository.AutosyncProcessor;
import com.usatiuk.dhfs.objects.repository.RemoteObjectServiceClient;
import com.usatiuk.dhfs.objects.repository.peersync.PeerInfo;
import com.usatiuk.dhfs.objects.repository.peersync.PeerInfoService;
import com.usatiuk.dhfs.objects.transaction.Transaction;
import com.usatiuk.dhfs.objects.transaction.TransactionManager;
import com.usatiuk.objects.JObjectKey;
import com.usatiuk.dhfs.repository.AutosyncProcessor;
import com.usatiuk.dhfs.repository.RemoteObjectServiceClient;
import com.usatiuk.dhfs.repository.peersync.PeerInfo;
import com.usatiuk.dhfs.repository.peersync.PeerInfoService;
import com.usatiuk.objects.transaction.Transaction;
import com.usatiuk.objects.transaction.TransactionManager;
import com.usatiuk.dhfs.utils.HashSetDelayedBlockingQueue;
import io.quarkus.logging.Log;
import io.quarkus.runtime.ShutdownEvent;

View File

@@ -1,5 +1,6 @@
package com.usatiuk.dhfs.objects;
package com.usatiuk.dhfs;
import com.usatiuk.objects.JObjectKey;
import org.pcollections.*;
import java.util.Collection;

View File

@@ -1,10 +1,11 @@
package com.usatiuk.dhfs.objects;
package com.usatiuk.dhfs;
import com.usatiuk.dhfs.objects.repository.PersistentPeerDataService;
import com.usatiuk.dhfs.objects.repository.RemoteObjectServiceClient;
import com.usatiuk.dhfs.objects.repository.SyncHandler;
import com.usatiuk.dhfs.objects.transaction.LockingStrategy;
import com.usatiuk.dhfs.objects.transaction.Transaction;
import com.usatiuk.objects.JObjectKey;
import com.usatiuk.dhfs.repository.PersistentPeerDataService;
import com.usatiuk.dhfs.repository.RemoteObjectServiceClient;
import com.usatiuk.dhfs.repository.SyncHandler;
import com.usatiuk.objects.transaction.LockingStrategy;
import com.usatiuk.objects.transaction.Transaction;
import io.quarkus.logging.Log;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;

View File

@@ -1,8 +1,8 @@
package com.usatiuk.dhfs.objects;
package com.usatiuk.dhfs;
import com.usatiuk.autoprotomap.runtime.ProtoSerializer;
import com.usatiuk.dhfs.objects.repository.OpP;
import com.usatiuk.dhfs.objects.repository.invalidation.Op;
import com.usatiuk.dhfs.repository.OpP;
import com.usatiuk.dhfs.repository.invalidation.Op;
import com.usatiuk.dhfs.utils.SerializationHelper;
import jakarta.inject.Singleton;

View File

@@ -1,9 +1,9 @@
package com.usatiuk.dhfs.files.objects;
import com.google.protobuf.ByteString;
import com.usatiuk.dhfs.objects.JDataRemote;
import com.usatiuk.dhfs.objects.JObjectKey;
import com.usatiuk.dhfs.objects.repository.JDataRemoteDto;
import com.usatiuk.dhfs.JDataRemote;
import com.usatiuk.objects.JObjectKey;
import com.usatiuk.dhfs.repository.JDataRemoteDto;
public record ChunkData(JObjectKey key, ByteString data) implements JDataRemote, JDataRemoteDto {
@Override

View File

@@ -1,9 +1,9 @@
package com.usatiuk.dhfs.files.objects;
import com.usatiuk.autoprotomap.runtime.ProtoSerializer;
import com.usatiuk.dhfs.objects.JObjectKey;
import com.usatiuk.dhfs.objects.persistence.ChunkDataP;
import com.usatiuk.dhfs.objects.persistence.JObjectKeyP;
import com.usatiuk.objects.JObjectKey;
import com.usatiuk.dhfs.persistence.ChunkDataP;
import com.usatiuk.dhfs.persistence.JObjectKeyP;
import jakarta.inject.Singleton;
@Singleton

View File

@@ -1,10 +1,10 @@
package com.usatiuk.dhfs.files.objects;
import com.usatiuk.dhfs.objects.JDataRemote;
import com.usatiuk.dhfs.objects.JObjectKey;
import com.usatiuk.dhfs.objects.jmap.JMapHolder;
import com.usatiuk.dhfs.objects.jmap.JMapLongKey;
import com.usatiuk.dhfs.objects.repository.JDataRemoteDto;
import com.usatiuk.dhfs.JDataRemote;
import com.usatiuk.objects.JObjectKey;
import com.usatiuk.dhfs.jmap.JMapHolder;
import com.usatiuk.dhfs.jmap.JMapLongKey;
import com.usatiuk.dhfs.repository.JDataRemoteDto;
import java.util.Collection;
import java.util.Set;

View File

@@ -1,8 +1,8 @@
package com.usatiuk.dhfs.files.objects;
import com.usatiuk.dhfs.objects.JDataRemote;
import com.usatiuk.dhfs.objects.JObjectKey;
import com.usatiuk.dhfs.objects.repository.JDataRemoteDto;
import com.usatiuk.dhfs.JDataRemote;
import com.usatiuk.objects.JObjectKey;
import com.usatiuk.dhfs.repository.JDataRemoteDto;
import org.apache.commons.lang3.tuple.Pair;
import java.util.List;

View File

@@ -1,7 +1,7 @@
package com.usatiuk.dhfs.files.objects;
import com.usatiuk.dhfs.objects.jmap.JMapHelper;
import com.usatiuk.dhfs.objects.repository.syncmap.DtoMapper;
import com.usatiuk.dhfs.jmap.JMapHelper;
import com.usatiuk.dhfs.repository.syncmap.DtoMapper;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;

View File

@@ -1,8 +1,8 @@
package com.usatiuk.dhfs.files.objects;
import com.usatiuk.dhfs.objects.JObjectKey;
import com.usatiuk.dhfs.objects.jmap.JMapHelper;
import com.usatiuk.dhfs.objects.jmap.JMapLongKey;
import com.usatiuk.objects.JObjectKey;
import com.usatiuk.dhfs.jmap.JMapHelper;
import com.usatiuk.dhfs.jmap.JMapLongKey;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import org.apache.commons.lang3.tuple.Pair;

Some files were not shown because too many files have changed in this diff Show More