You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

mysqlx connector不支持大整数,插入时触发溢出报错

MySQLX Python驱动大整数支持问题:这是Bug,附反馈渠道

问题确认

这确实是一个bug。MySQLX Python驱动的整数类型仅实现了v_signed_int和v_unsigned_int两种32位整数类型,未处理超过32位范围的大整数。当插入的整数超出32位有符号/无符号整数范围时,消息序列化过程会因溢出未处理抛出异常,导致插入失败,仅能成功插入32位范围内的小整数数据。

复现场景

环境配置:

  • MySQL 8.0,开启mysqlx端口33060
  • 依赖版本:mysqlclient2.2.0、mysql-connector-python8.0.33

复现代码:

import mysqlx

session = mysqlx.get_session({
    'host': 'localhost',
    'port': 33060,
    'user': 'redacted',
    'password': 'redacted',
})

document1 = {
    '_id': 'unique-name-1',
    'small': 888888888,
    'stuff': 'other stuff',
}

document2 = {
    '_id': 'unique-name-2',
    'large': 8888888888,
    'stuff': 'other stuff',
}

try:
    db = session.create_schema('databasename')
except:
    db = session.get_schema('databasename')

try:
    collection = db.create_collection('tablename')
except:
    collection = db.get_collection('tablename')

try:
    collection.add(document1).execute()
    collection.add(document2).execute()
    print('done')
except Exception as e:
    print(type(e))
    print(e)

执行后报错:

<class 'SystemError'>
<built-in function serialize_message> returned a result with an exception set

反馈渠道

  1. MySQL官方Bug跟踪系统:这是最直接的反馈途径,该问题属于Connector/Python(mysql-connector-python)组件范畴,提交时需注明驱动版本、MySQL版本、完整复现步骤及报错信息。
  2. mysql-connector-python代码仓库:在其官方代码托管平台提交Issue,详细描述问题细节与复现方式。
  3. MySQL官方社区论坛:在对应板块发布问题,寻求官方人员或社区开发者的协助。

内容的提问来源于stack exchange,提问作者Kenny Ostrom

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 23:43:19