Skip to content

[Bug] 唯一验证时批量新增,只有最后一条数据入库成功 #865

Description

@QingShan512

APIJSON Version/APIJSON 版本号

8.1.8

Database Type & Version/数据库类型及版本号

MySql 8.0.32

Environment/环境信息

- JDK/基础库: jdk17
- OS/系统: windows

APIAuto Screenshots/APIAuto 请求与结果完整截屏

在添加唯一验证的情况下批量新增,只有最后一条数据入库成功

Current Behavior/问题描述

在添加唯一验证的情况下批量新增,只有最后一条数据入库成功。经测试,是因为每条数据经过AbstractVerifier.verifyRepeat 做重复验证后调用了executor.close(),导致最终的AbstractSQLExecutor.commit只提交了最后一个连接,因为前面的都被close清空了。座椅只有最后一条数据被插入数据库,前面的因为连接被关闭清空没插入成功

Expected Behavior/期望结果

在添加唯一验证的情况下批量新增,所有数据都能数据入库成功

Any additional comments?/其它补充说明?

AbstractVerifier里的 verifyCondition verifyExist verifyRepeat 都会关闭链连接,是否都会造成上述情况?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions