Class BlockBasedFile

java.lang.Object
org.eclipse.jgit.internal.storage.dfs.BlockBasedFile
Direct Known Subclasses:
DfsPackFile, DfsReftable

abstract class BlockBasedFile extends Object
Block based file stored in DfsBlockCache.
  • Field Details

    • cache

      final DfsBlockCache cache
      Cache that owns this file and its data.
    • key

      final DfsStreamKey key
      Unique identity of this file while in-memory.
    • desc

      final DfsPackDescription desc
      Description of the associated pack file's storage.
    • ext

      final PackExt ext
    • blockSize

      volatile int blockSize
      Preferred alignment for loading blocks from the backing file.

      It is initialized to 0 and filled in on the first read made from the file. Block sizes may be odd, e.g. 4091, caused by the underling DFS storing 4091 user bytes and 5 bytes block metadata into a lower level 4096 byte block on disk.

    • length

      volatile long length
      Total number of bytes in this pack file.

      This field initializes to -1 and gets populated when a block is loaded.

    • invalid

      volatile boolean invalid
      True once corruption has been detected that cannot be worked around.
    • invalidatingCause

      protected volatile Exception invalidatingCause
      Exception that caused the packfile to be flagged as invalid
  • Constructor Details

  • Method Details