-
Notifications
You must be signed in to change notification settings - Fork 29
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
Staging LC picks up PFS's from the disjoint RSBs at random #2521
Comments
Observations using local LC nodes as opposed to the staging ones
Finally if we use a environment file for example like this
and start the servers in this way the PFS selection is forced in the dapp to use only that one PFS which we have specified in the environment file. I reach the conclusion that till we have this disjoint transport servers with staging environment not explicitly specifying a PFS this confusion is there to remain |
@weilbith Describe issue and our solution to the problem. |
Alight, let's give this a try. The root of all the described symptoms is that while the In our discussions we pointed out two possible solutions. Either make both fully connected (100%) or completely separate them as two (0% connection). Merging both environments completely seems to be a bad idea as they have different purposes. The staging environment is meant to be used for test network demonstrations of the Raiden clients. As a environment for external developers to try the system and get familiar with the libraries to build their own products on top. Therefore it is meant to be stable and reliably working. Though it has not as strict reliability constraints as the mainnet. Therefore it is the currently favored approach to separate both networks. As the stable version the staging environment should stay as is and the development environments pops out. This requires us to
The following steps on this topic are:
@palango @andrevmatos could you eventually provide some feedback, especially regarding the task list, as I'm not familiar with the Raiden service bundle. |
Looks good to me, I think it's important to first align on the approach, we can work out the details afterwards. |
I think that should be about it. Some observations:
|
@palango who would you suggest to take into account? So we could just mention them here.
Good idea. Should be safe to re-use the tokens from my perspective. In my opinion they are actually not part of the Raiden contracts themselves.
Yes. I remember. We just have to do it. 😬 |
I agree.
It is and there are plans to reuse it even on mainnet for a long time: raiden-network/raiden-contracts#1182
Reusing the tokens is definitively a good idea and has been advocated multiple times already. It would cause less confusion and make the testnets more similar to the mainnet, since the mainnet also uses the same tokens on each deployment. The necessary changes to the deployment have just never been done. |
Using different contract deployments will provide a nice clean split. Coordinating the contract changes across all the different repos could be error-prone, though. Does anyone have a clear view on how that would work in detail, yet? |
@taleldayekh organise meeting about this. |
Another approach would be to reject PFSs that are not operating in the same federation (we could add a federation id to the info endpoint if the existing info is not sufficient) and look for another PFS. That behavior is useful anyway and would avoid the need to add any new configuration. This would be less prone to strange errors due to misconfiguration. |
I would suggest to move the demo environment to rinkeby. Pros:
Cons:
|
Allow switching between the two contract deployments on goerli and default to the old/demo contracts. See raiden-network/light-client#2521 on why we want to do this. Closes #6862
Part of raiden-network/light-client#2521 Merge at the same time as raiden-network/raiden-services#951.
Part of raiden-network/light-client#2521 Merge at the same time as raiden-network/raiden-services#951.
Since raiden-network#951, we can use the unstable contracts environment. We want to do that for the development machines that are run using the docker-compose. Since that environment only exists for goerli, we only enable it for the goerli services. Relates to raiden-network/light-client#2521
Since raiden-network#951, we can use the unstable contracts environment. We want to do that for the development machines that are run using the docker-compose. Since that environment only exists for goerli, we only enable it for the goerli services. Relates to raiden-network/light-client#2521
Since #951, we can use the unstable contracts environment. We want to do that for the development machines that are run using the docker-compose. Since that environment only exists for goerli, we only enable it for the goerli services. Relates to raiden-network/light-client#2521
The new contracts are set up and used in the services-dev services and the services on transport05 as well as by the SP CI development.json environment. Remaining TODOs:
|
Allow switching between the two contract deployments on goerli and default to the old/demo contracts. See raiden-network/light-client#2521 on why we want to do this. Closes #6862
Can we close this ones our |
Closing, |
Thanks for filing a bug report :-)
Steps to Reproduce
Environment setup:
node1(LC) <----> hub(python client) <------> node2 (LC)
2.1 PFS on
pfs.demo001.env.raiden.network
2.2 Transport on
transport.demo001.env.raiden.network
3.1 Transport as
transport.demo001.env.raiden.network
but3.2 PFS they sometimes select
3.2 a
pfs.demo001.env.raiden.network
and this is time when the tranfer has correct route and the transfer goes through. At the time the nodes dont see the other PFSs and act as ifpfs.demo001.env.raiden.network
is the only PFS available. Unfortunately i did not take a screenshot for this.3.2 b Sometimes the nodes use all the other PFS's like
pfs.transport0x.raiden.network
(where x is a number) but do not see thepfs.demo001.env.raiden.network
as if it never exists.The next step they get
No route between you and target
This causes one way transfers even though capacity exists either way.
Lots of users on gitter are facing the same issue and are utterly confused why they cannot make a simple transfer and why the hub is always offline or something which can happen when hub is on
transport.transport0x.raiden.network
andpfs.transport0x.raiden.network
Expected Result
Actual Result
The text was updated successfully, but these errors were encountered: