set RLIMIT_NOFILE soft limit to match the hard limit on mac

[NO NEW TESTS NEEDED]

Signed-off-by: Sam Peterson <samigknighted@gmail.com>
This commit is contained in:
Sam Peterson
2023-11-10 15:35:35 -06:00
committed by protosam
parent d7d8b86e59
commit 5e0471ba7f
2 changed files with 30 additions and 2 deletions

View File

@ -0,0 +1,28 @@
package main
import (
"fmt"
"os"
"syscall"
)
func setRLimitsNoFile() error {
var rLimitNoFile syscall.Rlimit
if err := syscall.Getrlimit(syscall.RLIMIT_NOFILE, &rLimitNoFile); err != nil {
return fmt.Errorf("getting RLIMITS_NOFILE: %w", err)
}
err := syscall.Setrlimit(syscall.RLIMIT_NOFILE, &syscall.Rlimit{
Max: rLimitNoFile.Max,
Cur: rLimitNoFile.Max,
})
if err != nil {
return fmt.Errorf("setting new RLIMITS_NOFILE: %w", err)
}
return nil
}
func earlyInitHook() {
if err := setRLimitsNoFile(); err != nil {
fmt.Fprintf(os.Stderr, "Failed to set RLIMITS_NOFILE: %s\n", err.Error())
}
}

View File

@ -1,5 +1,5 @@
//go:build !linux
// +build !linux
//go:build !linux && !darwin
// +build !linux,!darwin
package main