Failures for unresolvable hostnames
ishmeals opened this issue · 0 comments
ishmeals commented
If given an unsolvable hostname, such as "http://lskjdf.al", it fails to update status in the database and consequently the UI.
skyvern-1 | 2024-07-08T15:35:59.870196Z [error ] Failed to update status and failure reason in database. Task might going to be time_out reason=Failed to navigate to URL. URL:http://lskjdf.al, Error:net::ERR_NAME_NOT_RESOLVED at
http://lskjdf.al/
Then, it seems to corrupt the playwright session?
skyvern-1 | Traceback (most recent call last):
skyvern-1 | File "/app/skyvern/webeye/browser_factory.py", line 103, in create_browser_context
skyvern-1 | return await creator(playwright, **kwargs)
skyvern-1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
skyvern-1 | File "/app/skyvern/webeye/browser_factory.py", line 142, in _create_headful_chromium
skyvern-1 | browser_context = await playwright.chromium.launch_persistent_context(**browser_args)
skyvern-1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
skyvern-1 | File "/usr/local/lib/python3.11/site-packages/playwright/async_api/_generated.py", line 15075, in launch_persistent_context
skyvern-1 | await self._impl_obj.launch_persistent_context(
skyvern-1 | File "/usr/local/lib/python3.11/site-packages/playwright/_impl/_browser_type.py", line 157, in launch_persistent_context
skyvern-1 | from_channel(await self._channel.send("launchPersistentContext", params)),
skyvern-1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
skyvern-1 | File "/usr/local/lib/python3.11/site-packages/playwright/_impl/_connection.py", line 63, in send
skyvern-1 | return await self._connection.wrap_api_call(
skyvern-1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
skyvern-1 | File "/usr/local/lib/python3.11/site-packages/playwright/_impl/_connection.py", line 495, in wrap_api_call
skyvern-1 | return await cb()
skyvern-1 | ^^^^^^^^^^
skyvern-1 | File "/usr/local/lib/python3.11/site-packages/playwright/_impl/_connection.py", line 101, in inner_send
skyvern-1 | result = next(iter(done)).result()
skyvern-1 | ^^^^^^^^^^^^^^^^^^^^^^^^^
skyvern-1 | playwright._impl._errors.TargetClosedError: Target page, context or browser has been closed
skyvern-1 | Browser logs:
skyvern-1 |
skyvern-1 | <launching> /root/.cache/ms-playwright/chromium-1097/chrome-linux/chrome --disable-field-trial-config --disable-background-networking --enable-features=NetworkService,NetworkServiceInProcess --disable-background-timer-th
rottling --disable-backgrounding-occluded-windows --disable-back-forward-cache --disable-breakpad --disable-client-side-phishing-detection --disable-component-extensions-with-background-pages --disable-component-update --no-default-brow
ser-check --disable-default-apps --disable-dev-shm-usage --disable-extensions --disable-features=ImprovedCookieControls,LazyFrameLoading,GlobalMediaControls,DestroyProfileOnBrowserClose,MediaRouter,DialMediaRouteProvider,AcceptCHFrame,A
utoExpandDetailsElement,CertificateTransparencyComponentUpdater,AvoidUnnecessaryBeforeUnloadCheckSync,Translate,HttpsUpgrades,PaintHolding --allow-pre-commit-input --disable-hang-monitor --disable-ipc-flooding-protection --disable-popup
-blocking --disable-prompt-on-repost --disable-renderer-backgrounding --force-color-profile=srgb --metrics-recording-only --no-first-run --password-store=basic --use-mock-keychain --no-service-autorun --export-tagged-pdf --disable-searc
h-engine-choice-screen --no-sandbox --disable-blink-features=AutomationControlled --disk-cache-size=1 --start-maximized --user-data-dir=/data/browser --remote-debugging-pipe about:blank
skyvern-1 | <launched> pid=1229
skyvern-1 | [pid=1229][out] Opening in existing browser session.
skyvern-1 |
skyvern-1 | The above exception was the direct cause of the following exception:
skyvern-1 |
skyvern-1 | Traceback (most recent call last):
skyvern-1 | File "/app/skyvern/forge/agent.py", line 242, in execute_step
skyvern-1 | ) = await self._initialize_execution_state(task, step, workflow_run)
skyvern-1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
skyvern-1 | File "/app/skyvern/forge/agent.py", line 815, in _initialize_execution_state
skyvern-1 | browser_state = await app.BROWSER_MANAGER.get_or_create_for_task(task)
skyvern-1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
skyvern-1 | File "/app/skyvern/webeye/browser_manager.py", line 59, in get_or_create_for_task
skyvern-1 | browser_state = await self._create_browser_state(task.proxy_location, task.url, task.task_id)
skyvern-1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
skyvern-1 | File "/app/skyvern/webeye/browser_manager.py", line 33, in _create_browser_state
skyvern-1 | ) = await BrowserContextFactory.create_browser_context(
skyvern-1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
skyvern-1 | File "/app/skyvern/webeye/browser_factory.py", line 107, in create_browser_context
skyvern-1 | raise UnknownErrorWhileCreatingBrowserContext(browser_type, e) from e
skyvern-1 | skyvern.exceptions.UnknownErrorWhileCreatingBrowserContext: Unknown error while creating browser context for chromium-headful. Exception type: <class 'playwright._impl._errors.TargetClosedError'> Exception message: Targe
t page, context or browser has been closed