I do some work with computational clusters (currently running a mix of Ubuntu 14.04 / Octave 4.0.0 and Ubuntu 16.04 / Octave 4.2.1), and I made a mistake (with a bash script) that produced around 150000 small files in a particular directory "BADDIR" while running over the course of a couple days. If I called 'ls' on BADDIR, it took somewhere between 15 and 60 minutes to run (the folder is accessed over a 10Gbps network, but there's still some latency). If I tried to start octave with BADDIR as the current directory, then octave would hang - at least for 10 minutes; I don't think I tried waiting any longer than that when running it interactively. However, I could start octave from a different directory and then run files from the problematic directory without any delays or problems. I've since removed all the extraneous files and can work normally again.
Is what I describe expected behavior? I'm guessing that octave runs some operation similar to 'ls' when starting, perhaps to check for startup.m or .octaverc? Can that be done more efficiently?
I came here for comments and to report what I found (in case someone else has the same problem), since I wasn't sure whether to really consider it to be a bug.