Update 8.0.3 - Failed: HttpError: ER_BAD_FIELD_ERROR: Unknown column 'apps.cpuQuota' in 'field list'
-
Upgrade 8.0.3 failed which resulted in en empty cloduron
box.log with multiple ER_BAD_FIELD_ERROR messages
HttpError: ER_BAD_FIELD_ERROR: Unknown column 'apps.cpuQuota' in 'field list' at BoxError.toHttpError (/home/yellowtent/box/src/boxerror.js:106:16) at listByUser (/home/yellowtent/box/src/routes/apps.js:111:37) at process.processTicksAndRejections (node:internal/process/task_queues:95:5) { status: 500, internalError: BoxError: ER_BAD_FIELD_ERROR: Unknown column 'apps.cpuQuota' in 'field list' at Query.queryCallback (/home/yellowtent/box/src/database.js:91:38) at Query.<anonymous> (/home/yellowtent/box/node_modules/mysql/lib/Connection.js:526:10) at Query._callback (/home/yellowtent/box/node_modules/mysql/lib/Connection.js:488:16) at Sequence.end (/home/yellowtent/box/node_modules/mysql/lib/protocol/sequences/Sequence.js:83:24) at Query.ErrorPacket (/home/yellowtent/box/node_modules/mysql/lib/protocol/sequences/Query.js:92:8) at Protocol._parsePacket (/home/yellowtent/box/node_modules/mysql/lib/protocol/Protocol.js:291:23) at Parser._parsePacket (/home/yellowtent/box/node_modules/mysql/lib/protocol/Parser.js:433:10) at Parser.write (/home/yellowtent/box/node_modules/mysql/lib/protocol/Parser.js:43:10) at Protocol.write (/home/yellowtent/box/node_modules/mysql/lib/protocol/Protocol.js:38:16) at Socket.<anonymous> (/home/yellowtent/box/node_modules/mysql/lib/Connection.js:88:28) { reason: 'Database Error', details: {}, nestedError: Error: ER_BAD_FIELD_ERROR: Unknown column 'apps.cpuQuota' in 'field list' at Sequence._packetToError (/home/yellowtent/box/node_modules/mysql/lib/protocol/sequences/Sequence.js:47:14) at Query.ErrorPacket (/home/yellowtent/box/node_modules/mysql/lib/protocol/sequences/Query.js:79:18) at Protocol._parsePacket (/home/yellowtent/box/node_modules/mysql/lib/protocol/Protocol.js:291:23) at Parser._parsePacket (/home/yellowtent/box/node_modules/mysql/lib/protocol/Parser.js:433:10) at Parser.write (/home/yellowtent/box/node_modules/mysql/lib/protocol/Parser.js:43:10) at Protocol.write (/home/yellowtent/box/node_modules/mysql/lib/protocol/Protocol.js:38:16) at Socket.<anonymous> (/home/yellowtent/box/node_modules/mysql/lib/Connection.js:88:28) at Socket.<anonymous> (/home/yellowtent/box/node_modules/mysql/lib/Connection.js:526:10) at Socket.emit (node:events:518:28) at addChunk (node:internal/streams/readable:559:12) -------------------- at Pool.query (/home/yellowtent/box/node_modules/mysql/lib/Pool.js:199:23) at /home/yellowtent/box/src/database.js:96:31 at new Promise (<anonymous>) at Object.query (/home/yellowtent/box/src/database.js:87:12) at list (/home/yellowtent/box/src/apps.js:1124:36) at process.processTicksAndRejections (node:internal/process/task_queues:95:5) at async Object.listByUser (/home/yellowtent/box/src/apps.js:1141:20) { code: 'ER_BAD_FIELD_ERROR', errno: 1054, sqlMessage: "Unknown column 'apps.cpuQuota' in 'field list'", sqlState: '42S22', index: 0, sql: 'SELECT apps.id,apps.appStoreId,apps.installationState,apps.errorJson,apps.runState,apps.health,apps.containerId,apps.manifestJson,apps.accessRestrictionJson,apps.memoryLimit,apps.cpuQuota,apps.label,apps.notes,apps.tagsJson,apps.taskId,apps.reverseProxyConfigJson,apps.s ervicesConfigJson,apps.operatorsJson,apps.sso,apps.debugModeJson,apps.enableBackup,apps.proxyAuth,apps.containerIp,apps.crontab,apps.creationTime,apps.updateTime,apps.enableAutomaticUpdate,apps.upstreamUri,apps.checklistJson,apps.enableMailbox,apps.mailboxDisplayName,apps.mailboxNa me,apps.mailboxDomain,apps.enableInbox,apps.inboxName,apps.inboxDomain,apps.enableTurn,apps.enableRedis,apps.storageVolumeId,apps.storageVolumePrefix,apps.ts,apps.healthTime,(apps.icon IS NOT NULL) AS hasIcon,(apps.appStoreIcon IS NOT NULL) AS hasAppStoreIcon, hostPorts, environmen tVariables, portTypes, portCounts, envNames, envValues, subdomains, domains, subdomainTypes, subdomainEnvironmentVariables, subdomainCertificateJsons, volumeIds, volumeReadOnlys FROM apps LEFT JOIN (SELECT id, GROUP_CONCAT(CAST(appPortBindings.hostPort AS CHAR(6))) AS hostPorts, GR OUP_CONCAT(appPortBindings.environmentVariable) AS environmentVariables, GROUP_CONCAT(appPortBindings.type) AS portTypes, GROUP_CONCAT(CAST(appPortBindings.count AS CHAR(6))) AS portCounts FROM apps LEFT JOIN appPortBindings ON apps.id = appPortBindings.appId GROUP BY apps.id) AS q 1 on q1.id = apps.id LEFT JOIN (SELECT id, JSON_ARRAYAGG(appEnvVars.name) AS envNames, JSON_ARRAYAGG(appEnvVars.value) AS envValues FROM apps LEFT JOIN appEnvVars ON apps.id = appEnvVars.appId GROUP BY apps.id) AS q2 on q2.id = apps.id LEFT JOIN (SELECT id, JSON_ARRAYAGG(locations. subdomain) AS subdomains, JSON_ARRAYAGG(locations.domain) AS domains, JSON_ARRAYAGG(locations.type) AS subdomainTypes, JSON_ARRAYAGG(locations.environmentVariable) AS subdomainEnvironmentVariables, JSON_ARRAYAGG(locations.certificateJson) AS subdomainCertificateJsons FROM apps LEFT JOIN locations ON apps.id = locations.appId GROUP BY apps.id) AS q3 on q3.id = apps.id LEFT JOIN (SELECT id, JSON_ARRAYAGG(appMounts.volumeId) AS volumeIds, JSON_ARRAYAGG(appMounts.readOnly) AS volumeReadOnlys FROM apps LEFT JOIN appMounts ON apps.id = appMounts.appId GROUP BY app s.id) AS q4 on q4.id = apps.id ORDER BY apps.id' }, code: 'ER_BAD_FIELD_ERROR', sqlMessage: "Unknown column 'apps.cpuQuota' in 'field list'" }, details: {} }
When I run start.sh I get this message
[ERROR] AssertionError [ERR_ASSERTION]: ifError got unwanted exception: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'COLUMN cpuShares to cpuQuota' at line 1 at /home/yellowtent/box/node_modules/db-migrate/lib/commands/on-complete.js:15:14 at tryCatcher (/home/yellowtent/box/node_modules/bluebird/js/release/util.js:16:23) at Promise.successAdapter (/home/yellowtent/box/node_modules/bluebird/js/release/nodeify.js:22:30) at Promise._settlePromise (/home/yellowtent/box/node_modules/bluebird/js/release/promise.js:601:21) at Promise._settlePromiseCtx (/home/yellowtent/box/node_modules/bluebird/js/release/promise.js:641:10) at _drainQueueStep (/home/yellowtent/box/node_modules/bluebird/js/release/async.js:97:12) at _drainQueue (/home/yellowtent/box/node_modules/bluebird/js/release/async.js:86:9) at Async._drainQueues (/home/yellowtent/box/node_modules/bluebird/js/release/async.js:102:5) at Async.drainQueues [as _onImmediate] (/home/yellowtent/box/node_modules/bluebird/js/release/async.js:15:14) at process.processImmediate (node:internal/timers:478:21) at Packet.asError (/home/yellowtent/box/node_modules/mysql2/lib/packets/packet.js:728:17) at Query.execute (/home/yellowtent/box/node_modules/mysql2/lib/commands/command.js:29:26) at Connection.handlePacket (/home/yellowtent/box/node_modules/mysql2/lib/connection.js:456:32) at PacketParser.onPacket (/home/yellowtent/box/node_modules/mysql2/lib/connection.js:85:12) at PacketParser.executeStart (/home/yellowtent/box/node_modules/mysql2/lib/packet_parser.js:75:16) at Socket.<anonymous> (/home/yellowtent/box/node_modules/mysql2/lib/connection.js:92:25) at Socket.emit (node:events:518:28) at addChunk (node:internal/streams/readable:559:12) at readableAddChunkPushByteMode (node:internal/streams/readable:510:3) at Readable.push (node:internal/streams/readable:390:5) at TCP.onStreamRead (node:internal/stream_base_commons:190:23) 2024-08-14T07:05:02 ==> start: DB migration failed
Please advise
Br,
Lennart -
@caleno said in Update 8.0.3 - Failed: HttpError: ER_BAD_FIELD_ERROR: Unknown column 'apps.cpuQuota' in 'field list':
[ERROR] AssertionError [ERR_ASSERTION]: ifError got unwanted exception: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'COLUMN cpuShares to cpuQuota' at line 1
Strange, this shouldn't happen. It could also be that maybe MySQL is giving an incorrect error. Can you try this on the server?
- First open mysql sheel,
mysql -uroot -ppassword
(sic) ALTER TABLE apps RENAME COLUMN cpuShares to cpuQuota
. Does this work? This is the migration which is run and which it's complaining has syntax error.- If the above worked, revert the change using
ALTER TABLE apps RENAME COLUMN cpuQuota to cpuShares
and then run start.sh again.
- First open mysql sheel,
-
I would also double check the MySQL version on the server:
# mysql --version mysql Ver 8.0.39-0ubuntu0.24.04.1 for Linux on x86_64 ((Ubuntu))
-
mysql> ALTER TABLE apps RENAME COLUMN cpuShares to cpuQuota; ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'COLUMN cpuShares to cpuQuota' at line 1 mysql> ^DBye
root:~# mysql --version mysql Ver 14.14 Distrib 5.7.42, for Linux (x86_64) using EditLine wrapper
Mhmm, I thought I had done an OS upgrade
root:~# lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 20.04.6 LTS Release: 20.04 Codename: focal
Is 20.04 still supported?
-
@caleno yes, ubuntu 20.04 is supported. But I am guessing the post install step was missed previously. https://docs.cloudron.io/guides/upgrade-ubuntu-20/#post-upgrade . That installs mysql 8 if the ubuntu update didn't.
-
-
-
I'm having the same issue after upgrading to 24.04 and 8.0.3
r00buntu@r00buntu-server:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 24.04.1 LTS
Release: 24.04
Codename: noble
r00buntu@r00buntu-server:~$ mysql --version
mysql Ver 8.0.39-0ubuntu0.24.04.2 for Linux on x86_64 ((Ubuntu))running the "ALTER TABLE" command above results in
"ERROR 1046 (3D000): No database selected"Collectd seems to be failing to install properly and this happens when running the troubleshooter:
2024-10-21T01:41:43 ==> start: Configuring collectd
A dependency job for collectd.service failed. See 'journalctl -xe' for details.