Bug 221498 - add release() method to GitClient API
add release() method to GitClient API
Status: RESOLVED FIXED
Product: versioncontrol
Classification: Unclassified
Component: Git
7.3
PC Linux
: P2 (vote)
: 7.3
Assigned To: Ondrej Vrabec
issues@versioncontrol
: API, API_REVIEW_FAST
Depends on:
Blocks: 218443
  Show dependency treegraph
 
Reported: 2012-11-05 15:33 UTC by Ondrej Vrabec
Modified: 2012-11-17 02:43 UTC (History)
5 users (show)

See Also:
Issue Type: TASK
:


Attachments
patch (47.99 KB, patch)
2012-11-05 15:39 UTC, Ondrej Vrabec
Details | Diff
patch (49.08 KB, patch)
2012-11-06 09:07 UTC, Ondrej Vrabec
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Ondrej Vrabec 2012-11-05 15:33:26 UTC

    
Comment 1 Ondrej Vrabec 2012-11-05 15:39:05 UTC
Created attachment 127156 [details]
patch
Comment 2 Ondrej Vrabec 2012-11-05 15:39:59 UTC
Please review:
JGit library does not automatically lose opened file descriptors and keeps the metadata files opened until Repository.close() is called. This results in collision with external tools (usually on Windows) such as git command line client. See bug #218443.
We need to add a method to GitClient API that will be called by all API clients when they stop using the GitClient's instance. The idea is that internally the Git library will count usages of GitClients - will count created instances - and when the last GitClient instance will call release() the underlying repository will be closed along with all the opened files.
Comment 3 Tomas Hurka 2012-11-06 08:03:11 UTC
Please do not use finalizer in GitClient.
Comment 4 Ondrej Vrabec 2012-11-06 09:07:07 UTC
Created attachment 127195 [details]
patch

> Please do not use finalizer in GitClient.
...removed
Comment 5 Ondrej Vrabec 2012-11-15 11:42:39 UTC
i will integrate tomorrow if no other comments come
Comment 6 Ondrej Vrabec 2012-11-16 14:14:26 UTC
fix: http://hg.netbeans.org/core-main/rev/2ea01c05055d
Comment 7 Quality Engineering 2012-11-17 02:43:19 UTC
Integrated into 'main-golden', will be available in build *201211170002* on http://bits.netbeans.org/dev/nightly/ (upload may still be in progress)
Changeset: http://hg.netbeans.org/main-golden/rev/2ea01c05055d
User: Ondrej Vrabec <ovrabec@netbeans.org>
Log: #221498 - add release() method to GitClient API
adding GitClient.release method to be able to release any open file descriptors held by JGit


By use of this website, you agree to the NetBeans Policies and Terms of Use. © 2012, Oracle Corporation and/or its affiliates. Sponsored by Oracle logo