Class AbstractMutableHashTable<T>

    • Field Detail

      • buildSideSerializer

        protected final TypeSerializer<T> buildSideSerializer
        The utilities to serialize the build side data types.
      • buildSideComparator

        protected final TypeComparator<T> buildSideComparator
        The utilities to hash and compare the build side data types.
      • stateLock

        protected final Object stateLock
        The lock to synchronize state changes (open / close) on
      • closed

        protected boolean closed
        Flag to mark the table as open / closed. Because we allow to open and close multiple times, the state is initially closed.
    • Constructor Detail

    • Method Detail

      • getBuildSideSerializer

        public TypeSerializer<T> getBuildSideSerializer()
      • getBuildSideComparator

        public TypeComparator<T> getBuildSideComparator()
      • open

        public abstract void open()
        Initialize the hash table
      • close

        public abstract void close()
        Closes the hash table. This effectively releases all internal structures and closes all open files and removes them. The call to this method is valid both as a cleanup after the complete inputs were properly processed, and as a cancellation call, which cleans up all resources that are currently held by the hash table. If another process still accesses the hash table after close has been called, no operations will be performed.
      • abort

        public abstract void abort()
      • insertOrReplaceRecord

        public abstract void insertOrReplaceRecord​(T record)
                                            throws IOException
        Throws:
        IOException