OTRS y problemas con la gestión de buzones POP3

por peralta - 29 Marzo 2007

En 11870 usamos Open Ticket Request System (OTRS) para gestionar la atención a los usuarios. Ayer nos topamos con un extraño problema que impedía la apertura de nuevos tickets con los correos que recibimos en los buzones de soporte.

Las trazas del OTRS mostraban continuamente el mensaje:

[Kernel::System::PID::PIDCreate] Can’t create PID PostMasterPOP3, because it’s already running
[Kernel::System::PID::PIDCreate] Can’t create PID PostMasterPOP3, because it’s already running

Que, según aprendimos ayer, indica al propio gestor de tickets que ya se está accediendo a los buzones. El caso es que no había ningún proceso del usuario otrs del sistema, con lo que parecía una terminación anormal del programa. Ejecutando el script PostMasterPOP3.pl a mano conseguimos alguna pista más:

...
Message 3/17
Wide character in syswrite at /usr/lib/perl5/5.8.8/Net/Cmd.pm line 436.

Problemas de encoding, pero no de OTRS directamente sino de los módulos de Perl que utiliza (Net::POP3 y libnet), que no saben manejar la codificación de caracteres correctamente. En el buzón había un correo con caracteres UTF-8 en el subject y eso hacía cascar al programa que recoge los correos.

Parche al canto: editamos /usr/lib/perl5/5.8.8/Net/Cmd.pm y añadimos lo siguiente en la línea 430:

 # XXX - peralta - encoding bug!
 binmode($cmd, ":utf8");

Por si alguien prefiere el diff:

--- Cmd.pm.orig 2007-03-29 16:58:57.000000000 +0200
+++ Cmd.pm      2007-03-28 19:50:36.000000000 +0200
@@ -427,6 +427,8 @@
  my $timeout = $cmd->timeout || undef;

  local $SIG{PIPE} = 'IGNORE' unless $^O eq 'MacOS';
+ # XXX - peralta - encoding bug!
+ binmode($cmd, ":utf8");
  while($len)
   {
    my $wout;

Esperamos que le sea útil al alguien…

categorías: tecnología

2 comentarios a “OTRS y problemas con la gestión de buzones POP3”

  1. Iñigo Medina García dice:

    Ya se comentó en su día en la lista de OTRS:
    http://lists.otrs.org/pipermail/otrs-de/2005-April/003181.html

    Que por cierto pena que no todo esté recogido en la lista en inglés. :-(

  2. Rafa dice:

    Estupendo!
    Por fin alguien que dije algo claro sobre el OTRS.
    Gracias.

escribir un comentario