-
-
Notifications
You must be signed in to change notification settings - Fork 311
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
Grandine CL < > Lodestar VC incompatibility #6637
Comments
Cross reference of: grandinetech/grandine#24 |
Any chance for Lodestar to not send this field by default? (Maybe you can send it if CLI flag is passed) |
This is definitely an issue on our end, we were sending this query param always with a boolean value, e.g. by default |
@nflaig I just noticed that @barnabasbusa mixed errors Discord. The problem is actually
|
@nflaig indeed, I mixed up the issues with nimbus and grandine. Please see the correct error message above. @sauliusgrigaitis good catch! |
I am not sure we can resolve this on the Lodestar side as we have a bunch of query params that are not part of the spec but Lodestar itself uses. lodestar/packages/api/src/beacon/routes/validator.ts Lines 489 to 494 in 898cd90
It seems like all other clients just ignore extraneous query params and we should probably avoid implementing client specific workarounds. But let's ask @g11tech who added most / all of those extra params. |
Yes, I think this is the only api. Also since we allow to produce a blinded local block, we send |
Trying again with grandine's latest image (which ignores extra fields) Apr-05 14:33:42.048[] error: Error proposing block slot=72, validator=0x8419…5932 - Failed to produce block: validator.produceBlockV3 - Internal Server Error: {
"id": 1,
"jsonrpc": "2.0",
"error": {
"code": -32603,
"message": "Error processing response: encountered hyper error: hyper::Error(IncompleteMessage)"
}
} - Failed to produce block
Error: Failed to produce block: validator.produceBlockV3 - Internal Server Error: {
"id": 1,
"jsonrpc": "2.0",
"error": {
"code": -32603,
"message": "Error processing response: encountered hyper error: hyper::Error(IncompleteMessage)"
}
} - Failed to produce block
at Function.assert (file:///usr/app/packages/api/src/utils/client/httpClient.ts:44:13)
at BlockProposingService.produceBlockWrapper (file:///usr/app/packages/validator/src/services/block.ts:212:14)
at processTicksAndRejections (node:internal/process/task_queues:95:5)
at BlockProposingService.createAndPublishBlock (file:///usr/app/packages/validator/src/services/block.ts:144:29)
at async Promise.all (index 0)
``` |
Looks like an internal error in Grandine |
@barnabasbusa @nflaig It's |
You can just use |
i would request grandine @sauliusgrigaitis to ignore the non spec params, they are essentially there because we need them for one purpose or another. their defaults are spec complaint (so they assume values in accordance with spec) and responses are modified only if they were requested by these non spec aware valdiators/middlewares (DVT) and extra response flags carry the information if they are applied as well with again defaults of those flags in spec complaint manner which again a non aware validator software for e.g. can safely ignore. |
This is fixed in latest grandine develop version :) |
We ignore not spec'ed parameters in in particular places to achieve compatibility. However, we will probably ignore it all requests later. So this can be closed I think. |
Great, thanks @sauliusgrigaitis, I also think this is the best behavior as it gives clients the opportunity to experiment with new configurations even if those are not part of the spec yet. Thanks for retesting @pk910 🙏 |
Describe the bug
We are in the process to test cross beacon <> validator client compatibility, and found a bug when testing Grandine CL with lodestar VC.
Lodestar reports:
Grandine reports:
Snooper between cl <> vc reports:
cc: @pk910
Expected behavior
I would expect all client combinations would work.
Steps to reproduce
config.yaml:
kurtosis run github.com/kurtosis-tech/ethereum-package --args-file config.yaml
Additional context
Current BN <> VC Compatibility list tracker
Operating system
Linux
Lodestar version or commit hash
Version: v1.17.0/898cd90
The text was updated successfully, but these errors were encountered: