Duh... src/lib/restrict-process-size.h
Should be in the installed include files as well,
/usr/include/dovecot/restrict-process-size.h
Aki
On 06/11/2020 15:56 Joan Moreau jom@grosjo.net wrote:
Hello I can't find "src/lib/restrict.h" . Is it in dovecot source ?
On 2020-11-06 13:20, Aki Tuomi wrote:
Seems I had forgotten that you can use src/lib/restrict.h, in particular, restrict_get_process_size() to figure out the limit. You can combine this with getrusage to find out current usage.
Aki
On 06/11/2020 13:26 Joan Moreau jom@grosjo.net wrote:
yes, will do so. It would be nice however to be able to access the actual dovecot config from the plugin side
On 2020-11-04 06:46, Aki Tuomi wrote:
You could also add it as setting for the fts_xapian plugin parameters?
Aki
On 04/11/2020 08:42 Joan Moreau jom@grosjo.net wrote:
For machines with low memory, I would like to detect how much ram remains available before starting indexing a mail, so I can commit everything on disk before the ram is exhausted (and break the process) I tried to put a "fake" allocation to test if it fails, (so it can fail separately, and I can "if ram remaining is above X") but the is really not clean
On 2020-11-04 06:28, Aki Tuomi wrote:
> On 04/11/2020 05:19 Joan Moreau jom@grosjo.net wrote: > > > Hello > I am looking for help around memory management > 1 - How to get the current value of "vsz_limit" from inside a plugin (namely https://github.com/grosjo/fts-xapian/ ) , especially for indexer-worker > 2 - Is there a macro or function in dovecot to get the remaining free memory from this vsz value ? > Thank you > >
Hi Joan,
I don't think there is a feasible way to access this setting as of now. Is there a reason you need this? We usually recommend setting vsz_limit=0 for indexer-worker.
Aki
ok found it,
However, it returns me some random number. Maybe I am missing something
On 2020-11-06 13:57, Aki Tuomi wrote:
Duh... src/lib/restrict-process-size.h
Should be in the installed include files as well,
/usr/include/dovecot/restrict-process-size.h
Aki
On 06/11/2020 15:56 Joan Moreau jom@grosjo.net wrote:
Hello I can't find "src/lib/restrict.h" . Is it in dovecot source ?
On 2020-11-06 13:20, Aki Tuomi wrote: Seems I had forgotten that you can use src/lib/restrict.h, in particular, restrict_get_process_size() to figure out the limit. You can combine this with getrusage to find out current usage.
Aki
On 06/11/2020 13:26 Joan Moreau jom@grosjo.net wrote:
yes, will do so. It would be nice however to be able to access the actual dovecot config from the plugin side
On 2020-11-04 06:46, Aki Tuomi wrote: You could also add it as setting for the fts_xapian plugin parameters?
Aki
On 04/11/2020 08:42 Joan Moreau jom@grosjo.net wrote:
For machines with low memory, I would like to detect how much ram remains available before starting indexing a mail, so I can commit everything on disk before the ram is exhausted (and break the process) I tried to put a "fake" allocation to test if it fails, (so it can fail separately, and I can "if ram remaining is above X") but the is really not clean
On 2020-11-04 06:28, Aki Tuomi wrote:
On 04/11/2020 05:19 Joan Moreau jom@grosjo.net wrote:
Hello I am looking for help around memory management 1 - How to get the current value of "vsz_limit" from inside a plugin (namely https://github.com/grosjo/fts-xapian/ ) , especially for indexer-worker 2 - Is there a macro or function in dovecot to get the remaining free memory from this vsz value ? Thank you
Hi Joan,
I don't think there is a feasible way to access this setting as of now. Is there a reason you need this? We usually recommend setting vsz_limit=0 for indexer-worker.
Aki
SOrry, my mistake, the conversion type was wrong.
So restrict_get_process_size is indeed consistent with vsz_limit
Now, for the memory usage of the process, getrusage gives only the /max/ of the memory used, not the current
THe only way I found is to fopen("/proc/self/status") and read the correct line. Do you have a better way ?
thank you
On 2020-11-06 14:16, Joan Moreau wrote:
ok found it,
However, it returns me some random number. Maybe I am missing something
On 2020-11-06 13:57, Aki Tuomi wrote: Duh... src/lib/restrict-process-size.h
Should be in the installed include files as well,
/usr/include/dovecot/restrict-process-size.h
Aki
On 06/11/2020 15:56 Joan Moreau jom@grosjo.net wrote:
Hello I can't find "src/lib/restrict.h" . Is it in dovecot source ?
On 2020-11-06 13:20, Aki Tuomi wrote: Seems I had forgotten that you can use src/lib/restrict.h, in particular, restrict_get_process_size() to figure out the limit. You can combine this with getrusage to find out current usage.
Aki
On 06/11/2020 13:26 Joan Moreau jom@grosjo.net wrote:
yes, will do so. It would be nice however to be able to access the actual dovecot config from the plugin side
On 2020-11-04 06:46, Aki Tuomi wrote: You could also add it as setting for the fts_xapian plugin parameters?
Aki
On 04/11/2020 08:42 Joan Moreau jom@grosjo.net wrote:
For machines with low memory, I would like to detect how much ram remains available before starting indexing a mail, so I can commit everything on disk before the ram is exhausted (and break the process) I tried to put a "fake" allocation to test if it fails, (so it can fail separately, and I can "if ram remaining is above X") but the is really not clean
On 2020-11-04 06:28, Aki Tuomi wrote:
On 04/11/2020 05:19 Joan Moreau jom@grosjo.net wrote:
Hello I am looking for help around memory management 1 - How to get the current value of "vsz_limit" from inside a plugin (namely https://github.com/grosjo/fts-xapian/ ) , especially for indexer-worker 2 - Is there a macro or function in dovecot to get the remaining free memory from this vsz value ? Thank you
Hi Joan,
I don't think there is a feasible way to access this setting as of now. Is there a reason you need this? We usually recommend setting vsz_limit=0 for indexer-worker.
Aki
participants (2)
-
Aki Tuomi
-
Joan Moreau