Солана: Превышен вычислительный бюджет

Я использую инструкцию по депозиту Sabre на devnet. Вчера мой код работал отлично.

Сегодня перепрошил некоторые инструкции и получаю ошибку Computational budget exceededвдруг. Что-то изменилось в devnet? Я буквально ничего не менял, но получаю эту ошибку. Любые идеи и указатели будут с благодарностью!

2 ответа

Это зависит от того, на каком кластере вы работаете. Это зависит от того, получает ли каждая инструкция бюджет в 200 тыс. CU или вся транзакция получает бюджет в 200 тыс.

Например, если вы работаете solana-test-validatorвсе функции включены по умолчанию. Однако; Бюджет вычислений Tx еще не включен в бета-версии основной сети, поэтому, если вы протестируете локально, а затем запустите бета-версию основной сети, вы увидите эту разницу в поведении.

Чтобы определить, какие функции включены или нет в данном кластере (на данный момент игнорируя локальные):

solana feature status -ud(для девнета)

solana feature status -ut(для тестовой сети)

solana feature status -um(для основной сети-бета)

Функция, которую вы ищете, это: 5ekBxc8itEnPv4NzGJtr8BVVQLNMQuLMNQQj7pHoLNZ9

Хорошая статья о тестировании четности кластера Feature Parity Testing

Как указано здесь https://forums.solana.com/t/transaction-failed-when-biding-for-a-sol-domain-on-bonfida/4279#:~:text=%E2%80%9CComputational%20budget%20exceeded%E2%80%9D%20означает%20что обработка%20power%20before%20it%20completed . Вам нужно уменьшить вычислительные потребности инструкций. Или уменьшить общее количество инструкций. Вы также можете использовать вычислительные бюджеты для всей транзакции https://docs.solana.com/developing/programming-model/runtime.

Другие вопросы по тегам