IntersectMBO / ouroboros-consensus

Implementation of a Consensus Layer for the Ouroboros family of protocols
https://ouroboros-consensus.cardano.intersectmbo.org
Apache License 2.0
31 stars 22 forks source link

db-synthesizer does not use `ExperimentalHardForksEnabled` option #1072

Open RenateEilers opened 4 months ago

RenateEilers commented 4 months ago

Summary

In #4341 TestEnableDevelopmentHardForkEras has been renamed to ExperimentalHardForksEnabled for cardano-node, but the configuration parser for db-synthesizer hasn't seen this change. As a result, calling db-synthesizer with a configuration file where the option is renamed results in behavior that is different from calling cardano-node with the same config. This unintuitive difference can lead to problems (see e.g. #1071) and time-consuming investigations.

Completion criteria db-synthesizer displays the expected behavior when ExperimentalHardForksEnabled is enabled.

The ideal path to this solution is to separate out the parts of cardano-node and ouroboros-consensus that read node configuration in favor of a shared component. This will prevent any future divergence.

If investigation shows that such a separation would require an unreasonable restrucuring of the current code, it will suffice to update the parsers in ouroboros-consensus to match cardano-node.

amesgen commented 2 months ago

FTR: With #1173 merged, db-synthesizer will "understand" Conway by default.