Hi,
I'm trying to use a situation where a large bulk of similar jobs are being sent to several devices of the same device type. These devices require the 'transfer_overlay' option in order for the tests to work due to their setup. We currently are using a single master and worker on the same server.
It seems that the same transfer overlay file location (i.e., /var/lib/lava/dispatcher/tmp/overlay-1.3.2.5.tar.gz) is used regardless of the job id and that some of our jobs are experiencing a collision trying
to use different copies of that file at the same time. Thus, one of our jobs is deleting the transfer overlay file before another job tries to delete it and the second gets errors.
This is the error LAVA produces when viewing the job in the GUI:
File "/usr/bin/lava", line 11, in <module>
load_entry_point('lava-tool==0.25', 'console_scripts', 'lava')()
File "/usr/lib/python2.7/dist-packages/lava/tool/dispatcher.py", line 150, in run
raise SystemExit(cls().dispatch(args))
File "/usr/lib/python2.7/dist-packages/lava/tool/dispatcher.py", line 140, in dispatch
return command.invoke()
File "/usr/lib/python2.7/dist-packages/lava/dispatcher/commands.py", line 247, in invoke
self.args.validate)
File "/usr/lib/python2.7/dist-packages/lava/dispatcher/commands.py", line 91, in run_pipeline_job
exitcode = job.run()
File "/usr/lib/python2.7/dist-packages/lava_dispatcher/pipeline/job.py", line 340, in run
self.cleanup(self.connection)
File "/usr/lib/python2.7/dist-packages/lava_dispatcher/pipeline/job.py", line 375, in cleanup
self.pipeline.cleanup(connection)
File "/usr/lib/python2.7/dist-packages/lava_dispatcher/pipeline/action.py", line 251, in cleanup
child.cleanup(connection)
File "/usr/lib/python2.7/dist-packages/lava_dispatcher/pipeline/action.py", line 649, in cleanup
self.internal_pipeline.cleanup(connection)
File "/usr/lib/python2.7/dist-packages/lava_dispatcher/pipeline/action.py", line 251, in cleanup
child.cleanup(connection)
File "/usr/lib/python2.7/dist-packages/lava_dispatcher/pipeline/action.py", line 649, in cleanup
self.internal_pipeline.cleanup(connection)
File "/usr/lib/python2.7/dist-packages/lava_dispatcher/pipeline/action.py", line 251, in cleanup
child.cleanup(connection)
File "/usr/lib/python2.7/dist-packages/lava_dispatcher/pipeline/actions/boot/__init__.py", line 458, in cleanup
os.unlink(self.url)
OSError: [Errno 2] No such file or directory: '/var/lib/lava/dispatcher/tmp/overlay-1.3.2.5.tar.gz'
We are working on the 2017.7 build of LAVA, so if this has been changed in a later build, please let me know. If this has not been updated, is there another way to change things so that each job uses a different name and/or location for the overlay file?
Thanks,
Jorgen Peddersen
|
|
||||
|
||||