On 2010-03-24 18:15, Mark Bucciarelli wrote:
On Fri, Mar 19, 2010 at 12:01 PM, Stefan Manegold
wrote: $ ulimit -d $[1024*1024]
$ ulimit -a core file size (blocks, -c) 0 data seg size (kbytes, -d) 1048576 ^^^^^^^^^^^^^ ^^^^^^^ [...]
$ mserver5 --version MonetDB server v5.18.2 (64-bit), based on kernel v1.36.2 (64-bit oids) Copyright (c) 1993-July 2008 CWI Copyright (c) August 2008-2010 MonetDB B.V., all rights reserved Visit http://monetdb.cwi.nl/ for further information Found 1.0GiB available memory, 4 available cpu cores ^^^^^^
I tried this, but I get different results.
Do I also need to limit vmemory?
$ ulimit -d 409600 $ ulimit -a time(cpu-seconds) unlimited file(blocks) unlimited coredump(blocks) 0 data(kbytes) 409600 stack(kbytes) 8192 lockedmem(kbytes) 64 memory(kbytes) unlimited nofiles(descriptors) 1024 processes unlimited vmemory(kbytes) unlimited flocks unlimited $ monetdb start aoflash starting database 'aoflash'... done $ tail -20 /var/log/merovingian.log | grep -A 3 "based on kernel " | sed s/.* # /# / # MonetDB server v5.16.2, based on kernel v1.34.2 # Serving database 'aoflash', using 1 thread # Compiled for i686-pc-linux-gnu/32bit with 32bit OIDs dynamically linked # Detected 481.391 MiB (504774656 bytes) main-memory. $ uname -a Linux mydomain.com 2.6.28-17-server #58-Ubuntu SMP Tue Dec 1 19:58:28 UTC 2009 i686 GNU/Linux $
Limits are inherited from the parent process. When you start a database using monetdb, the parent process of the server is merovingian, *not* the monetdb program. So, these limits mean nothing for the server. To be sure of the limits in place for the server, stop the database, and kill merovingian. Then set the limits, then start merovingian again, and then start the database. -- Sjoerd Mullender