PDOException Fehler bei Update auf Version 5.4.2 pl2

Bitte in den Beiträgen keine externe Bilder einbinden, sondern nur die Dateianhänge verwenden.
Vielen dank.
  • Guten Abend,


    ich habe gerade versucht die v.5.4.2 pl2 zu installieren. Die Installation bricht allerdings mit dem folgenden Fehler ab:


    System Information

    • PHP Version:

      7.4.30

    • WoltLab Suite Core:

      5.4.19

    • Peak Memory Usage:

      14.886/256 MiB

    • Request URI:

      POST /acp/index.php?install-package/&t=d6ac143692e36b954ad53d371f207a1da73d262a8a31efc8855b333ebaa3a25e-+GKGRX5QtwIfilAQgWrJKw==

    • Referrer:

      https://www.####.de/

    • User Agent:

      Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36

    Original Error

    • Error Type:

      PDOException

    • Error Message:

      SQLSTATE[01000]: Warning: 1265 Data truncated for column 'comments' at row 8

    • Error Code:

      01000

    • File:

      */lib/system/database/statement/PreparedStatement.class.php (126)

    • Stack Trace:
      • #0 */lib/system/database/statement/PreparedStatement.class.php (126):
      • PDOStatement->execute()
      • #1 */lib/system/database/editor/MySQLDatabaseEditor.class.php (319):
      • wcf\system\database\statement\PreparedStatement->execute()
      • #2 */lib/system/database/table/DatabaseTableChangeProcessor.class.php (375):
      • wcf\system\database\editor\MySQLDatabaseEditor->alterColumns()
      • #3 */lib/system/database/table/DatabaseTableChangeProcessor.class.php (266):
      • wcf\system\database\table\DatabaseTableChangeProcessor->applyColumnChanges()
      • #4 */lib/system/database/table/DatabaseTableChangeProcessor.class.php (1135):
      • wcf\system\database\table\DatabaseTableChangeProcessor->applyChanges()
      • #5 */lib/system/package/plugin/DatabasePackageInstallationPlugin.class.php (78):
      • wcf\system\database\table\DatabaseTableChangeProcessor->process()
      • #6 */lib/system/package/plugin/DatabasePackageInstallationPlugin.class.php (48):
      • wcf\system\package\plugin\DatabasePackageInstallationPlugin->updateDatabase()
      • #7 */lib/system/package/plugin/AbstractPackageInstallationPlugin.class.php (76):
      • wcf\system\package\plugin\DatabasePackageInstallationPlugin->install()
      • #8 */lib/system/package/PackageInstallationDispatcher.class.php (792):
      • wcf\system\package\plugin\AbstractPackageInstallationPlugin->update()
      • #9 */lib/system/package/PackageInstallationDispatcher.class.php (153):
      • wcf\system\package\PackageInstallationDispatcher->executePIP()
      • #10 */lib/acp/action/InstallPackageAction.class.php (82):
      • wcf\system\package\PackageInstallationDispatcher->install()
      • #11 */lib/action/AbstractDialogAction.class.php (73):
      • wcf\acp\action\InstallPackageAction->stepInstall()
      • #12 */lib/action/AbstractAction.class.php (53):
      • wcf\action\AbstractDialogAction->execute()
      • #13 */lib/system/request/Request.class.php (89):
      • wcf\action\AbstractAction->__run()
      • #14 */lib/system/request/RequestHandler.class.php (121):
      • wcf\system\request\Request->execute()
      • #15 */acp/index.php (11):
      • wcf\system\request\RequestHandler->handle()

    Final Error

    • Error Type:

      wcf\system\database\exception\DatabaseQueryExecutionException

    • Error Message:

      Could not execute statement 'ALTER TABLE `news1_news` CHANGE COLUMN `cumulativeLikes` `cumulativeLikes` mediumint(7) NOT NULL DEFAULT '0',CHANGE COLUMN `views` `views` mediumint(7) NOT NULL DEFAULT '0',CHANGE COLUMN `editCount` `editCount` mediumint(7) NOT NULL DEFAULT '0',CHANGE COLUMN `comments` `comments` smallint(5) NOT NULL DEFAULT '0''

    • Error Code:

      01000

    • File:

      */lib/system/database/statement/PreparedStatement.class.php (144)

    • Stack Trace:
      • #0 */lib/system/database/editor/MySQLDatabaseEditor.class.php (319):
      • wcf\system\database\statement\PreparedStatement->execute()
      • #1 */lib/system/database/table/DatabaseTableChangeProcessor.class.php (375):
      • wcf\system\database\editor\MySQLDatabaseEditor->alterColumns()
      • #2 */lib/system/database/table/DatabaseTableChangeProcessor.class.php (266):
      • wcf\system\database\table\DatabaseTableChangeProcessor->applyColumnChanges()
      • #3 */lib/system/database/table/DatabaseTableChangeProcessor.class.php (1135):
      • wcf\system\database\table\DatabaseTableChangeProcessor->applyChanges()
      • #4 */lib/system/package/plugin/DatabasePackageInstallationPlugin.class.php (78):
      • wcf\system\database\table\DatabaseTableChangeProcessor->process()
      • #5 */lib/system/package/plugin/DatabasePackageInstallationPlugin.class.php (48):
      • wcf\system\package\plugin\DatabasePackageInstallationPlugin->updateDatabase()
      • #6 */lib/system/package/plugin/AbstractPackageInstallationPlugin.class.php (76):
      • wcf\system\package\plugin\DatabasePackageInstallationPlugin->install()
      • #7 */lib/system/package/PackageInstallationDispatcher.class.php (792):
      • wcf\system\package\plugin\AbstractPackageInstallationPlugin->update()
      • #8 */lib/system/package/PackageInstallationDispatcher.class.php (153):
      • wcf\system\package\PackageInstallationDispatcher->executePIP()
      • #9 */lib/acp/action/InstallPackageAction.class.php (82):
      • wcf\system\package\PackageInstallationDispatcher->install()
      • #10 */lib/action/AbstractDialogAction.class.php (73):
      • wcf\acp\action\InstallPackageAction->stepInstall()
      • #11 */lib/action/AbstractAction.class.php (53):
      • wcf\action\AbstractDialogAction->execute()
      • #12 */lib/system/request/Request.class.php (89):
      • wcf\action\AbstractAction->__run()
      • #13 */lib/system/request/RequestHandler.class.php (121):
      • wcf\system\request\Request->execute()
      • #14 */acp/index.php (11):
      • wcf\system\request\RequestHandler->handle()


    KAnn das jemand bestätigen?

  • Cyperghost

    Hat das Thema freigeschaltet.
  • Leider liefert SUM dummerweise NULL zurück und nicht 0, dadurch passiert dieser Fehler.


    Für bitte folgenden SQL Query vor dem Update aus, dann sollte das ganze Funktionieren :)

    SQL
    UPDATE news1_news news SET news.comments = (
        SELECT COALESCE(SUM(commentsTable.responses),0) + COUNT(*)
        FROM wcf1_comment commentsTable 
        RIGHT JOIN wcf1_object_type objectType 
            ON (commentsTable.objectTypeID = objectType.objectTypeID AND objectType.objectType = 'de.wbb-elite.news.comment')
        RIGHT JOIN wcf1_object_type_definition objectTypeDefinition 
            ON (objectTypeDefinition.definitionID = objectType.definitionID AND objectTypeDefinition.definitionName = 'com.woltlab.wcf.comment.commentableContent')
        WHERE commentsTable.objectID = news.newsID
    ) WHERE news.comments IS NULL
  • Cyperghost

    Hat das Label bestätigt hinzugefügt.