[dev] assertion failed: mailbox.c: 2180: !message_guid_isnull(&record->guid)

Jan Schneider jan at horde.org
Thu Nov 22 18:47:25 UTC 2012


Zitat von Michael M Slusarz <slusarz at horde.org>:

> Quoting Jan Schneider <jan at horde.org>:
>
>> Zitat von Michael M Slusarz <slusarz at horde.org>:
>>
>>> I think the current method of working around this is still the  
>>> correct method (try with BINARY; re-do if the APPEND fails).  I  
>>> see that you implemented a hotfix  
>>> (1220a7ed6888eb61d29d8e1228d216dac3e2bb97), but this hotfix is too  
>>> broad.  NO is a perfectly valid (and possibly expected) response  
>>> code from APPEND so we can't lump that in with BAD/BYE responses.
>>
>> Okay, then all we need to do is to retry if the server response  
>> explicitly with either BAD or BYE. So far we only did this on BAD  
>> responses.
>
> This should be fixed.

Not quite, because this doesn't trigger a  
Horde_Imap_Client_Exception_ServerResponse:

class Horde_Imap_Client_Exception#175 (11) {
   public $details =>
   string(99) "Fatal error: Internal error: assertion failed:  
mailbox.c: 2180: !message_guid_isnull(&record->guid)"
   public $logged =>
   bool(false)
   protected $_logLevel =>
   int(0)
   protected $message =>
   string(48) "Der IMAP-Server hat die Verbindung unterbrochen."
   private $string =>
   string(0) ""
   protected $code =>
   int(4)
   protected $file =>
   string(78)  
"/home/jan/horde-develop/framework/Imap_Client/lib/Horde/Imap/Client/Socket.php"
   protected $line =>
   int(3866)
   private $trace =>
   array(13) {
     [0] =>
     array(6) {
       'file' =>
       string(78)  
"/home/jan/horde-develop/framework/Imap_Client/lib/Horde/Imap/Client/Socket.php"
       'line' =>
       int(3645)
       'function' =>
       string(8) "_getLine"
       'class' =>
       string(24) "Horde_Imap_Client_Socket"
       'type' =>
       string(2) "->"
       'args' =>
       array(0) {
       }
     }
     [1] =>
     array(6) {
       'file' =>
       string(78)  
"/home/jan/horde-develop/framework/Imap_Client/lib/Horde/Imap/Client/Socket.php"
       'line' =>
       int(1557)
       'function' =>
       string(9) "_sendLine"
       'class' =>
       string(24) "Horde_Imap_Client_Socket"
       'type' =>
       string(2) "->"
       'args' =>
       array(2) {
         [0] =>
         class Horde_Imap_Client_Interaction_Client#182 (2) {
           public $tag =>
           string(1) "2"
           protected $_data =>
           array(4) {
             ...
           }
         }
         [1] =>
         array(1) {
           'noliteralplus' =>
           bool(false)
         }
       }
     }
     [2] =>
     array(6) {
       'file' =>
       string(76)  
"/home/jan/horde-develop/framework/Imap_Client/lib/Horde/Imap/Client/Base.php"
       'line' =>
       int(1811)
       'function' =>
       string(7) "_append"
       'class' =>
       string(24) "Horde_Imap_Client_Socket"
       'type' =>
       string(2) "->"
       'args' =>
       array(3) {
         [0] =>
         class Horde_Imap_Client_Mailbox#167 (2) {
           protected $_utf7imap =>
           bool(true)
           protected $_utf8 =>
           string(14) "INBOX.Aufgaben"
         }
         [1] =>
         array(1) {
           [0] =>
           array(1) {
             ...
           }
         }
         [2] =>
         array(0) {
         }
       }
     }
     [3] =>
     array(4) {
       'function' =>
       string(6) "append"
       'class' =>
       string(22) "Horde_Imap_Client_Base"
       'type' =>
       string(2) "->"
       'args' =>
       array(2) {
         [0] =>
         class Horde_Imap_Client_Mailbox#167 (2) {
           protected $_utf7imap =>
           bool(true)
           protected $_utf8 =>
           string(14) "INBOX.Aufgaben"
         }
         [1] =>
         array(1) {
           [0] =>
           array(1) {
             ...
           }
         }
       }
     }
     [4] =>
     array(4) {
       'file' =>
       string(40) "/home/jan/horde-develop/imp/lib/Imap.php"
       'line' =>
       int(380)
       'function' =>
       string(20) "call_user_func_array"
       'args' =>
       array(2) {
         [0] =>
         array(2) {
           [0] =>
           class Horde_Imap_Client_Socket#147 (15) {
             ...
           }
           [1] =>
           string(6) "append"
         }
         [1] =>
         array(2) {
           [0] =>
           class Horde_Imap_Client_Mailbox#167 (2) {
             ...
           }
           [1] =>
           array(1) {
             ...
           }
         }
       }
     }
     [5] =>
     array(6) {
       'file' =>
       string(43) "/home/jan/horde-develop/imp/lib/Mailbox.php"
       'line' =>
       int(1364)
       'function' =>
       string(6) "__call"
       'class' =>
       string(8) "IMP_Imap"
       'type' =>
       string(2) "->"
       'args' =>
       array(2) {
         [0] =>
         string(6) "append"
         [1] =>
         array(2) {
           [0] =>
           string(14) "INBOX.Aufgaben"
           [1] =>
           array(1) {
             ...
           }
         }
       }
     }
     [6] =>
     array(6) {
       'file' =>
       string(43) "/home/jan/horde-develop/imp/lib/Mailbox.php"
       'line' =>
       int(1364)
       'function' =>
       string(6) "append"
       'class' =>
       string(8) "IMP_Imap"
       'type' =>
       string(2) "->"
       'args' =>
       array(2) {
         [0] =>
         string(14) "INBOX.Aufgaben"
         [1] =>
         array(1) {
           [0] =>
           array(1) {
             ...
           }
         }
       }
     }
     [7] =>
     array(6) {
       'file' =>
       string(43) "/home/jan/horde-develop/imp/lib/Mailbox.php"
       'line' =>
       int(1336)
       'function' =>
       string(11) "_importMbox"
       'class' =>
       string(11) "IMP_Mailbox"
       'type' =>
       string(2) "->"
       'args' =>
       array(1) {
         [0] =>
         array(3) {
           'data' =>
           resource(20) of type (stream)
           'date' =>
           NULL
           'size' =>
           int(2335)
         }
       }
     }
     [8] =>
     array(6) {
       'file' =>
       string(45) "/home/jan/horde-develop/imp/lib/Ui/Folder.php"
       'line' =>
       int(158)
       'function' =>
       string(10) "importMbox"
       'class' =>
       string(11) "IMP_Mailbox"
       'type' =>
       string(2) "->"
       'args' =>
       array(2) {
         [0] =>
         string(14) "/tmp/phpDdLjww"
         [1] =>
         string(14) "message/rfc822"
       }
     }
     [9] =>
     array(6) {
       'file' =>
       string(68)  
"/home/jan/horde-develop/imp/lib/Ajax/Application/Handler/Dynamic.php"
       'line' =>
       int(486)
       'function' =>
       string(10) "importMbox"
       'class' =>
       string(13) "IMP_Ui_Folder"
       'type' =>
       string(2) "->"
       'args' =>
       array(2) {
         [0] =>
         class IMP_Mailbox#157 (4) {
           protected $_cache =>
           array(3) {
             ...
           }
           protected $_changed =>
           int(0)
           protected $_import =>
           array(3) {
             ...
           }
           protected $_mbox =>
           string(14) "INBOX.Aufgaben"
         }
         [1] =>
         string(11) "import_file"
       }
     }
     [10] =>
     array(4) {
       'function' =>
       string(13) "importMailbox"
       'class' =>
       string(36) "IMP_Ajax_Application_Handler_Dynamic"
       'type' =>
       string(2) "->"
       'args' =>
       array(0) {
       }
     }
     [11] =>
     array(4) {
       'file' =>
       string(74)  
"/home/jan/horde-develop/framework/Core/lib/Horde/Core/Ajax/Application.php"
       'line' =>
       int(155)
       'function' =>
       string(14) "call_user_func"
       'args' =>
       array(1) {
         [0] =>
         array(2) {
           [0] =>
           class IMP_Ajax_Application_Handler_Dynamic#134 (4) {
             ...
           }
           [1] =>
           string(13) "importMailbox"
         }
       }
     }
     [12] =>
     array(6) {
       'file' =>
       string(47) "/home/jan/horde-develop/horde/services/ajax.php"
       'line' =>
       int(56)
       'function' =>
       string(8) "doAction"
       'class' =>
       string(27) "Horde_Core_Ajax_Application"
       'type' =>
       string(2) "->"
       'args' =>
       array(0) {
       }
     }
   }
   private $previous =>
   NULL
   public $xdebug_message =>
   string(10286) "<tr><th align='left' bgcolor='#f57900'  
colspan="5"><span style='background-color: #cc0000; color: #fce94f;  
font-size: x-large;'>( ! )</span> Horde_Imap_Client_Exception: Der  
IMAP-Server hat die Verbindung unterbrochen. in  
/home/jan/horde-develop/framework/Imap_Client/lib/Horde/Imap/Client/Socket.php  
on line <i>3866</i></th></tr>\n<tr><th align='left' bgcolor='#e9b96e'  
colspan='5'>Call Stack</th></tr>\n<tr><th align='center'  
bgcolor='#eeeeec'>#</th><th align='left'  
bgcolor='#eeeeec'>Time</th><th align='left'"...
}

Backtrace:
  1. Horde_Core_Ajax_Application->doAction()  
/home/jan/horde-develop/horde/services/ajax.php:56
  2. call_user_func()  
/home/jan/horde-develop/framework/Core/lib/Horde/Core/Ajax/Application.php:155
  3. IMP_Ajax_Application_Handler_Dynamic->importMailbox()
  4. IMP_Ui_Folder->importMbox()  
/home/jan/horde-develop/imp/lib/Ajax/Application/Handler/Dynamic.php:486
  5. IMP_Mailbox->importMbox()  
/home/jan/horde-develop/imp/lib/Ui/Folder.php:158
  6. IMP_Mailbox->_importMbox()  
/home/jan/horde-develop/imp/lib/Mailbox.php:1336
  7. IMP_Imap->append() /home/jan/horde-develop/imp/lib/Mailbox.php:1364
  8. IMP_Imap->__call() /home/jan/horde-develop/imp/lib/Mailbox.php:1364
  9. call_user_func_array() /home/jan/horde-develop/imp/lib/Imap.php:380
10. Horde_Imap_Client_Base->append()
11. Horde_Imap_Client_Socket->_append()  
/home/jan/horde-develop/framework/Imap_Client/lib/Horde/Imap/Client/Base.php:1811
12. Horde::debug()  
/home/jan/horde-develop/framework/Imap_Client/lib/Horde/Imap/Client/Socket.php:1579
-- 
Jan Schneider
The Horde Project
http://www.horde.org/



More information about the dev mailing list