Pijul

Does anyone else get SIGXFSZ (File size limit exceeded) error when trying to clone Pijul?

Hello, on macOS when I run:

pijul clone https://nest.pijul.com/pijul/pijul

I get:

Downloading changes [==================================================] 601/601
           Applying [==================================================] 601/601
 Completing changes [                                                  ] 0/0
Error: Changestore error: Too many open files (os error 24)

If I increase the file descriptor limit with ulimit 10000 and rerun the clone, I get:

Downloading changes [===================================>              ] 430/601
           Applying [================================>                 ] 395/601
fish: Job 1, 'pijul clone https://nest.pijul.…' terminated by signal SIGXFSZ (File size limit exceeded)

For reference, my Pijul version is pijul 1.0.0-alpha.54.

Ah, I overlooked configuring the max file size with ulimit -f as well, and was able to get it to work.

Hi!
It is a known problem, and there is code in Pijul to prevent specifically that error, without any need to use ulimit manually. This seems to be platform-dependent then. Thanks for reporting.
Do you know what the limit is in normal time?

Here’s the output of ulimit -a for me in a fresh terminal session:

Maximum size of core files created                           (kB, -c) 0
Maximum size of a process’s data segment                     (kB, -d) unlimited
Maximum size of files created by the shell                   (kB, -f) unlimited
Maximum size that may be locked into memory                  (kB, -l) unlimited
Maximum resident set size                                    (kB, -m) unlimited
Maximum number of open file descriptors                          (-n) 10000
Maximum stack size                                           (kB, -s) 8192
Maximum amount of cpu time in seconds                   (seconds, -t) unlimited
Maximum number of processes available to a single user           (-u) 2784
Maximum amount of virtual memory available to the shell      (kB, -v) unlimited

Presumably unlimited isn’t actually unlimited, I’ll see what I can find out.