EDIT: ошибка исчезает, когда я повторно открываю приложение Polkadot в частном окне Chromium (ref).
Я следую руководству по субстратам для субстратов и хочу поэкспериментировать с хранилищем. Я определил следующий модуль, в котором хранится counter
, который можно увеличивать или уменьшать.
use support::{decl_storage, decl_module, dispatch::Result, StorageValue};
use system::{ensure_inherent};
pub trait Trait: system::Trait {}
decl_storage! {
trait Store for Module<T: Trait> as KittyStorage {
pub Counter config(counter): i64;
}
}
decl_module! {
pub struct Module<T: Trait> for enum Call where origin: T::Origin {
/// Increment the module's counter.
fn increment(origin) -> Result {
let _sender = ensure_inherent(origin)?;
let counter = <Counter<T>>::get() ;
if counter == i64::max_value() {
Err("counter already reached its max value")
} else {
<Counter<T>>::put(counter + 1);
Ok(())
}
}
/// Decrement the module's counter
fn decrement(origin) -> Result {
let _sender = ensure_inherent(origin)?;
let counter = <Counter<T>>::get() ;
if counter == i64::min_value() {
Err("counter already reached its min value")
} else {
<Counter<T>>::put(counter - 1);
Ok(())
}
}
}
}
Я хочу попробовать это с помощью пользовательского интерфейса https://polkadot.js.org/apps, но внешняя отправка завершается с ошибкой с загадочным сообщением об ошибке, как показано на следующих снимках экрана.
Сначала я выбираю учетную запись Алисы, чтобы отправить внешнюю:
Затем нажмите «Отправить (без подписи)»:
Но отправка не выполняется с этой ошибкой: RPC-CORE: submitAndWatchExtrinsic (extrinsic: Extrinsic): ExtrinsicStatus:: 1002: execution error (Error(Clie)
Что означает эта ошибка? А как исправить?