ACSD-50478:备份网格和数据库回滚命令中回滚操作的JS问题

ACSD-50478修补程序修复了备份网格中回滚操作的JS问题,以及数据库回滚命令在数据库转储包含触发器和​ 分隔符 SQL命令的情况下出现的问题。 安装Quality Patches Tool (QPT) 1.1.33时,此修补程序可用。 修补程序ID为ACSD-50478。 请注意,该问题计划在Adobe Commerce 2.4.7中修复。

受影响的产品和版本

为Adobe Commerce版本创建了修补程序:

  • Adobe Commerce(所有部署方法) 2.4.3-p1

与Adobe Commerce版本兼容:

  • Adobe Commerce(所有部署方法) 2.4.0 - 2.4.4-p4
NOTE
该修补程序可能适用于具有新Quality Patches Tool发行版本的其他版本。 要检查修补程序是否与您的Adobe Commerce版本兼容,请将magento/quality-patches包更新到最新版本,并在Quality Patches Tool:搜索修补程序页面上检查兼容性。 使用修补程序ID作为搜索关键字来查找修补程序。

问题

备份网格中的回滚操作的JS问题,以及数据库回滚命令在数据库转储包含触发器和​ 分隔符 SQL命令的情况下出现的问题。

重现步骤

  1. 将索引器设置为Update on Schedule模式,以便在数据库中创建触发器。

  2. 从命令行启用备份功能:

    bin/magento config:set system/backup/functionality_enabled 1

  3. 转到​ 系统 > 工具 > 备份 ​并生成数据库备份。

  4. 打开浏览器控制台;您将看到以下错误:

    code language-none
    Uncaught SyntaxError: Unexpected token '&' (at (index):606:32)
    
    function eventListener8jtGaqtgG2 () {
    
            return backup.rollback('db', '1678391644');
    
  5. 尝试从命令行导入DB:

    bin/magento setup:rollback --db-file="<filename>"

  6. 出现以下错误:

    code language-none
    Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'delimiter' at line 1, query was: delimiter ;;
    

预期的结果

从管理员和命令行都能成功还原数据库。

实际结果

您观察到了步骤4和步骤6中提到的错误。

应用修补程序

要应用单独的修补程序,请根据您的部署方法使用以下链接:

相关阅读

要了解有关Quality Patches Tool的更多信息,请参阅:

有关QPT中其他可用修补程序的信息,请参阅Quality Patches Tool指南中的Quality Patches Tool:搜索修补程序

recommendation-more-help
c2d96e17-5179-455c-ad3a-e1697bb4e8c3