Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(227)

Issue 420893002: Close open file handle before moving file when recording. (Closed)

Created:
6 years, 5 months ago by ariblue
Modified:
6 years, 5 months ago
Reviewers:
dtu, tonyg
CC:
chromium-reviews, telemetry+watch_chromium.org, manisharora
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Project:
chromium
Visibility:
Public.

Description

Close open file handle before moving file when recording. In record_wpr, we did the following: temp_target_wpr_file_path = tempfile.mkstemp()[1] In python, tempfile.mkstemp() will return a tuple containing the file handle and the file path. Since the script never closes this file handle, it looks like we throw a WindowsError when we try to move the file with the open file handle. BUG= Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=285708

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+12 lines, -13 lines) Patch
M tools/telemetry/telemetry/page/page_set_archive_info.py View 2 chunks +10 lines, -2 lines 0 comments Download
M tools/telemetry/telemetry/page/record_wpr.py View 4 chunks +2 lines, -11 lines 0 comments Download

Messages

Total messages: 6 (0 generated)
ariblue
6 years, 5 months ago (2014-07-25 19:05:26 UTC) #1
tonyg
lgtm
6 years, 5 months ago (2014-07-25 19:16:21 UTC) #2
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/ariblue@google.com/420893002/1
6 years, 5 months ago (2014-07-25 19:18:02 UTC) #3
commit-bot: I haz the power
FYI, CQ is re-trying this CL (attempt #1). The failing builders are: linux_chromium_clang_dbg on tryserver.chromium ...
6 years, 5 months ago (2014-07-25 21:18:28 UTC) #4
commit-bot: I haz the power
Change committed as 285708
6 years, 5 months ago (2014-07-25 22:13:33 UTC) #5
Mark P
6 years, 5 months ago (2014-07-26 00:55:16 UTC) #6
Message was sent while issue was closed.
A revert of this CL has been created in
https://codereview.chromium.org/424473002/ by mpearson@chromium.org.

The reason for reverting is: Caused some telemetry failures; this is the only
change on the blamelist that touched related code.

http://build.chromium.org/p/chromium.win/builders/Win%207%20Tests%20x64%20%28...

telemetry_unittests telemetry_unittests telemetry_unittests failed 21 ( 9 mins,
23 secs )
stdio
telemetry
action_runner_unittest
loop_unittest
navigate_unittest
page_action_unittest
pinch_unittest
play_unittest
scroll_unittest
seek_unittest
ExtensionTest
MultipleExtensionTest
LocalServerUnittest
MemoryCacheHTTPServerTest
PageMeasurementUnitTest
PageRunnerTests
profiler
RecordWprUnitTests
GpuTabTest
TabTest
TimelineBasedMeasurementTest
UserAgentTest

[ RUN      ] browser_unittest.BrowserTest.testForegroundTab

Traceback (most recent call last):
  run at E:\b\depot_tools\python276_bin\lib\unittest\case.py:331
    testMethod()
  wrapper at tools\telemetry\telemetry\decorators.py:79
    func(*args, **kwargs)
  testForegroundTab at tools\telemetry\telemetry\core\browser_unittest.py:121
    self.assertEqual(b.foreground_tab, original_tab)
  foreground_tab at tools\telemetry\telemetry\core\browser.py:84
    if self._tabs[i].EvaluateJavaScript('!document.hidden'):
  EvaluateJavaScript at tools\telemetry\telemetry\core\web_contents.py:108
    expr, context_id=None, timeout=timeout)
  EvaluateJavaScriptInContext at
tools\telemetry\telemetry\core\web_contents.py:124
    expr, context_id=context_id, timeout=timeout)
  EvaluateJavaScript at
tools\telemetry\telemetry\core\backends\chrome\inspector_backend.py:176
    return self._runtime.Evaluate(expr, context_id, timeout)
  Evaluate at
tools\telemetry\telemetry\core\backends\chrome\inspector_runtime.py:41
    raise exceptions.EvaluateException(res['error']['message'])
EvaluateException: Internal error: main world execution context not found.

Locals:
  context_id : None
  expr       : '!document.hidden'
  request    : {'params': {'returnByValue': True, 'expression':
'!document.hidden'}, 'method': 'Runtime.evaluate', 'id': 1}
  res        : {u'id': 1, u'error': {u'message': u'Internal error: main world
execution context not found.', u'code': -32000}}
  timeout    : 90

[  FAILED  ] browser_unittest.BrowserTest.testForegroundTab (2861 ms)

[ RUN      ] browser_unittest.BrowserTest.testIsTracingRunning

Traceback (most recent call last):
  run at E:\b\depot_tools\python276_bin\lib\unittest\case.py:331
    testMethod()
  testIsTracingRunning at tools\telemetry\telemetry\core\browser_unittest.py:171
    b.StopTracing()
  StopTracing at tools\telemetry\telemetry\core\browser.py:282
    return self._browser_backend.StopTracing()
  StopTracing at
tools\telemetry\telemetry\core\backends\chrome\chrome_browser_backend.py:278
    "console.time.toString().indexOf('[native code]') != -1;")
  EvaluateJavaScript at tools\telemetry\telemetry\core\web_contents.py:108
    expr, context_id=None, timeout=timeout)
  EvaluateJavaScriptInContext at
tools\telemetry\telemetry\core\web_contents.py:124
    expr, context_id=context_id, timeout=timeout)
  EvaluateJavaScript at
tools\telemetry\telemetry\core\backends\chrome\inspector_backend.py:176
    return self._runtime.Evaluate(expr, context_id, timeout)
  Evaluate at
tools\telemetry\telemetry\core\backends\chrome\inspector_runtime.py:41
    raise exceptions.EvaluateException(res['error']['message'])
EvaluateException: Internal error: main world execution context not found.

Locals:
  context_id : None
  expr       :
u"console.time('ws://127.0.0.1:55701/devtools/page/6FB805F8-98B7-4D61-9B59-FF51296BB82C');console.timeEnd('ws://127.0.0.1:55701/devtools/page/6FB805F8-98B7-4D61-9B59-FF51296BB82C');console.time.toString().indexOf('[native
code]') != -1;"
  request    : {'params': {'returnByValue': True, 'expression':
u"console.time('ws://127.0.0.1:55701/devtools/page/6FB805F8-98B7-4D61-9B59-FF51296BB82C');console.timeEnd('ws://127.0.0.1:55701/devtools/page/6FB805F8-98B7-4D61-9B59-FF51296BB82C');console.time.toString().indexOf('[native
code]') != -1;"}, 'method': 'Runtime.evaluate', 'id': 1}
  res        : {u'id': 1, u'error': {u'message': u'Internal error: main world
execution context not found.', u'code': -32000}}
  timeout    : 90

[  FAILED  ] browser_unittest.BrowserTest.testIsTracingRunning (4266 ms)

etc.



http://build.chromium.org/p/chromium.linux/builders/Linux%20Tests/builds/12504


telemetry_unittests telemetry_unittests telemetry_unittests failed 20 ( 6 mins,
43 secs )
stdio
telemetry
action_runner_unittest
loop_unittest
navigate_unittest
page_action_unittest
pinch_unittest
play_unittest
scroll_unittest
seek_unittest
ExtensionTest
MultipleExtensionTest
LocalServerUnittest
MemoryCacheHTTPServerTest
PageMeasurementUnitTest
PageRunnerTests
RecordWprUnitTests
GpuTabTest
TabTest
TimelineBasedMeasurementTest
UserAgentTest
telemetry_perf_unittests telemetry_perf_unittests telemetry_perf_unittests
failed 25 ( 54 secs )
stdio
image_decoding
memory
memory_pressure
page_cycler
rasterize_and_record_micro
repaint
scheduler
smoothness
tab_switching
thread_times
webrtc
testCleanUpTrace
testLoadingTraceBasic
testRasterizeAndRecordMicro
testRecordPerArea
testRepaint
testScreenshot
testSkpicturePrinter
testCleanUpPowerMetric
testCleanUpTrace
testSmoothness
testSmoothnessForPageWithNoGesture
testBasic
testBasicForPageWithNoGesture
testCleanUpTrace
Build Properties:

Name	Value	Source
blamelist	[u'ariblue@google.com', u'aurimas@chromium.org',
u'bengr@chromium.org', u'blink-deps-roller@chromium.org',
u'ccameron@chromium.org', u'evy@chromium.org', u'grt@chromium.org',
u'mpearson@chromium.org', u'oshima@chromium.org', u'pkotwicz@chromium.org',
u'rlarocque@chromium.org', u'viettrungluu@chromium.org',
u'xiyuan@chromium.org']	Build
branch	src	Build
buildbotURL	http://build.chromium.org/p/chromium.linux/	master.cfg
buildername	Linux Tests	Builder
buildnumber	12504	Build
got_nacl_revision	13506	Annotation(bot_update)
got_nacl_revision_git	3a5e0c3fe9c5f1f7dbbf3505217e05e82544affe	Annotation(bot_update)
got_revision	285711	Annotation(bot_update)
got_revision_git	4cafbe2f1adabd8e6951a91d69697264cf281f14	Annotation(bot_update)
got_swarming_client_revision	2cbc12487aea464730bcf60230f4d4d63d61ac51	Annotation(bot_update)
got_v8_revision	22611	Annotation(bot_update)
got_v8_revision_git	f2af15a6b44ea6276bdd609ee122babe52842a42	Annotation(bot_update)
got_webkit_revision	178950	Annotation(bot_update)
got_webkit_revision_git	6a4d20097910d2423e568cb52d3e39fc350c4502	Annotation(bot_update)
got_webrtc_revision	6774	Annotation(bot_update)
got_webrtc_revision_git	4a1b3e3a69d349b0d3e91f607f24e02d8b975688	Annotation(bot_update)
issue		Trigger
mastername	chromium.linux	master.cfg
parent_branch	src	Trigger
parent_builddir		Trigger
parent_buildername	Linux Builder	Trigger
parent_buildnumber	35486	Trigger
parent_cr_revision	285711	Trigger
parent_got_nacl_revision	13506	Trigger
parent_got_revision	285711	Trigger
parent_got_swarming_client_revision	2cbc12487aea464730bcf60230f4d4d63d61ac51	Trigger
parent_got_v8_revision	22611	Trigger
parent_got_webkit_revision	178950	Trigger
parent_revision	285711	Trigger
parent_scheduler	linux_src	Trigger
parent_slavename	build36-m1	Trigger
parent_try_job_key		Trigger
parent_wk_revision	178950	Trigger
parentname	Linux Builder	Trigger
parentslavename	build36-m1	Trigger
patch_url		Trigger
patchset		Trigger
project		Build
repository	svn://svn-mirror.golo.chromium.org/chrome/trunk	Build
requester		Trigger
revision	285711	Build
rietveld		Trigger
root		Trigger
scheduler	linux_rel_trigger	Scheduler
slavename	vm906-m1	BuildSlave
workdir	/mnt/data/b/build/slave/Linux_Tests	slave
Blamelist:

ariblue@google.com
aurimas@chromium.org
bengr@chromium.org
blink-deps-roller@chromium.org
ccameron@chromium.org
evy@chromium.org
grt@chromium.org
mpearson@chromium.org
oshima@chromium.org
pkotwicz@chromium.org
rlarocque@chromium.org
viettrungluu@chromium.org
xiyuan@chromium.org
Timing:

Start	Fri Jul 25 16:12:23 2014
End	Fri Jul 25 17:09:27 2014
Elapsed	57 mins, 3 secs



e.g.,

page_runner_unittest.PageRunnerTests:

Traceback (most recent call last):
run at /usr/lib/python2.7/unittest/case.py:327
testMethod()
testUserAgent at tools/telemetry/telemetry/page/page_runner_unittest.py:317
page_runner.Run(test, ps, expectations, options)
Run at tools/telemetry/telemetry/page/page_runner.py:419
page, credentials_path, possible_browser, results, state)
_PrepareAndRunPage at tools/telemetry/telemetry/page/page_runner.py:256
finder_options)
StartBrowserIfNeeded at tools/telemetry/telemetry/page/page_runner.py:117
self.browser.tabs[0].WaitForDocumentReadyStateToBeComplete()
WaitForDocumentReadyStateToBeComplete at
tools/telemetry/telemetry/core/web_contents.py:31
'document.readyState == "complete"', timeout)
WaitForJavaScriptExpression at tools/telemetry/telemetry/core/web_contents.py:53
util.WaitFor(IsJavaScriptExpressionTrue, timeout)
WaitFor at tools/telemetry/telemetry/core/util.py:76
res = condition()
IsJavaScriptExpressionTrue at tools/telemetry/telemetry/core/web_contents.py:46
return bool(self.EvaluateJavaScript(expr))
EvaluateJavaScript at tools/telemetry/telemetry/core/web_contents.py:108
expr, context_id=None, timeout=timeout)
EvaluateJavaScriptInContext at
tools/telemetry/telemetry/core/web_contents.py:124
expr, context_id=context_id, timeout=timeout)
EvaluateJavaScript at
tools/telemetry/telemetry/core/backends/chrome/inspector_backend.py:176
return self._runtime.Evaluate(expr, context_id, timeout)
Evaluate at
tools/telemetry/telemetry/core/backends/chrome/inspector_runtime.py:41
raise exceptions.EvaluateException(res['error']['message'])
EvaluateException: Internal error: main world execution context not found.

Locals:
context_id : None
expr       : 'document.readyState == "complete"'
request    : {'params': {'returnByValue': True, 'expression':
'document.readyState == "complete"'}, 'method': 'Runtime.evaluate', 'id': 1}
res        : {u'id': 1, u'error': {u'message': u'Internal error: main world
execution context not found.', u'code': -32000}}
timeout    : 90
.

Powered by Google App Engine
This is Rietveld 408576698