Thread (10 messages) flat view 10 messages, 6 authors, 2016-06-15

Re: [PATCH] sha1_file: introduce close_one_pack() to close packs on fd pressure

From: Junio C Hamano <hidden>
Date: 2016-06-15 22:58:16

Possibly related (same subject, not in this thread)

Brandon Casey [off-list ref] writes:
From: Brandon Casey <redacted>

When the number of open packs exceeds pack_max_fds, unuse_one_window()
is called repeatedly to attempt to release the least-recently-used
pack windows, which, as a side-effect, will also close a pack file
after closing its last open window.  If a pack file has been opened,
but no windows have been allocated into it, it will never be selected
by unuse_one_window() and hence its file descriptor will not be
closed.  When this happens, git may exceed the number of file
descriptors permitted by the system.
An interesting find.  The patch from a cursory look reads OK.

Thanks.
This is not likely to occur during upload-pack since upload-pack
reads each object from the pack so that it can peel tags and
advertise the exposed object.
Another interesting find.  Perhaps there is a room for improvements,
as packed-refs file knows what objects the tags peel to?  I vaguely
recall Peff was actively reducing the object access during ref
enumeration in not so distant past...
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help