• Publicidad

Perl + Dbxml

Así que programas sin strict y las expresiones regulares son otro modo de hablar. Aquí encontrarás respuestas de nivel avanzado, no recomendable para los débiles de corazón.

Perl + Dbxml

Notapor gaby49 » 2007-10-18 16:09 @715

Hola!
Espero alguien me pueda ayudar.
Estoy insertando archivos xml en la base de datos dbxml con Perl pero me manda un error de "Segmentacion fault" y no sé a qué se refiere exactamente. Bueno, cuando no existe el archivo me lo manda pero ya verificando que exista creo que también porque el índice o llave ya existe pero cómo puedo saber cómo detectarlo. El código es el siguiente:
¡¡¡¡Saludos y Gracias!!!!
:wink:
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
my $txn = $oMan->createTransaction();
  eval {

       my $txnUpd    = $oMan->createUpdateContext();

       my $xmlinput = $oMan->createLocalFileInputStream($arcXML1);
       print "inserta";

       $oCont->putDocument($txn, $arcXML, $xmlinput, $txnUpd);
       $txn->commit();
       print "Se agrego el archivo: $arcXML1 \n ";
     };
     if (my $e = catch std::exception)
     {
        warn $e->getExceptionCode . "  " . $e->what() . "\n";
        $txn->abort();
        exit( -1 );
     }
Coloreado en 0.004 segundos, usando GeSHi 1.0.8.4
gaby49
Perlero nuevo
Perlero nuevo
 
Mensajes: 22
Registrado: 2007-07-09 15:55 @705

Publicidad

Notapor explorer » 2007-10-18 18:31 @813

Yo usaría el ptrace para saber en qué pasa después de saber primero en qué línea ocurre el fallo de segmentación, ejecutando el código paso a paso, con el debugger.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Notapor gaby49 » 2007-10-19 12:15 @552

Pero que yo sepa no hay debugger en Perl y sé que el error me lo marca en putDocument pero no sé si porque me faltan banderas o no está creado bien el ambiente o qué lo ocasiona.
gaby49
Perlero nuevo
Perlero nuevo
 
Mensajes: 22
Registrado: 2007-07-09 15:55 @705

Notapor kidd » 2007-10-19 13:07 @588

gaby49 escribiste:Pero que yo sepa no hay debugger en perl y se que el error me lo marca en putDocument pero no se si porque me faltan banderas o no esta creado bien el ambiente o que lo ocasiona.


Usando el debugger de Perl:
http://search.cpan.org/~nwclark/perl-5. ... debtut.pod
Uriel Lizama Perl programmer fundador de Perl en Español
Perl Programming Language
Avatar de Usuario
kidd
Creador de Perl en Español
Creador de Perl en Español
 
Mensajes: 1166
Registrado: 2003-10-15 16:52 @744
Ubicación: México

Notapor explorer » 2007-10-19 13:17 @595

Para ejecutar el debugger de Perl, tienes que hacer:

Sintáxis: [ Descargar ] [ Ocultar ]
Using bash Syntax Highlighting
perl -d tuprograma.pl
Coloreado en 0.004 segundos, usando GeSHi 1.0.8.4


Aquí tienes una tarjeta de referencia. También lo tienes en perldoc perldebug, perldoc perldebtut y perldoc perldebguts.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Notapor gaby49 » 2007-10-19 14:25 @642

Pues es que en realidad no sé que pasa, ya que cuando le inserto archivo no hay problema con ninguno, pero cuando dos o más personas empiezan a meter archivos marca errores como el de "Segmentation fault" y *** glibc detected *** perl: double free or corruption (out): 0xb7e991b8 *** y con este último ahí se queda trabado.
gaby49
Perlero nuevo
Perlero nuevo
 
Mensajes: 22
Registrado: 2007-07-09 15:55 @705

Notapor explorer » 2007-10-19 15:42 @696

¿Estás usando Threads?
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Notapor explorer » 2007-10-19 15:52 @703

¿No estarás usando Perl 5.8.7?
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Notapor gaby49 » 2007-10-19 15:59 @707

La versión es 5.8.8 y al programa le quite las transacciones y me ocasiona solo el error de segmentación.
gaby49
Perlero nuevo
Perlero nuevo
 
Mensajes: 22
Registrado: 2007-07-09 15:55 @705

Notapor explorer » 2007-10-19 17:47 @783

Por lo que leo en los foros... podría ser un bug en la glibc del sistema operativo, si es un Red Hat. Veo que ha salido con otros módulos y en otros tipos de programas, incluso en el juego Frozen Bubble, así que lo más seguro es que sea un fallo de la glibc.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Siguiente

Volver a Avanzado

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 11 invitados