Tue Jul 28 07:18:28 2009: Request 48240 was acted upon.
Transaction: Correspondence added by wfelipe
       Queue: PAR
     Subject: MODULE object version 1.YYY does not match $MODULE::VERSION 1.XXX 
at /usr/lib/perl/5.10/DynaLoader.pm
   Broken in: 0.994
    Severity: Important
       Owner: Nobody
  Requestors: wfel...@gmail.com
      Status: open
 Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=48240 >


On Tue Jul 28 06:35:36 2009, RSCHUPP wrote:
> Does the simple example
> 
> pp -p testdbi -e 'use DBI; print "OK"'
> 
> (when moved to the machine with a different version of DBI)
> show the same problem?
> 
> BTW, it's OK that shared libs are packed with their real name
> into the .par (or executable), but have mangled hash.so names
> when extracted into the cache area. PAR patches DynaLoader
> to make it look for the mangled name.

The example runs with no problems. Looking deep into the problem, I
realized two things:
- using strace to read the syscalls to get the stat and open, it always
stat the hash.so, and then stat DBI.so installed in the operating system
(outside par package), and then open and read DBI.so from the operating
system
- the module PAR::Heavy, there is a routine override in DynaLoader:
*{'DynaLoader::dl_findfile'}    = \&_dl_findfile;
that override doesn't seem to work, because it's never called

Reply via email to