自动分表插入出现错误 返回

SqlSugar 沟通中
6 198
该叫什么 next 发布于2周前
悬赏:0 飞吻

image.png

按照第一种不指定表的数据插入,出现异常 “不允许启动新事务,因为有其他线程正在该会话中运行。”

按照第二种指定表名的插入方式,出现异常“Invalid operation. The connection is closed”
重复多次插入会插入成功,但出现异常的频率非常高。

目前插入的表有两张表,一张数据在500万左右,一张数据在100左右。
外部插入的时候没有使用事务,不明白为什么会插入失败并产生异常。

热忱回答6

  • 线程安全问题,文档:偶发

    0 回复
  • next next VIP0
    2周前

    image.png


    这样改可以吗

    0 回复
  • next next VIP0
    2周前

    在 SqlSugar.SplitInsertable`1.<ExecuteReturnSnowflakeIdListAsync>d__16.MoveNext()

       在 SqlSugar.SplitInsertable`1.<ExecuteReturnSnowflakeIdAsync>d__18.MoveNext()

    具体的报错点
    使用copynew不会出现,但是我有很多插入都调用这个方法,经常使用copynew会不会产生新的问题

    0 回复
  • 这样不行。copynew只能加到出错的具体方法。不能写到公用方法。这样会报坏事务。

    0 回复
  • 要不你在加一个方法。AddCopyNew

    0 回复
  • next next VIP0
    2周前

    @fate sta:为啥只会在某个表分表插入的时候出现呢,而且不分表就不会报这个问题

    0 回复