[Dovecot] [ rc28 ] dict{} seems to be ignored

Emiliano Gabrielli (aka AlberT) dovecot at superalbert.it
Mon Apr 2 14:13:03 EEST 2007


On Monday 02 April 2007 12:30, Timo Sirainen wrote:
> Sorry, but your reply is way too vague for me to even guess what the
> problem could be. Show me the exact settings you have. Show
> dovecot-sql.conf, your SQL tables and contents of one user's row. Maybe
> even set mail_debug=yes and show what the logs say. Then I can point
> exactly where the problem is without having to guess.

uh?.. but I have attached also the output of dovecot -n ... some msgs ago in the thread as you asked ..

ok, I'll try to give you more infos:

1) mail_debug=yes  does *not* show any info about the "quota update" process, 
  but shows the correct quota for the user given by the userdb_quota:
 

dovecot: Apr 02 13:01:11 Info: auth(default): client in: AUTH   1       PLAIN   service=IMAP    lip=10.0.0.101  rip=10.0.0.102  resp=<hidden>
dovecot: Apr 02 13:01:11 Info: auth-worker(default): sql(_test_ at XXXXXXX.it,10.0.0.102): query: SELECT username as user, password, '/var/vmail/domains/XXXXXXX.it/_test_' as userdb_home, 'maildir:/var/vmail/domains/XXXXXXX.it/_test_' as userdb_mail, 10000 AS userdb_uid, 10000 AS userdb_gid, CONCAT('maildir:storage=', CEIL(quota/1000)) AS userdb_quota FROM mailbox WHERE username = '_test_ at XXXXXXX.it'
dovecot: Apr 02 13:01:11 Info: auth(default): client out: OK    1       user=_test_ at XXXXXXX.it
dovecot: Apr 02 13:01:11 Info: auth(default): master in: REQUEST        17      17470   1
dovecot: Apr 02 13:01:11 Info: auth-worker(default): sql(_test_ at XXXXXXX.it,10.0.0.102): SELECT 10000 AS uid, 10000 AS gid, '/var/vmail/domains/XXXXXXX.it/_test_' as home, 'maildir:/var/vmail/domains/XXXXXXX.it/_test_' as mail, CONCAT('maildir:storage=', CEIL(quota/1000)) AS quota FROM mailbox WHERE username = '_test_ at XXXXXXX.it' AND active = '1'
dovecot: Apr 02 13:01:11 Info: auth(default): master out: USER  17      _test_ at XXXXXXX.it   uid=10000       gid=10000       home=/var/vmail/domains/XXXXXXX.it/_test_     mail=maildir:/var/vmail/domains/XXXXXXX.it/_test_   quota=maildir:storage=10240
dovecot: Apr 02 13:01:11 Info: IMAP(_test_ at XXXXXXX.it): Loading modules from directory: /usr/lib/dovecot/modules/imap
dovecot: Apr 02 13:01:11 Info: IMAP(_test_ at XXXXXXX.it): Module loaded: /usr/lib/dovecot/modules/imap/lib10_quota_plugin.so
dovecot: Apr 02 13:01:11 Info: IMAP(_test_ at XXXXXXX.it): Module loaded: /usr/lib/dovecot/modules/imap/lib11_imap_quota_plugin.so
dovecot: Apr 02 13:01:11 Info: IMAP(_test_ at XXXXXXX.it): Effective uid=10000, gid=10000, home=/var/vmail/domains/XXXXXXX.it/_test_
dovecot: Apr 02 13:01:11 Info: IMAP(_test_ at XXXXXXX.it): maildir: data=/var/vmail/domains/XXXXXXX.it/_test_
dovecot: Apr 02 13:01:11 Info: IMAP(_test_ at XXXXXXX.it): maildir: root=/var/vmail/domains/XXXXXXX.it/_test_, index=/var/vmail/domains/XXXXXXX.it/_test_, control=, inbox=
dovecot: Apr 02 13:01:11 Info: imap-login: Login: user=<_test_ at XXXXXXX.it>, method=PLAIN, rip=10.0.0.102, lip=10.0.0.101
dovecot: Apr 02 13:01:11 Info: auth(default): client in: AUTH   1       PLAIN   service=IMAP    lip=10.0.0.101  rip=10.0.0.102  resp=<hidden>
dovecot: Apr 02 13:01:11 Info: auth-worker(default): sql(_test_ at XXXXXXX.it,10.0.0.102): query: SELECT username as user, password, '/var/vmail/domains/XXXXXXX.it/_test_' as userdb_home, 'maildir:/var/vmail/domains/XXXXXXX.it/_test_' as userdb_mail, 10000 AS userdb_uid, 10000 AS userdb_gid, CONCAT('maildir:storage=', CEIL(quota/1000)) AS userdb_quota FROM mailbox WHERE username = '_test_ at XXXXXXX.it'
dovecot: Apr 02 13:01:11 Info: auth(default): client out: OK    1       user=_test_ at XXXXXXX.it
dovecot: Apr 02 13:01:11 Info: auth(default): master in: REQUEST        18      17512   1
dovecot: Apr 02 13:01:11 Info: auth-worker(default): sql(_test_ at XXXXXXX.it,10.0.0.102): SELECT 10000 AS uid, 10000 AS gid, '/var/vmail/domains/XXXXXXX.it/_test_' as home, 'maildir:/var/vmail/domains/XXXXXXX.it/_test_' as mail, CONCAT('maildir:storage=', CEIL(quota/1000)) AS quota FROM mailbox WHERE username = '_test_ at XXXXXXX.it' AND active = '1'
dovecot: Apr 02 13:01:11 Info: auth(default): master out: USER  18      _test_ at XXXXXXX.it   uid=10000       gid=10000       home=/var/vmail/domains/XXXXXXX.it/_test_     mail=maildir:/var/vmail/domains/XXXXXXX.it/_test_   quota=maildir:storage=10240
dovecot: Apr 02 13:01:11 Info: imap-login: Login: user=<_test_ at XXXXXXX.it>, method=PLAIN, rip=10.0.0.102, lip=10.0.0.101
dovecot: Apr 02 13:01:11 Info: IMAP(_test_ at XXXXXXX.it): Disconnected
dovecot: Apr 02 13:01:11 Info: IMAP(_test_ at XXXXXXX.it): Loading modules from directory: /usr/lib/dovecot/modules/imap
dovecot: Apr 02 13:01:11 Info: IMAP(_test_ at XXXXXXX.it): Module loaded: /usr/lib/dovecot/modules/imap/lib10_quota_plugin.so
dovecot: Apr 02 13:01:11 Info: IMAP(_test_ at XXXXXXX.it): Module loaded: /usr/lib/dovecot/modules/imap/lib11_imap_quota_plugin.so
dovecot: Apr 02 13:01:11 Info: IMAP(_test_ at XXXXXXX.it): Effective uid=10000, gid=10000, home=/var/vmail/domains/XXXXXXX.it/_test_
dovecot: Apr 02 13:01:11 Info: IMAP(_test_ at XXXXXXX.it): maildir: data=/var/vmail/domains/XXXXXXX.it/_test_
dovecot: Apr 02 13:01:11 Info: IMAP(_test_ at XXXXXXX.it): maildir: root=/var/vmail/domains/XXXXXXX.it/_test_, index=/var/vmail/domains/XXXXXXX.it/_test_, control=, inbox=
dovecot: Apr 02 13:01:11 Info: IMAP(_test_ at XXXXXXX.it): Disconnected: Logged out

2) my conf is in the attached output of dovecont -n

3) the user's info are stored in the "mailbox" table:
CREATE TABLE `mailbox` (
  `id` bigint(20) unsigned NOT NULL auto_increment,
  `username` varchar(255) character set latin1 NOT NULL default '',
  `password` varchar(255) character set latin1 NOT NULL default '',
  `name` varchar(255) character set latin1 NOT NULL default '',
  `maildir` varchar(255) character set latin1 NOT NULL default '',
  `quota` int(10) NOT NULL default '10240000',
  `domain` varchar(255) character set latin1 NOT NULL default '',
  `created` datetime NOT NULL default '0000-00-00 00:00:00',
  `modified` datetime NOT NULL default '0000-00-00 00:00:00',
  `active` tinyint(1) NOT NULL default '1',
  `bypass_virus_checks` char(1) character set latin1 default 'N',
  `bypass_spam_checks` char(1) character set latin1 default 'N',
  PRIMARY KEY  (`username`),
  UNIQUE KEY `id` (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='Postfix Admin - Virtual Mailboxes' AUTO_INCREMENT=46 ;
INSERT INTO `mailbox` VALUES (3, '_test_ at XXXXXXXXXX.it', '$1$89fgsfdg$1KVXXv8EBWMr8AVOVt7D0.', 'User Name', 'XXXXXXX.it/_test_/', 51200000, 'XXXXXXX.it', '2006-05-05 18:22:46', '2007-03-26 19:12:22', 1, 'N', 'N');


4) the table I'd like to use for quota's info storage is:
CREATE TABLE `quota` (
  `username` varchar(255) NOT NULL default '',
  `path` varchar(245) NOT NULL default '',
  `current` bigint(20) default NULL,
  PRIMARY KEY  (`username`,`path`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;



I hope now I gave enough infos :-))

thanks in advance, and sorry for previous messagesif they was poor of info ... really ;-( 
-- 
<?php echo '     Emiliano Gabrielli (aka AlberT)     ',"\n",
'                GrUSP founder  - ZCE                ',"\n",
' AlberT_at_SuperAlberT_it   -   www.SuperAlberT.it  ',"\n",
'  IRC:    #php,#AES azzurra.com ',"\n",'ICQ: 158591185'; ?>
-------------- next part --------------
# /etc/dovecot/dovecot.conf
log_path: /var/log/dovecot/dovecot.log
info_log_path: /var/log/dovecot/dovecot-info.log
protocols: imaps pop3s imap pop3
ssl_cert_file: /etc/ssl/certs/mail-cert.pem
ssl_key_file: /etc/ssl/private/mail-key.pem
login_dir: /var/run/dovecot/login
login_executable(default): /usr/lib/dovecot/imap-login
login_executable(imap): /usr/lib/dovecot/imap-login
login_executable(pop3): /usr/lib/dovecot/pop3-login
login_greeting: I'm ready.
valid_chroot_dirs: /var/vmail/domains
first_valid_uid: 10000
first_valid_gid: 10000
mail_extra_groups: vmail
mail_location: maildir:/var/vmail/domains/%d/%n
mail_debug: yes
mail_executable(default): /usr/lib/dovecot/imap
mail_executable(imap): /usr/lib/dovecot/imap
mail_executable(pop3): /usr/lib/dovecot/pop3
mail_plugins(default): quota imap_quota
mail_plugins(imap): quota imap_quota
mail_plugins(pop3): quota
mail_plugin_dir(default): /usr/lib/dovecot/modules/imap
mail_plugin_dir(imap): /usr/lib/dovecot/modules/imap
mail_plugin_dir(pop3): /usr/lib/dovecot/modules/pop3
imap_client_workarounds(default): outlook-idle delay-newmail
imap_client_workarounds(imap): outlook-idle delay-newmail
imap_client_workarounds(pop3): outlook-idle
pop3_uidl_format(default): 
pop3_uidl_format(imap): 
pop3_uidl_format(pop3): %v.%u
pop3_client_workarounds(default): 
pop3_client_workarounds(imap): 
pop3_client_workarounds(pop3): outlook-no-nuls oe-ns-eoh
auth default:
  user: dovecot-auth
  verbose: yes
  debug: yes
  passdb:
    driver: sql
    args: /etc/dovecot/dovecot-sql.conf
  userdb:
    driver: sql
    args: /etc/dovecot/dovecot-sql.conf
  userdb:
    driver: prefetch
  socket:
    type: listen
    client:
    master:
      path: /var/run/dovecot/auth-master
      mode: 384
plugin:
  quota: dict:storage=20480 proxy::quotadict
dict:
  quotadict: mysql:/etc/dovecot/dovecot-dict-quota.conf


More information about the dovecot mailing list