public class FSFS extends Object
public static final String DB_DIR
public static final String REVS_DIR
public static final String REPOS_FORMAT_FILE
public static final String DB_FORMAT_FILE
public static final String DB_LOGS_LOCK_FILE
public static final String DB_LOCK_FILE
public static final String CURRENT_FILE
public static final String UUID_FILE
public static final String FS_TYPE_FILE
public static final String TXN_CURRENT_FILE
public static final String MIN_UNPACKED_REV_FILE
public static final String TXN_CURRENT_LOCK_FILE
public static final String REVISION_PROPERTIES_DIR
public static final String WRITE_LOCK_FILE
public static final String LOCKS_DIR
public static final String DAV_DIR
public static final String TRANSACTIONS_DIR
public static final String TRANSACTION_PROTOS_DIR
public static final String NODE_ORIGINS_DIR
public static final String MANIFEST_FILE
public static final String REP_CACHE_DB
public static final String PACK_EXT
public static final String PACK_KIND_PACK
public static final String PACK_KIND_MANIFEST
public static final String ENABLE_REP_SHARING_OPTION
public static final String REP_SHARING_SECTION
public static final String PACKED_REVPROPS_SECTION
public static final String COMPRESS_PACKED_REVPROPS_OPTION
public static final String REVPROP_PACK_SIZE_OPTION
public static final String IO_SECTION
public static final String BLOCK_SIZE_OPTION
public static final String L2P_PAGE_SIZE_OPTION
public static final String P2L_PAGE_SIZE_OPTION
public static final String PATH_CONFIG
public static final String TXN_PATH_EXT
public static final String TXN_MERGEINFO_PATH
public static final String TXN_PATH_EXT_CHILDREN
public static final String PATH_PREFIX_NODE
public static final String TXN_PATH_EXT_PROPS
public static final String SVN_OPAQUE_LOCK_TOKEN
public static final String TXN_PATH_REV
public static final String PATH_LOCK_KEY
public static final String CHILDREN_LOCK_KEY
public static final String TOKEN_LOCK_KEY
public static final String OWNER_LOCK_KEY
public static final String IS_DAV_COMMENT_LOCK_KEY
public static final String CREATION_DATE_LOCK_KEY
public static final String EXPIRATION_DATE_LOCK_KEY
public static final String COMMENT_LOCK_KEY
public static final String PRE_12_COMPAT_UNNEEDED_FILE_CONTENTS
public static final int DIGEST_SUBDIR_LEN
public static final int REPOSITORY_FORMAT
public static final int REPOSITORY_FORMAT_LEGACY
public static final int DB_FORMAT_PRE_17
public static final int DB_FORMAT
public static final int DB_FORMAT_LOW
public static final int MIN_SVNDIFF1_FORMAT
public static final int LAYOUT_FORMAT_OPTION_MINIMAL_FORMAT
public static final int MIN_CURRENT_TXN_FORMAT
public static final int MIN_PROTOREVS_DIR_FORMAT
public static final int MIN_NO_GLOBAL_IDS_FORMAT
public static final int MIN_MERGE_INFO_FORMAT
public static final int MIN_REP_SHARING_FORMAT
public static final int MIN_PACKED_FORMAT
public static final int MIN_KIND_IN_CHANGED_FORMAT
public static final int MIN_PACKED_REVPROP_SQLITE_DEV_FORMAT
public static final int MIN_PACKED_REVPROP_FORMAT
public static final int MIN_LOG_ADDRESSING_MINIMAL_FORMAT
public static final int MIN_MERGEINFO_IN_CHANGED_FORMAT
public static final String REVISION_PROPERTIES_DB
public static final String REVISION_PROPERTIES_TABLE
public static final String MIN_UNPACKED_REV
public static final boolean DB_FORMAT_PRE_17_USE_AS_DEFAULT
public FSFS(File repositoryRoot)
public void setHooksEnabled(boolean enabled)
public boolean isHooksEnabled()
public int getDBFormat()
public long getMaxFilesPerDirectory()
public int getReposFormat()
public boolean isUseLogAddressing()
public void open() throws SVNException
SVNException
public void close() throws SVNException
SVNException
public void openForRecovery() throws SVNException
SVNException
public void openRoot() throws SVNException
SVNException
public void openDB() throws SVNException
SVNException
public String getFSType() throws SVNException
SVNException
public int readDBFormat() throws SVNException
SVNException
public String getUUID() throws SVNException
SVNException
public File getDBRoot()
public File getWriteLockFile()
public File getUUIDFile()
public File getDBRevsDir()
public File getDBLocksDir()
public File getFSTypeFile()
public File getTransactionsParentDir()
public File getRepositoryRoot()
public File getRevisionPropertiesRoot()
public File getRepositoryFormatFile()
public File getDBFormatFile()
public File getNodeOriginsDir()
public File getCurrentFile()
public File getRepositoryCacheFile()
public File getDBLogsLockFile() throws SVNException
SVNException
public long getDatedRevision(Date date) throws SVNException
SVNException
public long getYoungestRevision() throws SVNException
SVNException
public long getMinUnpackedRev() throws SVNException
SVNException
public void upgrade() throws SVNException
SVNException
public void writeDBFormat(int format, long maxFilesPerDir, boolean overwrite) throws SVNException
SVNException
public SVNProperties getRevisionProperties(long revision) throws SVNException
SVNException
public FSRevisionRoot createRevisionRoot(long revision) throws SVNException
SVNException
public FSTransactionRoot createTransactionRoot(FSTransactionInfo txn) throws SVNException
SVNException
public FSTransactionInfo openTxn(String txnName) throws SVNException
SVNException
public FSRevisionNode getRevisionNode(FSID id) throws SVNException
SVNException
public Map getDirContents(FSRevisionNode revNode) throws SVNException
SVNException
public SVNProperties getProperties(FSRevisionNode revNode) throws SVNException
SVNException
public String[] getNextRevisionIDs() throws SVNException
SVNException
public String getAndIncrementTxnKey() throws SVNException
SVNException
public Map listTransactions()
public File getNewRevisionFile(long newRevision)
public File getNewRevisionPropertiesFile(long newRevision)
public void setYoungestRevisionCache(long revision)
public void setUUID(String uuid) throws SVNException
SVNException
public File getRevisionPropertiesFile(long revision, boolean returnMissing) throws SVNException
SVNException
public FSFile openAndSeekRepresentation(FSRepresentation rep) throws SVNException
SVNException
public void writeNextIDs(String txnID, String nodeID, String copyID) throws SVNException
SVNException
public void changeTransactionProperties(String txnId, SVNProperties txnProperties) throws SVNException
SVNException
public void setTransactionProperty(String txnID, String name, SVNPropertyValue propertyValue) throws SVNException
SVNException
public void setRevisionProperty(long revision, String propertyName, SVNPropertyValue propertyValue) throws SVNException
SVNException
protected long getRevPropPackSize()
public boolean isRepSharingAllowed()
public long getBlockSize()
public long getL2PPageSize()
public long getP2LPageSize()
public SVNProperties getTransactionProperties(String txnID) throws SVNException
SVNException
public File getTransactionProtoRevsDir()
public void purgeTxn(String txnID) throws SVNException
SVNException
public void createNewTxnNodeRevisionFromRevision(String txnID, FSRevisionNode sourceNode) throws SVNException
SVNException
public void putTxnRevisionNode(FSID id, FSRevisionNode revNode) throws SVNException
SVNException
public void writeTxnNodeRevision(OutputStream revNodeFile, FSRevisionNode revNode) throws IOException
IOException
public SVNLock getLock(String repositoryPath, boolean haveWriteLock, boolean throwError) throws SVNException
SVNException
public void deleteLock(SVNLock lock) throws SVNException
SVNException
public void walkDigestFiles(File digestFile, ISVNLockHandler getLocksHandler, boolean haveWriteLock) throws SVNException
SVNException
public SVNLock getLockHelper(String repositoryPath, boolean haveWriteLock) throws SVNException
SVNException
public SVNLock fetchLockFromDigestFile(File digestFile, String repositoryPath, Collection children) throws SVNException
SVNException
public File getDigestFileFromRepositoryPath(String repositoryPath) throws SVNException
SVNException
public String getDigestFromRepositoryPath(String repositoryPath) throws SVNException
SVNException
public void unlockPath(String path, String token, String username, boolean breakLock, boolean enableHooks) throws SVNException
SVNException
public SVNLock lockPath(String path, String token, String username, String comment, Date expirationDate, long currentRevision, boolean stealLock, boolean isDAVComment) throws SVNException
SVNException
public SVNProperties compoundMetaProperties(long revision) throws SVNException
SVNException
public long getDeletedRevision(String path, long startRev, long endRev) throws SVNException
SVNException
public SVNLocationEntry getPreviousLocation(String path, long revision, long[] appearedRevision) throws SVNException
SVNException
public String getNodeOrigin(String nodeID) throws SVNException
SVNException
public void setNodeOrigin(String nodeID, FSID nodeRevisionID) throws SVNException
SVNException
public boolean supportsMergeInfo()
public void readOptions(FSFile formatFile, int formatNumber) throws SVNException
SVNException
public IFSRepresentationCacheManager getRepositoryCacheManager()
public static long getDefaultMaxFilesPerDirectory()
public static void setDefaultMaxFilesPerDirectory(long maxFilesPerDirectory)
public boolean isPackedRevision(long revision)
public long getPackedBaseRevision(long revision)
protected FSFile getTransactionRevisionPrototypeFile(String txnID)
protected FSFile getTransactionRevisionNodeChildrenFile(FSID txnID)
protected FSFile getRevisionFSFile(long revision) throws SVNException
SVNException
protected FSFile getPackOrRevisionFSFile(long revision) throws SVNException
SVNException
protected File getAbsoluteRevisionPath(long revision) throws SVNException
SVNException
protected FSFile getTransactionRevisionNodePropertiesFile(FSID id)
protected File getPackedRevPath(long revision, String kind) throws SVNException
SVNException
protected File getPackedRevPropsShardPath(long revision) throws SVNException
SVNException
protected File getPackDir(long revision)
protected File getPackFile(long revision)
protected File getManifestFile(long revision)
protected File getRevisionFile(long revision) throws SVNException
SVNException
protected File getMinUnpackedRevFile()
protected File getTransactionCurrentFile()
protected File getTransactionCurrentLockFile()
public File getConfigFile()
protected void writeCurrentFile(long revision, String nextNodeID, String nextCopyID) throws SVNException, IOException
SVNException
IOException
protected long getPackedOffset(long revision) throws SVNException
SVNException
protected long lookupOffsetInIndex(FSFile file, long revision, long itemIndex) throws SVNException
SVNException
protected long lookupOffsetInProtoIndex(FSFile file, String txnId, long itemIndex) throws SVNException
SVNException
public File getRevisionPropertiesDbPath()
public File getMinUnpackedRevPropPath()
public void updateMinUnpackedRevProp() throws SVNException
SVNException
public long getMinUnpackedRevProp() throws SVNException
SVNException
public boolean isCompressPackedRevprops()
Copyright © 2024. All rights reserved.