aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Prepare 5.1.13-SNAPSHOT buildsMatthias Sohn2019-10-0256-359/+359
| | | | | Change-Id: Ic1dca14924f49ad07eb5cd0570ce7ece9f319d0d Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* JGit v5.1.12.201910011832-rv5.1.12.201910011832-rMatthias Sohn2019-10-0256-59/+59
| | | | | Change-Id: I69fef9b2cdc18bbf1c8b9b290fb3d190684be13c Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Do not rely on ArrayIndexOutOfBoundsException to detect end of inputSaša Živkov2019-09-271-4/+2
| | | | | | | | | | | | In the Config#StringReader we relied on ArrayIndexOutOfBoundsException to detect the end of the input. Creation of exception with (deep) stack trace can significantly degrade performance in case when we read thousands of config files, like in the case when Gerrit reads all external ids from the NoteDb. Use the buf.length to detect the end of the input. Change-Id: I12266f25751373a870ce3fa623cf2a95d882d521
* WorkingTreeIterator: handle different timestamp resolutionsThomas Wolf2019-09-173-18/+307
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Older JGit stored only milliseconds timestamps in the index. Newer JGit may get finer timestamps from the file system. This leads to slow index diffs when a new JGit runs against an index produced by older JGit because many timestamps will differ and JGit will then do many content checks. See [1]. Handle this migration case by only comparing milliseconds if the index entry has only millisecond precision. The inverse may also occur; also compare only milliseconds if the file timestamp has only millisecond precision. Do the same also for microsecond resolution. On Windows, NTFS may provide 100ns resolution and may be used by external programs writing the index, but Java's WindowsFileAttributes may provide only microseconds. File timestamp precision in Java depends not only on the Java APIs used by different JGit versions but may also change when running the same Java code on different VMs. And of course the resolution may vary among operating and file systems. Moreover, timestamp precision in the index depends on the program that wrote the index. Canonical git may use a different resolution, maybe even different between git versions. [1] https://www.eclipse.org/forums/index.php/t/1100344/ Change-Id: Idfd08606c883cb98787b2138f9baf0cc89a57b56 Signed-off-by: Thomas Wolf <thomas.wolf@paranor.ch> Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Fix WorkingTreeIterator.compareMetadata() for CheckStat.MINIMALMatthias Sohn2019-09-101-2/+3
| | | | | | | | | | | | | | | | | | | If CheckStat is MINIMAL or timestamps have no nanosecond part WorkingTreeIterator.compareMetaData only checks the second part of timestamps and ignores nanoseconds which may have ended up in the index by using native git. If fileLastModified.getEpochSecond() == cacheLastModified.getEpochSecond() we currently proceed comparing fileLastModified and cacheLastModified with full precision which is wrong since we determined that we detected reduced timestamp resolution. Fix this and also handle smudged index entries for CheckStat.MINIMAL. Change-Id: I6149885903ac63d79b42d234cc02aa4e19578f3c Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Format BUILD files with buildifierDavid Pursehouse2019-09-084-5/+5
| | | | | | | | | Using buildifier from master branch and the command: $ buildifier -r -lint fix -warnings all . Change-Id: I19c8ff183081093cb73bed7221a78a91b6cba4dc Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
* Bazel: Fix warning about deprecated lib.bzlDavid Pursehouse2019-09-071-1/+1
| | | | | Change-Id: Ifdbaaf9ec020a621070eea351f791a819d554012 Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
* Format lib/BUILD with buildifierDavid Pursehouse2019-09-071-2/+2
| | | | | Change-Id: I4f0ad64371b160b67797f49b9fde521e5dea9396 Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
* Bazel: Add fixes for --incompatible_load_java_rules_from_bzlDavid Pursehouse2019-09-0716-0/+28
| | | | | Change-Id: I24746335db132bf20f400cb3db400737596d4542 Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
* Bazel: Bump minimum supported version to 0.29.0David Ostrovsky2019-09-072-2/+2
| | | | | Change-Id: I069e56deb964624791bb0aa3ae095629adfe3bbb Signed-off-by: David Ostrovsky <david@ostrovsky.org>
* Bazel: Bump skylib library version to 0.8.0David Ostrovsky2019-09-071-3/+3
| | | | | Change-Id: I2089899c9f197b2c93b93390fdd55f6fe11e5ce4 Signed-off-by: David Ostrovsky <david@ostrovsky.org>
* Use bazelisk to switch between used bazel versionDavid Ostrovsky2019-09-071-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | Bazelisk is utility to switch to the right Bazel version, that we used to have with Buck build tool: [1]. Bazelisk will download the right Bazel version only once and will use it in subsequent calls: $ bazelisk build :release 2019/06/06 16:22:15 Downloading \ https://releases.bazel.build/0.26.1/release/bazel-0.26.1-linux-x86_64... Bazelisk is storing the binaries in user's cache directory: [2], e.g. on Linux OS: $ ls -1 ~/.cache/bazelisk/bin bazel-0.26.1-linux-x86_64 * [1] https://github.com/bazelbuild/bazelisk * [2] https://golang.org/pkg/os/#UserCacheDir Change-Id: Ia9180fb75f8cc17a0a0232622cf33a13bfad6b60 Signed-off-by: David Ostrovsky <david@ostrovsky.org>
* Bazel: Require minimum bazel version 0.17.1David Pursehouse2019-09-071-0/+13
| | | | | | | | | | | | | Check the bazel version using the checker from bazel_skylib, and require at least version 0.17.1 which is the minimum version that does not suffer from the Java API mismatch issue [1]. The implementation is borrowed from the Gerrit project. [1] https://github.com/bazelbuild/bazel/issues/6027 Change-Id: I224250088a1f5072fcaa3ec81228f4d2cb8cb389 Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
* Fix wrong placeholder index in error message packInaccessibleMatthias Sohn2019-09-071-1/+1
| | | | | See: https://www.eclipse.org/lists/jgit-dev/msg03850.html Change-Id: I0e121a2b7ac399f4a663fa49ab330d27363e9a55 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* JGitText: Remove unused externalized stringsDavid Pursehouse2019-09-072-132/+0
| | | | | Change-Id: I995d7a1b6ab2866221eee9f5cb828b97192daf4a Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
* RepoText: Remove unused externalized stringDavid Pursehouse2019-09-072-2/+0
| | | | | Change-Id: Ida47637f54afdb76513be9b04aae32107567d4e3 Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
* CLI: Remove unused externalized stringsDavid Pursehouse2019-09-072-8/+0
| | | | | Change-Id: Id44117dd72b0e71e9bf0046a3c965eeae64cf3ea Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
* Prepare 5.1.12-SNAPSHOT buildsMatthias Sohn2019-09-0356-359/+359
| | | | | Change-Id: I353ac3f23024063722abc7340bc9a6df3c615741 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* JGit v5.1.11.201909031202-rv5.1.11.201909031202-rMatthias Sohn2019-09-0356-59/+59
| | | | | Change-Id: I288acf670160b9bcd2d04f572a902b5838b4d4f8 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Merge branch 'stable-5.0' into stable-5.1Matthias Sohn2019-09-036-88/+116
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * stable-5.0: Prepare 4.11.10-SNAPSHOT builds JGit v4.11.9.201909030838-r Bazel: Update bazlets to the latest master revision Bazel: Remove FileTreeIteratorWithTimeControl from BUILD file BatchRefUpdate: repro racy atomic update, and fix it Delete unused FileTreeIteratorWithTimeControl Fix RacyGitTests#testRacyGitDetection Change RacyGitTests to create a racy git situation in a stable way Silence API warnings Change-Id: I172136a031ff0730e575327cafb3527c9650a71d Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
| * Merge branch 'stable-4.11' into stable-5.0stable-5.0Matthias Sohn2019-09-0310-273/+186
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * stable-4.11: Prepare 4.11.10-SNAPSHOT builds JGit v4.11.9.201909030838-r Bazel: Update bazlets to the latest master revision Bazel: Remove FileTreeIteratorWithTimeControl from BUILD file BatchRefUpdate: repro racy atomic update, and fix it Delete unused FileTreeIteratorWithTimeControl Fix RacyGitTests#testRacyGitDetection Change RacyGitTests to create a racy git situation in a stable way Silence API warnings Change-Id: Ifb6a4dbea2f48fd2ffa66eb737d61920aefedfbd Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
| | * Prepare 4.11.10-SNAPSHOT buildsstable-4.11Matthias Sohn2019-09-0356-356/+356
| | | | | | | | | | | | | | | Change-Id: Ic98bd87d96ce627d38e1ecc2c3cb28b517ab489e Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
| | * JGit v4.11.9.201909030838-rv4.11.9.201909030838-rMatthias Sohn2019-09-0356-59/+59
| | | | | | | | | | | | | | | Change-Id: Ie60468569074197d49e19cbd0ffaedfe88f3d74e Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
| | * Merge branch 'stable-4.10' into stable-4.11Matthias Sohn2019-09-038-269/+215
| | |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * stable-4.10: Bazel: Update bazlets to the latest master revision Bazel: Remove FileTreeIteratorWithTimeControl from BUILD file BatchRefUpdate: repro racy atomic update, and fix it Delete unused FileTreeIteratorWithTimeControl Fix RacyGitTests#testRacyGitDetection Change RacyGitTests to create a racy git situation in a stable way Silence API warnings Change-Id: If672b4f0c350f4e8ff7e1e706485cffd8137236d Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
| | | * Merge branch 'stable-4.9' into stable-4.10stable-4.10Matthias Sohn2019-09-032-2/+1
| | | |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * stable-4.9: Bazel: Update bazlets to the latest master revision Bazel: Remove FileTreeIteratorWithTimeControl from BUILD file Change-Id: I8bb74aacc1c010cfed9a0c8acffb520724f0e395 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
| | | | * Bazel: Update bazlets to the latest master revisionstable-4.9David Pursehouse2019-09-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The latest revision includes various fixes to allow the build to work with recent versions of Bazel. Change-Id: I72c100b99762010946d9b2784286af560bbdf185 Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
| | | | * Bazel: Remove FileTreeIteratorWithTimeControl from BUILD fileDavid Pursehouse2019-09-031-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | FileTreeIteratorWithTimeControl was deleted in a024759, but was not removed from the BUILD file, thus causing the bazel build to fail. Change-Id: I892c0ffcac947298d0d6009374ee2c5d9afefb66 Signed-off-by: David Pursehouse <david.pursehouse@gmail.com> (cherry picked from commit e54fde8616f53a6fab5201db4a0c7e67dd0145c5)
| | | * | Merge branch 'stable-4.9' into stable-4.10Matthias Sohn2019-09-035-271/+165
| | | |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * stable-4.9: BatchRefUpdate: repro racy atomic update, and fix it Delete unused FileTreeIteratorWithTimeControl Fix RacyGitTests#testRacyGitDetection Change RacyGitTests to create a racy git situation in a stable way Silence API warnings Change-Id: Id5bf44645655fca40ad22bb1f1ad20a7c2e8f6db Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
| | | | * BatchRefUpdate: repro racy atomic update, and fix itHan-Wen Nienhuys2019-09-032-60/+87
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PackedBatchRefUpdate was creating a new packed-refs list that was potentially unsorted. This would be papered over when the list was read back from disk in parsePackedRef, which detects unsorted ref lists on reading, and sorts them. However, the BatchRefUpdate also installed the new (unsorted) list in-memory in RefDirectory#packedRefs. With the timestamp granularity code committed to stable-5.1, we can more often accurately decide that the packed-refs file is clean, and will return the erroneous unsorted data more often. Unluckily timed delays also cause the file to be clean, hence this problem was exacerbated under load. The symptom is that refs added by a BatchRefUpdate would stop being visible directly after they were added. In particular, the Gerrit integration tests uses BatchRefUpdate in its setup for creating the Admin group, and then tries to read it out directly afterward. The tests recreates one failure case. A better approach would be to revise RefList.Builder, so it detects out-of-order lists and automatically sorts them. Fixes https://bugs.eclipse.org/bugs/show_bug.cgi?id=548716 and https://bugs.chromium.org/p/gerrit/issues/detail?id=11373. Bug: 548716 Change-Id: I613c8059964513ce2370543620725b540b3cb6d1 Signed-off-by: Han-Wen Nienhuys <hanwen@google.com> Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
| | | | * Delete unused FileTreeIteratorWithTimeControlMatthias Sohn2019-09-032-177/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The only usage of this test iterator was removed in df637928d. Hence delete this iterator and associated test. Change-Id: I47710133ec3edc675c21db210960c024982668c6 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com> (cherry picked from commit a024759cf5bf1cd6b9beb4f790d484943761a7e1)
| | | | * Fix RacyGitTests#testRacyGitDetectionMatthias Sohn2019-09-031-11/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This test case assumed file system timestamp resolution of 1 second. On filesystems with a finer resolution this test fails since the index entry is only smudged if the file index entry's lastModified and the lastModified of the git index itself are within the same filesystem timer tick. Fix this by ensuring that these timestamps are identical which should work for any filesystem timer resolution. Bug: 548188 Change-Id: Id84d59e1cfeb48fa008f8f27f2f892c4f73985de Signed-off-by: Matthias Sohn <matthias.sohn@sap.com> Signed-off-by: Christian Halstrick <christian.halstrick@sap.com> (cherry picked from commit 1159f9dd7c80a53c2509cd75d997a6afed37f9a6)
| | | | * Change RacyGitTests to create a racy git situation in a stable wayMasaya Suzuki2019-09-031-25/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | By using File#setLastModified, we can create a racy git situation stably. Tested with --runs_per_test=100 Bug: 526111 Change-Id: I60b3632d353e19f335668325aa603640be423f58 Signed-off-by: Masaya Suzuki <masayasuzuki@google.com> (cherry picked from commit df637928d2ef4b9ee06af7e37344c7848f870ce4)
| | | | * Silence API warningsMatthias Sohn2019-09-031-8/+51
| | | | | | | | | | | | | | | | | | | | Change-Id: I27fd62de51ca0eedcc7e2e256487bda1e18bce8a Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* | | | | Return a new instance from openSystemConfig and openUserConfigMatthias Sohn2019-08-304-61/+168
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move the handling of cached user and system config to getSystemConfig and getUserConfig methods and revert the implementation of openSystemConfig and openUserConfig to the old stateless implementation. This ensures the open methods respect the passed-in parent config, which may be different on each invocation. Additionally, returning a new instance matches the behavior of the previous implementation of the default system reader, which downstream callers may be depending on. Move the implementation of the new caching methods getSystemConfig and getUserConfig up to SystemReader. This avoids that we break the ABI for subclasses of SystemReader. Also see [1] which fixed a similar problem with Gerrit's custom SystemReader. [1] https://gerrit-review.googlesource.com/c/gerrit/+/225458 Change-Id: If54a2491932d8fc914d4649cb73c9e837c5b8ad0 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* | | | | Prepare 5.1.11-SNAPSHOT buildsMatthias Sohn2019-08-2359-362/+362
| | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I8608580424d0e523dcace63f83ae530ba78dbb15 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* | | | | JGit v5.1.10.201908230655-rv5.1.10.201908230655-rMatthias Sohn2019-08-2356-59/+59
| | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I68d15ebd6054bdeaf62e14cddb87724828db7943 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* | | | | Use AtomicReferences to cache user and system level configsMatthias Sohn2019-08-231-24/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This ensures that only one instance of user and one instance of system config is set. Change-Id: Idd00150f91d2d40af79499dd7bf8ad5940f87c4e Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* | | | | Fix copy-paste typo in CloneCommand#cleanupAdrien Bustany2019-08-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | deleteChildren was called on directory instead of gitDir, leading to a potential null pointer exception if the git directory existed initially. Bug: 550340 Change-Id: Iafc3b2961253a99862a59e81c7371f7bc564b412 Signed-off-by: Adrien Bustany <adrien-xx-eclipse@bustany.org>
* | | | | Add missing @since tag on FileTreeIterator#getLastModifiedInstantMatthias Sohn2019-08-211-0/+3
| | | | | | | | | | | | | | | | | | | | Change-Id: I809399e6a71e0079d2f0007b0d3f00b531d451bb Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* | | | | Prepare 5.1.10-SNAPSHOT buildsMatthias Sohn2019-08-2159-362/+362
| | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: If10afc8e663299a15db8c5fd0574fb51bf7e7ae9 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* | | | | JGit v5.1.9.201908210455-rv5.1.9.201908210455-rMatthias Sohn2019-08-2156-59/+59
| | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: Iaade207292acb8b27e01aca7e1af97ad7db1e854 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* | | | | Avoid sign extension when comparing mtime with Instant#getEpochSecondMatthias Sohn2019-08-211-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Ensure we use the same type when comparing seconds since the epoch. This does not prevent that in 2038 timestamps in seconds since the epoch stored in a 32 bit integer will overflow. Integer.MAX_VALUE translates to 2038-01-19T03:14:07Z. After this date we'll have an issue since we store seconds since the epoch in a 32 bit integer in some places. Bug: 319142 Change-Id: If0c03003d40b480f044686e2f7a2f62c9f4e2fe1 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* | | | | Fix deprecation in DirCache caused by Instant based DirCacheEntryMichael Keppler2019-08-211-7/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Replace the two int variables smudge_s and smudge_ns by an Instant and use the new method DirCacheEntry.mightBeRacilyClean(Instant). Change-Id: Id70adbb0856a64909617acf65da1bae8e2ae934a Signed-off-by: Michael Keppler <Michael.Keppler@gmx.de> Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* | | | | Fix NPE in RebaseTodoFile#parseCommentsMatthias Sohn2019-08-191-5/+7
| | | | | | | | | | | | | | | | | | | | Change-Id: I5487f3c2609eaf2a0ddf71ebb2f6c9701fb7600c Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* | | | | Fix NPE in ObjectIdOwnerMap#getMatthias Sohn2019-08-181-0/+3
| | | | | | | | | | | | | | | | | | | | Change-Id: I3812961a27ac410d610ef50c73a28f21bb05ae79 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* | | | | Fix NPE in CommitOnlyTest#getHeadMatthias Sohn2019-08-181-0/+6
| | | | | | | | | | | | | | | | | | | | Change-Id: I05abd00d151cf9834d1a097dd16dc280b62a7edd Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* | | | | FileUtils#lastModifiedInstant should not log error if path doesn't existMatthias Sohn2019-08-181-1/+7
| | | | | | | | | | | | | | | | | | | | Change-Id: Id8447735beb24becb41612d3d29d5351f8273d22 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* | | | | Cache user global and system-wide git configurationsMatthias Sohn2019-08-1816-227/+337
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | So far the git configuration and the system wide git configuration were always reloaded when jgit accessed these global configuration files to access global configuration options which are not in the context of a single git repository. Cache these configurations in SystemReader and only reload them if their file metadata observed using FileSnapshot indicates a modification. Change-Id: I092fe11a5d95f1c5799273cacfc7a415d0b7786c Signed-off-by: Matthias Sohn <matthias.sohn@sap.com> Signed-off-by: Thomas Wolf <thomas.wolf@paranor.ch>
* | | | | Avoid setup and saving FileStoreAttributes compete for ~/.gitconfig lockMatthias Sohn2019-08-161-6/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | FS determines FileStore attributes in a background thread and tries to save the results to the global git configuration. This competed with LocalDiskRepositoryTestCase#setup trying to save changes to the same file requiring the same lock. This frequently led to one of the threads failing to acquire the lock. Fix this by first initiating determination of FileStore attributes which then uses a MockSystemReader not using a userConfig stored to disk which avoids this race for the lock. Change-Id: I30fcd96bc15100f8ef9b2a9eb3320bb5ace97c67 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* | | | | Add missing dependencies for running FS_POSIXTest in EclipseMatthias Sohn2019-08-161-0/+2
| | | | | | | | | | | | | | | | | | | | Change-Id: I35fcdfab55ff02943f6185b232e01ce9cfe151a9 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>