-
Notifications
You must be signed in to change notification settings - Fork 41
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
get datums using pallas observer #1403
Conversation
first integration bring all compatibility
the specific changes include: - removing the `println!` call in `mithril-common/src/chain_observer/cli_observer.rs` - removing the `minicbor::encode` implementation for `metadatum` in `mithril-common/src/chain_observer/codec.rs` - removing the `minicbor::encode` implementation for `constr` in `mithril-common/src/chain_observer/codec.rs` - adding mock utxo data in `mithril-common/src/chain_observer/pallas_observer.rs`
removes the tag field from metadatum and its associated tests.
- change the function signature of `inspect` to take a `vec<u8>` instead of `anycbor` - remove the unnecessary decoding of `cbor` in the `inspect` function - remove the unnecessary creation of `datum` as `anycbor` in the `inspect_datum` function - remove the unnecessary decoding of `cbor` in the `inspect_datum` function
- change the comment description for the `inspect` function
@jpraynaud I've just fixed a deserialization issue to consume the inline datum. From now on I am not sure if we have an issue in the CI side. It needs further investigation but it worked on my machine as you can see in the pic bellow. TLDR; the error we are getting now I could reproduce and it was related to fetch the epoch settings at
At my machine I just restarted the tests and it worked again as expected but restarting the CI step doesnt have the same results. |
Hey @falcucci, I guess that you are probably running the previous version of the end to end test 🤔 I have been able to reproduce the problem locally on my machine (it's the same problem as on the CI):
It looks like the queries_v16::get_utxo_by_address(statequery, era, addrs) function is returning the |
@jpraynaud everything here is updated til yesterday, this error is the fix that I've mentioned that I already made and it's working here, but cant reproduce anymore. is there any change that the aggregator isnt being updated with the bugfix in the CI? the tests are running successfully here using: ./mithril-end-to-end -vvv --bin-directory ../../target/release --work-directory=./artifacts --devnet-scripts-directory=./mithril-test-lab/mithril-devnet --skip-cardano-bin-download --mithril-era=thales --cardano-hard-fork-latest-era-at-epoch 1000 |
- remove the `use anyhow::context;` from the start of the file. - add `use anyhow::context;` within the `cfg_fs!` block.
@jpraynaud just to make it documented here: got it running changing the node version to 8.1.2 the local state queries changed between node versions, so using 8.7.3 breaks it since pallas has not support for now. |
@jpraynaud FYI this has been addressed at txpipe/pallas#385 and a proposed fix at txpipe/pallas#386 |
0ae982c
to
d7d85bd
Compare
61ea38f
to
3a16740
Compare
- change source of `pallas-addresses`, `pallas-codec`, `pallas-network`, `pallas-primitives`, `pallas-traverse`, and `pallas-crypto` in `cargo.lock` and `mithril-common/cargo.toml` from crates.io to a specific branch `fix/legacy-transaction-utxo-by-address` on repository `https://github.com/falcucci/pallas.git` - replace `values` type with `postalonsotransactionoutput` as an argument in `pallaschainobserver` methods including `get_datum_tag`, `inspect_datum`, and `serialize_datum` in `mithril-common/src/chain_observer/pallas_observer.rs` - update filter logic in `serialize_datum` to match `transactionoutput::map` - update test data to match the new `transactionoutput` type changes
- update `inventory` from version `0.3.14` to `0.3.15` with new checksum. - update multiple `pallas` packages (addresses, codec, crypto, network, primitives, traverse) from version `0.21.0` to `0.22.0` with updated git source reference. - update `snow` from version `0.9.5` to `0.9.6` with new checksum. - in `pallas_observer.rs`, replace `transactionoutput::map` with `transactionoutput::current` for utxo iteration and test values instantiation.
Hi @falcucci, now it's working with Here is the job that fails in the CI: https://github.com/input-output-hk/mithril/actions/runs/7668627456/job/20902207802 |
- modify the pallaschainobserver implementation to serialize the output datum inline if present, instead of unconditionally.
ba0c09a
to
14437d1
Compare
@jpraynaud it wasn't upstream updated, fixed :) when we have a new pallas version i'll bump it and notify you |
Great news @falcucci! Once the new pallas version is available, we'll merge the PR 🎉 Thanks for the good work! |
- updated `pallas-addresses`, `pallas-codec`, `pallas-network`, `pallas-primitives`, `pallas-traverse`, and `pallas-crypto` dependencies from git to version `0.23.0`.
- removed the `cfg_fs` macro from `lib.rs` in the `mithril-common` module.
@jpraynaud just updated from upstream and bumped the new pallas version. |
Hi @falcucci, can you rebase once more on the main branch and bump the patch version of |
- bump up version of `mithril-common` from `0.3.0` to `0.3.1`.
@jpraynaud done :) |
Content
Includes:
Pre-submit checklist
Comments
The automatic fallback mode has been implemented to make sure we progressively rollout the new integration.
Issue(s)
fixes #1315