Merge branch 'stable-5.2' into stable-5.3
* stable-5.2: Remove unused import in ApacheSshTest Update maven plugins Ignore missing javadoc in test bundles storage: file: De-duplicate File.exists()+File.isFile() RefDirectory.scanRef: Re-use file existence check done in snapshot creation FileSnapshot: Lazy load file store attributes cache Update eclipse-jarsigner-plugin to 1.3.2 Fix p2 repository URLs Change-Id: Id989365446cb55b9188e02e6e1f8cbc8ab71071c
This commit is contained in:
commit
dc41de0e3c
|
@ -52,7 +52,7 @@ org.eclipse.jdt.core.compiler.problem.missingJavadocComments=ignore
|
|||
org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=disabled
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=protected
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocTagDescription=return_tag
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocTags=error
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocTags=ignore
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocTagsMethodTypeParameters=disabled
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=disabled
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=private
|
||||
|
|
|
@ -52,7 +52,7 @@ org.eclipse.jdt.core.compiler.problem.missingJavadocComments=ignore
|
|||
org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=disabled
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=protected
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocTagDescription=return_tag
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocTags=error
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocTags=ignore
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocTagsMethodTypeParameters=disabled
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=disabled
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=private
|
||||
|
|
|
@ -52,7 +52,7 @@ org.eclipse.jdt.core.compiler.problem.missingJavadocComments=ignore
|
|||
org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=disabled
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=protected
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocTagDescription=return_tag
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocTags=error
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocTags=ignore
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocTagsMethodTypeParameters=disabled
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=disabled
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=private
|
||||
|
|
|
@ -52,7 +52,7 @@ org.eclipse.jdt.core.compiler.problem.missingJavadocComments=ignore
|
|||
org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=disabled
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=protected
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocTagDescription=return_tag
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocTags=error
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocTags=ignore
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocTagsMethodTypeParameters=disabled
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=disabled
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=private
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<?pde?>
|
||||
<!-- generated with https://github.com/eclipse-cbi/targetplatform-dsl -->
|
||||
<target name="jgit-4.10" sequenceNumber="1566244557">
|
||||
<target name="jgit-4.10" sequenceNumber="1638578807">
|
||||
<locations>
|
||||
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
|
||||
<unit id="org.eclipse.jetty.client" version="9.4.14.v20181114"/>
|
||||
|
@ -20,7 +20,7 @@
|
|||
<unit id="org.eclipse.jetty.servlet.source" version="9.4.14.v20181114"/>
|
||||
<unit id="org.eclipse.jetty.util" version="9.4.14.v20181114"/>
|
||||
<unit id="org.eclipse.jetty.util.source" version="9.4.14.v20181114"/>
|
||||
<repository id="jetty-9.4.14" location="http://download.eclipse.org/jetty/updates/jetty-bundles-9.x/9.4.14.v20181114"/>
|
||||
<repository id="jetty-9.4.14" location="https://archive.eclipse.org/jetty/updates/jetty-bundles-9.x/jetty-bundles-9.x/9.4.14.v20181114"/>
|
||||
</location>
|
||||
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
|
||||
<unit id="org.apache.ant" version="1.10.5.v20190526-1402"/>
|
||||
|
@ -86,7 +86,7 @@
|
|||
</location>
|
||||
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
|
||||
<unit id="org.eclipse.osgi" version="0.0.0"/>
|
||||
<repository location="http://download.eclipse.org/releases/2018-12/"/>
|
||||
<repository location="https://download.eclipse.org/releases/2018-12/"/>
|
||||
</location>
|
||||
</locations>
|
||||
</target>
|
||||
|
|
|
@ -3,6 +3,7 @@ target "jgit-4.10" with source configurePhase
|
|||
include "projects/jetty-9.4.14.tpd"
|
||||
include "orbit/R20190602212107-2019-06.tpd"
|
||||
|
||||
location "http://download.eclipse.org/releases/2018-12/" {
|
||||
location "https://download.eclipse.org/releases/2018-12/" {
|
||||
org.eclipse.osgi lazy
|
||||
}
|
||||
|
||||
|
|
|
@ -1,8 +0,0 @@
|
|||
target "jgit-4.11-staging" with source configurePhase
|
||||
|
||||
include "projects/jetty-9.4.14.tpd"
|
||||
include "orbit/R20190602212107-2019-06.tpd"
|
||||
|
||||
location "http://download.eclipse.org/staging/2019-03/" {
|
||||
org.eclipse.osgi lazy
|
||||
}
|
|
@ -1,7 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<?pde?>
|
||||
<!-- generated with https://github.com/eclipse-cbi/targetplatform-dsl -->
|
||||
<target name="jgit-4.11-staging" sequenceNumber="1566244434">
|
||||
<target name="jgit-4.11" sequenceNumber="1638579452">
|
||||
<locations>
|
||||
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
|
||||
<unit id="org.eclipse.jetty.client" version="9.4.14.v20181114"/>
|
||||
|
@ -20,7 +20,7 @@
|
|||
<unit id="org.eclipse.jetty.servlet.source" version="9.4.14.v20181114"/>
|
||||
<unit id="org.eclipse.jetty.util" version="9.4.14.v20181114"/>
|
||||
<unit id="org.eclipse.jetty.util.source" version="9.4.14.v20181114"/>
|
||||
<repository id="jetty-9.4.14" location="http://download.eclipse.org/jetty/updates/jetty-bundles-9.x/9.4.14.v20181114"/>
|
||||
<repository id="jetty-9.4.14" location="https://archive.eclipse.org/jetty/updates/jetty-bundles-9.x/jetty-bundles-9.x/9.4.14.v20181114"/>
|
||||
</location>
|
||||
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
|
||||
<unit id="org.apache.ant" version="1.10.5.v20190526-1402"/>
|
||||
|
@ -86,7 +86,7 @@
|
|||
</location>
|
||||
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
|
||||
<unit id="org.eclipse.osgi" version="0.0.0"/>
|
||||
<repository location="http://download.eclipse.org/staging/2019-03/"/>
|
||||
<repository location="https://download.eclipse.org/releases/2019-03/"/>
|
||||
</location>
|
||||
</locations>
|
||||
</target>
|
|
@ -0,0 +1,8 @@
|
|||
target "jgit-4.11" with source configurePhase
|
||||
|
||||
include "projects/jetty-9.4.14.tpd"
|
||||
include "orbit/R20190602212107-2019-06.tpd"
|
||||
|
||||
location "https://download.eclipse.org/releases/2019-03/" {
|
||||
org.eclipse.osgi lazy
|
||||
}
|
|
@ -1,7 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<?pde?>
|
||||
<!-- generated with https://github.com/eclipse-cbi/targetplatform-dsl -->
|
||||
<target name="jgit-4.6" sequenceNumber="1566244561">
|
||||
<target name="jgit-4.6" sequenceNumber="1638579461">
|
||||
<locations>
|
||||
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
|
||||
<unit id="org.eclipse.jetty.client" version="9.4.14.v20181114"/>
|
||||
|
@ -20,7 +20,7 @@
|
|||
<unit id="org.eclipse.jetty.servlet.source" version="9.4.14.v20181114"/>
|
||||
<unit id="org.eclipse.jetty.util" version="9.4.14.v20181114"/>
|
||||
<unit id="org.eclipse.jetty.util.source" version="9.4.14.v20181114"/>
|
||||
<repository id="jetty-9.4.14" location="http://download.eclipse.org/jetty/updates/jetty-bundles-9.x/9.4.14.v20181114"/>
|
||||
<repository id="jetty-9.4.14" location="https://archive.eclipse.org/jetty/updates/jetty-bundles-9.x/jetty-bundles-9.x/9.4.14.v20181114"/>
|
||||
</location>
|
||||
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
|
||||
<unit id="org.apache.ant" version="1.10.5.v20190526-1402"/>
|
||||
|
@ -86,7 +86,7 @@
|
|||
</location>
|
||||
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
|
||||
<unit id="org.eclipse.osgi" version="0.0.0"/>
|
||||
<repository location="http://download.eclipse.org/releases/neon/"/>
|
||||
<repository location="https://download.eclipse.org/releases/neon/"/>
|
||||
</location>
|
||||
</locations>
|
||||
</target>
|
||||
|
|
|
@ -3,6 +3,6 @@ target "jgit-4.6" with source configurePhase
|
|||
include "projects/jetty-9.4.14.tpd"
|
||||
include "orbit/R20190602212107-2019-06.tpd"
|
||||
|
||||
location "http://download.eclipse.org/releases/neon/" {
|
||||
location "https://download.eclipse.org/releases/neon/" {
|
||||
org.eclipse.osgi lazy
|
||||
}
|
|
@ -1,7 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<?pde?>
|
||||
<!-- generated with https://github.com/eclipse-cbi/targetplatform-dsl -->
|
||||
<target name="jgit-4.7" sequenceNumber="1566244564">
|
||||
<target name="jgit-4.7" sequenceNumber="1638579458">
|
||||
<locations>
|
||||
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
|
||||
<unit id="org.eclipse.jetty.client" version="9.4.14.v20181114"/>
|
||||
|
@ -20,7 +20,7 @@
|
|||
<unit id="org.eclipse.jetty.servlet.source" version="9.4.14.v20181114"/>
|
||||
<unit id="org.eclipse.jetty.util" version="9.4.14.v20181114"/>
|
||||
<unit id="org.eclipse.jetty.util.source" version="9.4.14.v20181114"/>
|
||||
<repository id="jetty-9.4.14" location="http://download.eclipse.org/jetty/updates/jetty-bundles-9.x/9.4.14.v20181114"/>
|
||||
<repository id="jetty-9.4.14" location="https://archive.eclipse.org/jetty/updates/jetty-bundles-9.x/jetty-bundles-9.x/9.4.14.v20181114"/>
|
||||
</location>
|
||||
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
|
||||
<unit id="org.apache.ant" version="1.10.5.v20190526-1402"/>
|
||||
|
@ -86,7 +86,7 @@
|
|||
</location>
|
||||
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
|
||||
<unit id="org.eclipse.osgi" version="0.0.0"/>
|
||||
<repository location="http://download.eclipse.org/releases/oxygen/"/>
|
||||
<repository location="https://download.eclipse.org/releases/oxygen/"/>
|
||||
</location>
|
||||
</locations>
|
||||
</target>
|
||||
|
|
|
@ -3,6 +3,6 @@ target "jgit-4.7" with source configurePhase
|
|||
include "projects/jetty-9.4.14.tpd"
|
||||
include "orbit/R20190602212107-2019-06.tpd"
|
||||
|
||||
location "http://download.eclipse.org/releases/oxygen/" {
|
||||
location "https://download.eclipse.org/releases/oxygen/" {
|
||||
org.eclipse.osgi lazy
|
||||
}
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<?pde?>
|
||||
<!-- generated with https://github.com/eclipse-cbi/targetplatform-dsl -->
|
||||
<target name="jgit-4.8" sequenceNumber="1566244569">
|
||||
<target name="jgit-4.8" sequenceNumber="1638579452">
|
||||
<locations>
|
||||
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
|
||||
<unit id="org.eclipse.jetty.client" version="9.4.14.v20181114"/>
|
||||
|
@ -20,7 +20,7 @@
|
|||
<unit id="org.eclipse.jetty.servlet.source" version="9.4.14.v20181114"/>
|
||||
<unit id="org.eclipse.jetty.util" version="9.4.14.v20181114"/>
|
||||
<unit id="org.eclipse.jetty.util.source" version="9.4.14.v20181114"/>
|
||||
<repository id="jetty-9.4.14" location="http://download.eclipse.org/jetty/updates/jetty-bundles-9.x/9.4.14.v20181114"/>
|
||||
<repository id="jetty-9.4.14" location="https://archive.eclipse.org/jetty/updates/jetty-bundles-9.x/jetty-bundles-9.x/9.4.14.v20181114"/>
|
||||
</location>
|
||||
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
|
||||
<unit id="org.apache.ant" version="1.10.5.v20190526-1402"/>
|
||||
|
@ -86,7 +86,7 @@
|
|||
</location>
|
||||
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
|
||||
<unit id="org.eclipse.osgi" version="0.0.0"/>
|
||||
<repository location="http://download.eclipse.org/releases/photon/"/>
|
||||
<repository location="https://download.eclipse.org/releases/photon/"/>
|
||||
</location>
|
||||
</locations>
|
||||
</target>
|
||||
|
|
|
@ -3,6 +3,6 @@ target "jgit-4.8" with source configurePhase
|
|||
include "projects/jetty-9.4.14.tpd"
|
||||
include "orbit/R20190602212107-2019-06.tpd"
|
||||
|
||||
location "http://download.eclipse.org/releases/photon/" {
|
||||
location "https://download.eclipse.org/releases/photon/" {
|
||||
org.eclipse.osgi lazy
|
||||
}
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<?pde?>
|
||||
<!-- generated with https://github.com/eclipse-cbi/targetplatform-dsl -->
|
||||
<target name="jgit-4.9" sequenceNumber="1566244572">
|
||||
<target name="jgit-4.9" sequenceNumber="1638578807">
|
||||
<locations>
|
||||
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
|
||||
<unit id="org.eclipse.jetty.client" version="9.4.14.v20181114"/>
|
||||
|
@ -20,7 +20,7 @@
|
|||
<unit id="org.eclipse.jetty.servlet.source" version="9.4.14.v20181114"/>
|
||||
<unit id="org.eclipse.jetty.util" version="9.4.14.v20181114"/>
|
||||
<unit id="org.eclipse.jetty.util.source" version="9.4.14.v20181114"/>
|
||||
<repository id="jetty-9.4.14" location="http://download.eclipse.org/jetty/updates/jetty-bundles-9.x/9.4.14.v20181114"/>
|
||||
<repository id="jetty-9.4.14" location="https://archive.eclipse.org/jetty/updates/jetty-bundles-9.x/jetty-bundles-9.x/9.4.14.v20181114"/>
|
||||
</location>
|
||||
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
|
||||
<unit id="org.apache.ant" version="1.10.5.v20190526-1402"/>
|
||||
|
@ -86,7 +86,7 @@
|
|||
</location>
|
||||
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
|
||||
<unit id="org.eclipse.osgi" version="0.0.0"/>
|
||||
<repository location="http://download.eclipse.org/releases/2018-09/"/>
|
||||
<repository location="https://download.eclipse.org/releases/2018-09/"/>
|
||||
</location>
|
||||
</locations>
|
||||
</target>
|
||||
|
|
|
@ -3,6 +3,6 @@ target "jgit-4.9" with source configurePhase
|
|||
include "projects/jetty-9.4.14.tpd"
|
||||
include "orbit/R20190602212107-2019-06.tpd"
|
||||
|
||||
location "http://download.eclipse.org/releases/2018-09/" {
|
||||
location "https://download.eclipse.org/releases/2018-09/" {
|
||||
org.eclipse.osgi lazy
|
||||
}
|
|
@ -1,6 +1,6 @@
|
|||
target "jetty-9.4.14" with source configurePhase
|
||||
|
||||
location jetty-9.4.14 "http://download.eclipse.org/jetty/updates/jetty-bundles-9.x/9.4.14.v20181114" {
|
||||
location jetty-9.4.14 "https://archive.eclipse.org/jetty/updates/jetty-bundles-9.x/jetty-bundles-9.x/9.4.14.v20181114" {
|
||||
org.eclipse.jetty.client [9.4.14.v20181114,9.4.14.v20181114]
|
||||
org.eclipse.jetty.client.source [9.4.14.v20181114,9.4.14.v20181114]
|
||||
org.eclipse.jetty.continuation [9.4.14.v20181114,9.4.14.v20181114]
|
||||
|
|
|
@ -55,7 +55,7 @@
|
|||
<name>JGit Tycho Parent</name>
|
||||
|
||||
<properties>
|
||||
<tycho-version>1.3.0</tycho-version>
|
||||
<tycho-version>1.7.0</tycho-version>
|
||||
<tycho-extras-version>${tycho-version}</tycho-extras-version>
|
||||
<target-platform>jgit-4.6</target-platform>
|
||||
</properties>
|
||||
|
@ -255,7 +255,7 @@
|
|||
<plugin>
|
||||
<groupId>org.eclipse.cbi.maven.plugins</groupId>
|
||||
<artifactId>eclipse-jarsigner-plugin</artifactId>
|
||||
<version>1.1.5</version>
|
||||
<version>1.3.2</version>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.codehaus.mojo</groupId>
|
||||
|
|
|
@ -52,7 +52,7 @@ org.eclipse.jdt.core.compiler.problem.missingJavadocComments=ignore
|
|||
org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=disabled
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=protected
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocTagDescription=return_tag
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocTags=error
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocTags=ignore
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocTagsMethodTypeParameters=disabled
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=disabled
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=private
|
||||
|
|
|
@ -51,7 +51,6 @@
|
|||
import org.eclipse.jgit.lib.Constants;
|
||||
import org.eclipse.jgit.transport.SshSessionFactory;
|
||||
import org.eclipse.jgit.transport.ssh.SshTestBase;
|
||||
import org.eclipse.jgit.transport.sshd.SshdSessionFactory;
|
||||
import org.eclipse.jgit.util.FS;
|
||||
import org.junit.Test;
|
||||
import org.junit.experimental.theories.Theories;
|
||||
|
|
|
@ -52,7 +52,7 @@ org.eclipse.jdt.core.compiler.problem.missingJavadocComments=ignore
|
|||
org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=disabled
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=protected
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocTagDescription=return_tag
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocTags=error
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocTags=ignore
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocTagsMethodTypeParameters=disabled
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=disabled
|
||||
org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=private
|
||||
|
|
|
@ -217,6 +217,12 @@ public static FileSnapshot save(Instant modified) {
|
|||
/** measured FileStore attributes */
|
||||
private FileStoreAttributes fileStoreAttributeCache;
|
||||
|
||||
/**
|
||||
* if {@code true} read filesystem time resolution from configuration file
|
||||
* otherwise use fallback resolution
|
||||
*/
|
||||
private boolean useConfig;
|
||||
|
||||
/**
|
||||
* Object that uniquely identifies the given file, or {@code
|
||||
* null} if a file key is not available
|
||||
|
@ -253,9 +259,7 @@ protected FileSnapshot(File file) {
|
|||
protected FileSnapshot(File file, boolean useConfig) {
|
||||
this.file = file;
|
||||
this.lastRead = Instant.now();
|
||||
this.fileStoreAttributeCache = useConfig
|
||||
? FS.getFileStoreAttributes(file.toPath().getParent())
|
||||
: FALLBACK_FILESTORE_ATTRIBUTES;
|
||||
this.useConfig = useConfig;
|
||||
BasicFileAttributes fileAttributes = null;
|
||||
try {
|
||||
fileAttributes = FS.DETECTED.fileAttributes(file);
|
||||
|
@ -399,7 +403,7 @@ public void setClean(FileSnapshot other) {
|
|||
* if sleep was interrupted
|
||||
*/
|
||||
public void waitUntilNotRacy() throws InterruptedException {
|
||||
long timestampResolution = fileStoreAttributeCache
|
||||
long timestampResolution = fileStoreAttributeCache()
|
||||
.getFsTimestampResolution().toNanos();
|
||||
while (isRacyClean(Instant.now())) {
|
||||
TimeUnit.NANOSECONDS.sleep(timestampResolution);
|
||||
|
@ -435,6 +439,15 @@ public boolean equals(Object obj) {
|
|||
return equals(other);
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if the file exists
|
||||
*
|
||||
* @return true if the file exists
|
||||
*/
|
||||
public boolean fileExists() {
|
||||
return !MISSING_FILEKEY.equals(this.fileKey);
|
||||
}
|
||||
|
||||
/** {@inheritDoc} */
|
||||
@Override
|
||||
public int hashCode() {
|
||||
|
@ -519,10 +532,10 @@ private boolean isRacyClean(Instant read) {
|
|||
}
|
||||
|
||||
private long getEffectiveRacyThreshold() {
|
||||
long timestampResolution = fileStoreAttributeCache
|
||||
long timestampResolution = fileStoreAttributeCache()
|
||||
.getFsTimestampResolution().toNanos();
|
||||
long minRacyInterval = fileStoreAttributeCache.getMinimalRacyInterval()
|
||||
.toNanos();
|
||||
long minRacyInterval = fileStoreAttributeCache()
|
||||
.getMinimalRacyInterval().toNanos();
|
||||
long max = Math.max(timestampResolution, minRacyInterval);
|
||||
// safety margin: factor 2.5 below 100ms otherwise 1.25
|
||||
return max < 100_000_000L ? max * 5 / 2 : max * 5 / 4;
|
||||
|
@ -582,4 +595,13 @@ private boolean isSizeChanged(long currSize) {
|
|||
}
|
||||
return changed;
|
||||
}
|
||||
|
||||
private FileStoreAttributes fileStoreAttributeCache() {
|
||||
if (fileStoreAttributeCache == null) {
|
||||
fileStoreAttributeCache = useConfig
|
||||
? FS.getFileStoreAttributes(file.toPath().getParent())
|
||||
: FALLBACK_FILESTORE_ATTRIBUTES;
|
||||
}
|
||||
return fileStoreAttributeCache;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -184,7 +184,7 @@ public long getPackSize() {
|
|||
String p = pack.getAbsolutePath();
|
||||
String i = p.substring(0, p.length() - ".pack".length()) + ".idx"; //$NON-NLS-1$ //$NON-NLS-2$
|
||||
File idx = new File(i);
|
||||
if (idx.exists() && idx.isFile())
|
||||
if (idx.isFile())
|
||||
size += idx.length();
|
||||
return size;
|
||||
}
|
||||
|
|
|
@ -1122,10 +1122,14 @@ LooseRef scanRef(LooseRef ref, String name) throws IOException {
|
|||
final int limit = 4096;
|
||||
final byte[] buf;
|
||||
FileSnapshot otherSnapshot = FileSnapshot.save(path);
|
||||
if (!otherSnapshot.fileExists()) {
|
||||
return null;
|
||||
}
|
||||
|
||||
try {
|
||||
buf = IO.readSome(path, limit);
|
||||
} catch (FileNotFoundException noFile) {
|
||||
if (path.exists() && path.isFile()) {
|
||||
if (path.isFile()) {
|
||||
throw noFile;
|
||||
}
|
||||
return null; // doesn't exist or no file; not a reference.
|
||||
|
|
37
pom.xml
37
pom.xml
|
@ -199,15 +199,14 @@
|
|||
<httpcore-version>4.4.10</httpcore-version>
|
||||
<slf4j-version>1.7.2</slf4j-version>
|
||||
<log4j-version>1.2.15</log4j-version>
|
||||
<maven-javadoc-plugin-version>3.1.0</maven-javadoc-plugin-version>
|
||||
<tycho-extras-version>1.3.0</tycho-extras-version>
|
||||
<maven-javadoc-plugin-version>3.3.1</maven-javadoc-plugin-version>
|
||||
<tycho-extras-version>1.7.0</tycho-extras-version>
|
||||
<gson-version>2.8.2</gson-version>
|
||||
<bouncycastle-version>1.60</bouncycastle-version>
|
||||
<spotbugs-maven-plugin-version>3.1.11</spotbugs-maven-plugin-version>
|
||||
<maven-project-info-reports-plugin-version>3.0.0</maven-project-info-reports-plugin-version>
|
||||
<maven-jxr-plugin-version>3.0.0</maven-jxr-plugin-version>
|
||||
<spotbugs-maven-plugin-version>3.1.12</spotbugs-maven-plugin-version>
|
||||
<maven-surefire-plugin-version>3.0.0-M3</maven-surefire-plugin-version>
|
||||
<maven-project-info-reports-plugin-version>3.1.2</maven-project-info-reports-plugin-version>
|
||||
<maven-jxr-plugin-version>3.1.1</maven-jxr-plugin-version>
|
||||
<spotbugs-maven-plugin-version>4.3.0</spotbugs-maven-plugin-version>
|
||||
<maven-surefire-plugin-version>3.0.0-M5</maven-surefire-plugin-version>
|
||||
<maven-surefire-report-plugin-version>${maven-surefire-plugin-version}</maven-surefire-report-plugin-version>
|
||||
<maven-compiler-plugin-version>3.8.1</maven-compiler-plugin-version>
|
||||
|
||||
|
@ -241,7 +240,7 @@
|
|||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-jar-plugin</artifactId>
|
||||
<version>3.1.2</version>
|
||||
<version>3.2.0</version>
|
||||
<configuration>
|
||||
<archive>
|
||||
<manifestEntries>
|
||||
|
@ -266,25 +265,25 @@
|
|||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-shade-plugin</artifactId>
|
||||
<version>3.2.1</version>
|
||||
<version>3.2.4</version>
|
||||
</plugin>
|
||||
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-antrun-plugin</artifactId>
|
||||
<version>1.8</version>
|
||||
<version>3.0.0</version>
|
||||
</plugin>
|
||||
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-dependency-plugin</artifactId>
|
||||
<version>3.1.1</version>
|
||||
<version>3.2.0</version>
|
||||
</plugin>
|
||||
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-source-plugin</artifactId>
|
||||
<version>3.1.0</version>
|
||||
<version>3.2.1</version>
|
||||
</plugin>
|
||||
|
||||
<plugin>
|
||||
|
@ -307,7 +306,7 @@
|
|||
<plugin>
|
||||
<groupId>org.codehaus.mojo</groupId>
|
||||
<artifactId>build-helper-maven-plugin</artifactId>
|
||||
<version>3.0.0</version>
|
||||
<version>3.2.0</version>
|
||||
</plugin>
|
||||
|
||||
<plugin>
|
||||
|
@ -330,7 +329,7 @@
|
|||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-pmd-plugin</artifactId>
|
||||
<version>3.12.0</version>
|
||||
<version>3.15.0</version>
|
||||
<configuration>
|
||||
<sourceEncoding>utf-8</sourceEncoding>
|
||||
<minimumTokens>100</minimumTokens>
|
||||
|
@ -353,7 +352,7 @@
|
|||
<plugin>
|
||||
<groupId>org.eclipse.cbi.maven.plugins</groupId>
|
||||
<artifactId>eclipse-jarsigner-plugin</artifactId>
|
||||
<version>1.1.5</version>
|
||||
<version>1.3.2</version>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.eclipse.tycho.extras</groupId>
|
||||
|
@ -368,12 +367,12 @@
|
|||
<plugin>
|
||||
<groupId>org.jacoco</groupId>
|
||||
<artifactId>jacoco-maven-plugin</artifactId>
|
||||
<version>0.8.4</version>
|
||||
<version>0.8.7</version>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-site-plugin</artifactId>
|
||||
<version>3.7.1</version>
|
||||
<version>3.9.1</version>
|
||||
<dependencies>
|
||||
<dependency><!-- add support for ssh/scp -->
|
||||
<groupId>org.apache.maven.wagon</groupId>
|
||||
|
@ -415,7 +414,7 @@
|
|||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-resources-plugin</artifactId>
|
||||
<version>3.1.0</version>
|
||||
<version>3.2.0</version>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
|
@ -429,7 +428,7 @@
|
|||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-enforcer-plugin</artifactId>
|
||||
<version>3.0.0-M2</version>
|
||||
<version>3.0.0</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>enforce-maven</id>
|
||||
|
|
Loading…
Reference in New Issue