Comments (14)
Ugh, that sounds bad, sorry about that. I updated the runtime at 0.0.63, can you try with 0.0.62 and tell me if the problem persists?
If you can make a small repro, I'd be happy to dig into that too.
from partykit.
Ok, this is great info. I'm going to talk to cloudflare/workerd about this and file an issue with them. Been trying to reproduce it locally with your repro but haven't been able to, will keep trying this weekend.
from partykit.
Super hard to reproduce, it seems to have to do with party state on 0.0.63, but cant tell exactly what triggers the segfault as I had many parties with dev data.
from partykit.
To clarify, does this mean using 0.0.62 fixes the issue for you? If so, I'll revert the miniflare update I did, else not.
from partykit.
Got a segfault on both 0.0.62 and 0.0.63. I copied the .partykit
-PartyKitDurable
folder to a minimal example and after 5-7 minutes got a segfault:
https://github.com/stephenlacy/partykit-repro-1
pnpm i
pnpm dev
Running pnpm dev
in each folder (app, partykit) also works to isolate the tty sessions.
open http://localhost:5173/game/MUBJ
click both buttons a few times, wait 5-7 minutes.
from partykit.
This is super helpful, thank you! I'll investigate tomorrow. One last thing: can you try turning hibernation off and see if that fixes the segfaults?
from partykit.
Ran it for a few hours with several manual restarts, it did not seem to trigger a segfault with hibernation off.
from partykit.
Thanks, is there a way to turn on verbose logging?
from partykit.
Yeah, partykit dev --verbose
should output more information, though I'm not sure whether it'll help here. Let me know if it does!
from partykit.
Seems I'll need to dig into why --verbose fails
🎈 PartyKit v0.0.63
--------------------
Build succeeded, starting server...
✘ [ERROR] workerd/server/server.c++:3170: info: Inspector is listening
[pk:inf] Ready on http://0.0.0.0:1999
[pk:inf] - http://127.0.0.1:1999
[pk:inf] - http://192.168.1.3:1999
✘ [ERROR] workerd/server/server.c++:1142: info: Inspector client attaching [core:user:]
Connected:
id: 370aa7bd-6963-449e-b36f-a7e164b778ec
room: partytest
url: /party/partytest
[pk:inf] GET /party/partytest 101 Switching Protocols (19ms)
╭───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ [b] open a browser, [c] clear console, [x] to exit │
✘ [ERROR] workerd/io/worker.c++:989: info: console warning; message = A promise rejection was handled asynchronously. This warning occurs when attaching a catch handler to a promise after it rejected. (rejection #1)
✘ [ERROR] workerd/io/worker.c++:1771: info: uncaught exception; source = Uncaught (in promise); exception = Error: [onClose] Worker not initialized.
✘ [ERROR] workerd/io/worker.c++:1771: info: uncaught exception; source = Uncaught (async); exception = Error: [onClose] Worker not initialized.
[pk:inf] GET /party/partytest 101 Switching Protocols (2ms)
connection d3bb6d21-b853-4122-9fd1-1f2194d0808c sent message: {"type":"fetch","payload":"count"}
connection d3bb6d21-b853-4122-9fd1-1f2194d0808c sent message: {"type":"fetch","payload":"members"}
connection d3bb6d21-b853-4122-9fd1-1f2194d0808c sent message: {"type":"fetch","payload":"self"}
connection d3bb6d21-b853-4122-9fd1-1f2194d0808c sent message: {"type":"self","payload":{"username":"test"}}
╭───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ [b] open a browser, [c] clear console, [x] to exit │
✘ [ERROR] *** Received signal #11: Segmentation fault: 11
stack:
from partykit.
Oh hmm interesting
from partykit.
can you try with partykit@latest
and let me know if you still see this problem?
from partykit.
Still getting it:
connection 73ba3b03-dce6-4b7d-a35c-8bb84d3d19d2 sent message: {"type":"self","payload":{"username":"test"}}
╭──────────────────────────────────────────────────────────────────────────────╮
partykit:dev: ✘ [ERROR] *** Received signal #11: Segmentation fault: 11
partykit:dev:
partykit:dev: │ [b] open a browser, [c] clear console, [x] to exit │
partykit:dev: ╰──────────────────────────────────────────────────────────────────────────────╯
partykit:dev: stack:
partykit:dev:
partykit:dev:
dependencies:
partysocket 0.0.20
partykit 0.0.71
Is there a way to dump the stack from the runtime vs an empty stack?
from partykit.
Related Issues (20)
- autogenerate types based on partykit.json
- rewrite ai/vectorize local dev experience with service bindings
- Wrong protocol on local server? HOT 5
- failed to import "y-partykit/react" |- ReferenceError: WebSocket is not defined HOT 9
- HMR in react when developing causes client disconnects
- use `party.io` on a non-main party
- Sanitise Party `name` on partykit init HOT 1
- `usePartySocket`/`useYProvider` should default to `host: window.location.host` HOT 1
- `socket.updateProperties()` overrides `party` HOT 1
- Feature request: Add rawProtocol param for y-partykit HOT 6
- Bun not working HOT 3
- bug: deploy - windows compatibility issue for wasm files HOT 2
- use npm: specifiers in partykit.json for main/parties
- Fine-grained Permissions possible? HOT 1
- Y.js V2 Update Format HOT 4
- PartySocket.fetch -- docs and host param
- This expression is not constructable HOT 1
- Make Party.Room constructor public HOT 2
- PartyKit Quickstart fails to open on macOS HOT 5
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 partykit.