[MonetDB-users] MonetDB out of memory errors
Hi all, I am using MonetDB v11.7.7 (Dec2011-SP1) in an application which constantly feeds data in tables (daily tables). The communication with the server is done through the mapi API. This is accomplished through the "COPY INTO" command. From time to time (every 1-2 days) I see errors in the application logs such as: exception at 00000000004C0109: Connect error (Error code -4): monetdbd: an internal error has occurred, refer to the logs for details, please try again later . exception at 00000000004C0109: Connect error (Error code -4): monetdbd: there are no available connections for 'mydatabase' . exception at 00000000004C0109: Connect error (Error code -4): monetdbd: there are no available connections for 'mydatabase' Then looking at dmesg log: [964932.242080] 251025 pages non-shared [964932.242083] Out of memory: kill process 11585 (monetdbd) score 787911 or a child [964932.302785] Killed process 11781 (mserver5) Sometimes, monetdb can recover from this error and then the loading continues normally, some others I have to manually restart monetdb. Is there anything I can do to troubleshoot this issue? Is there a possibility for me to fall back to an earlier version of MonetDB with potentially less features but more stability? Thanks for all the help, Stathis
Hi, not sure, but this sounds like OOM Killer in action (see http://linux-mm.org/OOM_Killer for example). If this is the case, the problem is not necessarly with Monetdb, but rather with memory management on the server... Are there other porcesses eating memory, etc... etc... One way to prevent OOM Killer to choose monetdbd as a candidate for being killed, you can have a look here (for postgresql, but should apply to monetdb as well) : http://blog.credativ.com/en/2010/03/postgresql-and-linux-memory-management.h... That said, you won't be able to use more memory than you have :-) I think there are ways to tell monetdb how much memory it can take, maybe using 'ulimit -d'. Or maybe there are other tricks to handle this ? Regards, Franck Le 05/03/2012 20:22, Stathis Gkotsis a écrit :
Hi all,
I am using MonetDB v11.7.7 (Dec2011-SP1) in an application which constantly feeds data in tables (daily tables). The communication with the server is done through the mapi API. This is accomplished through the "COPY INTO" command.
From time to time (every 1-2 days) I see errors in the application logs such as:
exception at 00000000004C0109: Connect error (Error code -4): monetdbd: an internal error has occurred, refer to the logs for details, please try again later . exception at 00000000004C0109: Connect error (Error code -4): monetdbd: there are no available connections for 'mydatabase' . exception at 00000000004C0109: Connect error (Error code -4): monetdbd: there are no available connections for 'mydatabase'
Then looking at dmesg log:
[964932.242080] 251025 pages non-shared [964932.242083] Out of memory: kill process 11585 (monetdbd) score 787911 or a child [964932.302785] Killed process 11781 (mserver5)
Sometimes, monetdb can recover from this error and then the loading continues normally, some others I have to manually restart monetdb.
Is there anything I can do to troubleshoot this issue?
Is there a possibility for me to fall back to an earlier version of MonetDB with potentially less features but more stability?
Thanks for all the help,
Stathis
------------------------------------------------------------------------------ Try before you buy = See our experts in action! The most comprehensive online learning library for Microsoft developers is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3, Metro Style Apps, more. Free future releases when you subscribe now! http://p.sf.net/sfu/learndevnow-dev2 _______________________________________________ MonetDB-users mailing list MonetDB-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/monetdb-users
Hi, thanks for the answer. I believe that the OOM killer killed monetdbd as well. All other processes do not take up much memory. I will try to limit the memory monetdb can take with ulimit. However, what would be the behaviour of monetdb then? How will it behave if it needs / tries to allocate more memory than the set limit? BR, Stathis ________________________________________ From: Franck Routier [franck.routier@axege.com] Sent: Tuesday, March 06, 2012 3:13 PM To: Communication channel for MonetDB users Subject: Re: [MonetDB-users] MonetDB out of memory errors Hi, not sure, but this sounds like OOM Killer in action (see http://linux-mm.org/OOM_Killer for example). If this is the case, the problem is not necessarly with Monetdb, but rather with memory management on the server... Are there other porcesses eating memory, etc... etc... One way to prevent OOM Killer to choose monetdbd as a candidate for being killed, you can have a look here (for postgresql, but should apply to monetdb as well) : http://blog.credativ.com/en/2010/03/postgresql-and-linux-memory-management.h... That said, you won't be able to use more memory than you have :-) I think there are ways to tell monetdb how much memory it can take, maybe using 'ulimit -d'. Or maybe there are other tricks to handle this ? Regards, Franck Le 05/03/2012 20:22, Stathis Gkotsis a écrit :
Hi all,
I am using MonetDB v11.7.7 (Dec2011-SP1) in an application which constantly feeds data in tables (daily tables). The communication with the server is done through the mapi API. This is accomplished through the "COPY INTO" command.
From time to time (every 1-2 days) I see errors in the application logs such as:
exception at 00000000004C0109: Connect error (Error code -4): monetdbd: an internal error has occurred, refer to the logs for details, please try again later . exception at 00000000004C0109: Connect error (Error code -4): monetdbd: there are no available connections for 'mydatabase' . exception at 00000000004C0109: Connect error (Error code -4): monetdbd: there are no available connections for 'mydatabase'
Then looking at dmesg log:
[964932.242080] 251025 pages non-shared [964932.242083] Out of memory: kill process 11585 (monetdbd) score 787911 or a child [964932.302785] Killed process 11781 (mserver5)
Sometimes, monetdb can recover from this error and then the loading continues normally, some others I have to manually restart monetdb.
Is there anything I can do to troubleshoot this issue?
Is there a possibility for me to fall back to an earlier version of MonetDB with potentially less features but more stability?
Thanks for all the help,
Stathis
------------------------------------------------------------------------------ Try before you buy = See our experts in action! The most comprehensive online learning library for Microsoft developers is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3, Metro Style Apps, more. Free future releases when you subscribe now! http://p.sf.net/sfu/learndevnow-dev2 _______________________________________________ MonetDB-users mailing list MonetDB-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/monetdb-users
------------------------------------------------------------------------------ Keep Your Developer Skills Current with LearnDevNow! The most comprehensive online learning library for Microsoft developers is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3, Metro Style Apps, more. Free future releases when you subscribe now! http://p.sf.net/sfu/learndevnow-d2d _______________________________________________ MonetDB-users mailing list MonetDB-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/monetdb-users
participants (2)
-
Franck Routier
-
Stathis Gkotsis