[GRASS-dev] G_open_cell_old: unable to open raster map
Glynn Clements
glynn at gclements.plus.com
Wed Aug 18 22:11:38 EDT 2010
James McCreight wrote:
> I've been forced in to development by this bug (ie i have a only a vague
> idea of what I'm doing). Help greatly appreciated (need to work on thesis
> not bugs).
>
> Summary:
>
> I've generated a location and a mapset, in this mapset I have files named
> input_file.0001, ... , input_file.nnnn, ... , input_file.3313
>
> I'm running r.hydro.CASC2 (used to be in GRASS), which i've built from gipe
> add-on package.
> When it gets to approximately nnnn=1016, i get (i'll use the real rast and
> mapset names, in case they are relevant):
>
> WARNING: Unable to open raster map
> <SBB_runoff_lumped_05.1016 at lumped_05_9930>
If it's happening after ~1000 files, I strongly suspect you're hitting
an OS limit on the number of open file descriptors. It's common to
have a limit of 1024 open files per process.
Run "ulimit -n" in the shell to determine the soft limit. If this is
too low, use "ulimit -Hn" to determine the hard limit. The soft limit
is what the OS actually checks against; you can change the soft limit
with e.g. "ulimit -n 5000", but you cannot increase it above the hard
limit, and a non-root user cannot increase the hard limit.
On systems which use PAM, these limits are set in the file
/etc/security/limits.conf and any files in the directory
/etc/security/limits.d. This file is read by PAM (specifically, the
pam_limits.so module) at login, which sets the limits before dropping
root privilege and switching to the logged in user.
If you have the ability to change that file, a line such as:
* hard nofile 5000
will increase the hard limit to 5000. The limit will take effect for
subsequent logins (you can run "login" in an xterm to get a shell with
the new limits if you don't want to quit your current desktop
session).
--
Glynn Clements <glynn at gclements.plus.com>
More information about the grass-dev
mailing list