Beefy Boxes and Bandwidth Generously Provided by pair Networks
XP is just a number

comment on

( #3333=superdoc: print w/replies, xml ) Need Help??
I work with several AIX boxes where I don't have root access, and getting new modules installed is a long, difficult process. So far I've been able to install my own copy of Perl on a dev box, but not on any test or production ones. In order to use non-core modules in my scripts I opted to not install them locally, instead I've been packing them up with PAR on the dev box and distributing the binary to the test and prod environments. This all works fine... until it stops working. When I first install a PAR binary everything runs smoothly. But after some period of time (usually a few weeks), the script will die with this error:
String found where operator expected at ../../lib/ (autospl +it into ../../lib/auto/Storable/ line 319, near "logcroa +k "can't open $file: $!"" (Do you need to predeclare logcroak?) String found where operator expected at ../../lib/ (autospl +it into ../../lib/auto/Storable/ line 325, near "logcarp + "Storable::lock_store: fcntl/flock emulation broken on $^O"" (Do you need to predeclare logcarp?) String found where operator expected at ../../lib/ (autospl +it into ../../lib/auto/Storable/ line 328, near "logcroa +k "can't get shared lock on $file: $!"" (Do you need to predeclare logcroak?) syntax errorsyntax error at ../../lib/ (autosplit into ../. +./lib/auto/Storable/ line 325, near "logcarp "Storable:: +lock_store: fcntl/flock emulation broken on $^O"" syntax error at ../../lib/ (autosplit into ../../lib/auto/S +torable/ line 328, near "logcroak "can't get shared lock + on $file: $!"" Compilation failed in require at //export/home/user/perl/lib/5.8.8/Aut line 27. at ../../lib/ (autosplit into ../../lib/auto/Storable/retr line 303
The last line there is strange, the path given in the "Compilation failed in require at" exists only on the dev box, but it gets printed on the other boxes. I don't know what to make of that but I thought it might be worth mentioning.

I thought this might be due to corruption of the file Storable is storing to, but deleting the file and letting it get get created again doesn't solve the problem. I also don't think the problem is corruption of the packed PAR file. I've just started tracking checksums to verify that but I'll have to wait until the problem reappears to know for sure.

But I've found that if I just re-pack the binary with PAR and distribute it again, it solves the problem. No changes to the code, just pack again and it starts working. Then the new binary will work for a few weeks and blow up again.

Any pointers to help me debug this further?

In reply to PAR binary with Storable works for a while then dies by iguanodon

Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post; it's "PerlMonks-approved HTML":

  • Are you posting in the right place? Check out Where do I post X? to know for sure.
  • Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
    <code> <a> <b> <big> <blockquote> <br /> <dd> <dl> <dt> <em> <font> <h1> <h2> <h3> <h4> <h5> <h6> <hr /> <i> <li> <nbsp> <ol> <p> <small> <strike> <strong> <sub> <sup> <table> <td> <th> <tr> <tt> <u> <ul>
  • Snippets of code should be wrapped in <code> tags not <pre> tags. In fact, <pre> tags should generally be avoided. If they must be used, extreme care should be taken to ensure that their contents do not have long lines (<70 chars), in order to prevent horizontal scrolling (and possible janitor intervention).
  • Want more info? How to link or or How to display code and escape characters are good places to start.
Log In?

What's my password?
Create A New User
Domain Nodelet?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others cooling their heels in the Monastery: (1)
As of 2022-07-02 16:24 GMT
Find Nodes?
    Voting Booth?
    My most frequent journeys are powered by:

    Results (103 votes). Check out past polls.