-
-
Notifications
You must be signed in to change notification settings - Fork 2.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
🐛 parcel watch
in 1.5.0 stuck on "Building someFile.js..."
#637
Comments
Is there anyway you could provide us with the project where this accured or a project where we could reproduce this? |
I sadly can't share the project I'm experiencing the issue in, but I stripped a copy down to re-create the build config and structure and the issue is reproducible in that stripped down project. @DeMoorJasper You can find the repo here: https://github.com/mBeierl/parcel-watch-issue |
I tried your repository and found out, that if we change the workerfarmOptions to this, it works:
this let's a call to the remote worker time out after 1second, and retries Infinite times after a timeout and apparently it doesn't throw a workerTimeout error or any other error, so something inside the code or worker-farm code is freezing the individual workers. After a bit more research it's always stuck on the same assets (mainly polyfills, so this bug has nothing to do with overworked workers or anything similar, it's an issue within some asset processing or it's just taking extremely long) |
Hmm interesting. I will try to set-up a local development of parcel and debug a little myself. I haven't looked into parcel's source before, so it might take while. |
I'm having the same issue at each update.
and it ends up working... |
I'm having the same issue with niicojs on Windows. his solution with update parcel helps me sometimes... PS. |
Alas, I have to do this all every startup of Parcel or it fails to finish building about 75% of the time. |
I'm running into this same issue on my Windows 10 machine. @DeMoorJasper's change to the work options has made it work consistently for me. Specifically the Like others, mine seems to get bogged down in the babel-polyfills. |
I can confirm that adding My dirty hack was to open
(if you're on a node version smaller than 8.x, you need to change the file inside the /lib folder and not /src) |
I'm having the same issue, normally deleting cache works but not anymore. Have tried the It's randomly getting stuck on different files. Sometimes it's a js file, sometimes scss and sometimes one of the svgs or pngs
|
@amykapernick the sometimes scss sometimes js is probably due to the multiple workers it’s highly likely that it’s always the same file Sent with GitHawk |
@DeMoorJasper the files are always different (footer, header etc) so it's likely to be app.js or index.js then. Any suggestions on resolving this? It's not actually giving an error, just getting stuck and freezing my terminal I just got a new computer and I need to get this working because I have a bunch of updates to do. I've tried clearing and updating things multiple times but no success |
Actually fixed in #901. #900 is the issue. Already fixed a while ago, but not yet merged. Probably just upvote the PR then it should get into the next patch I guess :) @amykapernick Yes, it's always random, but it's not call time related but call count. |
This bug is still in 1.6.2 and it happens on random files not always the same. Clearing the cache does not help. |
Still in 1.7.0. |
Still in 1.7.0.. It's frustrating |
Yep, still have it in 1.8.1. I'm on Ubuntu 18.04, not Windows |
This is probably a different issue @dspacejs see #1331 |
This fixes a bug where IPC pipe communication would deadlock when both ends of the pipe are written to simultaneously, and the amount of data written exceeds the size of the pipe buffer. Fixes: #1099 Fixes: nodejs/node#7657 Fixes: electron/electron#10107 Fixes: parcel-bundler/parcel#637 Fixes: parcel-bundler/parcel#900 Fixes: parcel-bundler/parcel#1137
This fixes a bug where IPC pipe communication would deadlock when both ends of the pipe are written to simultaneously, and the kernel pipe buffer has already been filled up by earlier writes. The root cause of the deadlock is that, while writes to an IPC pipe are generally asynchronous, the IPC frame header is written synchronously. So when both ends of the pipe are sending a frame header at the same time, neither will read data off the pipe, causing both header writes to block indefinitely. Additionally, this patch somewhat reduces the spaghetti level in win/pipe.c. Fixes: #1099 Fixes: nodejs/node#7657 Fixes: electron/electron#10107 Fixes: parcel-bundler/parcel#637 Fixes: parcel-bundler/parcel#900 Fixes: parcel-bundler/parcel#1137
This fixes a bug where IPC pipe communication would deadlock when both ends of the pipe are written to simultaneously, and the kernel pipe buffer has already been filled up by earlier writes. The root cause of the deadlock is that, while writes to an IPC pipe are generally asynchronous, the IPC frame header is written synchronously. So when both ends of the pipe are sending a frame header at the same time, neither will read data off the pipe, causing both header writes to block indefinitely. Additionally, this patch somewhat reduces the spaghetti level in win/pipe.c. Fixes: #1099 Fixes: nodejs/node#7657 Fixes: electron/electron#10107 Fixes: parcel-bundler/parcel#637 Fixes: parcel-bundler/parcel#900 Fixes: parcel-bundler/parcel#1137
This fixes a bug where IPC pipe communication would deadlock when both ends of the pipe are written to simultaneously, and the kernel pipe buffer has already been filled up by earlier writes. The root cause of the deadlock is that, while writes to an IPC pipe are generally asynchronous, the IPC frame header is written synchronously. So when both ends of the pipe are sending a frame header at the same time, neither will read data off the pipe, causing both header writes to block indefinitely. Additionally, this patch somewhat reduces the spaghetti level in win/pipe.c. Fixes: #1099 Fixes: nodejs/node#7657 Fixes: electron/electron#10107 Fixes: parcel-bundler/parcel#637 Fixes: parcel-bundler/parcel#900 Fixes: parcel-bundler/parcel#1137
This fixes a bug where IPC pipe communication would deadlock when both ends of the pipe are written to simultaneously, and the kernel pipe buffer has already been filled up by earlier writes. The root cause of the deadlock is that, while writes to an IPC pipe are generally asynchronous, the IPC frame header is written synchronously. So when both ends of the pipe are sending a frame header at the same time, neither will read data off the pipe, causing both header writes to block indefinitely. Additionally, this patch somewhat reduces the spaghetti level in win/pipe.c. Fixes: #1099 Fixes: nodejs/node#7657 Fixes: electron/electron#10107 Fixes: parcel-bundler/parcel#637 Fixes: parcel-bundler/parcel#900 Fixes: parcel-bundler/parcel#1137
This fixes a bug where IPC pipe communication would deadlock when both ends of the pipe are written to simultaneously, and the kernel pipe buffer has already been filled up by earlier writes. The root cause of the deadlock is that, while writes to an IPC pipe are generally asynchronous, the IPC frame header is written synchronously. So when both ends of the pipe are sending a frame header at the same time, neither will read data off the pipe, causing both header writes to block indefinitely. Additionally, this patch somewhat reduces the spaghetti level in win/pipe.c. Fixes: libuv#1099 Fixes: nodejs/node#7657 Fixes: electron/electron#10107 Fixes: parcel-bundler/parcel#637 Fixes: parcel-bundler/parcel#900 Fixes: parcel-bundler/parcel#1137
This fixes a bug where IPC pipe communication would deadlock when both ends of the pipe are written to simultaneously, and the kernel pipe buffer has already been filled up by earlier writes. The root cause of the deadlock is that, while writes to an IPC pipe are generally asynchronous, the IPC frame header is written synchronously. So when both ends of the pipe are sending a frame header at the same time, neither will read data off the pipe, causing both header writes to block indefinitely. Additionally, this patch somewhat reduces the spaghetti level in win/pipe.c. Fixes: libuv#1099 Fixes: nodejs/node#7657 Fixes: electron/electron#10107 Fixes: parcel-bundler/parcel#637 Fixes: parcel-bundler/parcel#900 Fixes: parcel-bundler/parcel#1137
This fixes a bug where IPC pipe communication would deadlock when both ends of the pipe are written to simultaneously, and the kernel pipe buffer has already been filled up by earlier writes. The root cause of the deadlock is that, while writes to an IPC pipe are generally asynchronous, the IPC frame header is written synchronously. So when both ends of the pipe are sending a frame header at the same time, neither will read data off the pipe, causing both header writes to block indefinitely. Additionally, this patch somewhat reduces the spaghetti level in win/pipe.c. Fixes: #1099 Fixes: nodejs/node#7657 Fixes: electron/electron#10107 Fixes: parcel-bundler/parcel#637 Fixes: parcel-bundler/parcel#900 Fixes: parcel-bundler/parcel#1137
This fixes a bug where IPC pipe communication would deadlock when both ends of the pipe are written to simultaneously, and the kernel pipe buffer has already been filled up by earlier writes. The root cause of the deadlock is that, while writes to an IPC pipe are generally asynchronous, the IPC frame header is written synchronously. So when both ends of the pipe are sending a frame header at the same time, neither will read data off the pipe, causing both header writes to block indefinitely. Additionally, this patch somewhat reduces the spaghetti level in win/pipe.c. Fixes: #1099 Fixes: nodejs/node#7657 Fixes: electron/electron#10107 Fixes: parcel-bundler/parcel#637 Fixes: parcel-bundler/parcel#900 Fixes: parcel-bundler/parcel#1137
This fixes a bug where IPC pipe communication would deadlock when both ends of the pipe are written to simultaneously, and the kernel pipe buffer has already been filled up by earlier writes. The root cause of the deadlock is that, while writes to an IPC pipe are generally asynchronous, the IPC frame header is written synchronously. So when both ends of the pipe are sending a frame header at the same time, neither will read data off the pipe, causing both header writes to block indefinitely. Additionally, this patch somewhat reduces the spaghetti level in win/pipe.c. Fixes: #1099 Fixes: nodejs/node#7657 Fixes: electron/electron#10107 Fixes: parcel-bundler/parcel#637 Fixes: parcel-bundler/parcel#900 Fixes: parcel-bundler/parcel#1137
This fixes a bug where IPC pipe communication would deadlock when both ends of the pipe are written to simultaneously, and the kernel pipe buffer has already been filled up by earlier writes. The root cause of the deadlock is that, while writes to an IPC pipe are generally asynchronous, the IPC frame header is written synchronously. So when both ends of the pipe are sending a frame header at the same time, neither will read data off the pipe, causing both header writes to block indefinitely. Additionally, this patch somewhat reduces the spaghetti level in win/pipe.c. Fixes: #1099 Fixes: nodejs/node#7657 Fixes: electron/electron#10107 Fixes: parcel-bundler/parcel#637 Fixes: parcel-bundler/parcel#900 Fixes: parcel-bundler/parcel#1137
This fixes a bug where IPC pipe communication would deadlock when both ends of the pipe are written to simultaneously, and the kernel pipe buffer has already been filled up by earlier writes. The root cause of the deadlock is that, while writes to an IPC pipe are generally asynchronous, the IPC frame header is written synchronously. So when both ends of the pipe are sending a frame header at the same time, neither will read data off the pipe, causing both header writes to block indefinitely. Additionally, this patch somewhat reduces the spaghetti level in win/pipe.c. Fixes: #1099 Fixes: nodejs/node#7657 Fixes: electron/electron#10107 Fixes: parcel-bundler/parcel#637 Fixes: parcel-bundler/parcel#900 Fixes: parcel-bundler/parcel#1137
I tried updating my project from parcel-bundler 1.4.1 to 1.5.0, but
parcel watch
doesn't finish. I removed the cache folder manually and started the watch command (see exact CLI command below). It gets stuck at some random file, displaying∞ Building someFile.js...
forever.The
parcel build
command works btw.🎛 Configuration (.babelrc, package.json, cli command)
.babelrc:
package.json (without name etc. but all deps & scripts):
Used cli command:
yarn watch
(see script in package.json above)🤔 Expected Behavior
I expect the parcel watch command to finish building.
😯 Current Behavior
The command is getting stuck while building.
💁 Possible Solution
No idea, sorry.
🔦 Context
I will have to stay at version 1.4.1 until the watch command works again in my project, as I heavily depend on the watch command during development.
🌍 Your Environment
The text was updated successfully, but these errors were encountered: