krischer / instaseis

Instant high-frequency seismograms from an AxiSEM database
http://instaseis.net
Other
52 stars 23 forks source link

OS X installation failed tests #48

Closed cvan071 closed 7 years ago

cvan071 commented 8 years ago

Hello I installed Instaseis using anaconda on OS X El Capitan. I tried running the tests and got a number of errors. I have attached a txt file of the output, as it is very long. I have tried removing and reinstalling, as well as reinstalling using pip instead of anaconda (as per installation instructions) but still fail the tests. Thanks a lot for your help! instaseis_tests.txt

cvan071 commented 7 years ago

Hello again Do you have any thoughts on this? Cheers

krischer commented 7 years ago

Hi,

sorry for the late reply. So I looked into this as it actually also happens on Travis CI's OSX test runners. Instaseis creates a ton of temporary web servers during its tests - turns out it never closes the corresponding sockets until the tests terminate. So if your system already has lots of open files/sockets/... and you have a low ulimit the tests will fail. I'll fix this on the instaseis side but it might be a couple of weeks until I'll get to it. You could temporarily up your maximum allowed open files.

A side note: instaseis creates quit a lot of open sockets but not that many that your system should not be able to handle it anymore. Do you by chance have a very low file limit or some processes that already open a ton of files?

Check the max number of open files:

$ ulimit -n

Up your open file count limit: http://superuser.com/questions/302754/increase-the-maximum-number-of-open-file-descriptors-in-snow-leopard

cvan071 commented 7 years ago

Beautiful, thanks a lot Lion. It now passes the tests. Chris

krischer commented 7 years ago

Great :-)

Please leave the issue open so I'll remember to properly fix this.

krischer commented 7 years ago

Fixed in the master. The number of concurrent open sockets while running the tests is now mostly in the single digits. It used to be up to 1000...sorry about that.