Ticket #6581 (closed defect: fixed)
Opened 4 years ago
Last modified 4 years ago
[PATCH] memory leak in svn_fs.py
| Reported by: | Daniel Wallin <daniel@…> | Owned by: | jruigrok |
|---|---|---|---|
| Priority: | high | Milestone: | 0.11 |
| Component: | version control | Version: | devel |
| Severity: | normal | Keywords: | |
| Cc: | |||
| Release Notes: | |||
| API Changes: | |||
Description (last modified by cboos) (diff)
There's a reference cycle between SubversionRepository and RealSubversionAuthorizer that isn't collectable because of the __del__ method on SubversionRepository. The attached patch fixes the problem.
Attachments
Change History
Changed 4 years ago by Daniel Wallin <daniel@…>
- Attachment svn_fs.diff added
comment:1 Changed 4 years ago by cboos
- Description modified (diff)
- Milestone set to 0.11
- Priority changed from normal to high
comment:2 Changed 4 years ago by jruigrok
comment:3 Changed 4 years ago by cboos
- Owner changed from cboos to jruigrok
Yeah, I was about to test it... I just have to update now instead of patching the file, so it's not really getting in the way ;-)
I'll report back my findings.
comment:4 Changed 4 years ago by cboos
- Resolution set to fixed
- Status changed from new to closed
There are apparently no memory savings (no visible leak either) with or without, only high but stable memory usage, as usual.
When the repository gets explicitly close()d, this effectively frees the svn objects. The repository object itself might be leaked without the patch, but the impact of this is quite minor and I don't thinkg it explains the high memory usage we're seeing.
But it's better to avoid that (probably very minor) leak anyway, so I'm closing the issue.
Anyway, for 0.12, the whole SvnAuthorizer stuff could be easily adapted to the security framework (no user visible changes, only an implementation detail).



Committed in r6385.
Only just saw that you changed the ticket Christian, sorry, was not trying to get in the way.