Skip to main content
aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2019-04-16Prepare 4.7.10-SNAPSHOT buildsstable-4.7Matthias Sohn56-321/+321
Change-Id: I662ee441521c1370a31f274cc6d001723ad0c528 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
2019-04-16JGit v4.7.9.201904161809-rv4.7.9.201904161809-rMatthias Sohn56-59/+59
Change-Id: Id6e379c3ce52c83455e37cbc3d77db0e188fdb85 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
2019-04-16Merge branch 'stable-4.6' into stable-4.7Matthias Sohn5-29/+83
* stable-4.6: Prepare 4.5.8-SNAPSHOT builds JGit v4.5.7.201904151645-r Remember the cause for invalidating a packfile Fix API problem filters Fix pack files scan when filesnapshot isn't modified Change-Id: I6ea51dde6608a4163d681aa1ebf710f06da44b21 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
2019-04-16Merge branch 'stable-4.5' into stable-4.6stable-4.6Matthias Sohn5-44/+82
* stable-4.5: Prepare 4.5.8-SNAPSHOT builds JGit v4.5.7.201904151645-r Remember the cause for invalidating a packfile Fix API problem filters Fix pack files scan when filesnapshot isn't modified Change-Id: I0b4eaa521ebdea83ab18c05915d691c07a575a7d Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
2019-04-15Prepare 4.5.8-SNAPSHOT buildsstable-4.5Matthias Sohn56-302/+302
Change-Id: I70628cb8fcad0a60598dc937abbed63606a78599 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
2019-04-15JGit v4.5.7.201904151645-rv4.5.7.201904151645-rMatthias Sohn56-59/+59
Change-Id: I3e32cf13f5cb99d8e570412d80d941740399c07d Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
2019-04-11Remember the cause for invalidating a packfileLuca Milanesio5-23/+76
Keep track of the original cause for a packfile invalidation. It is needed for the sysadmin to understand if there is a real underlying filesystem problem and repository corruption or if it is simply a consequence of a concurrency of Git operations (e.g. repack or GC). Change-Id: I06ddda9ec847844ec31616ab6d17f153a5a34e33 Signed-off-by: Luca Milanesio <luca.milanesio@gmail.com> Signed-off-by: David Pursehouse <david.pursehouse@gmail.com> Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
2019-04-10Fix API problem filtersMatthias Sohn2-24/+1
Change-Id: I96e0ddc34251348ec4877c9d94b045eb1c53e758 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
2019-04-09Fix pack files scan when filesnapshot isn't modifiedLuca Milanesio2-6/+54
Do not reload packfiles when their associated filesnapshot is not modified on disk compared to the one currently stored in memory. Fix the regression introduced by fef78212 which, in conjunction with core.trustfolderstats = false, caused any lookup of objects inside the packlist to loop forever when the object was not found in the pack list. Bug: 546190 Change-Id: I38d752ebe47cefc3299740aeba319a2641f19391 Signed-off-by: Luca Milanesio <luca.milanesio@gmail.com> Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
2019-03-12Prepare 4.7.9-SNAPSHOT buildsMatthias Sohn56-321/+321
Change-Id: I1602a6b811fd9f95e284153b560d8d9f855fae9f Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
2019-03-12JGit v4.7.8.201903121755-rv4.7.8.201903121755-rMatthias Sohn56-59/+59
Change-Id: Ia6dbde615671ed09789326aacad1655e7a7a59ad Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
2019-03-12Merge branch 'stable-4.6' into stable-4.7Matthias Sohn6-13/+97
* stable-4.6: Prepare 4.5.7-SNAPSHOT builds JGit v4.5.6.201903121547-r Check for packfile validity and fd before reading Move throw of PackInvalidException outside the catch Use FileSnapshot to get lastModified on PackFile Include size when comparing FileSnapshot Do not reuse packfiles when changed on filesystem Silence API warnings for new API introduced for fixes Change-Id: I3d1544d034783fe0fa1385dfe9b03ad8e9247c63 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
2019-03-12Merge branch 'stable-4.5' into stable-4.6Matthias Sohn6-13/+113
* stable-4.5: Prepare 4.5.7-SNAPSHOT builds JGit v4.5.6.201903121547-r Check for packfile validity and fd before reading Move throw of PackInvalidException outside the catch Use FileSnapshot to get lastModified on PackFile Include size when comparing FileSnapshot Do not reuse packfiles when changed on filesystem Silence API warnings for new API introduced for fixes Change-Id: I029e1797447e6729de68bd89d4d69b324dbb3f5f Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
2019-03-12Prepare 4.5.7-SNAPSHOT buildsMatthias Sohn56-302/+302
Change-Id: I5c275c542e12746c3d8ecf8462791969f9e89e12 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
2019-03-12JGit v4.5.6.201903121547-rv4.5.6.201903121547-rMatthias Sohn56-59/+59
Change-Id: I5a071ed10e1ac1ab28f992d45cde335c12556a80 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
2019-03-12Check for packfile validity and fd before readingLuca Milanesio1-0/+8
When reading from a packfile, make sure that is valid and has a non-null file-descriptor. Because of concurrency between a thread invalidating a packfile and another trying to read it, the read() may result into a NPE that won't be able to be automatically recovered. Throwing a PackInvalidException would instead cause the packlist to be refreshed and the read to eventually succeed. Bug: 544199 Change-Id: I27788b3db759d93ec3212de35c0094ecaafc2434 Signed-off-by: Luca Milanesio <luca.milanesio@gmail.com>
2019-03-12Move throw of PackInvalidException outside the catchLuca Milanesio1-2/+3
When a packfile is invalid, throw an exception explicitly outside any catch scope, so that is not accidentally caught by the generic catch-all cause, which would set the packfile as valid again. Flagging an invalid packfile as valid again would have dangerous consequences such as the corruption of the in-memory packlist. Bug: 544199 Change-Id: If7a3188a68d7985776b509d636d5ddf432bec798 Signed-off-by: Luca Milanesio <luca.milanesio@gmail.com>
2019-03-12Use FileSnapshot to get lastModified on PackFileLuca Milanesio1-1/+1
Do not redundantly call File.lastModified() for extracting the timestamp of the PackFile but rather use consistently the FileSnapshot which reads all file attributes in a single bulk call. Change-Id: I932675ae4fe56dcd3833dac249816f097303bb09 Signed-off-by: Luca Milanesio <luca.milanesio@gmail.com> Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
2019-03-12Include size when comparing FileSnapshotLuca Milanesio5-9/+107
Due to finite filesystem timestamp resolution the last modified timestamp of files cannot detect file changes which happened in the immediate past (less than one filesystem timer tick ago). Read and consider file size also, so that differing file size can help to more accurately detect file changes without reading the file content. Use bulk read to avoid multiple stat calls to retrieve file attributes. Change-Id: I974288fff78ac78c52245d9218b5639603f67a46 Signed-off-by: Luca Milanesio <luca.milanesio@gmail.com> Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
2019-03-12Do not reuse packfiles when changed on filesystemLuca Milanesio2-2/+15
The pack reload mechanism from the filesystem works only by name and does not check the actual last modified date of the packfile. This lead to concurrency issues where multiple threads were loading and removing from each other list of packfiles when one of those was failing the checksum. Rely on FileSnapshot rather than directly checking lastModified timestamp so that more checks can be performed. Bug: 544199 Change-Id: I173328f29d9914007fd5eae3b4c07296ab292390 Signed-off-by: Luca Milanesio <luca.milanesio@gmail.com>
2019-03-12Silence API warnings for new API introduced for fixesMatthias Sohn1-0/+14
Change-Id: I3ea7ff2efd33ca6c780afaef9010cec82780d7fa Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
2018-12-24Prepare 4.7.8-SNAPSHOT buildsMatthias Sohn57-324/+324
Change-Id: Ic4ab4aae6d87392d1a5a8bbda06384b7a5b64182 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
2018-12-24JGit v4.7.7.201812240805-rv4.7.7.201812240805-rMatthias Sohn56-59/+59
Change-Id: I57b6001b1fbd6042299ccd4dd7d70765a46ea10b Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
2018-12-24Merge branch 'stable-4.6' into stable-4.7Matthias Sohn2-15/+11
* stable-4.6: Fix feature versions imported by feature org.eclipse.jgit.pgm Prepare 4.5.6-SNAPSHOT builds JGit v4.5.5.201812240535-r Call AdvertiseRefsHook before validating wants Change-Id: If637694f80dbd1e774d60c672fe78a6500650bb8 Signed-off-by: Jonathan Nieder <jrn@google.com> Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
2018-12-24Fix feature versions imported by feature org.eclipse.jgit.pgmMatthias Sohn1-2/+2
On stable-4.6 we are currently at version 4.6.2-SNAPSHOT Change-Id: Ia2972d0697c3476850ecf4a3c6691b3987866cd9 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
2018-12-24Merge branch 'stable-4.5' into stable-4.6Matthias Sohn1-13/+9
* stable-4.5: Prepare 4.5.6-SNAPSHOT builds JGit v4.5.5.201812240535-r Call AdvertiseRefsHook before validating wants Change-Id: I0fd67ddd9c4966c20d82cdfe78b2f9d4898b4665 Signed-off-by: Jonathan Nieder <jrn@google.com> Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
2018-12-24Prepare 4.5.6-SNAPSHOT buildsMatthias Sohn56-302/+302
Change-Id: I57c55187ada6d824b94a17f5a79a5bcff61f9ee9 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
2018-12-24JGit v4.5.5.201812240535-rv4.5.5.201812240535-rMatthias Sohn56-59/+59
Change-Id: I6e89e937c08757887967d91afb39cfbe8372d6b5 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
2018-12-24Call AdvertiseRefsHook before validating wantsMasaya Suzuki1-13/+9
AdvertiseRefsHook is used to limit the visibility of the refs in Gerrit. If this hook is not called, then all refs are treated as visible, causing the server to serve commits reachable from branches the client should not be able to access, if asked to via a request naming a guessed object id. This bug was introduced in v2.0.0.201206130900-r~123 (Modify refs in UploadPack/ReceivePack using a hook interface, 2012-02-08). Stateful bidirectional transports are not affected. Fix it by moving the AdvertiseRefsHook call to getAdvertisedOrDefaultRefs, ensuring the hook is called in all cases. [jn: backported to stable-4.5 by splitting out tests and the protocol v2 specific parts] Change-Id: I159f396216354f2eda3968d17802e166d8c8ec2d Signed-off-by: Masaya Suzuki <masayasuzuki@google.com> Signed-off-by: Jonathan Nieder <jrn@google.com> Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
2018-10-19Prepare 4.7.7-SNAPSHOT buildsMatthias Sohn56-321/+321
Change-Id: I131e40cbbf32bc75d2ed24ca31ba3613a3bbca25 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
2018-10-19JGit v4.7.6.201810191618-rv4.7.6.201810191618-rMatthias Sohn56-59/+59
Change-Id: Iaee27d5e2de016240f1a0940653fef82c6044a1d Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
2018-10-19Update API problem filterMatthias Sohn1-1/+1
Change-Id: I66c0c490bb66adafac5d670d2d9571f1674a281e Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
2018-10-19Merge branch 'stable-4.6' into stable-4.7David Pursehouse0-0/+0
* stable-4.6: Prepare 4.4.2-SNAPSHOT builds JGit v4.0.3.201509231615-r Change-Id: I3e1a870a225447e761368298ce9b65dbec2c2a82 Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
2018-10-19Merge branch 'stable-4.5' into stable-4.6David Pursehouse0-0/+0
* stable-4.5: Prepare 4.4.2-SNAPSHOT builds JGit v4.0.3.201509231615-r Change-Id: I9c925a65d42559443ade9ac8291ffe00f4a1dda1 Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
2018-10-19Merge branch 'stable-4.4' into stable-4.5David Pursehouse0-0/+0
* stable-4.4: Prepare 4.4.2-SNAPSHOT builds JGit v4.0.3.201509231615-r Change-Id: Icd66a796b0cce93c75a52cc77fec8f9df3eeccb4 Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
2018-10-19Merge branch 'stable-4.3' into stable-4.4stable-4.4David Pursehouse0-0/+0
* stable-4.3: JGit v4.0.3.201509231615-r Change-Id: I147d81a9cc9c0f9e66084897df9c88c369539db7 Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
2018-10-19Merge branch 'stable-4.2' into stable-4.3stable-4.3David Pursehouse0-0/+0
* stable-4.2: JGit v4.0.3.201509231615-r Change-Id: Ic90ef74497afee9da4b49dcb53302b4efa5b9f26 Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
2018-10-19Merge branch 'stable-4.1' into stable-4.2stable-4.2David Pursehouse0-0/+0
* stable-4.1: JGit v4.0.3.201509231615-r Change-Id: I6cc5bcefad2e8dee3394770d36608f981bfc9a9e Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
2018-10-19Merge branch 'stable-4.0' into stable-4.1stable-4.1David Pursehouse0-0/+0
* stable-4.0: JGit v4.0.3.201509231615-r Change-Id: Ie74b0392ef145ffd27dc903c45f7fec2d4492a17 Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
2018-10-13Fix file handle leak in ObjectDownloadListener.onWritePossibleMatthias Sohn1-1/+6
5c134f4d removed closing the input stream when we reached end of the stream. This caused file handle leaks. Bug: 540049 Change-Id: I48082b537077c7471fc160f59aa04deb99687d9b Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
2018-10-13Merge branch 'stable-4.6' into stable-4.7David Pursehouse2-11/+11
* stable-4.6: Replace Findbugs with Spotbugs in org.eclipse.jgit/pom.xml Replace FindBugs with SpotBugs Change-Id: I24417e4ebbba31f7ff6896d585ef807327411392 Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
2018-10-13Merge branch 'stable-4.5' into stable-4.6David Pursehouse2-10/+11
* stable-4.5: Replace Findbugs with Spotbugs in org.eclipse.jgit/pom.xml Replace FindBugs with SpotBugs Change-Id: I1c077e8f3530ac717b1603d3307fd15d4335b8fe Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
2018-10-13Replace Findbugs with Spotbugs in org.eclipse.jgit/pom.xmlDavid Pursehouse1-2/+2
Change-Id: If9cb0de7a0e7bd95eac7daeee140a18385192a48 Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
2018-10-09Replace FindBugs with SpotBugsDavid Pursehouse1-8/+9
SpotBugs [1] is the spiritual successor of FindBugs, carrying on from the point where it left off with support of its community. This is a backport of [1] which originally did the replacement on the master branch. This change updates to the current latest version, so that we can get the benefit of its checks when pushing changes to the stable branches. [1] https://spotbugs.github.io/ [2] https://git.eclipse.org/r/#/c/101312/ Change-Id: Ib73d56b5980b55f4d7e09d87abec3138cac3d3dc Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
2018-10-08SubmoduleValidator: Remove unused import of ConfigConstantsDavid Pursehouse1-1/+0
Change-Id: I6afe5690bf9d1f1f4d414aa618daefc8b48d217e Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
2018-10-08SubmoduleValidator: Permit missing path or urlJonathan Nieder1-11/+16
A .gitmodules file can include a submodule without a path to configure the URL for a submodule that is only present on other branches. A .gitmodules file can include a submodule with no URL and no path to reserve the name for a submodule that existed in earlier history but is not available from any URL any more. "git fsck" permits both of these cases. Permit them in JGit as well (instead of throwing NullPointerException). Change-Id: I3b442639ad79ea7a59227f96406a12e62d3573ae Reported-by: David Pursehouse <david.pursehouse@gmail.com> Signed-off-by: Jonathan Nieder <jrn@google.com>
2018-10-07ObjectChecker#getGitsubmodules: Fix malformed javadocDavid Pursehouse1-2/+2
The text "<tree, blob>" with angle brackets should not be used in javadoc since it is interpreted as an HTML tag and then rejected since it's not a valid HTML tag. Wrap the text in a @literal tag. Also add a missing space. Change-Id: Ide045e8c04a39a916f5b2e964e58c151e4555830 Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
2018-10-05Prepare 4.7.6-SNAPSHOT buildsMatthias Sohn56-321/+321
Change-Id: I99b59116999742d8d6cdba26287ea7c6eba11a30 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
2018-10-05JGit v4.7.5.201810051826-rv4.7.5.201810051826-rMatthias Sohn56-59/+59
Change-Id: I60c7a2eff3dab5083f71df0d9465a4e94b5e2513 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
2018-10-05BaseReceivePack: Validate incoming .gitmodules filesIvan Frade5-1/+130
The main concern are submodule urls starting with '-' that could pass as options to an unguarded tool. Pass through the parser the ids of blobs identified as .gitmodules files in the ObjectChecker. Load the blobs and parse/validate them in SubmoduleValidator. Change-Id: Ia0cc32ce020d288f995bf7bc68041fda36be1963 Signed-off-by: Ivan Frade <ifrade@google.com> Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>

Back to the top