Skip to content

Commit 44da93a

Browse files
authored
Merge pull request presslabs#260 from PressLabs/max-open-file-259
Add max_open_files option. (fixes presslabs#259)
2 parents 2f37201 + e17f9a9 commit 44da93a

File tree

3 files changed

+8
-1
lines changed

3 files changed

+8
-1
lines changed

gitfs/mounter.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515

1616
import sys
1717
import argparse
18+
import resource
1819

1920
from fuse import FUSE
2021
from pygit2 import Keypair, UserPass
@@ -111,6 +112,10 @@ def start_fuse():
111112
except:
112113
return
113114

115+
if args.max_open_files != -1:
116+
resource.setrlimit(resource.RLIMIT_NOFILE,
117+
(args.max_open_file, args.max_open_file))
118+
114119
# ready to mount it
115120
if sys.platform == 'darwin':
116121
FUSE(router, args.mount_point, foreground=args.foreground,

gitfs/utils/args.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@ def __init__(self, parser):
5858
("ignore_file", ("", "string")),
5959
("hard_ignore", ("", "string")),
6060
("min_idle_times", (10, "float")),
61+
("max_open_files", (-1, "int")),
6162
])
6263
self.config = self.build_config(parser.parse_args())
6364

tests/test_mount.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -132,6 +132,7 @@ def test_start_fuse(self):
132132
mocked_prepare = MagicMock()
133133
mocked_argp = MagicMock()
134134
mocked_fuse = MagicMock()
135+
mocked_resource = MagicMock()
135136
mocked_args = MagicMock()
136137

137138
mocked_merge = MagicMock()
@@ -146,7 +147,7 @@ def test_start_fuse(self):
146147
with patch.multiple('gitfs.mounter', argparse=mocked_argp,
147148
parse_args=mocked_parse_args,
148149
prepare_components=mocked_prepare,
149-
FUSE=mocked_fuse):
150+
FUSE=mocked_fuse, resource=MagicMock()):
150151
start_fuse()
151152

152153
mocked_argp.ArgumentParser.assert_called_once_with(prog='GitFS')

0 commit comments

Comments
 (0)