EOS 错误码整理

EOS 目前大约有180种错误类型,虽然有错误码,但是还是很笼统的,具体的报错信息还得看detail里面的内容
一、常见的错误码以及issue上对应的错误记录

3010001 Invalid name
账户名格式1-12位(a-z,1-5,“.” ) 且”.”不能在首尾
https://github.com/EOSIO/eos/issues?utf8=%E2%9C%93&q=3010001

3010004 Invalid authority
检查 authorization”: [{
“actor”: “accountname1”,
“permission”: “active”
}] 参数是否填写正确
https://github.com/EOSIO/eos/issues?utf8=%E2%9C%93&q=3010004

3010008 Invalid block ID
https://github.com/EOSIO/eos/issues?utf8=%E2%9C%93&q=3010008

3010010 Invalid packed transaction
一般报这个错误就是打包交易的参数传的不正确
https://github.com/EOSIO/eos/issues?utf8=%E2%9C%93&q=3010010

3010011 Invalid asset
检查资产格式是否正确
如”stake_net_quantity”:”0.0001 EOS” 1.确保正确的精度 空格加Symbol
https://github.com/EOSIO/eos/issues?utf8=%E2%9C%93&q=3010011

3030000 Block exception
https://github.com/EOSIO/eos/issues?utf8=%E2%9C%93&q=3030000

3030001 Unlinkable block
https://github.com/EOSIO/eos/issues?utf8=%E2%9C%93&q=3030001

3030002 Transaction outputs in block do not match transaction outputs from applying block
https://github.com/EOSIO/eos/issues?utf8=%E2%9C%93&q=3030002

3030003 Block does not guarantee concurrent execution without conflicts
https://github.com/EOSIO/eos/issues?utf8=%E2%9C%93&q=3030003

3030008 Block is not signed with expected key
检查是否对块信息签名
https://github.com/EOSIO/eos/issues?utf8=%E2%9C%93&q=3030008

3040000 Transaction exception
https://github.com/EOSIO/eos/issues?utf8=%E2%9C%93&q=3040000

3040002 Transaction should have at least one normal action
查看action是否添加,是否正确
https://github.com/EOSIO/eos/issues?utf8=%E2%9C%93&q=3040002

3040005 Expired Transaction
交易过期,过期时间可以设置长一点
https://github.com/EOSIO/eos/issues?utf8=%E2%9C%93&q=3040005

3040006 Transaction Expiration Too Far
过期时间设置太长

3040007 Invalid Reference Block
引用块无效或不匹配,节点间不同有关
https://github.com/EOSIO/eos/issues/4659

3050000 Action validate exception
检查Action是否正确
https://github.com/EOSIO/eos/issues?utf8=%E2%9C%93&q=3050000

3050001 Account name already exists
账户名已存在

3050002 Invalid Action Arguments
检查Action参数
https://github.com/EOSIO/eos/issues?utf8=%E2%9C%93&q=3050002

3050003 eosio_assert_message assertion failure
账户不存在,资产金额不正确等

3060003 Contract Table Query Exception
https://github.com/EOSIO/eos/issues?utf8=%E2%9C%93&q=3060003

3060004 Contract Query Exception
https://github.com/EOSIO/eos/issues?utf8=%E2%9C%93&q=3060004

3070002 Runtime Error Processing WASM
https://github.com/EOSIO/eos/issues?utf8=%E2%9C%93&q=3070002

3080001 Account using more than allotted RAM usage
内存不足,买些内存

3080002 Transaction exceeded the current network usage limit imposed on the transaction
网络资源不足,抵押一些资源

3080004 Transaction exceeded the current CPU usage limit imposed on the transaction
CPU不足,抵押一些CPU

3080006 Transaction took too long
https://github.com/EOSIO/eos/issues?utf8=%E2%9C%93&q=3080006+

3081001 Transaction reached the deadline set due to leeway on account CPU limits
https://github.com/EOSIO/eos/issues?utf8=%E2%9C%93&q=3081001

3090003 Provided keys, permissions, and delays do not satisfy declared authorizations
检查权限,签名等是否正确
https://github.com/EOSIO/eos/issues?utf8=%E2%9C%93&q=3090003

3090004 Missing required authority
https://github.com/EOSIO/eos/issues?utf8=%E2%9C%93&q=3090004

3110001 Missing Chain API Plugin
https://github.com/EOSIO/eos/issues?utf8=%E2%9C%93&q=3110001

二、EOS 错误码大全

3000000 blockchain exception
3010001 Invalid name
3010002 Invalid public key
3010003 Invalid private key
3010004 Invalid authority
3010005 Invalid action
3010006 Invalid transaction
3010007 Invalid ABI
3010008 Invalid block ID
3010009 Invalid transaction ID
3010010 Invalid packed transaction
3010011 Invalid asset
3010012 Invalid chain ID
3010013 Invalid fixed key
3010014 Invalid symbol
3020000 Fork database exception
3020001 Block can not be found
3030000 Block exception
3030001 Unlinkable block
3030002 Transaction outputs in block do not match transaction outputs from applying block 交易不匹配
3030003 Block does not guarantee concurrent execution without conflicts
3030004 Shard locks in block are incorrect or mal-formed
3030005 Block exhausted allowed resources
3030006 Block is too old to push
3030007 Block is from the future
3030008 Block is not signed with expected key
3030009 Block is not signed by expected producer
3040000 Transaction exception
3040001 Error decompressing transaction
3040002 Transaction should have at least one normal action
3040003 Transaction should have at least one required authority
3040004 Context-free action should have no required authority
3040005 Expired Transaction
3040006 Transaction Expiration Too Far
3040007 Invalid Reference Block
3040008 Duplicate transaction
3040009 Duplicate deferred transaction
3040010 Context free action is not allowed inside generated Transaction
3040011 The transaction can not be found
3040012 Pushing too many transactions at once
3040013 Transaction is too big
3040014 Unknown transaction compression
3050000 Action validate exception
3050001 Account name already exists
3050002 Invalid Action Arguments
3050003 eosio_assert_message assertion failure
3050004 eosio_assert_code assertion failure
3050005 Action can not be found
3050006 Mismatch between action data and its struct
3050007 Attempt to use unaccessible API
3050008 Abort Called
3050009 Inline Action exceeds maximum size limit
3060000 Database exception
3060001 Permission Query Exception
3060002 Account Query Exception
3060003 Contract Table Query Exception
3060004 Contract Query Exception
3060100 Database exception
3060101 Database usage is at unsafe levels
3060102 Reversible block log usage is at unsafe levels
3070000 WASM Exception
3070001 Error in WASM page memory
3070002 Runtime Error Processing WASM
3070003 Serialization Error Processing WASM
3070004 memcpy with overlapping memory
3070005 binaryen exception
3080000 Resource exhausted exception
3080001 Account using more than allotted RAM usage
3080002 Transaction exceeded the current network usage limit imposed on the transaction
3080003 Transaction network usage is too much for the remaining allowable usage of the current block
3080004 Transaction exceeded the current CPU usage limit imposed on the transaction
3080005 Transaction CPU usage is too much for the remaining allowable usage of the current block
3080006 Transaction took too long
3080007 Transaction exceeded the current greylisted account network usage limit
3081001 Transaction reached the deadline set due to leeway on account CPU limits
3090000 Authorization exception
3090001 Duplicate signature included
3090002 Irrelevant signature included
3090003 Provided keys, permissions, and delays do not satisfy declared authorizations
3090004 Missing required authority
3090005 Irrelevant authority included
3090006 Insufficient delay
3090007 Invalid Permission
3090008 The action is not allowed to be linked with minimum permission
3090009 The parent permission is invalid
3100000 Miscellaneous exception
3100001 Internal state is no longer consistent
3100002 Unknown bloc
3100003 Unknown transaction
3100004 Corrupted reversible block database was fixed
3100005 Extracted genesis state from blocks.log
3100006 Subjective exception thrown during block production
3100007 Multiple voter info detected
3100008 Feature is currently unsupported
3100009 Node management operation successfully executed
3110000 Plugin exception
3110001 Missing Chain API Plugin
3110002 Missing Wallet API Plugin
3110003 Missing History API Plugin
3110004 Missing Net API Plugin
3110005 Missing Chain Plugin
3110006 Incorrect plugin configuration
3120000 Wallet exception
3120001 Wallet already exists
3120002 Nonexistent wallet
3120003 Locked wallet
3120004 Missing public key
3120005 Invalid wallet password
3120006 No available wallet
3120007 Already unlocked
3120008 Key already exists
3120009 Nonexistent key
3120010 Unsupported key type
3120011 Wallet lock timeout is invalid
3120012 Secure Enclave Exception
3130000 Actor or contract whitelist/blacklist exception
3130001 Authorizing actor of transaction is not on the whitelist
3130002 Authorizing actor of transaction is on the blacklist
3130003 Contract to execute is not on the whitelist
3130004 Contract to execute is on the blacklist
3130005 Action to execute is on the blacklist
3130006 Public key in authority is on the blacklist
3140000 Exceptions that are allowed to bubble out of emit calls in controller
3140001 Block does not match checkpoint
3150000 ABI exception
3150001 No ABI found
3150002 Invalid Ricardian Clause
3150003 Invalid Ricardian Action
3150004 The type defined in the ABI is invalid
3150005 Duplicate type definition in the ABI
3150006 Duplicate struct definition in the ABI
3150007 Duplicate action definition in the ABI
3150008 uplicate table definition in the ABI
3150009 Duplicate error message definition in the ABI
3150010 ABI serialization time has exceeded the deadline
3150011 ABI recursive definition has exceeded the max recursion depth
3150012 Circular definition is detected in the ABI
3150013 Unpack data exception
3150014 Pack data exception
3160000 Contract exception
3160001 The payer of the table data is invalid
3160002 Table access violation
3160003 Invalid table iterator
3160004 Table can not be found inside the cache
3160005 The table operation is not allowed
3160006 Invalid contract vm type
3160007 Invalid contract vm version
3160008 Contract is already running this version of code
3160009 No wast file found
3160010 No abi file found
3170000 Producer exception
3170001 Producer private key is not available
3170002 Pending block state is missing
3170003 Producer is double confirming known rang
3170004 Producer schedule exception
3170006 The producer is not part of current schedule
3180000 Reversible Blocks exception
3180001 Invalid reversible blocks directory
3180002 Backup directory for reversible blocks already existg
3180003 Gap in the reversible blocks database
3190000 Block log exception
3190001 unsupported version of block log
3190002 fail to append block to the block log
3190003 block log can not be found
3190004 block log backup dir already exists
3200000 http exception
3200001 invalid http client root certificate
3200002 invalid http response
3200003 service resolved to multiple ports
3200004 fail to resolve host
3200005 http request fail
3200006 invalid http request
3210000 Resource limit exception
3220000 Mongo DB exception
3220001 Fail to insert new data to Mongo DB
3220002 Fail to update existing data in Mongo DB
3230000 Contract API exception
3230001 Crypto API Exception
3230002 Database API Exception
3230003 Arithmetic Exception

你的专属EOS账户名

EOSIO Dawn4.1版本发布后,对eos的账户名进行了新的更新与说明

1.为了避免账户名抢注,在eos最新版本发布之前,强制规定了账户名为长度12个字符,且不包含”.”符号。

2.Dan正在通过GitHub (#3189)提出有关名称分配方案,并在征求社区反馈意见。

如上图,大致的意思:

1. 只允许账号com 注册xyz.com。一个账号可以创建子账号,类似于域名可以创建二级域名。

2. 每天最多销售一个高级名称,价高者得。也就是说对于一些顶级的账户名将采用拍卖的形式竞拍,每天竞拍一个,套路不是一般的深啊。

推荐一个网站  https://eosauthority.com/ ,可以查到你的eth地址是否已映射,并显示当前地址的eos数量,以及上线后的账户名。

网站首页就是上图显示的样子,人机身份验证需要翻墙,否则会Check错误。

输入eth地址,并完成人机身份验证

首先你会看到你的eth地址下eos的代币数量,其次会看到你EOS映射对应的public key,之后那一串通过一定算法,随机生成的12个字符长度,就是你的账户名了。等主网上线,更新后,账户名是可以更改的。

如果你的EOS在交易所,交易所会帮你完成映射,但是如果你的EOS还在你的钱包里,那就要抓紧时间映射了,否则等EOS主网上线后,ETH上的EOS代币将作废,最近很多人问我,映射是否需要EOS,其实映射只是ETH地址与EOS 密钥的关系,并不需要你的地址里有EOS代币,只需要少量的ETH做执行映射合约的矿工费就够了,像imToken一定需要你的钱包中有EOS才能映射,这之前也误导了我一段时间。

我用的是麦子钱包做的映射(麦子钱包下载地址https://www.medishares.org/wallet/cn),一键映射,非常方便,钱包里有少量的eth做矿工费就能映射,最近以太比较拥堵,映射大约需要0.002左右的eth,并且在映射完后还能直接看到你所映射的EOS public key。

最后

就在前天,EOSIO Dawn4.2版本也发布了,大致的更新内容可以看https://github.com/EOSIO/eos/releases

距离6.2号 EOS主网上线也就一星期不到的时间了,让人期待!

参考链接

https://mp.weixin.qq.com/s/ynpTJplZYALBFw_NCRSxVQ

https://hk.saowen.com/a/834b23d73234d08e5654bd82ebec1ef25960bbd4220341044617f0a9f43f84f1