tiny-craft / tiny-rdm

Tiny RDM (Tiny Redis Desktop Manager) - A modern, colorful, super lightweight Redis GUI client for Mac, Windows, and Linux.
https://redis.tinycraft.cc/
GNU General Public License v3.0
8.8k stars 444 forks source link

[BUG]msgpack序列化问题 #380

Open yuezeer opened 1 week ago

yuezeer commented 1 week ago

Tiny RDM Version What version of Tiny RDM are you using? V1.2.1 OS Version Which OS and version you launch? (Mac/Windows/Linux) Windows Redis Version Which version of Redis are you using? 7.0.15 Describe the bug A clear and concise description of what the bug is.

Steps to Reproduce:

1.我存储的数据,在使用json + msgpack的解码方式展示后,点击保存,在代码中反序列化会出现类型异常转换,但是我使用rdm不做任何修改,保存后就不会有类型转换异常的bug

tiny-craft commented 1 week ago

有测试用例吗,发个能重现的内容给我方便调试

yuezeer commented 1 week ago

测试用例.zip 这是我测试的一个案例,目前问题主要在于枚举类型的反序列化,请帮忙看下具体原因

tiny-craft commented 4 days ago

@yuezeer 麻烦把你示例的这个值在rdm上的二进制格式也发给我。 如果是在rdm上面把1改为0再保存,代码能不能正常解析

tiny-craft commented 4 days ago

大概定位到问题,应该是整形被json序列化成map之后,存成了float64导致的

yuezeer commented 4 days ago

早上在忙工作,刚看到消息,报错就是从float64的类型转换异常,如果存成了float64,那么二进制格式变长也说的通了,还需要帮忙再测试下嘛

tiny-craft commented 4 days ago

不用了哈,已经提交修复代码了

yuezeer commented 4 days ago

好的,帅的