-
Notifications
You must be signed in to change notification settings - Fork 10
V0.6.6 #82
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
V0.6.6 #82
Conversation
|
As we just did all our 0.6.6 + 0.6.7 changes together this week (where there are many more representation changes in 0.6.7 [C16, new elements of Service Accounts, storage keys read/write, etc]) we hope to get in sync in 0.6.7. |
|
by updating the test vectors, which is confused, bcz if returns correct type, why panicked, and the test is broken on storage mismatched, hope that can publish |
|
when we run traces with new Operand encoding, they fail. We need to use the 0.6.5 operand encoding to pass. In particular, I believe the vectors the ↕xo position is not correct (should be in the end of the encoding according to 0.6.6 |
|
our jam published crates are for 0.6.5, which means the can't work with new vectors. If you are using them, pls ask in the channel for an update |
@danicuki wdym here? There is no ↕xo in new operators encoding. has been replaced by |o| |
you mean that the program embedded with the vector panics? |
yes, this logging message is emitted by the host call 100, that there could be a logic in calling host call 18 (the fetch call), and panicked on decoding the returned value
I've checked that my kind 0 is matched with GP-0.6.7 (encoded_params_length=136), so that I believe there could be some problems in the embedded test service in the test vectors, that I need the source of |
Mmm... that test service sources are outdated and not the ones we're using to build the test service embedded within the test vectors. Are you using it to rebuild the binary or something? |
Hmm, no, I don't use or modify it any more as I could pass all provided accumulate tests without modifications weeks ago, the panic happens in the embedded test service in the test vectors in this PR, so using it as a template, I was trying to describe the root case of the panic and why I need the source of |
Fair enough, I'll double check our side. I think our new crates need to be published. Unfortunately that part is not under my jurisdiction :-D |
GP 0.6.6
|
|
@danicuki I discovered that we were using an outdated version of C.29 (the encoding for accumulation operators). Thanks for pointing that out. Regarding B.9, I can confirm that we are using the v0.6.6 encoding, i.e.: NOTE: I've only updated the STF accumulate vectors for now. I'll update the traces once we’re aligned on the STF. @clearloop perhaps this was the cause of your issuel? |
|
Tried the latest and running into the same panic issue with the accumulate vectors as everyone else. My accumulate arguments, operands and fetch host call all seem to match the 0.6.6 spec. |
|
@clearloop @danicuki @jaymansfield alright, lets start simple. Does the panic happens in https://github.com/davxy/jam-test-vectors/blob/master/stf/accumulate/tiny/process_one_immediate_report-1.json ?
Edit: just in case... we are using |
Yes happens with process_one_immediate_report-1 for me at least. Fetch with w_10=0 in 0.6.7 compared to 0.6.6 is just an updated Wb value right and same encoding? I've tried looking it over a few times and can't see any other difference. |
|
my bad! I just noticed that we're leveraging an unreleased change. If you want to process these accumulate vectors you need to apply this: I’ll update the README soon with a big, fat warning. Sorry if I made you lose time chasing this down 😅 |
|
@davxy I understand you are doing your best here, but this "mixed" versions vectors is driving us crazy. I tried hard to match the accumulate vectors, using the fetch host call from all |
|
Hey @danicuki
The fetch we're using is the one from the linked PR, that should be the only deviation in question. Please also note that this also impacts the PolkaJam nightly node and we want to maintain nightly node coherent with the vectors. Unfortunately we included that PR and is there to stay as we're already using the introduced K (maximum number of tickets) and N (number of tickets per validator). I don't want to maintain a separate branch of our codebase for vectors delivery :-D Lets also wait for the other teams feedback |
Added in this change and still no luck on my side, same panic still. Maybe a trace for one of them would help us see what is expected to narrow down the difference? |
|
Also note, in gavofyork/graypaper#414 I see that the change we introduced only concerns the values returned for w_10=0: I'll share https://github.com/davxy/jam-test-vectors/blob/master/stf/accumulate/tiny/process_one_immediate_report-1.json PVM trace on monday if it can help |
|
Thanks @davxy - will try to figure out whats going on after you publish the PVM trace. One doubt: what value for WB = are you using? |
Thanks! we got a trace from @danicuki @jamixir in channels and encountered a problem that we handled the return status of storage write incorrectly, now we can pass all accumulate tests at 3cd379a would like to share our trace of process_one_immediate_report_1.log if helps others |
|
Nice! I've regenerated the Could you guys retry run Edit: It's important that we're aligned on everything before the merge - including gas consumption. |
|
The problem is back in traces(reports_l0 + reports_l1) tests, hmm, before that, we reached two
I can confirm use |
|
Our PVM trace for |
@clearloop |
sorry, my bad, my local test-vectors were not updated successfully, we can still pass now we meet some problems related with storage IO in |
|
PyJAMaz is passing accumulate vectors and traces up to reports-l0, we encounter two state-root mismatches in reports-l1, which could be bugs on our end. We are looking into it. |
|
Jampy is passing all traces tests expect for l1 >= 51, and expect for the fact that in some tests (also in accumulate) I'm consuming 2 more gas units; I'm trying to figure out why. I will debug l1 >= 51 after resolving the gas issue. ==== EDIT |
|
We suspect there is an incorrect footprint items and bytes in the post state for service account In our opinion, this should not change the footprint items from |
|
@arjanz Why in your setting D is 6? |
This is a good question. Apparently we assumed D=6 was part of the tiny settings, but cannot really find the source. In polkajam when we look at the parameters RPC call, we see |
According to GP, with the However 384 seems too much to properly test the forget hostcall. By the way, those |
|
I updated the I also dropped some details about the preimages expunge delay in the readme: https://github.com/davxy/jam-test-vectors/blob/v0.6.6-rc0/traces/README.md#preimage-expunge-delay |
with updated tests and D value, Jampy is also passing all traces |
|
@spacejamapp now can pass all |
|
All passing now for JavaJAM as well |
|
We at @jamixir confirm passing all |
All good, passing all traces now! |
|
Very cool. So we can proceed with something more ambitious :-D |
@qiweiii did you ever get an answer on this? I am wondering about this myself |
Yes, since the write bytes length is 0 here, we skipped this write. It makes sense since it's not writing anything. |
|
Jamzilla passes as well |







✅ Please report your success processing these!
Protocol version 0.6.6$^*$
fetchhost call with new variants.fetch.000...000.bin/jsonstep, as it was not a valid trace step and was intended to be handled specially for genesis. Since it shared the same format as regular trace steps, it could be ambiguous or misleading.genesis.binfile containing the genesis state and header.(*) WARNING: DEVIATIONS
fetchhost call for protocol parameters (For the
fetchhostcall id we're still using 18 as per GP 0.6.6. The picked change only concerns the value returned for w_10=0Closes: #53 #79