What is Hudson doing with my Python script? -


i developing python script (here after script) searches through large log files search string. in normal use, called hudson front end.

about hudson interface:
hudson job creates temporary batch file on connected virtual machine (vm) calls script , passes parameters. have had hundreds of successful instances using setup, creating error.

about script:
log files contained in dozens of compressed .tgz files. script searches each log in each .tgz file.
1 of command line args script accepts true/false parameter called process_in_parallel. if process_in_parallel set true, each .tgz file searched in own thread (using multiprocessing module). if process_in_parallel set false, each .tgz file searched in sequence (using loop).

what works:

  1. i have batch file on vm use testing script. can use .bat call script process_in_parallel set either (1a) true or (1b) false. of course, runs faster when true (about 4x faster).
    have quadruple-checked .bat passes same parameters script hudson, , in same order. have added line script logs input parameters file, , have found hudson indeed passing correct parameters in correct order.
  2. i can use hudson call script process_in_parallel set false.
  3. i have tested current iteration of script using above 3 test cases multiple times (even using multiple configurations of other parameters), successfully.

what doesn't work:
if use hudson call script process_in_parallel set true, strange error. here traceback:

traceback (most recent call last):   file "f:\scripts\parse_logfiles_archive\parselogs_archive_8-19-13.py", line 40, in main       searchhits = searchtarlist(searchdir, newdirectory, argv)   file "f:\scripts\parse_logfiles_archive\parselogs_archive_8-19-13.py", line 163, in searchtarlist       hits = processpool.map(searchtar, tarmap)   file "e:\python27\lib\multiprocessing\pool.py", line 225, in map       return self.map_async(func, iterable, chunksize).get()   file "e:\python27\lib\multiprocessing\pool.py", line 522, in       raise self._value   ioerror: [errno 9] bad file descriptor  

according research, error happens when python attempts read file opened in write mode.

my question:
there genius out there know both python , hudson enough know happening?


Comments

Popular posts from this blog

Detect support for Shoutcast ICY MP3 without navigator.userAgent in Firefox? -

web - SVG not rendering properly in Firefox -

java - JavaFX 2 slider labelFormatter not being used -