-
Notifications
You must be signed in to change notification settings - Fork 2
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
Replication with Patchwork fails #87
Comments
Reverting to 4e3a06e (without ebt, but having kuska as a github dependency) solves this, but of course I'd love to use EBT 😁 |
Thanks for opening an issue! This is exactly the bug I was looking at this week 😅 Outbound replication from solar to Manyverse is working (haven't checked using Patchwork) but inbound replication is failing. As you see in the debug output, the error happens because solar is trying to deserialize the inbound request as a message but it is in fact a vector clock. I believe this commit is at least part of the problem: ed447ee Serves me right for trying to make things more efficient when they're not yet working perfectly! I'll work on this on Wednesday and keep you updated. I'm very much committed to getting EBT working reliably. |
Ah great, then you already know much more. Saves me the work to bisect it 😅 |
I started looking into this today and I am making some progress. Figured I'd share with you and anyone else who may read this at some point. First I returned the vector clock deserialization code to the Then I remembered that I could run Manyverse with EBT logging enabled. I then saw an error when the vector clock was received from solar: "no stream for incoming msg" (https://github.com/ssbc/packet-stream/blob/bb0493dd0eb6454ac675df78dfed20e994a4881f/index.js#L188). That allowed me to realise that the Now Manyverse is not receiving the vector clock from solar, even though I haven't changed anything further 😅 So yeah, I'm making progress but I'm not quite there yet. |
Haha ignore my previous comment...I was on the wrong track. But I'm happy to report that I've got bidirectional replication working for the first time 😺 The short version: I was using the positive version of the request number when responding to Manyverse (ie. sending a message or a vector clock). The request numbers of MUXRPC responses need to be negative. |
Fixed in: #88 Thanks again for opening the issue, @black-puppydog . You gave me some additional motivation to solve this. |
On current
main
(79514e9) I am getting the following error when trying to replicate with a local patchwork instance:[2024-01-20T09:55:26Z ERROR solar::actors::replication::ebt::replicator] EBT replicate handler failed: Validation(Json(Error("missing field
key", line: 1, column: 117)))
In
solar/src/actors/muxrpc/ebt.rs
in the handlersolar/solar/src/actors/muxrpc/ebt.rs
Lines 71 to 74 in 79514e9
I added a bit of println magic and this is what came up:
The text was updated successfully, but these errors were encountered: