-
Notifications
You must be signed in to change notification settings - Fork 42
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
Compiling transaction fails with multiple notes #443
Comments
This is likely due to a collision in the Assembler's cache when we try to compile two executable programs in the same context. So, it is likely that the bug is in Miden VM rather than miden base. @Overcastan may be able to help with this. |
@igamigo Could you please provide the code of the failing test? |
Here's the function that creates the transaction that compiles the script and attempts to consume multiple notes. Notice lines 256-264, where it is decided to use either one or multiple notes; first branch works correctly but the else clause does not. Unfortunately it's not very simple to test right now but I will try to provide instructions or a test that runs this code and repros the issue tomorrow. |
Having some trouble creating a unit test for this, I'm getting a |
@igamigo I think I understood what's happening, there is no need for the example test. Bobbin is right, the problem occurs when we try to compile two programs in the same context. |
@Overcastan are you still on this topic? |
Yes, problem is in the VM, I hope I'll create a PR on the weekend. |
@igamigo I checked the VM and came to the conclusion that just a plane change from error to log message should be fine. Although I didn't manage to create a proper test for the case with two programs compiled in one context. Could you check your test with my VM dev branch |
Will test and report back, thanks |
Yes, this works well (took a a bit to test due to the dependency chain of client -> base- > VM). Thanks! |
Sorry, changing dependencies is troublesome indeed, I felt this when I was updating the repositories to work with new version of Winterfell. I'll create a PR with this change today |
@Overcastan are you still working on this issue? |
@Dominik1999 Probably we should put this issue on hold, since it should become a non-issue when @bitwalker merge the changes in assembler. |
@Overcastan are the changes in the assembler done here 0xPolygonMiden/miden-vm#1277 enough? Or is another PR outstanding? |
@igamigo Can you please check is this error still occurring with a new version of assembler? |
It is still blocked |
Closed by #837. |
When testing consuming multiple notes from the client, I'm getting this error:
The same code works for consuming one single note each time, the issue occurs only when having more than one. I'm not sure if this is a bug or a problem with the client code (I couldn't find examples of transactions having multiple input notes), but @bobbinth suggested opening an issue here.
The text was updated successfully, but these errors were encountered: