Closed
Bug 605039
Opened 15 years ago
Closed 15 years ago
remote Talos leaves behind /tmp/tmp* directories
Categories
(Testing :: Talos, defect)
Tracking
(Not tracked)
RESOLVED
FIXED
People
(Reporter: mozilla, Assigned: jmaher)
References
Details
Attachments
(1 file, 1 obsolete file)
8.61 KB,
patch
|
anodelman
:
review+
|
Details | Diff | Splinter Review |
Looks like remote Talos creates /tmp/tmp* directories, but doesn't clean them up.
This is fine for sporadic one-off testing, but when testing 24/7 with a pool of slaves, /tmp hits either an inode or a max files limit:
reconnecting socket
RETURN:s: tegra-003
tegra-003:
Started Sun, 17 Oct 2010 15:29:36
Running test ts:
Started Sun, 17 Oct 2010 15:29:36
reconnecting socket
Traceback (most recent call last):
File "run_tests.py", line 508, in <module>
test_file(arg, screen)
File "run_tests.py", line 464, in test_file
browser_dump, counter_dump, print_format = mytest.runTest(browser_config, test)
File "/builds/tegra-003/talos-data/talos/ttest.py", line 223, in runTest
profile_dir, temp_dir = self.createProfile(test_config['profile_path'], browser_config)
File "/builds/tegra-003/talos-data/talos/ttest.py", line 122, in createProfile
browser_config['extensions'])
File "/builds/tegra-003/talos-data/talos/ffsetup.py", line 183, in CreateTempProfileDir
temp_dir = tempfile.mkdtemp()
File "/tools/python-2.6.5/lib/python2.6/tempfile.py", line 318, in mkdtemp
_os.mkdir(file, 0700)
OSError: [Errno 31] Too many links: '/tmp/tmpe8I3R0'
Once I |cd /tmp; find . -mindepth 1 -maxdepth 1 -mtime +0 -name tmp\* -print -exec rm -rf {} \;| it started working again.
We can clean up via a cron job, but self-cleanup is the best solution.
Assignee | ||
Comment 1•15 years ago
|
||
ahh, Here is the area we need to change:
http://hg.mozilla.org/build/talos/file/63d6234bcf86/ffprocess_remote.py#l168
instead of removing the file:
os.remove(localFile)
we need to remove the directory:
shutil.rmtree(tmpdir) # assuming we assuming tmpdir to a variable
Let me know if there are other issues seen, this is pretty easy to fix.
Reporter | ||
Comment 2•15 years ago
|
||
Bumped the crontab to @hourly.
Assignee | ||
Comment 3•15 years ago
|
||
this patch fixes a series of small things:
* cleanup the tmp dir for remote
* when running locally, allow tpan/tzoom to use localhost by default
* allow --resultsServer and --resultsLink to be ignored if given the ' ' parameter
* fix remotePerfConfigurator for non remote testing
Here is an example command that I ran on my desktop successfully:
python remotePerfConfigurator.py -v -e /home/joel/mozilla/fennec/dist/bin/fennec -t joel-home -b mobile-browser --activeTests ts:tsvg:tgfx:tdhtml:tp4:tpan --sampleConfig remote.config --browserWait 60 --noChrome --output joel.config --resultsServer ' ' --resultsLink ' '
Assignee: nobody → jmaher
Attachment #485583 -
Flags: review?(anodelman)
![]() |
||
Comment 4•15 years ago
|
||
Comment on attachment 485583 [details] [diff] [review]
cleanup tmpdir and adjustments for running on fennec desktop
#process the results
if (results_server != '') and (results_link != ''):
#send results to the graph server
try:
- utils.stamped_msg("Sending results", "Started")
- links = send_to_graph(results_server, results_link, title, date, browser_config, results)
- results_from_graph(links, results_server)
- utils.stamped_msg("Completed sending results", "Stopped")
+ if (results_server is not None and results_link is not None):
+ utils.stamped_msg("Sending results", "Started")
+ links = send_to_graph(results_server, results_link, title, date, browser_config, results)
+ results_from_graph(links, results_server)
+ utils.stamped_msg("Completed sending results", "Stopped")
Do we need to check for both '' and None? If so, we could just make one longer if statement instead of separating it into two.
- talos.logfile: browser_output.txt
+ talos.logfile: talos_output.txt
Any reason for this name change?
Assignee | ||
Comment 5•15 years ago
|
||
updated patch to use optparse command lines. Also added a --logFile option for browser_log so we can adjust that on the fly.
What happens is if talos.logfile is the same as browser_log while running on the desktop, then we have a conflict since >1 process has an open file handle. For running remote it works fine, but on desktop we need to change the filename.
This patch (+ optparse patch) went 100% green on talos staging twice.
Attachment #485583 -
Attachment is obsolete: true
Attachment #486642 -
Flags: review?(anodelman)
Attachment #485583 -
Flags: review?(anodelman)
![]() |
||
Comment 6•15 years ago
|
||
Comment on attachment 486642 [details] [diff] [review]
cleanup tmpdir and adjustments for running on fennec desktop (2.0)
Might want to pull out the change to
mobile_profile/extensions/electrolysis@mozilla.org/install.rdf
if it wasn't intentional. Otherwise a-okay.
Attachment #486642 -
Flags: review?(anodelman) → review+
Assignee | ||
Comment 7•15 years ago
|
||
removed edit in install.rdf, and pushed:
http://hg.mozilla.org/build/talos/pushloghtml?changeset=da69d3d43c9d
Status: NEW → RESOLVED
Closed: 15 years ago
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•