-
Notifications
You must be signed in to change notification settings - Fork 47
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
bug/regression: DELETE /relay/v1/subscriptions freezes in certain conditions #1034
Comments
You are using cluster 0 which means the node will be subscribed to default pubsubTopic which doesn't follow sharding format. |
I tried to do this but something is wrong, when I use a different cluster ID, go-waku doesn't receive the messages published from nwaku, not sure what am I doing wrong. I've created a raw script that reproduces this issue, can you please have a look? Thanks |
I found why I had the issue from my last comment on clusters different than 0. @chaitanyaprem do you think this behavior is ok? Also I can confirm that this bug with DELETE /relay/v1/subscriptions freeze disappears on other cluster IDs |
That is odd, subscribing to a pubsubTopic via REST API should also work. Can you share debug logs when you invoke this command, would like to see what could be the issue? |
Logs: Node start:
Subscribe requests:
Nwaku publish:
Go-waku get message:
|
Went through the logs and in all cases i see 200 OK returned for POST subscription. |
Sure, here's the steps:
Issue happens only if NODE1 is nwaku and NODE2 is go-waku
Here's a shell script that you can run directly to reproduce the issue:
|
Update, I see nwaku was also changed to work as go-waku :) |
Found that the bug ( |
Describe the bug
This seems as a regression as it started to happen on 2/9/2024.
It also happens only in certain conditions as described bellow
To Reproduce
POST /relay/v1/subscriptions
with payload:["/waku/2/rs/0/0", "/waku/2/rs/0/1", "/waku/2/rs/0/9", "/waku/2/rs/0/25", "/waku/2/rs/0/1000"]
DELETE /relay/v1/subscriptions
with payload:["/waku/2/rs/0/0", "/waku/2/rs/0/1", "/waku/2/rs/0/9", "/waku/2/rs/0/25", "/waku/2/rs/0/1000"]
Actual behavior
Request freezes and is only stops if the client times out
The issue only reproduces if node1 unsubscribes first. If we reverse the order it works fine
The issue only reproduces if node2 tries to unsubscribes from 4 or more topics. It work is it's bellow 4/
go-waku version/commit hash
harbor.status.im/wakuorg/go-waku:latest
node1.log
node2.log
node1 args ['--listen-address=0.0.0.0', '--rest=true', '--rest-admin=true', '--websocket-support=true', '--log-level=DEBUG', '--rest-relay-cache-capacity=100', '--websocket-port=53777', '--rest-port=53775', '--tcp-port=53776', '--discv5-udp-port=53778', '--rest-address=0.0.0.0', '--nat=extip:172.18.230.234', '--peer-exchange=true', '--discv5-discovery=true', '--cluster-id=0', '--min-relay-peers-to-publish=1', '--legacy-filter=false', '--rest-filter-cache-capacity=50', '--relay=true', '--nodekey=30348dd51465150e04a5d9d932c72864c8967f806cce60b5d26afeca1e77eb68']
node2 args ['--listen-address=0.0.0.0', '--rest=true', '--rest-admin=true', '--websocket-support=true', '--log-level=DEBUG', '--rest-relay-cache-capacity=100', '--websocket-port=5557', '--rest-port=5555', '--tcp-port=5556', '--discv5-udp-port=5558', '--rest-address=0.0.0.0', '--nat=extip:172.18.188.172', '--peer-exchange=true', '--discv5-discovery=true', '--cluster-id=0', '--min-relay-peers-to-publish=1', '--legacy-filter=false', '--rest-filter-cache-capacity=50', '--relay=true', '--discv5-bootstrap-node=enr:-Ly4QOJ7KFVvRp5EttMNtjmNbGtF-hYIG8l6RSTgj7Jb8K1HZUgHCA234U-gSw2TGgx3cYaRCRcTH2DUzW2O7bhtuv6GAY2r1df1gmlkgnY0gmlwhKwRAAKKbXVsdGlhZGRyc5gACgR_AAABBtIR3QMACgSsEQACBtIR3QOJc2VjcDI1NmsxoQM3Tqpf5eFn4Jztm4gB0Y0JVSJyxyZsW8QR-QU5DZb-PYN0Y3CC0hCDdWRwgtIShXdha3UyAQ']
The text was updated successfully, but these errors were encountered: