grosjo / fts-xapian

Dovecot FTS plugin based on Xapian
GNU Lesser General Public License v2.1
91 stars 19 forks source link

Debian 11 low memory errors #136

Closed Dmitry422 closed 7 months ago

Dmitry422 commented 1 year ago

I try plugin from Debian : https://packages.debian.org/bullseye/dovecot-fts-xapian (1.4.9) and try now compiled 1.5.5 from git with this config

plugin {
    fts = xapian
    fts_xapian = partial=3 full=20 verbose=1
    fts_autoindex = no
    fts_enforced = yes
    fts_autoindex_exclude = \Trash
    fts_autoindex_exclude2 = \Удаленные
    fts_autoindex_exclude3 = SHARED/*
#    fts_decoder = decode2text
}

service indexer-worker {
    # Increase vsz_limit to 2GB or above.
    # Or 0 if you have rather large memory usable on your server, which is preferred for performance)
    vsz_limit = 4G 
}

and after short time from start reindex doveadm index -u user@domain.com -q INBOX I see errors in log:

Jun 25 21:28:30 mail dovecot: indexer-worker(USER@DOMAIN.COM)<723692><Rd+UFzuHmGTsCgsAn678JQ>: FTS Xapian: fts_backend_xapian_index_text
Jun 25 21:28:30 mail dovecot: indexer-worker(USER@DOMAIN.COM)<723692><Rd+UFzuHmGTsCgsAn678JQ>: FTS Xapian: NGRAM(body,XBDY) -> 72 items, max length=18, (total 0 KB)
Jun 25 21:28:30 mail dovecot: indexer-worker(USER@DOMAIN.COM)<723692><Rd+UFzuHmGTsCgsAn678JQ>: Warning: FTS Xapian: Warning Low memory (119 MB)
Jun 25 21:28:30 mail dovecot: indexer-worker(USER@DOMAIN.COM)<723692><Rd+UFzuHmGTsCgsAn678JQ>: FTS Xapian: fts_backend_xapian_release (Low memory indexing)
Jun 25 21:28:30 mail dovecot: indexer-worker(USER@DOMAIN.COM)<723692><Rd+UFzuHmGTsCgsAn678JQ>: FTS Xapian: Committed 'Low memory indexing' in 9 ms (19886 docs in index)
Jun 25 21:28:30 mail dovecot: indexer-worker(USER@DOMAIN.COM)<723692><Rd+UFzuHmGTsCgsAn678JQ>: FTS Xapian: Opening DB (RW) /mailboxes/USER/xapian-indexes/db_887a800e5dd97463412a00009faefc25
Jun 25 21:28:30 mail dovecot: indexer-worker(USER@DOMAIN.COM)<723692><Rd+UFzuHmGTsCgsAn678JQ>: FTS Xapian: Opening DB (RW) /mailboxes/USER/xapian-indexes/db_887a800e5dd97463412a00009faefc25 (19886 docs stored): Done
Juv

my system

root@mail:/tmp/fts-xapian# free
               total        used        free      shared  buff/cache   available
Mem:         8146956      392596      129168        8836     7625192     7439728
Swap:         999420      129052      870368
MemTotal:        8146956 kB
MemFree:          148084 kB
MemAvailable:    7422340 kB
Buffers:          147256 kB
Cached:          7241548 kB
SwapCached:        15808 kB
Active:          2482972 kB
Inactive:        5198836 kB
Active(anon):      44168 kB
Inactive(anon):   257728 kB
Active(file):    2438804 kB
Inactive(file):  4941108 kB
Unevictable:           0 kB
Mlocked:               0 kB
SwapTotal:        999420 kB
SwapFree:         877536 kB
Dirty:            272836 kB
Writeback:             0 kB
AnonPages:        281816 kB
Mapped:           287824 kB
Shmem:              8828 kB
KReclaimable:     200104 kB
Slab:             260512 kB
SReclaimable:     200104 kB
SUnreclaim:        60408 kB
KernelStack:        4704 kB
PageTables:        10324 kB
NFS_Unstable:          0 kB
Bounce:                0 kB
WritebackTmp:          0 kB
CommitLimit:     5072896 kB
Committed_AS:    1320796 kB
VmallocTotal:   34359738367 kB
VmallocUsed:       18204 kB
VmallocChunk:          0 kB
Percpu:             4224 kB
HardwareCorrupted:     0 kB
AnonHugePages:     75776 kB
ShmemHugePages:        0 kB
ShmemPmdMapped:        0 kB
FileHugePages:         0 kB
FilePmdMapped:         0 kB
HugePages_Total:       0
HugePages_Free:        0
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB
Hugetlb:               0 kB
DirectMap4k:      226632 kB
DirectMap2M:     8161280 kB

What I can do for resume normal plugin work ?

grosjo commented 9 months ago

It may be athat systemd (grr) has a limit for dovecot at start

also try putting "default_vsz_limit = 4G" in the top of your dovecot.conf file

grosjo commented 7 months ago

Solved?

Dmitry422 commented 7 months ago

I check it after 2 days and answer you here. As I remember 4G limit not help, but not sure now

Dmitry422 commented 7 months ago

Solved !

grosjo commented 7 months ago

Wonderful