Reconstruct: IOERROR: Mailbox name too long

Manel Gimeno Zaragozá magiza83 at hotmail.com
Fri Feb 10 08:35:56 EST 2012


Hello Bron,

Thanks for your quick response. I paste the config from remote server:

Remote server#
   configdirectory: /uc01-cyr1/shared/config
   defaultpartition: spool1
   partition-spool1: /uc01-cyr1/shared/spool1
   partition-spool2: /uc01-cyr1/shared/spool2

Local server#
   partition-default: /var/spool/imap
   configdirectory: /var/lib/imap

But, before ask by mail I made a softlink in the local server to simulate the same "partition-spool" hoping that this could happend when importing mailboxes...but It has not solve the problem. Maybe a softlink is not the correct solution.

Local server#
   ls -la /uc01-cyr1/shared/spool1
          lrwxrwxrwx 1 cyrus mail 16 Feb 10 13:18 /uc01-cyr1/shared/spool1 -> /var/spool/imap/

Regarding copying spool files, I guess this is a workaround, but I cannot do this in production migration as I should rsync 600GB.

Thanks!

Regards.

Manel Gimeno Zaragoza
magiza83 at hotmail.com


From: brong at fastmail.fm
To: magiza83 at hotmail.com; info-cyrus at lists.andrew.cmu.edu
Subject: Re: Reconstruct: IOERROR: Mailbox name too long
Date: Fri, 10 Feb 2012 14:21:18 +0100





	Bogus message is probably totally bogus.  I suspect the real error is that

	your partition layout doesn't match.  What were the partitions on the remote

	cyrus?

	 

	Also - recommend you don't do this - just copy the spool files AND the

	config files (/var/lib/imap/) to the new machine and it should

	upgrade in place.

	 

	Bron.

	
		
			 
		
			 
		
			On Fri, Feb 10, 2012, at 02:07 PM, Manel Gimeno Zaragozá wrote:
		
			
			
				Hello,

				

				I've installed "cyrus-imapd-2.4.13-1.el6.x86_64" and i'm trying to migrate a mailbox from a remote cyrus server to a new one. The steps I follow are:

				

				remote_cyrus# ctl_mboxlist -d > file

				local_cyrus# clt_mboxlist -u < file

				local_cyrus# reconstruct -rxf user.test_user

				    user.test_user: failed to read index header

				    user.test_user: Invalid mailbox name (null)

				    user.test_user.Borrador: failed to read index header

				    user.test_user.Borrador: Invalid mailbox name (null)

				    user.test_user.Elementos eliminados: failed to read index header

				    user.test_user.Elementos eliminados: Invalid mailbox name (null)

				    user.test_user.Elementos enviados: failed to read index header

				    user.test_user.Elementos enviados: Invalid mailbox name (null)

				    user.test_user.SPAM: failed to read index header

				    user.test_user.SPAM: Invalid mailbox name (null)

				

				

				Also the log file shows:

				local_cyrus# cat /var/log/maillog

				    ...

				    ...

				    Feb 10 13:48:30 cyrus1-test reconstruct[21520]: create new mailbox user.test_user

				    Feb 10 13:48:30 cyrus1-test reconstruct[21520]: failed to read index header for user.test_user

				    Feb 10 13:48:30 cyrus1-test reconstruct[21520]: IOERROR: Mailbox name too long (user.test_user)

				    Feb 10 13:48:30 cyrus1-test reconstruct[21520]: reconstructing user.test_user.Borrador

				    Feb 10 13:48:30 cyrus1-test reconstruct[21520]: IOERROR: opening index user.test_user.Borrador: Invalid mailbox name

				    Feb 10 13:48:30 cyrus1-test reconstruct[21520]: create new mailbox user.test_user.Borrador

				    Feb 10 13:48:30 cyrus1-test reconstruct[21520]: failed to read index header for user.test_user.Borrador

				    Feb 10 13:48:30 cyrus1-test reconstruct[21520]: IOERROR: Mailbox name too long (user.test_user.Borrador)

				    Feb 10 13:48:30 cyrus1-test reconstruct[21520]: reconstructing user.test_user.Elementos eliminados

				    Feb 10 13:48:30 cyrus1-test reconstruct[21520]: IOERROR: opening index user.test_user.Elementos eliminados: Invalid mailbox name

				    Feb 10 13:48:30 cyrus1-test reconstruct[21520]: create new mailbox user.test_user.Elementos eliminados

				    Feb 10 13:48:30 cyrus1-test reconstruct[21520]: failed to read index header for user.test_user.Elementos eliminados

				    Feb 10 13:48:30 cyrus1-test reconstruct[21520]: IOERROR: Mailbox name too long (user.test_user.Elementos eliminados)

				    Feb 10 13:48:30 cyrus1-test reconstruct[21520]: reconstructing user.test_user.Elementos enviados

				    Feb 10 13:48:30 cyrus1-test reconstruct[21520]: IOERROR: opening index user.test_user.Elementos enviados: Invalid mailbox name

				    Feb 10 13:48:30 cyrus1-test reconstruct[21520]: create new mailbox user.test_user.Elementos enviados

				    Feb 10 13:48:30 cyrus1-test reconstruct[21520]: failed to read index header for user.test_user.Elementos enviados

				    Feb 10 13:48:30 cyrus1-test reconstruct[21520]: IOERROR: Mailbox name too long (user.test_user.Elementos enviados)

				    Feb 10 13:48:30 cyrus1-test reconstruct[21520]: reconstructing user.test_user.SPAM

				    Feb 10 13:48:30 cyrus1-test reconstruct[21520]: IOERROR: opening index user.test_user.SPAM: Invalid mailbox name

				    Feb 10 13:48:30 cyrus1-test reconstruct[21520]: create new mailbox user.test_user.SPAM

				    Feb 10 13:48:30 cyrus1-test reconstruct[21520]: failed to read index header for user.test_user.SPAM

				    Feb 10 13:48:30 cyrus1-test reconstruct[21520]: IOERROR: Mailbox name too long (user.test_user.SPAM)

				    ...

				    ...

				

				It looks like I'm not able to reconstruct the mailbox due to "name too long".

				

				Is it possible to avoid this problem without modify the mbox name? as I have more that 10.000 account and all of them have the same type of folders with spaces and "long names", even some of them have longer name folders.

				

				Anyway, I think in some cases the name is not too long (f.e. user.test_user) but I get the same error, I'm guessing that maybe the problem is not there, but I'm not able to find it.

				

				I post also my config files:

				=========================imapd.conf=========================

				    admins: cyrus

				    allowplaintext: yes

				    allowapop: no

				    configdirectory: /var/lib/imap

				    partition-default: /var/spool/imap

				    imapidresponse: no

				    sasl_pwcheck_method: saslauthd

				    sasl_mech_list: PLAIN LOGIN

				    sievedir: /var/lib/imap/sieve

				    altnamespace: yes

				    hashimapspool: true

				    unixhierarchysep: no

				    lmtp_downcase_rcpt: no

				    allowanonymouslogin: no

				    popminpoll: 1

				    autocreatequota: 0

				    umask: 027

				    sieveusehomedir: false

				    sasl_ldap_servers: ldap://******.com:1389/

				    sasl_ldap_basedn: ou=*******,dc=org

				    tls_ca_path: /etc/ssl/certs

				    tls_session_timeout: 1440

				    tls_cipher_list: TLSv1:SSLv3:SSLv2:!NULL:!EXPORT:!DES:!LOW:@STRENGTH

				    lmtpsocket: /var/run/cyrus/socket/lmtp

				    idlesocket: /var/run/cyrus/socket/idle

				    notifysocket: /var/run/cyrus/socket/notify

				    delete_mode: immediate

				    expunge_mode: immediate

				

				    #Replica config

				    sync_host: 192.168.**.**

				    sync_authname: ******

				    sync_password: ******

				

				    #Configuracion para el rolling

				    sync_log: 1

				    sync_repeat_interval: 1

				    sync_machineid: 1

				============================================================

				

				=========================cyrus.conf=========================

				    START {

				      # do not delete this entry!

				      recover       cmd="ctl_cyrusdb -r"

				      # this is only necessary if using idled for IMAP IDLE

				      idled         cmd="idled"

				      #Si queremos que sea MASTER tenemos que arrancar el sync_client

				      syncclient    cmd="/usr/lib/cyrus-imapd/sync_client -r"

				    }

				    SERVICES {

				      # add or remove based on preferences

				      imap          cmd="imapd" listen="imap" prefork=5

				      #imaps                cmd="imapd -s" listen="imaps" prefork=1

				      pop3          cmd="pop3d" listen="pop3" prefork=3

				      #pop3s                cmd="pop3d -s" listen="pop3s" prefork=1

				      sieve         cmd="timsieved" listen="sieve" prefork=0

				

				      lmtpunix      cmd="lmtpd" listen="/var/lib/imap/socket/lmtp" prefork=1

				

				    }

				    EVENTS {

				      # this is required

				      checkpoint    cmd="ctl_cyrusdb -c" period=30

				      # this is only necessary if using duplicate delivery suppression,

				      # Sieve or NNTP

				      delprune      cmd="cyr_expire -D 7 -E 3 -X 7" at=0400

				      # this is only necessary if caching TLS sessions

				      tlsprune      cmd="tls_prune" at=0400

				    }

				============================================================

				

				Thanks & Regards.
			----
Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/

		
	


	 
-- 
  Bron Gondwana
  brong at fastmail.fm 		 	   		  
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.andrew.cmu.edu/pipermail/info-cyrus/attachments/20120210/f9764c1d/attachment.html 


More information about the Info-cyrus mailing list