guión Un Perl (que utiliza una carga de módulos localmente escritos, y está en desarrollo activo) acaba de comenzar la producción esporádicaCómo investigar "intento de liberar a escalar sin referencias"
"intento de liberar a escalar sin referencias: SV 0xa6e685c, intérprete de Perl: 0x96d9008 durante la destrucción global. "
mensajes. Esto siempre es repetible, en el sentido de que una secuencia particular de comandos siempre produce el mensaje si alguna vez lo hace, pero no he logrado aislar un caso simple o independiente que lo provoque. En particular, todavía no lo he visto cuando ejecuto el script desde el depurador Perl (puedo obtenerlo al depurar un script que usa IPC :: Open3 para ejecutar mi script de destino).
Me doy cuenta de que esto es solo posiblemente un error en Perl, pero es mucho más probable que sea algo que estoy haciendo, muy probablemente en mis llamadas a SVN :: Client; pero estoy perplejo por una forma de investigarlo, y me pregunté si alguien tenía alguna indicación.
Perl 5.10.0; Varias versiones de Fedora Linux. Voy a probarlo en Perl 5.12, pero a menos que se manifieste allí también, realmente no me ayudará. Editar: un caso particular que da confiablemente el mensaje en 5.10 no en 5.12. Lamentablemente, eso realmente no me dice nada.
5,14 es la versión actual de Perl. 5.12 y 5.10 son bastante viejos. Pero de todos modos, compila perl con depuración para que puedas ver lo que creó el SV en 0xa6e685c. Esto debería apuntarle en la dirección correcta. (Mi suposición es que SVN :: Client u otro módulo XS está roto.) – jrockway