ID:2588823
 
Resolved
Failing to open a file sent by browse_rsc(), etc. printed a "File not found" error message that could be incorrect or misleading. Additionally, file errors occurring during savefile usage did not print correctly either.
BYOND Version:513.1527
Operating System:Linux
Web Browser:
Applies to:Dream Daemon
Status: Resolved (513.1528)

This issue has been resolved.
Descriptive Problem Summary:

Running DreamDaemon with goonstation (nightshade branch) on a VM, I encountered log spam of:

BUG: File not found: /home/ubuntu/nightshade/browserassets/js/go.js (current directory is /home/ubuntu/nightshade)
BUG: File not found: /home/ubuntu/nightshade/browserassets/js/tooltip.js (current directory is /home/ubuntu/nightshade)
BUG: File not found: /home/ubuntu/nightshade/browserassets/js/jsviews.min.js (current directory is /home/ubuntu/nightshade)
BUG: File not found: /home/ubuntu/nightshade/browserassets/js/ stationNameChanger.js (current directory is /home/ubuntu/nightshade)
BUG: File not found: /home/ubuntu/nightshade/browserassets/js/runtimeViewer.js (current directory is /home/ubuntu/nightshade)
BUG: File not found: /home/ubuntu/nightshade/browserassets/js/ jquery.nanoscroller.min.js (current directory is /home/ubuntu/nightshade)
BUG: File not found: /home/ubuntu/nightshade/browserassets/js/ interfaceSizeHelper.js (current directory is /home/ubuntu/nightshade)
BUG: File not found: /home/ubuntu/nightshade/browserassets/js/ robot_module_rewriter.js (current directory is /home/ubuntu/nightshade)
BUG: File not found: /home/ubuntu/nightshade/browserassets/js/howler.core.min.js (current directory is /home/ubuntu/nightshade)
BUG: File not found: /home/ubuntu/nightshade/browserassets/js/jquery.min.js (current directory is /home/ubuntu/nightshade)
BUG: File not found: /home/ubuntu/nightshade/browserassets/js/jquery.migrate.js (current directory is /home/ubuntu/nightshade)
BUG: File not found: /home/ubuntu/nightshade/browserassets/js/json2.min.js (current directory is /home/ubuntu/nightshade)
BUG: File not found: /home/ubuntu/nightshade/browserassets/js/ jquery.debounce-1.0.5.js (current directory is /home/ubuntu/nightshade)
BUG: File not found: /home/ubuntu/nightshade/browserassets/js/polyfill.js (current directory is /home/ubuntu/nightshade)
BUG: File not found: /home/ubuntu/nightshade/browserassets/js/jquery-ui.min.js (current directory is /home/ubuntu/nightshade)
BUG: File not found: /home/ubuntu/nightshade/browserassets/js/bootstrap.min.js (current directory is /home/ubuntu/nightshade)
BUG: File not found: /home/ubuntu/nightshade/browserassets/js/util/StateManager.js (current directory is /home/ubuntu/nightshade)
BUG: File not found: /home/ubuntu/nightshade/browserassets/js/util/dom.js (current directory is /home/ubuntu/nightshade)
BUG: File not found: /home/ubuntu/nightshade/browserassets/js/chemicompiler.js (current directory is /home/ubuntu/nightshade)
BUG: File not found: /home/ubuntu/nightshade/browserassets/js/pathoui-script.js (current directory is /home/ubuntu/nightshade)

You get the idea. The issue is that these errors do not report what error occured. It wasn't until much later from a different system that produced an error code that I figured out what the problem was:

BYOND Error:(sfile.cpp,1139) failed to open file /home/ubuntu/nightshade/data/AdminPrefs.sav: errno 24

errno 24 is "too many files open". Turns out the VM had an open files limit of 1024.

Setting the limit much higher resolved the issue.

Numbered Steps to Reproduce Problem:

ulimit -n 128

Expected Results:

DreamDaemon should either loudly complain if errno 24 occurs, print the error code alongside the "BUG: File not found:" errors, or both.

Actual Results:

BUG: File not found:

Does the problem occur:

Consistently with code that opens many files at once that exceeds the current open file limit.
Lummox JR resolved issue with message:
Failing to open a file sent by browse_rsc(), etc. printed a "File not found" error message that could be incorrect or misleading. Additionally, file errors occurring during savefile usage did not print correctly either.