Re: [Dovecot] expire plugin no delete 1.2.1 / 1.2.2 / 1.2.3 solved
Robert Schetterer schrieb: > Timo Sirainen schrieb: >> On Mon, 2009-08-10 at 20:04 +0200, Robert Schetterer wrote: >>> as far i remember there was root .. >>> yes of course i am having >>> variables in namespaces i think i need them for my setup >> expire-tool is currently incompatible with variables anywhere. v2.0 >> fixes this, but with v1.x you can't use them. >> >>> namespace private { >>> separator = / >>> prefix = "" >>> location = >>> maildir:/usr/local/virtual/%d/%u/:CONTROL=/usr/local/virtual/%d/%u/:INDEX=/usr/local/virtual/%d/%u/:INBOX=/usr/local/virtual/$ >> location = maildir:~/ >> >> should work here just fine. All of your directories point to the same >> one, so there's no need to specify them separately. >> >>> list = yes >>> hidden = no >>> subscriptions = yes >>> } >>> >>> namespace private { >>> prefix = "virtual/" >>> separator = / >>> location = virtual:/etc/dovecot/virtual:LAYOUT=maildir++ >> This is ok as it is. >> >>> hidden = yes >>> list = no >>> subscriptions= no >>> } >>> >>> namespace private { >>> prefix = "RealMails/" >>> separator = / >>> list = no >>> hidden = yes >>> location = >>> maildir:/usr/local/virtual/%d/%u/:CONTROL=/usr/local/virtual/%d/%u/:INDEX=/usr/local/virtual/%d/%u/:INBOX=/usr/local/virtual/$ >>> } >> Here again it's the same. Actually you should just remove the location >> setting from both RealMails/ and "" namespaces, so it'll just default to >> mail_location setting. >> >>> only in the first default namespace, changing others may crash with >>> pop3 downloading special imap folders >> As long as home points to the right directory there shouldn't be any >> problems. > > ok i ll try, and report > Hi Timo, this worked, mail was deleted ,so the thread is solved i didnt tested other functions deeply yet with new locations but on the first look it should be ok thx !!! -- Best Regards MfG Robert Schetterer Germany/Munich/Bavaria
Re: [Dovecot] expire plugin no delete 1.2.1 / 1.2.2 / 1.2.3
Timo Sirainen schrieb: > On Mon, 2009-08-10 at 20:04 +0200, Robert Schetterer wrote: >> as far i remember there was root .. >> yes of course i am having >> variables in namespaces i think i need them for my setup > > expire-tool is currently incompatible with variables anywhere. v2.0 > fixes this, but with v1.x you can't use them. > >> namespace private { >> separator = / >> prefix = "" >> location = >> maildir:/usr/local/virtual/%d/%u/:CONTROL=/usr/local/virtual/%d/%u/:INDEX=/usr/local/virtual/%d/%u/:INBOX=/usr/local/virtual/$ > > location = maildir:~/ > > should work here just fine. All of your directories point to the same > one, so there's no need to specify them separately. > >> list = yes >> hidden = no >> subscriptions = yes >> } >> >> namespace private { >> prefix = "virtual/" >> separator = / >> location = virtual:/etc/dovecot/virtual:LAYOUT=maildir++ > > This is ok as it is. > >> hidden = yes >> list = no >> subscriptions= no >> } >> >> namespace private { >> prefix = "RealMails/" >> separator = / >> list = no >> hidden = yes >> location = >> maildir:/usr/local/virtual/%d/%u/:CONTROL=/usr/local/virtual/%d/%u/:INDEX=/usr/local/virtual/%d/%u/:INBOX=/usr/local/virtual/$ >> } > > Here again it's the same. Actually you should just remove the location > setting from both RealMails/ and "" namespaces, so it'll just default to > mail_location setting. > >> only in the first default namespace, changing others may crash with >> pop3 downloading special imap folders > > As long as home points to the right directory there shouldn't be any > problems. ok i ll try, and report -- Best Regards MfG Robert Schetterer Germany/Munich/Bavaria
Re: [Dovecot] expire plugin no delete 1.2.1 / 1.2.2 / 1.2.3
On Mon, 2009-08-10 at 20:04 +0200, Robert Schetterer wrote: > as far i remember there was root .. > yes of course i am having > variables in namespaces i think i need them for my setup expire-tool is currently incompatible with variables anywhere. v2.0 fixes this, but with v1.x you can't use them. > namespace private { > separator = / > prefix = "" > location = > maildir:/usr/local/virtual/%d/%u/:CONTROL=/usr/local/virtual/%d/%u/:INDEX=/usr/local/virtual/%d/%u/:INBOX=/usr/local/virtual/$ location = maildir:~/ should work here just fine. All of your directories point to the same one, so there's no need to specify them separately. > list = yes > hidden = no > subscriptions = yes > } > > namespace private { > prefix = "virtual/" > separator = / > location = virtual:/etc/dovecot/virtual:LAYOUT=maildir++ This is ok as it is. > hidden = yes > list = no > subscriptions= no > } > > namespace private { > prefix = "RealMails/" > separator = / > list = no > hidden = yes > location = > maildir:/usr/local/virtual/%d/%u/:CONTROL=/usr/local/virtual/%d/%u/:INDEX=/usr/local/virtual/%d/%u/:INBOX=/usr/local/virtual/$ > } Here again it's the same. Actually you should just remove the location setting from both RealMails/ and "" namespaces, so it'll just default to mail_location setting. > only in the first default namespace, changing others may crash with > pop3 downloading special imap folders As long as home points to the right directory there shouldn't be any problems. signature.asc Description: This is a digitally signed message part
Re: [Dovecot] expire plugin no delete 1.2.1 / 1.2.2 / 1.2.3
Timo Sirainen schrieb: > On Mon, 2009-08-10 at 19:49 +0200, Robert Schetterer wrote: >> Timo Sirainen schrieb: >>> On Aug 10, 2009, at 11:17 AM, Robert Schetterer wrote: >>> >>> Info: maildir: >>> data=/usr/local/virtual//root/:CONTROL=/usr/local/virtual//root/:INDEX=/usr/local/virtual//root/:INBOX=/usr/local/virtual//root/ >>> >>> .. setting mail_location = maildir:~/ does not change anything mail is still not deleted, latest test were with 1.2.3 >>> What does it log now? >>> >> does not look very different then before >> >> i will send exact log tommorow > > The message above should be gone. There shouldn't be "root" anywhere in > paths. If there are, you still have %variables somewhere. Like maybe in > namespace { location }. as far i remember there was root .. yes of course i am having variables in namespaces i think i need them for my setup like this namespace private { separator = / prefix = "" location = maildir:/usr/local/virtual/%d/%u/:CONTROL=/usr/local/virtual/%d/%u/:INDEX=/usr/local/virtual/%d/%u/:INBOX=/usr/local/virtual/$ list = yes hidden = no subscriptions = yes } namespace private { prefix = "virtual/" separator = / location = virtual:/etc/dovecot/virtual:LAYOUT=maildir++ hidden = yes list = no subscriptions= no } namespace private { prefix = "RealMails/" separator = / list = no hidden = yes location = maildir:/usr/local/virtual/%d/%u/:CONTROL=/usr/local/virtual/%d/%u/:INDEX=/usr/local/virtual/%d/%u/:INBOX=/usr/local/virtual/$ } so should i try location = maildir:~/ only in the first default namespace, changing others may crash with pop3 downloading special imap folders -- Best Regards MfG Robert Schetterer Germany/Munich/Bavaria
Re: [Dovecot] expire plugin no delete 1.2.1 / 1.2.2 / 1.2.3
On Mon, 2009-08-10 at 19:49 +0200, Robert Schetterer wrote: > Timo Sirainen schrieb: > > On Aug 10, 2009, at 11:17 AM, Robert Schetterer wrote: > > > > Info: maildir: > > data=/usr/local/virtual//root/:CONTROL=/usr/local/virtual//root/:INDEX=/usr/local/virtual//root/:INBOX=/usr/local/virtual//root/ > > > > .. > >> setting > >> mail_location = maildir:~/ > >> does not change anything > >> mail is still not deleted, latest test were with 1.2.3 > > > > What does it log now? > > > does not look very different then before > > i will send exact log tommorow The message above should be gone. There shouldn't be "root" anywhere in paths. If there are, you still have %variables somewhere. Like maybe in namespace { location }. signature.asc Description: This is a digitally signed message part
Re: [Dovecot] expire plugin no delete 1.2.1 / 1.2.2 / 1.2.3
Timo Sirainen schrieb: > On Aug 10, 2009, at 11:17 AM, Robert Schetterer wrote: > > Info: maildir: > data=/usr/local/virtual//root/:CONTROL=/usr/local/virtual//root/:INDEX=/usr/local/virtual//root/:INBOX=/usr/local/virtual//root/ > > .. >> setting >> mail_location = maildir:~/ >> does not change anything >> mail is still not deleted, latest test were with 1.2.3 > > What does it log now? > does not look very different then before i will send exact log tommorow -- Best Regards MfG Robert Schetterer Germany/Munich/Bavaria
Re: [Dovecot] expire plugin no delete 1.2.1 / 1.2.2 / 1.2.3
On Aug 10, 2009, at 11:17 AM, Robert Schetterer wrote: Info: maildir: data=/usr/local/virtual//root/:CONTROL=/usr/local/virtual// root/:INDEX=/usr/local/virtual//root/:INBOX=/usr/local/virtual// root/ .. setting mail_location = maildir:~/ does not change anything mail is still not deleted, latest test were with 1.2.3 What does it log now?
Re: [Dovecot] expire plugin no delete 1.2.1 / 1.2.2 / 1.2.3
Robert Schetterer schrieb: > Timo Sirainen schrieb: >> On Tue, 2009-08-04 at 10:22 +0200, Robert Schetterer wrote: >>> Info: maildir: >>> data=/usr/local/virtual//root/:CONTROL=/usr/local/virtual//root/:INDEX=/usr/local/virtual//root/:INBOX=/usr/local/virtual//root/ >> Oh, right, this is the problem. You can't use %variables in >> mail_location setting. They get expanded too early. Since you're >> returning home anyway, use: >> >> mail_location = maildir:~/ >> > HI Timo, > ok i try this and report > Hi, Timo sorry to say setting mail_location = maildir:~/ does not change anything mail is still not deleted, latest test were with 1.2.3 -- Best Regards MfG Robert Schetterer Germany/Munich/Bavaria
Re: [Dovecot] expire plugin no delete 1.2.1 / 1.2.2
Timo Sirainen schrieb: > On Tue, 2009-08-04 at 10:22 +0200, Robert Schetterer wrote: >> Info: maildir: >> data=/usr/local/virtual//root/:CONTROL=/usr/local/virtual//root/:INDEX=/usr/local/virtual//root/:INBOX=/usr/local/virtual//root/ > > Oh, right, this is the problem. You can't use %variables in > mail_location setting. They get expanded too early. Since you're > returning home anyway, use: > > mail_location = maildir:~/ > HI Timo, ok i try this and report -- Best Regards MfG Robert Schetterer Germany/Munich/Bavaria
Re: [Dovecot] expire plugin no delete 1.2.1 / 1.2.2
On Tue, 2009-08-04 at 10:22 +0200, Robert Schetterer wrote: > Info: maildir: > data=/usr/local/virtual//root/:CONTROL=/usr/local/virtual//root/:INDEX=/usr/local/virtual//root/:INBOX=/usr/local/virtual//root/ Oh, right, this is the problem. You can't use %variables in mail_location setting. They get expanded too early. Since you're returning home anyway, use: mail_location = maildir:~/ signature.asc Description: This is a digitally signed message part
Re: [Dovecot] expire plugin no delete 1.2.1 / 1.2.2
Robert Schetterer schrieb: > Timo Sirainen schrieb: >> On Aug 3, 2009, at 3:52 AM, Robert Schetterer wrote: >> >>> /etc/crontab >>> 45 9 * * * root /usr/sbin/dovecot -c /etc/dovecot/dovecot.conf >>> --exec-mail ext /usr/lib/dovecot/expire-tool.sh >> Disable this for now and tomorrow just run the --test first manually, >> save its output, then if it seemed ok run without --test. >> > > ok i will do > /usr/sbin/dovecot -c /etc/dovecot/dovecot.conf > --exec-mail ext /usr/lib/dovecot/expire-tool.sh --test tommorow > and then > /usr/sbin/dovecot -c /etc/dovecot/dovecot.conf --exec-mail ext > /usr/lib/dovecot/expire-tool.sh > > savin the outputs > and additional looking in sql and imap savedate > > manually after deletetion time > Hi Timo, did that exactly in that row as you see the mail didnt get deleted ( stays in filesystem, and is shown to thunderbird ) but it expired in sql dict rightly but was not deleted /usr/sbin/dovecot -c /etc/dovecot/dovecot.conf --exec-mail ext /usr/lib/dovecot/expire-tool.sh --test Info: Loading modules from directory: /usr/lib/dovecot/modules/imap Info: Module loaded: /usr/lib/dovecot/modules/imap/lib01_acl_plugin.so Info: Module loaded: /usr/lib/dovecot/modules/imap/lib10_quota_plugin.so Info: Module loaded: /usr/lib/dovecot/modules/imap/lib20_autocreate_plugin.so Info: Module loaded: /usr/lib/dovecot/modules/imap/lib20_expire_plugin.so Info: Module loaded: /usr/lib/dovecot/modules/imap/lib20_fts_plugin.so Info: Module loaded: /usr/lib/dovecot/modules/imap/lib20_virtual_plugin.so Info: Module loaded: /usr/lib/dovecot/modules/imap/lib21_fts_squat_plugin.so Info: Quota root: name= backend=dict args=:proxy::quotadict Info: Quota warning: bytes=0 (95%) messages=0 command=/usr/local/bin/quota-warning.sh 95 Info: Quota warning: bytes=0 (80%) messages=0 command=/usr/local/bin/quota-warning.sh 80 Info: expire: pattern=Trash type=expunge secs=86400 Info: auth input: home=/usr/local/virtual/schetterer.com/rob...@schetterer.com/ Info: auth input: quota_rule=*:bytes=1024 Info: auth input: quota_rule2=Trash:storage=50240 Info: auth input: quota_rule3=Sent:storage=50240 Info: auth input: quota_rule4=Drafts:storage=50240 Info: auth input: quota_rule5=Templates:storage=50240 Info: auth input: quota_rule6=Junk:storage=50240 Info: auth input: mail=maildir:/usr/local/virtual/schetterer.com/rob...@schetterer.com/ Info: auth input: namespace_1_inbox=yes Info: auth input: uid=1001 Info: auth input: gid=1001 Info: dict quota: user=rob...@schetterer.com, uri=proxy::quotadict, noenforcing=0 Info: Namespace: type=private, prefix=, sep=/, inbox=yes, hidden=no, list=yes, subscriptions=yes Info: maildir: data=/usr/local/virtual//root/:CONTROL=/usr/local/virtual//root/:INDEX=/usr/local/virtual//root/:INBOX=/usr/local/virtual//root/ Info: maildir++: root=/usr/local/virtual//root, index=, control=, inbox=/usr/local/virtual//root Info: acl: initializing backend with data: vfile Info: acl: acl username = rob...@schetterer.com Info: acl: owner = 1 Info: acl vfile: Global ACL directory: (null) Info: Namespace: type=private, prefix=virtual/, sep=/, inbox=no, hidden=yes, list=no, subscriptions=no Info: virtual: data=/etc/dovecot/virtual:LAYOUT=maildir++ Info: maildir++: root=/etc/dovecot/virtual, index=, control=, inbox= Info: acl: initializing backend with data: vfile Info: acl: acl username = rob...@schetterer.com Info: acl: owner = 1 Info: acl vfile: Global ACL directory: (null) Info: Namespace: type=private, prefix=RealMails/, sep=/, inbox=no, hidden=yes, list=no, subscriptions=yes Info: maildir: data=/usr/local/virtual//root/:CONTROL=/usr/local/virtual//root/:INDEX=/usr/local/virtual//root/:INBOX=/usr/local/virtual//root/ Info: maildir++: root=/usr/local/virtual//root, index=, control=, inbox=/usr/local/virtual//root Info: acl: initializing backend with data: vfile Info: acl: acl username = rob...@schetterer.com Info: acl: owner = 1 Info: acl vfile: Global ACL directory: (null) Info: Namespace: type=shared, prefix=shared/%u/, sep=/, inbox=no, hidden=no, list=children, subscriptions=no Info: shared: root=, index=, control=, inbox= Info: Namespace : Using permissions from /usr/local/virtual//root: mode=0700 gid=-1 Info: acl vfile: file /usr/local/virtual//root/.Trash/dovecot-acl not found Info: rob...@schetterer.com/Trash: no messages left select mailbox, from_unixtime(expire_stamp), username from expireplugin; +-+-+---+ | mailbox | from_unixtime(expire_stamp) | username | +-+-+---+ | Trash | 2009-08-04 09:40:21 | rob...@schetterer.com | +-+-+---+ 1 row in set (0.00 sec) 3 select Trash * OK [CLOSED] * FLAGS (\Answered \Flagged \Deleted \Seen \Draft nonjunk Junk) * OK [PERMANENTFLAGS (\Answered \Flagged \Deleted \Seen \Draft nonjunk Junk \*)] Flags permitted. * 1 EXISTS * 0 RECENT * OK [UIDVALIDITY 1240758078] UI
Re: [Dovecot] expire plugin no delete 1.2.1 / 1.2.2
Timo Sirainen schrieb: > On Aug 3, 2009, at 3:52 AM, Robert Schetterer wrote: > >> /etc/crontab >> 45 9 * * * root /usr/sbin/dovecot -c /etc/dovecot/dovecot.conf >> --exec-mail ext /usr/lib/dovecot/expire-tool.sh > > Disable this for now and tomorrow just run the --test first manually, > save its output, then if it seemed ok run without --test. > ok i will do /usr/sbin/dovecot -c /etc/dovecot/dovecot.conf --exec-mail ext /usr/lib/dovecot/expire-tool.sh --test tommorow and then /usr/sbin/dovecot -c /etc/dovecot/dovecot.conf --exec-mail ext /usr/lib/dovecot/expire-tool.sh savin the outputs and additional looking in sql and imap savedate manually after deletetion time -- Best Regards MfG Robert Schetterer Germany/Munich/Bavaria
Re: [Dovecot] expire plugin no delete 1.2.1 / 1.2.2
On Aug 3, 2009, at 3:52 AM, Robert Schetterer wrote: /etc/crontab 45 9 * * * root /usr/sbin/dovecot -c /etc/dovecot/dovecot.conf --exec-mail ext /usr/lib/dovecot/expire-tool.sh Disable this for now and tomorrow just run the --test first manually, save its output, then if it seemed ok run without --test.
Re: [Dovecot] expire plugin no delete 1.2.1 / 1.2.2
Timo Sirainen schrieb: > On Aug 3, 2009, at 3:26 AM, Robert Schetterer wrote: > >> Timo Sirainen schrieb: >>> On Fri, 2009-07-31 at 17:21 +0200, Robert Schetterer wrote: Hi Timo, so now its clear, the mail did not got deleted if i now do Info: rob...@schetterer.com/Trash: no messages left >>> >>> So, it worked? "no messages left" means if you didn't give --test it >>> would have deleted all messages from the mailbox. >>> >> Hi Timo, no it didnt work >> i repeated the test since then twice >> the mail was not deleted > > Well, that message says that at the time there was no messages left in > the Trash. Do you mean that there were? Show me now what it says with: > > - expire-tool --test > - FETCH 1 X-SAVEDATE shows in a mailbox that should have expired messages > - SELECT * FROM .. showing the database row for the mailbox that should > have expired messages > Ok Timo, i start a new test to make sure mysql> select mailbox, from_unixtime(expire_stamp), username from expireplugin; +-+-+---+ | mailbox | from_unixtime(expire_stamp) | username | +-+-+---+ | Trash | 2009-08-04 09:40:21 | rob...@schetterer.com | +-+-+---+ 1 row in set (0.00 sec) 1 OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE SORT THREAD=REFERENCES THREAD=REFS MULTIAPPEND UNSELECT IDLE CHILDREN NAMESPACE UIDPLUS LIST-EXTENDED I18NLEVEL=1 CONDSTORE QRESYNC ESEARCH ESORT SEARCHRES WITHIN CONTEXT=SEARCH ACL RIGHTS=texk QUOTA] Logged in 2 select Trash * FLAGS (\Answered \Flagged \Deleted \Seen \Draft nonjunk Junk) * OK [PERMANENTFLAGS (\Answered \Flagged \Deleted \Seen \Draft nonjunk Junk \*)] Flags permitted. * 1 EXISTS * 0 RECENT * OK [UIDVALIDITY 1240758078] UIDs valid * OK [UIDNEXT 89] Predicted next UID * OK [HIGHESTMODSEQ 123] 2 OK [READ-WRITE] Select completed. 3 fetch 1:* (internaldate x-savedate) * 1 FETCH (INTERNALDATE "03-Aug-2009 09:40:16 +0200" X-SAVEDATE "03-Aug-2009 09:40:21 +0200") 3 OK Fetch completed. /usr/lib/dovecot/expire-tool.sh #!/bin/bash MAIL_PLUGINS=${MAIL_PLUGINS//imap_quota/} MAIL_PLUGINS=${MAIL_PLUGINS//mail_log/} MAIL_PLUGINS=${MAIL_PLUGINS//imap_acl/} exec ${0%.sh} "$@ /usr/sbin/dovecot -c /etc/dovecot/dovecot.conf --exec-mail ext /usr/lib/dovecot/expire-tool.sh --test Info: Loading modules from directory: /usr/lib/dovecot/modules/imap Info: Module loaded: /usr/lib/dovecot/modules/imap/lib01_acl_plugin.so Info: Module loaded: /usr/lib/dovecot/modules/imap/lib10_quota_plugin.so Info: Module loaded: /usr/lib/dovecot/modules/imap/lib20_autocreate_plugin.so Info: Module loaded: /usr/lib/dovecot/modules/imap/lib20_expire_plugin.so Info: Module loaded: /usr/lib/dovecot/modules/imap/lib20_fts_plugin.so Info: Module loaded: /usr/lib/dovecot/modules/imap/lib20_virtual_plugin.so Info: Module loaded: /usr/lib/dovecot/modules/imap/lib21_fts_squat_plugin.so Info: Quota root: name= backend=dict args=:proxy::quotadict Info: Quota warning: bytes=0 (95%) messages=0 command=/usr/local/bin/quota-warning.sh 95 Info: Quota warning: bytes=0 (80%) messages=0 command=/usr/local/bin/quota-warning.sh 80 Info: expire: pattern=Trash type=expunge secs=86400 Info: rob...@schetterer.com/Trash: stop, expire time in future: Tue Aug 4 09:40:21 2009 /etc/crontab 45 9 * * * root /usr/sbin/dovecot -c /etc/dovecot/dovecot.conf --exec-mail ext /usr/lib/dovecot/expire-tool.sh so lets see what happens tommorow and repeat the --test as well as the mysql test and internal savedate test after deletion time -- Best Regards MfG Robert Schetterer Germany/Munich/Bavaria
Re: [Dovecot] expire plugin no delete 1.2.1 / 1.2.2
Robert Schetterer schrieb: > Timo Sirainen schrieb: >> On Fri, 2009-07-31 at 17:21 +0200, Robert Schetterer wrote: >>> Hi Timo, >>> so now its clear, the mail >>> did not got deleted if i now do >>> >>> Info: rob...@schetterer.com/Trash: no messages left >> So, it worked? "no messages left" means if you didn't give --test it >> would have deleted all messages from the mailbox. >> > Hi Timo, no it didnt work > i repeated the test since then twice > the mail was not deleted > Hi Timo, no it didnt work i repeated the test since then twice the mail was not deleted -- Best Regards MfG Robert Schetterer Germany/Munich/Bavaria
Re: [Dovecot] expire plugin no delete 1.2.1 / 1.2.2
On Fri, 2009-07-31 at 17:21 +0200, Robert Schetterer wrote: > Hi Timo, > so now its clear, the mail > did not got deleted if i now do > > Info: rob...@schetterer.com/Trash: no messages left So, it worked? "no messages left" means if you didn't give --test it would have deleted all messages from the mailbox. signature.asc Description: This is a digitally signed message part
Re: [Dovecot] expire plugin no delete 1.2.1 / 1.2.2
Robert Schetterer schrieb: > Robert Schetterer schrieb: >> Timo Sirainen schrieb: >>> On Thu, 2009-07-23 at 23:42 +0200, Robert Schetterer wrote: Hi Timo, all of my tests fail with expire plugin, mail simply not get deleted i cant find any stuff in the logs why it does not or should not work. >>> Try with 1.2.2 and check the mails' save dates now that you have the >>> FETCH X-SAVEDATE command available. >>> >> Hi Timo, upgraded >> last night and tested >> X-SAVEDATE is now available, before it was not >> so lets wait and see, if it now works, i will report >> > Hi Timo, still mails get not deleted > i just did a new test > > > > mysql> select mailbox, from_unixtime(expire_stamp), username from > expireplugin; > +-+-+---+ > | mailbox | from_unixtime(expire_stamp) | username | > +-+-+---+ > | Trash | 2009-07-31 14:18:47 | rob...@schetterer.com | > +-+-+---+ > 1 row in set (0.00 sec) > > 2 select Trash > * FLAGS (\Answered \Flagged \Deleted \Seen \Draft nonjunk Junk) > * OK [PERMANENTFLAGS (\Answered \Flagged \Deleted \Seen \Draft nonjunk > Junk \*)] Flags permitted. > * 1 EXISTS > * 0 RECENT > * OK [UIDVALIDITY 1240758078] UIDs valid > * OK [UIDNEXT 85] Predicted next UID > * OK [HIGHESTMODSEQ 109] > 2 OK [READ-WRITE] Select completed. > 3 fetch 1:* (internaldate x-savedate) > * 1 FETCH (INTERNALDATE "30-Jul-2009 14:18:26 +0200" X-SAVEDATE > "30-Jul-2009 14:18:47 +0200") > 3 OK Fetch completed. > > /usr/sbin/dovecot -c /etc/dovecot/dovecot.conf --exec-mail ext > /usr/lib/dovecot/expire-tool.sh --test > Info: Loading modules from directory: /usr/lib/dovecot/modules/imap > Info: Module loaded: /usr/lib/dovecot/modules/imap/lib01_acl_plugin.so > Info: Module loaded: /usr/lib/dovecot/modules/imap/lib10_quota_plugin.so > Info: Module loaded: > /usr/lib/dovecot/modules/imap/lib20_autocreate_plugin.so > Info: Module loaded: /usr/lib/dovecot/modules/imap/lib20_expire_plugin.so > Info: Module loaded: /usr/lib/dovecot/modules/imap/lib20_fts_plugin.so > Info: Module loaded: /usr/lib/dovecot/modules/imap/lib20_virtual_plugin.so > Info: Module loaded: /usr/lib/dovecot/modules/imap/lib21_fts_squat_plugin.so > Info: Quota root: name= backend=dict args=:proxy::quotadict > Info: Quota warning: bytes=0 (95%) messages=0 > command=/usr/local/bin/quota-warning.sh 95 > Info: Quota warning: bytes=0 (80%) messages=0 > command=/usr/local/bin/quota-warning.sh 80 > Info: expire: pattern=Trash type=expunge secs=86400 > Info: rob...@schetterer.com/Trash: stop, expire time in future: Fri Jul > 31 14:18:47 2009 > > /usr/lib/dovecot/expire-tool.sh > > #!/bin/bash > MAIL_PLUGINS=${MAIL_PLUGINS//imap_quota/} > MAIL_PLUGINS=${MAIL_PLUGINS//mail_log/} > MAIL_PLUGINS=${MAIL_PLUGINS//imap_acl/} > #MAIL_PLUGINS=${MAIL_PLUGINS//virtual/} > exec ${0%.sh} "$@ > > i still speculate the problem might be in the virtual plugin > but anyway if its load or not by the script mails dont get deleted > > additional i integrated userdb_home userdb_mail > in password_query but this also did not helped > ( so perhaps some config stuff helps for debug ) > > password_query = SELECT username as user, password, \ > 1001 as userdb_uid, \ > 1001 as userdb_gid, \ > "/usr/local/virtual/%u/" AS userdb_home, \ > "maildir:/usr/local/virtual/%u/" AS userdb_mail \ > FROM mailbox WHERE username = '%u' AND active = '1' AND (imap_allowed = > '1' or '%Ls' = 'pop3') > > user_query = SELECT concat('/usr/local/virtual/', maildir) AS home, \ > concat('*:bytes=', mailbox.quota) AS quota_rule, \ > #when saving to Trash mailbox the user gets additional 50MB > "Trash:storage=50240" AS quota_rule2, \ > #when saving to Sent mailbox the user gets additional 50MB > "Sent:storage=50240" AS quota_rule3, \ > #when saving to Drafts mailbox the user gets additional 50MB > "Drafts:storage=50240" AS quota_rule4, \ > #when saving to Templates mailbox the user gets additional 50MB > "Templates:storage=50240" AS quota_rule5, \ > #when saving to Junk mailbox the user gets additional 50MB > "Junk:storage=50240" AS quota_rule6, \ > #ignore quota on shared > #"shared:ignore" AS quota_rule7, \ > concat('maildir:/usr/local/virtual/', maildir) AS mail, \ > CASE '%s' WHEN 'pop3' THEN NULL ELSE 'yes' END AS namespace_1_inbox, \ > CASE '%s' WHEN 'pop3' THEN 'yes' ELSE NULL END AS namespace_2_inbox, \ > 1001 AS uid, 1001 AS gid FROM mailbox WHERE username = '%u' AND active = '1' > > namespace private { > separator = / > prefix = "" > location = > maildir:/usr/local/virtual/%d/%u/:CONTROL=/usr/local/virtual/%d/%u/:INDEX=/usr/local/virtual/%d/%u/:INBOX=/usr/local/virtual/%d/%u/ > list = yes > hidden = no > subscriptions = yes > } > > namespace private { > prefix = "virtual/" > separator = / > location = virtual:/etc/dovecot/virtual:LAYOUT=maildir++ > hidden = yes > list
Re: [Dovecot] expire plugin no delete 1.2.1 / 1.2.2
Robert Schetterer schrieb: > Timo Sirainen schrieb: >> On Thu, 2009-07-23 at 23:42 +0200, Robert Schetterer wrote: >>> Hi Timo, >>> all of my tests fail >>> with expire plugin, mail simply not get deleted >>> i cant find any stuff in the logs why it does not or should not work. >> Try with 1.2.2 and check the mails' save dates now that you have the >> FETCH X-SAVEDATE command available. >> > > Hi Timo, upgraded > last night and tested > X-SAVEDATE is now available, before it was not > so lets wait and see, if it now works, i will report > Hi Timo, still mails get not deleted i just did a new test mysql> select mailbox, from_unixtime(expire_stamp), username from expireplugin; +-+-+---+ | mailbox | from_unixtime(expire_stamp) | username | +-+-+---+ | Trash | 2009-07-31 14:18:47 | rob...@schetterer.com | +-+-+---+ 1 row in set (0.00 sec) 2 select Trash * FLAGS (\Answered \Flagged \Deleted \Seen \Draft nonjunk Junk) * OK [PERMANENTFLAGS (\Answered \Flagged \Deleted \Seen \Draft nonjunk Junk \*)] Flags permitted. * 1 EXISTS * 0 RECENT * OK [UIDVALIDITY 1240758078] UIDs valid * OK [UIDNEXT 85] Predicted next UID * OK [HIGHESTMODSEQ 109] 2 OK [READ-WRITE] Select completed. 3 fetch 1:* (internaldate x-savedate) * 1 FETCH (INTERNALDATE "30-Jul-2009 14:18:26 +0200" X-SAVEDATE "30-Jul-2009 14:18:47 +0200") 3 OK Fetch completed. /usr/sbin/dovecot -c /etc/dovecot/dovecot.conf --exec-mail ext /usr/lib/dovecot/expire-tool.sh --test Info: Loading modules from directory: /usr/lib/dovecot/modules/imap Info: Module loaded: /usr/lib/dovecot/modules/imap/lib01_acl_plugin.so Info: Module loaded: /usr/lib/dovecot/modules/imap/lib10_quota_plugin.so Info: Module loaded: /usr/lib/dovecot/modules/imap/lib20_autocreate_plugin.so Info: Module loaded: /usr/lib/dovecot/modules/imap/lib20_expire_plugin.so Info: Module loaded: /usr/lib/dovecot/modules/imap/lib20_fts_plugin.so Info: Module loaded: /usr/lib/dovecot/modules/imap/lib20_virtual_plugin.so Info: Module loaded: /usr/lib/dovecot/modules/imap/lib21_fts_squat_plugin.so Info: Quota root: name= backend=dict args=:proxy::quotadict Info: Quota warning: bytes=0 (95%) messages=0 command=/usr/local/bin/quota-warning.sh 95 Info: Quota warning: bytes=0 (80%) messages=0 command=/usr/local/bin/quota-warning.sh 80 Info: expire: pattern=Trash type=expunge secs=86400 Info: rob...@schetterer.com/Trash: stop, expire time in future: Fri Jul 31 14:18:47 2009 /usr/lib/dovecot/expire-tool.sh #!/bin/bash MAIL_PLUGINS=${MAIL_PLUGINS//imap_quota/} MAIL_PLUGINS=${MAIL_PLUGINS//mail_log/} MAIL_PLUGINS=${MAIL_PLUGINS//imap_acl/} #MAIL_PLUGINS=${MAIL_PLUGINS//virtual/} exec ${0%.sh} "$@ i still speculate the problem might be in the virtual plugin but anyway if its load or not by the script mails dont get deleted additional i integrated userdb_home userdb_mail in password_query but this also did not helped ( so perhaps some config stuff helps for debug ) password_query = SELECT username as user, password, \ 1001 as userdb_uid, \ 1001 as userdb_gid, \ "/usr/local/virtual/%u/" AS userdb_home, \ "maildir:/usr/local/virtual/%u/" AS userdb_mail \ FROM mailbox WHERE username = '%u' AND active = '1' AND (imap_allowed = '1' or '%Ls' = 'pop3') user_query = SELECT concat('/usr/local/virtual/', maildir) AS home, \ concat('*:bytes=', mailbox.quota) AS quota_rule, \ #when saving to Trash mailbox the user gets additional 50MB "Trash:storage=50240" AS quota_rule2, \ #when saving to Sent mailbox the user gets additional 50MB "Sent:storage=50240" AS quota_rule3, \ #when saving to Drafts mailbox the user gets additional 50MB "Drafts:storage=50240" AS quota_rule4, \ #when saving to Templates mailbox the user gets additional 50MB "Templates:storage=50240" AS quota_rule5, \ #when saving to Junk mailbox the user gets additional 50MB "Junk:storage=50240" AS quota_rule6, \ #ignore quota on shared #"shared:ignore" AS quota_rule7, \ concat('maildir:/usr/local/virtual/', maildir) AS mail, \ CASE '%s' WHEN 'pop3' THEN NULL ELSE 'yes' END AS namespace_1_inbox, \ CASE '%s' WHEN 'pop3' THEN 'yes' ELSE NULL END AS namespace_2_inbox, \ 1001 AS uid, 1001 AS gid FROM mailbox WHERE username = '%u' AND active = '1' namespace private { separator = / prefix = "" location = maildir:/usr/local/virtual/%d/%u/:CONTROL=/usr/local/virtual/%d/%u/:INDEX=/usr/local/virtual/%d/%u/:INBOX=/usr/local/virtual/%d/%u/ list = yes hidden = no subscriptions = yes } namespace private { prefix = "virtual/" separator = / location = virtual:/etc/dovecot/virtual:LAYOUT=maildir++ hidden = yes list = no subscriptions= no } namespace private { prefix = "RealMails/" separator = / list = no hidden = yes location = maildir:/usr/local/virtual/%d/%u/:CONTROL=/usr/local/virtual/%d/%u/:INDEX=/usr/local/virtual/%d/%u/:INBOX=/usr/local/virtual/%d