Lesson 9 - Staging : ProviderError: execution reverted when calling performUpkeep manually (VRF v2.5) #6602
Replies: 5 comments 1 reply
-
I'm having problems here too, It seems like the VRF v2.5 just went alive recently, could someone provide a way to create VRF v2's subscription instead of VRF v2.5's. |
Beta Was this translation helpful? Give feedback.
-
I've also changed to v2.5 because I can't find a way to create a v2 subscription, and have also been unable to find a mock for v2.5, so currently just ignoring the unit tests. Also, for Chainlink Keepers, I'm trying to just use the time based automation on performUpkeep(), but every scheduled call, the upkeep address sends a transaction to the registry address, but then it always reverts. I try to call performUpkeep() from metamask but it costs 3ETH, which is really weird, maybe this is the problem which prevents Keepers from calling it, not sure though. |
Beta Was this translation helpful? Give feedback.
-
Hi, I have the same problem as yours. There are no solutions regarding the migrating from VRF v2 to VRF v2.5 clearly. But as of now iam gonna skip the staging test (that is done via Chainlink VRF V2.5 and Chainlink Keepers). But i found the Mocks for then V2.5 if anybody reading this, please look into this and help with this issue |
Beta Was this translation helpful? Give feedback.
-
You can create a VRF V2 from the contract. In Sepolia the contract to creae VRF V2 is the next one: https://sepolia.etherscan.io/address/0x8103b0a8a00be2ddc778e6e7eaa21791cd364625#writeContract |
Beta Was this translation helpful? Give feedback.
-
Hello, I see that you used ethers v6 like me. I have exactly the same error when I try to execute the test. About verifying the SC I don't have any problem, I could do it; if you want we can make a call or something to try to fix both problems. Feel free to contact me by Twitter or here |
Beta Was this translation helpful? Give feedback.
-
Hi everyone,
I am currently following the course, and I was finally getting to the staging phase for lesson 9 despite some trouble.
What I had to change from the course was to use VRF v2.5 for the randow words request, as I couldn't find a way to create a way to subscribe using VRF 2 (didn't dig further than on the vrf.chain.link website).
Doing so, I adapted my raffle contract following this guide.
Sadly, while performing the staging test it timed out (because i had set mocha timeout to 200s, hadn't changed to 300s) but I didn't worry much.
When I went back to the project half a day later and checked the VRF and automation status, I didn't see any transaction other than my fundings, and when checking the smart contract on etherscan it still had the 0.1eth I sent it.
So I tested a few things, following this order, and got to the conclusion that the error must be in the "performUpkeep" function, since "checkUpkeep" returned true as expected.
Although from there, I seem to be unable to find more information, I find the error message not really explicit on the issue, and am running out of ideas to solve it.
Please find my repository here.
And here is the error message when trying to performUpkeep.
Also, all the tests were going through perfectly fine before changing my contract to VRF v2.5, and are now failing because I couldn't find a mock for VRF v2.5 contract.
I would love some help to solve this issue, and also would like to know if there is a way to actually get more informations about why the execution reverted ? There is only one "revert" in the performUpkeep function so I assume it is this one that reverts, but couldn't find it explicitly in the error message.
Thanks !
P.S: My first message, feel free to comment If you feel I should add information there.
EDIT: I also tried to verify the code in etherscan to be able to interact with it, but this also didn't seem to work, I pasted the contract in remix to "flatten" it and verify on etherscan, but it seems like there was a difference between the output and the contract that is on-chain, I should maybe start by solving this issue. Also, my contract on-chain is at this address.
Beta Was this translation helpful? Give feedback.
All reactions