Fractal crashes with "too many open files"
Having built Fractal from master
(commit b2a7a185829f7048c09ed4bf9bc2a8313fff6204
at the time) and left it open nearly 24 hours, I was clicking through my bold rooms to mark them read when Fractal crashed showing the following in the Builder terminal:
(fractal:2): GLib-CRITICAL **: 21:03:23.667: Source ID 2876077 was not found when attempting to remove it
fractal_gtk::app::backend_loop: SYNC
thread '<unnamed>' panicked at 'Client::new(): Error(Io(Os { code: 24, kind: Other, message: "Too many open files" }))', src/libcore/result.rs:1165:5
thread '<unnamed>' panicked at 'stack backtrace:
Client::new(): Error(Io(Os { code: 24, kind: Other, message: "Too many open files" }))', src/libcore/result.rs:1165:5
thread '<unnamed>' panicked at 'Client::new(): Error(Io(Os { code: 24, kind: Other, message: "Too many open files" }))', src/libcore/result.rs:1165:5
thread '<unnamed>' panicked at 'Client::new(): Error(Io(Os { code: 24, kind: Other, message: "Too many open files" }))', src/libcore/result.rs:1165:5
thread '<unnamed>' panicked at 'Client::new(): Error(Io(Os { code: 24, kind: Other, message: "Too many open files" }))', src/libcore/result.rs:1165:5
thread '<unnamed>' panicked at 'Client::new(): Error(Io(Os { code: 24, kind: Other, message: "Too many open files" }))', src/libcore/result.rs:1165:5
thread '<unnamed>' panicked at 'Client::new(): Error(Io(Os { code: 24, kind: Other, message: "Too many open files" }))', src/libcore/result.rs:1165:5
thread '<unnamed>' panicked at 'Client::new(): Error(Io(Os { code: 24, kind: Other, message: "Too many open files" }))', src/libcore/result.rs:1165:5
thread '<unnamed>' panicked at 'Client::new(): Error(Io(Os { code: 24, kind: Other, message: "Too many open files" }))', src/libcore/result.rs:1165:5
thread '<unnamed>' panicked at 'Client::new(): Error(Io(Os { code: 24, kind: Other, message: "Too many open files" }))', src/libcore/result.rs:1165:5
thread '<unnamed>' panicked at 'Client::new(): Error(Io(Os { code: 24, kind: Other, message: "Too many open files" }))', src/libcore/result.rs:1165:5
thread '<unnamed>' panicked at 'Client::new(): Error(Io(Os { code: 24, kind: Other, message: "Too many open files" }))', src/libcore/result.rs:1165:5
thread '<unnamed>' panicked at 'Client::new(): Error(Io(Os { code: 24, kind: Other, message: "Too many open files" }))', src/libcore/result.rs:1165:5
thread '<unnamed>' panicked at 'Client::new(): Error(Io(Os { code: 24, kind: Other, message: "Too many open files" }))', src/libcore/result.rs:1165:5
thread '<unnamed>' panicked at 'Client::new(): Error(Io(Os { code: 24, kind: Other, message: "Too many open files" }))', src/libcore/result.rs:1165:5
thread '<unnamed>' panicked at 'Client::new(): Error(Io(Os { code: 24, kind: Other, message: "Too many open files" }))', src/libcore/result.rs:1165:5
thread '<unnamed>' panicked at 'Client::new(): Error(Io(Os { code: 24, kind: Other, message: "Too many open files" }))', src/libcore/result.rs:1165:5
thread '<unnamed>' panicked at 'Client::new(): Error(Io(Os { code: 24, kind: Other, message: "Too many open files" }))', src/libcore/result.rs:1165:5
thread '<unnamed>' panicked at 'Client::new(): Error(Io(Os { code: 24, kind: Other, message: "Too many open files" }))', src/libcore/result.rs:1165:5
thread '<unnamed>' panicked at 'Client::new(): Error(Io(Os { code: 24, kind: Other, message: "Too many open files" }))', src/libcore/result.rs:1165:5
thread '<unnamed>' panicked at 'Client::new(): Error(Io(Os { code: 24, kind: Other, message: "Too many open files" }))', src/libcore/result.rs:1165:5
thread '<unnamed>' panicked at 'Client::new(): Error(Io(Os { code: 24, kind: Other, message: "Too many open files" }))', src/libcore/result.rs:1165:5
thread '<unnamed>' panicked at 'Client::new(): Error(Io(Os { code: 24, kind: Other, message: "Too many open files" }))', src/libcore/result.rs:1165:5
thread '<unnamed>' panicked at 'Client::new(): Error(Io(Os { code: 24, kind: Other, message: "Too many open files" }))', src/libcore/result.rs:1165:5
thread '<unnamed>' panicked at 'Client::new(): Error(Io(Os { code: 24, kind: Other, message: "Too many open files" }))', src/libcore/result.rs:1165:5
thread '<unnamed>' panicked at 'Client::new(): Error(Io(Os { code: 24, kind: Other, message: "Too many open files" }))', src/libcore/result.rs:1165:5
thread '<unnamed>' panicked at 'Client::new(): Error(Io(Os { code: 24, kind: Other, message: "Too many open files" }))', src/libcore/result.rs:1165:5
thread '<unnamed>' panicked at 'Client::new(): Error(Io(Os { code: 24, kind: Other, message: "Too many open files" }))', src/libcore/result.rs:1165:5
thread '<unnamed>' panicked at 'Client::new(): Error(Io(Os { code: 24, kind: Other, message: "Too many open files" }))', src/libcore/result.rs:1165:5
thread '<unnamed>' panicked at 'Client::new(): Error(Io(Os { code: 24, kind: Other, message: "Too many open files" }))', src/libcore/result.rs:1165:5
thread '<unnamed>' panicked at 'Client::new(): Error(Io(Os { code: 24, kind: Other, message: "Too many open files" }))', src/libcore/result.rs:1165:5
(fractal:2): GLib-ERROR **: 21:03:37.575: Creating pipes for GWakeup: Too many open files
Application exited
Steps to reproduce:
- Open Fractal
- Leave it open for a day or so (not sure if this is important)?
- Click through your bolded rooms until Fractal crashes