Re: [Dovecot] Something is strange - perhaps my AMD processors ?
On Thu, 16 Feb 2012 02:04:52 +0100, Finn B wrote: Now I come to think of it I realize that my production system is intel based and the 2 new ones are AMD based and wonder if this may be the case ? Dovecot 2.0.3 to 2.0.16 works fine on my DualCore Opterons (VMs). Patrick
Re: [Dovecot] index synchronization during local delivery
On 16.2.2012, at 8.25, Andy YB Hu wrote: > Sounds a little tricky. For backend server, director makes sense. But for > LDA, it's also suggested to deploy the LDA on the same machine with backend > server? Topologically, it's very possible the machine where LDA is running > is separated from one of backend server. MTA/Antivirus/Antispam is often in a separate backend server, but it can do the actual mail writing by sending the mail to Dovecot via LMTP via director.
Re: [Dovecot] index synchronization during local delivery
Sounds a little tricky. For backend server, director makes sense. But for LDA, it's also suggested to deploy the LDA on the same machine with backend server? Topologically, it's very possible the machine where LDA is running is separated from one of backend server. I will run the similar tests with pure dovecot LDA, instead of ours to see the result. Timo Sirainen Sent by: To dovecot-bounces@d Dovecot Mailing List ovecot.org cc 02/16/2012 12:54 Subject PMRe: [Dovecot] index synchronization during local delivery Please respond to Dovecot Mailing List On 16.2.2012, at 5.59, Andy YB Hu wrote: > Tried it, found it could trigger NFS issue. .. > Whether it means the dovecot LDA also needs to run on the same server with > the backend server? Yes, the only 100% safe way is to do all simultaneous mailbox access via the same backend server. <><><>
Re: [Dovecot] index synchronization during local delivery
On 16.2.2012, at 5.59, Andy YB Hu wrote: > Tried it, found it could trigger NFS issue. .. > Whether it means the dovecot LDA also needs to run on the same server with > the backend server? Yes, the only 100% safe way is to do all simultaneous mailbox access via the same backend server.
[Dovecot] Something is strange - perhaps my AMD processors ?
Moi Timo / all. I've been using Dovecot on my Qmailtoaster production mailserver for some years - since 1.0.7 and current Version 2.0.10 - works perfectly. Now I am installing a backupsystem and a VM testsystem (2 boxes) - and no matter how and what Version I am installing on these 2 boxes I get below messages whenever I try to test connection with Telnet (localhost 110 / 995). I have tried to install all Dovecot versions from 2.010 to 2.018 as rpms, yums and as source and compiled it. It's on Centos5.7 (64) with Qmailtoaster (which I have installed as I have done many times before) I have tried to copy all my settings from my current production system (Centos 5.7, latest and greatest versions of qmailtoaster and Dovecot 2.0.10) - nothing helps. Now I come to think of it I realize that my production system is intel based and the 2 new ones are AMD based and wonder if this may be the case ? Dovecot.log master: Error: Service(auth): command startup failed, throttling log: Error: Service(auth): child 1859 returned error 89 (Fatal failure) pop3-login: Error: Timeout waiting for handshake from auth server. my pid=1858, input bytes=0 Regards, Finn B
Re: [Dovecot] index synchronization during local delivery
Tried it, found it could trigger NFS issue. The test is on one machine runs the script to lock the dovecot-uidlist, moving mail into cur/new, append one line to dovecot-uidlist, and unlock it. On another different machine, run one script to SELECT, another script to COPY. Found the similar issue in http://dovecot.org/pipermail/dovecot/2012-February/063539.html Whether it means the dovecot LDA also needs to run on the same server with the backend server? Timo Sirainen Sent by: To dovecot-bounces@d Dovecot Mailing List ovecot.org cc 02/15/2012 12:25 Subject PMRe: [Dovecot] index synchronization during local delivery Please respond to Dovecot Mailing List On 15.2.2012, at 6.13, Andy YB Hu wrote: > I can generate the UID once I create the uidlist lock, and the UID is > incremental globally. > > Some questions: > 1, Whether I can write the mail to tmp/ after creating > dovecot-uidlist.lock? Yes, then you'll just keep the lock longer than necessary. > 2, I did the 5 steps manually, found that new mail is set to OLD flag, so > that when SELECT command, it told there was no NEW mail. Looks like need > to change code in maildir_uidlist_sync_next_uid()? I guess that means that the mail didn't get a \Recent flag. Wht Dovecot version is this? Are you saving the mail to new/? > 3, About the dovecot-uidlist.lock file creation and deletion, I checked the > code, there are functions in dovecot like maildir_uidlist_lock_timeout and > maildir_uidlist_unlock. If I did that via calling these functions, there > are lots of extra codes need to call(like auth, mailbox open...). Yes, way too much work to do that way. > So the > question is if I do that in my codes, how to handle the race condition > correctly? (At least there would be other sessions want to lock the files > also / already locked it while I want to create the dovecot-uidlist.lock) It's a typical dotlock file. You can create it with either open(.., O_EXCL) or creating a temp file and trying to link() it to the .lock file. Or you can also directly call the file_dotlock_create() in src/lib/file-dotlock.h <><><>
Re: [Dovecot] [Dovecot 2.1] imap service crash when using some clients
Hello, Here is a more meanigful backtrace. It happens every time I log in, using any imap client. * Core was generated by `imap'. Program terminated with signal 11, Segmentation fault. Reading symbols from /usr/lib/dovecot/libdovecot-storage.so.0...done. Loaded symbols for /usr/lib/dovecot/libdovecot-storage.so.0 Reading symbols from /usr/lib/dovecot/libdovecot.so.0...done. Loaded symbols for /usr/lib/dovecot/libdovecot.so.0 Reading symbols from /lib/libc.so.7...done. Loaded symbols for /lib/libc.so.7 Reading symbols from /usr/lib/librt.so.1...done. Loaded symbols for /usr/lib/librt.so.1 Reading symbols from /usr/lib/dovecot/lib01_acl_plugin.so...done. Loaded symbols for /usr/lib/dovecot/lib01_acl_plugin.so Reading symbols from /usr/lib/dovecot/lib02_imap_acl_plugin.so...done. Loaded symbols for /usr/lib/dovecot/lib02_imap_acl_plugin.so Reading symbols from /usr/lib/dovecot/lib10_quota_plugin.so...done. Loaded symbols for /usr/lib/dovecot/lib10_quota_plugin.so Reading symbols from /usr/lib/dovecot/lib11_imap_quota_plugin.so...done. Loaded symbols for /usr/lib/dovecot/lib11_imap_quota_plugin.so Reading symbols from /usr/lib/dovecot/lib11_trash_plugin.so...done. Loaded symbols for /usr/lib/dovecot/lib11_trash_plugin.so Reading symbols from /usr/lib/dovecot/lib20_autocreate_plugin.so...done. Loaded symbols for /usr/lib/dovecot/lib20_autocreate_plugin.so Reading symbols from /usr/lib/dovecot/lib20_fts_plugin.so...done. Loaded symbols for /usr/lib/dovecot/lib20_fts_plugin.so Reading symbols from /usr/lib/dovecot/lib20_zlib_plugin.so...done. Loaded symbols for /usr/lib/dovecot/lib20_zlib_plugin.so Reading symbols from /lib/libz.so.5...done. Loaded symbols for /lib/libz.so.5 Reading symbols from /usr/lib/libbz2.so.4...done. Loaded symbols for /usr/lib/libbz2.so.4 Reading symbols from /usr/lib/dovecot/lib21_fts_squat_plugin.so...done. Loaded symbols for /usr/lib/dovecot/lib21_fts_squat_plugin.so Reading symbols from /usr/lib/dovecot/lib30_imap_zlib_plugin.so...done. Loaded symbols for /usr/lib/dovecot/lib30_imap_zlib_plugin.so Reading symbols from /usr/lib/dovecot/lib90_antispam_plugin.so...done. Loaded symbols for /usr/lib/dovecot/lib90_antispam_plugin.so Reading symbols from /libexec/ld-elf.so.1...done. Loaded symbols for /libexec/ld-elf.so.1 #0 0x105e0d88 in imap_match () from /usr/lib/dovecot/libdovecot.so.0 (gdb) bt full #0 0x105e0d88 in imap_match () from /usr/lib/dovecot/libdovecot.so.0 No symbol table info available. #1 0x104e82e5 in autocreate_iter_autobox.20436.5667 () from /usr/lib/dovecot/libdovecot-storage.so.0 No symbol table info available. #2 0x104e6eda in autocreate_iter_next.20443 () from /usr/lib/dovecot/libdovecot-storage.so.0 No symbol table info available. #3 0x104dd72e in mailbox_list_iter_next () from /usr/lib/dovecot/libdovecot-storage.so.0 No symbol table info available. #4 0x00416351 in list_namespace_mailboxes.7882 (ctx=0x10a3f158) at cmd-list.c:408 info = (const struct mailbox_info *) 0x10a0f920 ns = (struct mail_namespace *) 0x0 flags = 536870916 str = (struct buffer *) 0x10a04290 mutf7_name = (struct buffer *) 0x10a043e0 name = (const __unknown__ *) 0x10a10040 "INBOX" ret = 1 #5 0x0041c2ac in cmd_list_continue (cmd=0x10a3f040) at cmd-list.c:823 _data_stack_cur_id = 4 ctx = (struct cmd_list_context *) 0x10a3f158 ret = 0 #6 0x0041c1d0 in cmd_list_full (cmd=0x10a3f040, lsub=false) at cmd-list.c:999 client = (struct client *) 0x10a3e840 args = (const struct imap_arg *) 0x10aa4118 list_args = (const struct imap_arg *) 0x10aa4340 arg_count = 1 ctx = (struct cmd_list_context *) 0x10a3f158 patterns = {arr = {buffer = 0x10a3f1a8, element_size = 8}, v = 0x10a3f1a8, v_modifiable = 0x10a3f1a8} pattern = (const __unknown__ *) 0x10a04268 "INBOX" patterns_strarr = (const __unknown__ * const *) 0x10a3f1e0 str = (struct buffer *) 0x10a041f0 #7 0x0041bc80 in cmd_list (cmd=0x10a3f040) at cmd-list.c:1014 No locals. #8 0x00411264 in command_exec (cmd=0x10a3f040) at imap-commands.c:147 hook = (const struct command_hook *) 0x10a22200 ret = false #9 0x0040df3c in client_command_input (cmd=0x10a3f040) at imap-client.c:673 client = (struct client *) 0x10a3e840 command = (struct command *) 0x7fff0001 __FUNCTION__ = "client_command_input" __FUNCTION__ = "client_command_input" #10 0x0040de42 in client_handle_next_command (client=0x10a3e840, remove_io_r=0x7fffea6d) at imap-client.c:740 size = 279029312 #11 0x0040d7b5 in client_handle_input (client=0x10a3e840) at imap-client.c:777 _data_stack_cur_id = 3 ret = false remove_io = false handled_commands = false __FUNCTION__ = "client_handle_input" __FUNCTION__ = "client_han
Re: [Dovecot] 2.1b6 imapc sync error
On Wed, Feb 15, 2012, at 10:50 PM, Timo Sirainen wrote: > On 15.2.2012, at 22.48, Metro Domain Admin wrote: > > > On Wed, Feb 15, 2012, at 09:36 PM, Timo Sirainen wrote: > >> Yes, it's because of "sync". The "Not supported" comes from imapc > >> backend, because Dovecot tried to do some changes to it that weren't > >> possible with IMAP protocol (modseq changes probably). I think the > >> migration still was successful though. > > > > The migration went beautifully otherwise. But are the errors minor > > enough that I can continue with sync? > > Probably better to continue with "backup" just in case. :) > > > I had the idea that I could sync back to the imapc account, as a > > fallback option (and, presumably I'd want to preserve the /tmp/imapc > > directory for this?). > > That's not something that I've tested, and I don't know how well it works > (if at all). > OK, "backup" it is then. Thanks.
Re: [Dovecot] MySQL server has gone away / dict ? tests done
Am 15.02.2012 20:10, schrieb Robert Schetterer: > Am 15.02.2012 19:43, schrieb Timo Sirainen: >> On 15.2.2012, at 20.22, Robert Schetterer wrote: >> >>> sorry for some more question >>> what is the default behave if dict quota over sql cant be reached >>> i.e with lmtp >>> >>> something like log warning and deliver anyway ? >> >> I think it tempfails. Try. > > hm, test servers arent up recently > cant do it on production > > but i will test before i go try dove 2.1 > and report, @list perhaps anyone other having it tested before? >> > ok the test server was good enough for small tests with 2.0.13 dove private/dovecot-lmtp] said: 451 4.2.0 <@com> Internal error occurred. Refer to server log for more information. dict: Error: mysql(localhost2): Connect failed to database (postfix): Unknown MySQL server host '...' (1) - waiting for 125 seconds before retry youre right looks like default is tempfail 451 so it stays in postfix queue and is permanent retry after sql comming back , its getting delivered i.e force with Flush Queue so thats good enough for me i think -- Best Regards MfG Robert Schetterer Germany/Munich/Bavaria
Re: [Dovecot] 2.1b6 imapc sync error
On 15.2.2012, at 21.30, Metro Domain Admin wrote: > I received this error at the end of a migration from imapc to mdbox. Is > it because I wanted doveadm 'sync' instead of 'backup'? I didn't get > time to do any testing, but since you're pushing for the release, here > it is: > > kerio2:~ adminuser$ /opt/dovecot/bin/doveadm -o imapc_user=jsample -o > imapc_password=** -o imapc_host=*.*.*.* sync -R -u > jsample...@mydomain.com imapc:/tmp/imapc > dsync(jsample...@mydomain.com): Error: Can't update mailbox > Archives/2011: Not supported Yes, it's because of "sync". The "Not supported" comes from imapc backend, because Dovecot tried to do some changes to it that weren't possible with IMAP protocol (modseq changes probably). I think the migration still was successful though.
[Dovecot] 2.1b6 imapc sync error
I received this error at the end of a migration from imapc to mdbox. Is it because I wanted doveadm 'sync' instead of 'backup'? I didn't get time to do any testing, but since you're pushing for the release, here it is: kerio2:~ adminuser$ /opt/dovecot/bin/doveadm -o imapc_user=jsample -o imapc_password=** -o imapc_host=*.*.*.* sync -R -u jsample...@mydomain.com imapc:/tmp/imapc dsync(jsample...@mydomain.com): Error: Can't update mailbox Archives/2011: Not supported dsync(jsample...@mydomain.com): Error: Can't update mailbox Archives/2012: Not supported dsync(jsample...@mydomain.com): Error: Can't update mailbox INBOX: Not supported ...etc, for all mailboxes in the account. This is my userdb entry: jsample...@mydomain.com:{***}password:502:6:IMAPC RECIPIENT::/bin/false: kerio2:~ adminuser$ /opt/dovecot/bin/doveconf -n # 2.1.rc6: /opt/dovecot-2.1.rc6/etc/dovecot/dovecot.conf # OS: Darwin 9.8.0 Power Macintosh auth_cache_negative_ttl = 0 auth_cache_size = 1 M auth_debug = yes auth_mechanisms = plain login auth_username_format = %n...@mydomain.com auth_verbose = yes disable_plaintext_auth = no instance_name = dovecot-2.1.rc6 listen = 192.168.20.40 mail_home = /var/mail/%d/%n mail_location = mdbox:~/mdbox mail_plugin_dir = /opt/dovecot/lib/dovecot mail_plugins = fts fts_squat# I know, this is deprecated in 2.1 mail_privileged_group = mail maildir_very_dirty_syncs = yes namespace inbox { inbox = yes location = mailbox Drafts { special_use = \Drafts } mailbox Junk { special_use = \Junk } mailbox Sent { special_use = \Sent } mailbox "Sent Messages" { special_use = \Sent } mailbox Trash { special_use = \Trash } prefix = } passdb { args = scheme=CRYPT username_format=%u /opt/dovecot/etc/dovecot/users driver = passwd-file } plugin { fts = squat } postmaster_address = postmas...@mydomain.com protocols = imap lmtp service auth { unix_listener /var/spool/postfix/private/auth { group = _postfix mode = 0660 user = _postfix } unix_listener auth-userdb { group = mail mode = 0660 user = adminuser } } service imap { executable = imap postlogin } service lmtp { unix_listener /var/spool/postfix/private/dovecot-lmtp { group = _postfix mode = 0666 user = _postfix } } service postlogin { executable = script-login rawlog -t } service stats { fifo_listener stats-mail { mode = 00 } } ssl_ca =
Re: [Dovecot] MySQL server has gone away / dict ?
Am 15.02.2012 19:43, schrieb Timo Sirainen: > On 15.2.2012, at 20.22, Robert Schetterer wrote: > >> sorry for some more question >> what is the default behave if dict quota over sql cant be reached >> i.e with lmtp >> >> something like log warning and deliver anyway ? > > I think it tempfails. Try. hm, test servers arent up recently cant do it on production but i will test before i go try dove 2.1 and report, @list perhaps anyone other having it tested before? > -- Best Regards MfG Robert Schetterer Germany/Munich/Bavaria
Re: [Dovecot] domain quota in sql
On 15.02.2012 14:05, Timo Sirainen wrote: Is there a way to add domainname as another collumn in dbase? This will simplify the SQL query and the GROUP BY could be used. Not currently. Perhaps for v2.2 dict-sql redesign. It will be great feature. Well, yeah, it kind of works, but not 100% :) Anyway, why is the rescan a problem anyway? Does your domain quota value keep breaking? In normal operation it should work fine. Domain quota gathering based on config examples works "funny". Its the best description I can get (yes, very descriptive ;) ). There are both entries for users (user@domain) and domains. It is not making sense for me, so I'm assuming that its the missing percentage of the working part ;) Tu sum-up the thread. I went for updating periodically the basic quota table with missing domain names. Working great. Thanks all for suggestions. -- Adam Szpakowski
Re: [Dovecot] Dovecot v2.2 plans
On 15.2.2012, at 21.02, Mark Moseley wrote: > Not to beat a dead horse, but the ability to use remote directors > might be interesting. It'd make moving into a director setup probably > a bit more easy. Then any server could proxy to the backend servers, > but without losing the advantage of director-based locality. If a box > sees one of its own IPs in the director_servers list, then it knows > it's part of the ring. If it doesn't, then it could contact a randomly > selected director IP. It should already be possible to do that, although not automatically based on looking at your own IP.. Anyway, non-director servers could simply have the passdb return proxy=y host=director-servers, where director-servers expands to a round-robin list of director IPs (Dovecot uses the first one). I guess it would be possible to do this automatically if passdb lookup returns proxy=y but no host (means director isn't enabled), but if director_servers is non-empty one of the IPs would be randomly chosen. A little kludgy though..
Re: [Dovecot] Dovecot v2.2 plans
On Mon, Feb 13, 2012 at 3:47 AM, Timo Sirainen wrote: > Here's a list of things I've been thinking about implementing for Dovecot > v2.2. Probably not all of them will make it, but I'm at least interested in > working on these if I have time. > > Previously I've mostly been working on things that different companies were > paying me to work on. This is the first time I have my own company, but the > prioritization still works pretty much the same way: > > - 1. priority: If your company is highly interested in getting something > implemented, we can do it as a project via my company. This guarantees that > you'll get the feature implemented in a way that integrates well into your > system. > - 2. priority: Companies who have bought Dovecot support contract can let me > know what they're interested in getting implemented. It's not a guarantee > that it gets implemented, but it does affect my priorities. :) > - 3. priority: Things other people want to get implemented. > > There are also a lot of other things I have to spend my time on, which are > before the 2. priority above. I guess we'll see how things work out. > Not to beat a dead horse, but the ability to use remote directors might be interesting. It'd make moving into a director setup probably a bit more easy. Then any server could proxy to the backend servers, but without losing the advantage of director-based locality. If a box sees one of its own IPs in the director_servers list, then it knows it's part of the ring. If it doesn't, then it could contact a randomly selected director IP.
Re: [Dovecot] Dovecot v2.2 plans
On 15.2.2012, at 20.51, Timo Sirainen wrote: > The initial version is really about doing all of this with NFS. In NFS setup > if two replaced storages two replicated storages.. ugh. > are both mounted and the primary storage dies, Dovecot will start using the > replica. So that's HA.
Re: [Dovecot] Dovecot v2.2 plans
On 15.2.2012, at 5.08, wrote: > I know you mentioned you would cover this in a coming post, but we were > curious what the new dsync replication will be capable of. Would it > monitor changes to mailboxes and push automatic replication to the remote > mail store, Yes. > and if this is the case could it be an N-way replication setup > in which any host in a cluster can participate in the replication? Initially 2-way, but I don't think anything prevents it being N-way. > Do you consider this to be a high availability solution? The initial version is really about doing all of this with NFS. In NFS setup if two replaced storages are both mounted and the primary storage dies, Dovecot will start using the replica. So that's HA. The other possibility is to run Dovecot in two completely separate data centers and replicate through ssh. Here are more possibilities for how to do HA, but some of them also have downsides.. dovecot.fi mails are actually done this way, and can be accessed from either server at any time. I've been thinking about soon making half of my clients use one server and half the other one to see if I can find any dsync bugs (I've always 3-4 IMAP clients connected).
Re: [Dovecot] MySQL server has gone away / dict ?
On 15.2.2012, at 20.22, Robert Schetterer wrote: > sorry for some more question > what is the default behave if dict quota over sql cant be reached > i.e with lmtp > > something like log warning and deliver anyway ? I think it tempfails. Try.
Re: [Dovecot] MySQL server has gone away / dict ?
Am 15.02.2012 17:10, schrieb Robert Schetterer: > Am 15.02.2012 14:07, schrieb Timo Sirainen: >> On Wed, 2012-02-15 at 09:10 +0100, Robert Schetterer wrote: >>> Hi Timo,just to make sure >>> i have an extra >>> dovecot-dict-quota-sql.conf.ext ( dove 2.0.18 ) >>> >>> connect = host=192.168.123.150 dbname=.. user=... password=... >> .. >>> is it possible to have i.e >>> >>> connect = host=192.168.123.150 host=127.0.0.1 dbname=.. user=... >>> password=... >>> >>> there too? >> >> Assuming your SQL database is configured to do synchronous multi-master >> replication, sure. >> >> > jep ,thx Timo > Hi Timo, sorry for some more question what is the default behave if dict quota over sql cant be reached i.e with lmtp something like log warning and deliver anyway ? -- Best Regards MfG Robert Schetterer Germany/Munich/Bavaria
Re: [Dovecot] MySQL server has gone away / dict ?
Am 15.02.2012 14:07, schrieb Timo Sirainen: > On Wed, 2012-02-15 at 09:10 +0100, Robert Schetterer wrote: >> Hi Timo,just to make sure >> i have an extra >> dovecot-dict-quota-sql.conf.ext ( dove 2.0.18 ) >> >> connect = host=192.168.123.150 dbname=.. user=... password=... > .. >> is it possible to have i.e >> >> connect = host=192.168.123.150 host=127.0.0.1 dbname=.. user=... >> password=... >> >> there too? > > Assuming your SQL database is configured to do synchronous multi-master > replication, sure. > > jep ,thx Timo -- Best Regards MfG Robert Schetterer Germany/Munich/Bavaria
Re: [Dovecot] Dovecot-2.0.18 and Dovecot-Pigeonwhole-0.2.6lL
Thanks Thomas and Timo for the fast answer. Next time I'll read the News file ;-) It' works now. On 02/15/2012 04:14 PM, Thomas Leuxner wrote: > On Wed, Feb 15, 2012 at 03:55:28PM +0100, Ralf Zimmermann wrote: >> If I use Dovecot-2.0.17 and Dovecot-Pigeonwhole-0.2.5 with the same >> configuration I can define >> >>include :personal "vacation.sieve"; >> >> in my main sieve script. All works fine. > > Changelog v0.2.6: > > * This release fixes unintentional behavior of the include extension. >Included script names with a name like "name.sieve" would implicitly >map to a script file called "name.sieve" and not "name.sieve.sieve". >Keep in mind that the .sieve file extension has no meaning from >within the Sieve language. A Sieve script is always stored with an >appended .sieve file extension, also when the name already ends with >a .sieve suffix. > > Try: > > include :personal "vacation"; > > Regards > Thomas Regards Ralf
Re: [Dovecot] Dovecot-2.0.18 and Dovecot-Pigeonwhole-0.2.6lL
On Wed, Feb 15, 2012 at 03:55:28PM +0100, Ralf Zimmermann wrote: > If I use Dovecot-2.0.17 and Dovecot-Pigeonwhole-0.2.5 with the same > configuration I can define > >include :personal "vacation.sieve"; > > in my main sieve script. All works fine. Changelog v0.2.6: * This release fixes unintentional behavior of the include extension. Included script names with a name like "name.sieve" would implicitly map to a script file called "name.sieve" and not "name.sieve.sieve". Keep in mind that the .sieve file extension has no meaning from within the Sieve language. A Sieve script is always stored with an appended .sieve file extension, also when the name already ends with a .sieve suffix. Try: include :personal "vacation"; Regards Thomas signature.asc Description: Digital signature
Re: [Dovecot] 2.1.rc5 Cannot delete folders from trash
On 2/14/2012 4:42 PM, Willie Gillespie wrote: On 02/14/2012 01:40 PM, Daniel L. Miller wrote: On 2/14/2012 12:06 PM, Willie Gillespie wrote: On 2/13/2012 8:34 PM, Daniel L. Miller wrote: I'm fighting the same issue. With the current release (2.1rc6) no errors are logged - but I'm having problems deleted folders from trash. I've enabled tb-extra-mailbox-sep. Two folders that were previously in Trash were successfully removed. I deleted four more - after several Thunderbird restarts, compacts, refreshes, I have killed three of them - there is still one folder that won't "die". Thunderbird reports the mailbox doesn't exist, yet it continues to appear. Out of curiosity -- does the mailbox actually exist if you look on the Dovecot server? Secondly, is it listed in your subscription file? At one time - yes they were. After further playing, they do not exist in the on-disk folder structure, nor in the subscription file. But still show in the client - with errors. Sounds like a Thunderbird bug then. With Thunderbird shut down, you could browse into the profile. ~\.thunderbird or C:\Users\name\AppData\Roaming\Thunderbird\whatever\ImapMail\server.name Find the mailbox that is not supposed to be there and move/delete it. The filename will usually just be the mailbox name. A .msf file is Thunderbird's index file. It will create .sbd folders for any sub-mailboxes. I tried going in via squirrelmail - saw no subfolders under trash. Went back in with Thunderbird - all gone. -- Daniel
Re: [Dovecot] Dovecot-2.0.18 and Dovecot-Pigeonwhole-0.2.6
On 15.2.2012, at 16.55, Ralf Zimmermann wrote: > main_script: line 249: error: included personal script 'vacation.sieve' > does not exist. .. > If I use Dovecot-2.0.17 and Dovecot-Pigeonwhole-0.2.5 with the same > configuration I can define > > include :personal "vacation.sieve"; include :personal "vacation";
[Dovecot] Dovecot-2.0.18 and Dovecot-Pigeonwhole-0.2.6
Hi all, today I have compiled Dovecot-2.0.18 with Dovecot-Pigeonwhole-0.2.6. Now I have following Problem with sieve: %<- main_script: line 249: error: included personal script 'vacation.sieve' does not exist. main_script: error: validation failed. %<- I have a definition for 'sieve_dir' and the sieve script 'vacation.sieve' exits in the folder. # Dovecot Sieve Parameters plugin { ... sieve = ~/.dovecot.sieve sieve_dir = ~/sieve } If I use Dovecot-2.0.17 and Dovecot-Pigeonwhole-0.2.5 with the same configuration I can define include :personal "vacation.sieve"; in my main sieve script. All works fine. Greets Ralf
Re: [Dovecot] MySQL server has gone away / dict ?
On Wed, 2012-02-15 at 09:10 +0100, Robert Schetterer wrote: > Hi Timo,just to make sure > i have an extra > dovecot-dict-quota-sql.conf.ext ( dove 2.0.18 ) > > connect = host=192.168.123.150 dbname=.. user=... password=... .. > is it possible to have i.e > > connect = host=192.168.123.150 host=127.0.0.1 dbname=.. user=... > password=... > > there too? Assuming your SQL database is configured to do synchronous multi-master replication, sure.
Re: [Dovecot] domain quota in sql
On Wed, 2012-02-15 at 08:26 +0100, Adam Szpakowski wrote: > On 15.02.2012 02:55, Timo Sirainen wrote: > > On 15.2.2012, at 3.54, Timo Sirainen wrote: > > > >> Domain-quota support in Dovecot is only partial. Recalculating domain > >> quota would require more code. Last time when someone asked about this I > >> wasn't even sure how it could be implemented, but nowadays it actually > >> would be possible to do with: > > Oh, and you could actually already do this with a doveadm script: > [cut] > I'm using something like this, but directly on the dbase level. > Unfortunately such operation is quite db intensive, so I'm looking for a > simpler solution. Isn't it basically one table scan? To do UPDATE .. WHERE username = '% @domain' > Is there a way to add domainname as another collumn in dbase? This will > simplify the SQL query and the GROUP BY could be used. Not currently. Perhaps for v2.2 dict-sql redesign. > > Of course it would be nice if Dovecot internally supported this. > I was under impression, that dovecot does support this. In examples one > can see: > > /usr/share/doc/dovecot-core/example-config/conf.d/90-quota.conf .. > Also on dovecot2 wiki we can see (http://wiki2.dovecot.org/Quota/Dict): Well, yeah, it kind of works, but not 100% :) Anyway, why is the rescan a problem anyway? Does your domain quota value keep breaking? In normal operation it should work fine.
Re: [Dovecot] pop3 not autocreating directory structure
On Wed, 2012-02-15 at 12:52 +0100, Jan-Frode Myklebust wrote: > Is it maybe changeset 11683:148fccbe9f32 you remeber: > > - - maildir: sometimes rm -rf Maildir;imaptest logout=0 gives > - Error: Opening INBOX failed: Mailbox doesn't exist: INBOX That's probably maildir-specific. But dboxes have had same problems. > This was just the updated to the todo-list, but I can't see what the fix > was. Also, if it was just occationally failing, it might not be that > critical.. So far it's only happended for one user for the last 36 > hours, so either it's only occationally failing, or the other new users > are visiting webmail/imap before pop. Yes, it's most likely only temporary and the second login works.
Re: [Dovecot] pop3 not autocreating directory structure
On Wed, Feb 15, 2012 at 03:49:21AM +0200, Timo Sirainen wrote: > > > > Looking at the timestamps in the filesystem I see that the users home > > directory wasn't created before switcing to imap. > > > > Is this a know problem? > > Probably again a bug in your specific Dovecot version. :) I remember doing > fixes related to this (not entirely sure if it was only for v2.1). > Is it maybe changeset 11683:148fccbe9f32 you remeber: - - maildir: sometimes rm -rf Maildir;imaptest logout=0 gives - Error: Opening INBOX failed: Mailbox doesn't exist: INBOX This was just the updated to the todo-list, but I can't see what the fix was. Also, if it was just occationally failing, it might not be that critical.. So far it's only happended for one user for the last 36 hours, so either it's only occationally failing, or the other new users are visiting webmail/imap before pop. -jf
Re: [Dovecot] log message about client_limit may in fact be due to ulimit
On 15.2.2012, at 10.51, Christoph Bußenius wrote: >> Do you see some error message also about "Too many open files", > > Ah, now that I grep for it, I see those messages too :) During one hour, the > messages were logged with the following number of occurrences: > > - Twice: dovecot: anvil: Error: net_accept() failed: Too many open files > - Twice: config: Error: net_accept() failed: Too many open files > - Twice: ipc: Error: net_accept() failed: Too many open files > - 43 times: master: Warning: service(ipc): client_limit (10) reached, > client connections are being dropped > - 43 times: master: Warning: service(anvil): client_limit (10) reached, > client connections are being dropped Oh, right. The error message is wrong. There should be a difference between the client_limit having actually reached, and an error condition (e.g. out of fds) that causes a process to temporarily stop listening for new clients (= setting "available client count" to 0, which makes master think it has used up all of its clients). I'll fix it to v2.1.1.
Re: [Dovecot] dsync, hard-links and refcounts
On 15.02.2012 04:46, Timo Sirainen wrote: The attached patch fixes it. I'll commit it to v2.1 hg after I'll release v2.1.0.. Thanks. I guess it would be wise to upgrade our new Dovecot mail store to 2.1 before we migrate all our Courier maildir users to it... Cheers, Chnristoph -- Christoph Bußenius Rechnerbetriebsgruppe der Fakultäten Informatik und Mathematik Technische Universität München +49 89-289-18519 <> Raum 00.05.055 <> Boltzmannstr. 3 <> Garching
Re: [Dovecot] log message about client_limit may in fact be due to ulimit
On 15.02.2012 03:37, Timo Sirainen wrote: On 15.2.2012, at 4.35, Timo Sirainen wrote: Oh, this is most likely related because you're not running in high-performance login process mode, unlike pretty much everyone else running proxies: http://wiki2.dovecot.org/LoginProcess Since yesterday all our users (2000 active) are being routed over this proxy, and we have not experienced any performance problems. The system load is below 0.1 most of the time. So afaict there is no reason to use high-performance mode. Cheers, Christoph -- Christoph Bußenius Rechnerbetriebsgruppe der Fakultäten Informatik und Mathematik Technische Universität München +49 89-289-18519 <> Raum 00.05.055 <> Boltzmannstr. 3 <> Garching
Re: [Dovecot] domain quota in sql
Hi Im not an expert in Dovecot but what prohibits you adding a field to the table Dovecot will not use it thats all Im not sure what version of database You are using but postgres,oracle and never versions of mysql have something called views (could be used to hide the additional column from dovecot if necessary) and as far as i remember triggers that could be launched on insert, update to populate that additional column Other solution (not sure if applicable for Your needs) is to enable file system quota without actually setting up any quotas/group quotas (all users from single domain must belong to same group tho) this allows quick disk usage check without excess disk io On Wed, 15 Feb 2012 09:07:04 +0100, Adam Szpakowski wrote: > On 15.02.2012 08:47, Robert Schetterer wrote: >> Hi i am not sure what are trying to goal >> with domain quota, if you setup your accounts i.e with postfixadmin etc >> then its up to the gui logic , stopping postmasters to setup more >> accounts ( with quotas ) as you ( the superadmin ) want. > My fault, I should add some "big picture" info. > We are using admin panel based on iRedMail Panel, and want to show quota > usage on the domain level. > Quota enforcing is only on user level and this part works nicely. > What I need is to have in dbase live data which allows me to get quota > usage on the domain level to show it in the admin panel. > The problem is, that this operation must not by db intensive. Getting > entire db and the processing it with some script is fine for daily > reports but not for "live" view. > > My example with doveadm for quota recalc was only a way to show how the > problem can be triggered. We are not using doveadm for this purpose. > >> For everything else user quotas usally are enough >> >> thinkable maybe calculation of all users quotas in dict from one domain >> in a sql postfix query table to stop deliver in more mail, but i dont >> think this makes real sense > In future the quota enforcement on domain level could be a nice add-on, > but for now it is not so important for us. -- Pozdrawiam, Przemysław Orzechowski Administrator Sieci/Network Administrator e: przemek.orzechow...@makolab.net t: +48 42 683 74 96 MakoLab S.A. ul. Demokratyczna 46, 93-430 Łódź www.makolab.pl Spółka zarejestrowana w Krajowym Rejestrze Sądowym przez Sąd Rejonowy dla Łodzi - Śródmieścia w Łodzi XX Wydział Krajowego Rejestru Sądowego pod numerem KRS 289179. Wysokość kapitału zakładowego wynosi 707 473 PLN. Kapitał zakładowy został wpłacony w całości. NIP 7250015526, REGON 471343117 Wiadomość ta jest przeznaczona jedynie dla osoby lub podmiotu będącego jej adresatem i może zawierać poufne lub uprzywilejowane informacje. Zakazane jest przeglądanie, przesyłanie, rozpowszechnianie lub inne wykorzystywanie tych informacji, jak również podejmowanie działań na ich podstawie, przez osoby lub podmioty inne niż zamierzony adresat. Jeśli otrzymali Państwo tę wiadomość przez pomyłkę, prosimy o poinformowanie nadawcy i usunięcie jej z komputera. The information transmitted is intended only for the person or entity to which it is addressed and may contain confidential or privileged material. Any review, retransmission, dissemination or other use of, or taking of any action in reliance upon, this information by persons or entities other than the intended recipient is prohibited. If you received this in error, please notify the sender and delete the material from your computer.
Re: [Dovecot] log message about client_limit may in fact be due to ulimit
Hi, thank you for the reply. On 02/15/2012 03:35 AM, Timo Sirainen wrote: On 14.2.2012, at 17.04, Christoph Bußenius wrote: our Dovecot proxy started logging about reaching the client_limit once there were about 1000 connections running over it: Feb 14 15:22:02 vmmailproxy1 dovecot: master: Warning: service(anvil): client_limit (10) reached, client connections are being dropped Feb 14 15:22:18 vmmailproxy1 dovecot: master: Warning: service(ipc): client_limit (10) reached, client connections are being dropped This indicate some kind of a connection leak.. There shouldn't be so many connections. Each login process is supposed to create only one connection to anvil and one connection to ipc. How many open fds do you see in those processes currently? At the moment, there are - 1118 imap-login processes, - 1136 fds in anvil according to lsof - 1123 connections to anvil according to its proctitle - 1123 fds in ipc - connections to ipc I was a bit perplexed because 100.000 is far above 1000. However we found out that in fact the problem was the number of open files, and we have fixed it by putting 'ulimit -n 6000' into the init script. The number of open files is so large, because there are at least 200k fds used for connections to anvil and ipc processes. Do you see some error message also about "Too many open files", Ah, now that I grep for it, I see those messages too :) During one hour, the messages were logged with the following number of occurrences: - Twice: dovecot: anvil: Error: net_accept() failed: Too many open files - Twice: config: Error: net_accept() failed: Too many open files - Twice: ipc: Error: net_accept() failed: Too many open files - 43 times: master: Warning: service(ipc): client_limit (10) reached, client connections are being dropped - 43 times: master: Warning: service(anvil): client_limit (10) reached, client connections are being dropped (Dovecot has been restarted once during this hour.) or why do you think the number of open files was the problem? The default ulimit for open files is 1024 on this Ubuntu system (I should have noted that). The problems (log messages and "doveadm proxy list" error, as described in my last mail) appeared when there were about 1000 connections. I restarted dovecot a couple of times, and each time the problems re-appeared at ~1000 connections. Once I put "ulimit -n 6000" in the init script, the problems disappeared. I am pretty sure that this is what fixed everything for us. Since there have been no log messages about client_limit after we increased the ulimit, I think we can assume that the client_limit has never been the problem. This is why I reported the log message. As the ulimit was 1024 in the beginning, I guess there is no way the connections to anvil or ipc could possibly have reached 100.000. In fact, I never saw such a high number in the proctitle. From my very naive understanding of the source code (master/service-monitor.c): if (service->last_drop_warning + SERVICE_DROP_WARN_INTERVAL_SECS < ioloop_time) { service->last_drop_warning = ioloop_time; limit = service->process_limit > 1 ? service->process_limit : service->client_limit; i_warning("service(%s): %s (%u) reached, " "client connections are being dropped", service->set->name, service->process_limit > 1 ? "process_limit" : "client_limit", limit); } The actual number of open connections is not explicitly compared against client_limit before the warning. Maybe this leads to wrong numbers in the warning? (This part of the code looks similar in hg 2.0 and 2.1., though I have only used 2.0.18.) The "doveadm proxy list" would fail with an error message: $ sudo doveadm proxy list doveadm(root): Error: LIST failed: Disconnected Segmentation fault The segfault did not happen every time I tried it. I'm sorry I don't have any core dumps or backtraces, because I was more concerned about putting the proxy into a sane state. Maybe I can reproduce this on a test server if you would like a back trace. http://hg.dovecot.org/dovecot-2.0/rev/c402fb407501 fixes the crash I think. Thanks… however I am afraid I have not been able to reproduce the segfault since yesterday. Cheers, Christoph
Re: [Dovecot] domain quota in sql
On 15.02.2012 09:19, Robert Schetterer wrote: as workaround it should be possible to calculate filllevel by domain with some bash script and cron sending an info mail to you might be not exact, but enough to see whats going on ( depends on your real domain/mailbox setup...maildir etc) [cut] I'm affraid that this is not a viable option. It should be done quite often to achieve "live data" feel and the amount of I/O to do so on storage/filesystem level is staggering. Good enough solution will be to have an additional column in db table with domain for each quota record. This will allow us to do something like this: SELECT domain, sum(bytes) as sum_bytes, sum(messages) as sum_messages FROM used_quota GROUP BY domain The missing domain info can be updated regularly via some cron script. This could be a workable solution. -- Adam Szpakowski
Re: [Dovecot] domain quota in sql
Am 15.02.2012 09:07, schrieb Adam Szpakowski: > On 15.02.2012 08:47, Robert Schetterer wrote: >> Hi i am not sure what are trying to goal >> with domain quota, if you setup your accounts i.e with postfixadmin etc >> then its up to the gui logic , stopping postmasters to setup more >> accounts ( with quotas ) as you ( the superadmin ) want. > My fault, I should add some "big picture" info. > We are using admin panel based on iRedMail Panel, and want to show quota > usage on the domain level. > Quota enforcing is only on user level and this part works nicely. > What I need is to have in dbase live data which allows me to get quota > usage on the domain level to show it in the admin panel. > The problem is, that this operation must not by db intensive. Getting > entire db and the processing it with some script is fine for daily > reports but not for "live" view. as workaround it should be possible to calculate filllevel by domain with some bash script and cron sending an info mail to you might be not exact, but enough to see whats going on ( depends on your real domain/mailbox setup...maildir etc) i.e like du -sch schetterer.org/ 1,7Gschetterer.org/ or du -sch schetterer.org/* 24K schetterer.org/@schetterer.org 431Mschetterer.org/...@schetterer.org 1,3Gschetterer.org/@schetterer.org 1,7Gsum perhaps the same works with getting it out from sql > > My example with doveadm for quota recalc was only a way to show how the > problem can be triggered. We are not using doveadm for this purpose. > >> For everything else user quotas usally are enough >> >> thinkable maybe calculation of all users quotas in dict from one domain >> in a sql postfix query table to stop deliver in more mail, but i dont >> think this makes real sense > In future the quota enforcement on domain level could be a nice add-on, > but for now it is not so important for us. > -- Best Regards MfG Robert Schetterer Germany/Munich/Bavaria
Re: [Dovecot] MySQL server has gone away / dict ?
Am 28.01.2012 22:06, schrieb Robert Schetterer: > Am 28.01.2012 21:07, schrieb Timo Sirainen: >> On 13.1.2012, at 20.29, Mark Moseley wrote: >> >>> If there are multiple hosts, it seems like the most robust thing to do >>> would be to exhaust the existing connections and if none of those >>> succeed, then start a new connection to one of them. It will probably >>> result in much more convoluted logic but it'd probably match better >>> what people expect from a retry. >> >> Done: http://hg.dovecot.org/dovecot-2.0/rev/4e7676b890f1 >> > > Hi Timo > > doc/example-config/dovecot-sql.conf.ext > from hg > has something like > > # Database connection string. This is driver-specific setting. > # HA / round-robin load-balancing is supported by giving multiple host > # settings, like: host=sql1.host.org host=sql2.host.org > > but i dont find it in > http://wiki2.dovecot.org/AuthDatabase/SQL > > Hi Timo,just to make sure i have an extra dovecot-dict-quota-sql.conf.ext ( dove 2.0.18 ) connect = host=192.168.123.150 dbname=.. user=... password=... map { pattern = priv/quota/storage table = quota2 username_field = username value_field = bytes } map { pattern = priv/quota/messages table = quota2 username_field = username value_field = messages } is it possible to have i.e connect = host=192.168.123.150 host=127.0.0.1 dbname=.. user=... password=... there too? -- Best Regards MfG Robert Schetterer Germany/Munich/Bavaria
Re: [Dovecot] domain quota in sql
On 15.02.2012 08:47, Robert Schetterer wrote: Hi i am not sure what are trying to goal with domain quota, if you setup your accounts i.e with postfixadmin etc then its up to the gui logic , stopping postmasters to setup more accounts ( with quotas ) as you ( the superadmin ) want. My fault, I should add some "big picture" info. We are using admin panel based on iRedMail Panel, and want to show quota usage on the domain level. Quota enforcing is only on user level and this part works nicely. What I need is to have in dbase live data which allows me to get quota usage on the domain level to show it in the admin panel. The problem is, that this operation must not by db intensive. Getting entire db and the processing it with some script is fine for daily reports but not for "live" view. My example with doveadm for quota recalc was only a way to show how the problem can be triggered. We are not using doveadm for this purpose. For everything else user quotas usally are enough thinkable maybe calculation of all users quotas in dict from one domain in a sql postfix query table to stop deliver in more mail, but i dont think this makes real sense In future the quota enforcement on domain level could be a nice add-on, but for now it is not so important for us. -- Adam Szpakowski