EOSIO MySQL 插件 issue 2

栏目: 数据库 · 发布时间: 7年前

内容简介:这是「区块链技术指北」的第 41 篇文章。如果对我感兴趣,想和我交流,我的微信号:

文/温国兵

这是「区块链技术指北」的第 41 篇文章。

如果对我感兴趣,想和我交流,我的微信号: Wentasy ,加我时简单介绍下自己,并注明来自「区块链技术指北」,同时我会把你拉入微信群。

EOSIO MySQL 插件 issue 2

题图来自: © ChainONE / Original / chainon.io

0x00 背景

链上数据如何转化为 API 友好的数据,这是一个很重要的话题。因为能够转化为 API 友好的数据,对于开发者而言,可以极大地提高效率。目前 EOS 生态有很多插件,比如 MySQL 插件、ES 插件、Kafka 插件等等。

笔者在测试环境部署了基于 kesar 写的 MySQL 插件,结果同步数据时发现有如下的异常。上文提到了 amount 字段过短,来看看本文是什么问题吧。

EOSIO MySQL 插件 issue 2

0x01 解决

查看 nodeos 日志,可以发现如下异常。

terminate called after throwing an instance of 'soci::mysql_soci_error'
  what():  Data too long for column 'public_key' at row 1 while executing "INSERT INTO accounts_keys(account, public_key, permission) VALUES (:ac, :ke, :pe) " with :ac="walletiphone", :ke="PUB_R1_81x8BXgDQGTWmcAaavfCDcVTTyzz1BeBYbje9yJomVMCJZbz86", :pe="owner".

我们查看表结构,可以得知 public_key 长度为 53。

[root@localhost][eos]> DESC accounts_keys;
+------------+-------------+------+-----+---------+-------+
| Field      | Type        | Null | Key | Default | Extra |
+------------+-------------+------+-----+---------+-------+
| account    | varchar(12) | YES  | MUL | NULL    |       |
| public_key | varchar(53) | YES  |     | NULL    |       |
| permission | varchar(12) | YES  |     | NULL    |       |
+------------+-------------+------+-----+---------+-------+
3 rows in set (0.00 sec)

我们尝试将 public_key 改为 64,重新同步解决。

ALTER TABLE accounts_keys CHANGE COLUMN public_key public_key varchar(64) DEFAULT NULL;

0x02 小结

MySQL 插件目前不太成熟,还有很多坑,谨慎入坑。

「区块链技术指北」同名 知识星球 ,二维码如下,欢迎加入。

EOSIO MySQL 插件 issue 2

「区块链技术指北」相关资讯渠道:

同时,本系列文章会在以下渠道同步更新,欢迎关注:

原创不易,读者可以通过如下途径打赏,虚拟货币、美元、法币均支持。

  • BTC: 3QboL2k5HfKjKDrEYtQAKubWCjx9CX7i8f
  • ERC20 Token: 0x8907B2ed72A1E2D283c04613536Fac4270C9F0b3
  • PayPal: https://www.paypal.me/robinwen
  • 微信打赏二维码

EOSIO MySQL 插件 issue 2

–EOF–

版权声明: 自由转载-非商用-非衍生-保持署名(创意共享4.0许可证)


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

共享经济时代

共享经济时代

雷切尔·博茨曼、路·罗杰斯 / 唐朝文 / 上海交通大学出版社 / 2015-6-1 / 38

“共享经济”(sharing economy),也被称为“协同消费”(collaborative consumption),是在互联网上兴起的一种全新的商业模式。简单地说,消费者可以通过合作的方式来和他人共同享用产品和服务,而无需持有产品与服务的所有权。使用但不拥有,分享替代私有,即“我的就是你的”。 当下,全球经济正呈现出这样一种前所未有的趋势:消费者之间的分享、交换、借贷、租赁等共享经济......一起来看看 《共享经济时代》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

在线进制转换器
在线进制转换器

各进制数互转换器

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具