Comments (3)
try run in debug mode in vscode, and pause the execution when a hang occurs, then check the call stack of the racing goroutine
from playwright-go.
its very hard for me to debug on vscode since this happens one after a while of processing a large number of data , but i did notice that when i switch off a handler that deals with iframes i have yet to see it freeze then, and i also remember being on go-rod and the browser would crash everytime it needed to work with an iframe and it wasnt headless so im tempted to say its relating to working with elements inside iframes. the go-rod developers said its potentially a bug with chrome devtools is there a know issue with iframes in playwright as well ?
i know its hard to work with a bug that cant be consistantly reproduced so thanks for the help im trying to figure out how i can reproduce it
from playwright-go.
for anyone facing the same issue, its due to the use of .Lock and .Unlock all over the playwright library which creates deadlocks , in my case it was a race condition between the router handling or waiting for a request to finish (due to route.Fetch probably) and a call to page.Close(), the only way i got it to work is by removing playwright's p.Lock() and p.Unlock() and adding my own graceful shutdown logic for the router, aborting the requests before calling page.Close()
im not aware if there's a workaround to this without modifying playwright so if you do let me know
from playwright-go.
Related Issues (20)
- Does work the page.Screenshot() function with MaskColor? HOT 2
- response.Body() cant‘run in the page.OnResponse(HandleResponse) callback function HOT 3
- Cannot upload large files HOT 2
- Does this ship with assertions? HOT 2
- about iframe HOT 2
- Issue connecting to https://playwright.microsoft.com/ web sockets HOT 1
- About Obtaining All Request Headers in an HTTP Request HOT 6
- Plugin support HOT 6
- Laravel. Error when working on Ubuntu "WebSocket connection to 'wss://.....' failed: WebSocket is closed before the connection is established." HOT 4
- Assertions in Go HOT 2
- Does it support Selenium Grid? HOT 2
- Viewport definition issue
- Run playwright record scripts HOT 2
- Strange timeout behaviour HOT 2
- could not launch playwright when updating to v0.4101.0 HOT 5
- Visual comparisons HOT 2
- Ways to pass context from one browser instance to another HOT 2
- Hangs on Content() HOT 3
- Page.Evaluate returns undefined for a specific site HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from playwright-go.