{
"app": "webdav",
"level": 4,
"message": "Exception: {\"Message\":\"An exception occurred while executing 'SELECT `id`, `uri`, `lastmodified`, `etag`, `calendarid`, `size`, `calendardata`, `componenttype`, `classification` FROM `oc_calendarobjects` WHERE (`calendarid` = ?) AND (`uri` = ?)' with params [\\\"1\\\", \\\"0f84a47c-5cc9-445d-9f01-2c86c15f8b10.ics\\\"]:\\n\\nSQLSTATE[42S22]: Column not found: 1054 Unknown column 'classification' in 'field list'\",\"Exception\":\"Doctrine\\\\DBAL\\\\Exception\\\\InvalidFieldNameException\",\"Code\":0,\"Trace\":\"#0 \\/var\\/www\\/nextcloud\\/htdocs\\/3rdparty\\/doctrine\\/dbal\\/lib\\/Doctrine\\/DBAL\\/DBALException.php(116): Doctrine\\\\DBAL\\\\Driver\\\\AbstractMySQLDriver->convertException('An exception oc...', Object(Doctrine\\\\DBAL\\\\Driver\\\\PDOException))\\n#1 \\/var\\/www\\/nextcloud\\/htdocs\\/3rdparty\\/doctrine\\/dbal\\/lib\\/Doctrine\\/DBAL\\/Connection.php(836): Doctrine\\\\DBAL\\\\DBALException::driverExceptionDuringQuery(Object(Doctrine\\\\DBAL\\\\Driver\\\\PDOMySql\\\\Driver), Object(Doctrine\\\\DBAL\\\\Driver\\\\PDOException), 'SELECT `id`, `u...', Array)\\n#2 \\/var\\/www\\/nextcloud\\/htdocs\\/lib\\/private\\/DB\\/Connection.php(188): Doctrine\\\\DBAL\\\\Connection->executeQuery('SELECT `id`, `u...', Array, Array, NULL)\\n#3 \\/var\\/www\\/nextcloud\\/htdocs\\/3rdparty\\/doctrine\\/dbal\\/lib\\/Doctrine\\/DBAL\\/Query\\/QueryBuilder.php(206): OC\\\\DB\\\\Connection->executeQuery('SELECT `id`, `u...', Array, Array)\\n#4 \\/var\\/www\\/nextcloud\\/htdocs\\/lib\\/private\\/DB\\/QueryBuilder\\/QueryBuilder.php(141): Doctrine\\\\DBAL\\\\Query\\\\QueryBuilder->execute()\\n#5 \\/var\\/www\\/nextcloud\\/htdocs\\/apps\\/dav\\/lib\\/CalDAV\\/CalDavBackend.php(537): OC\\\\DB\\\\QueryBuilder\\\\QueryBuilder->execute()\\n#6 \\/var\\/www\\/nextcloud\\/htdocs\\/apps\\/dav\\/lib\\/CalDAV\\/Calendar.php(168): OCA\\\\DAV\\\\CalDAV\\\\CalDavBackend->getCalendarObject('1', '0f84a47c-5cc9-4...')\\n#7 \\/var\\/www\\/nextcloud\\/htdocs\\/3rdparty\\/sabre\\/dav\\/lib\\/DAV\\/Tree.php(76): OCA\\\\DAV\\\\CalDAV\\\\Calendar->getChild('0f84a47c-5cc9-4...')\\n#8 \\/var\\/www\\/nextcloud\\/htdocs\\/3rdparty\\/sabre\\/dav\\/lib\\/DAV\\/Server.php(903): Sabre\\\\DAV\\\\Tree->getNodeForPath('calendars\\/uzivatel...')\\n#9 \\/var\\/www\\/nextcloud\\/htdocs\\/3rdparty\\/sabre\\/dav\\/lib\\/CalDAV\\/Plugin.php(605): Sabre\\\\DAV\\\\Server->getPropertiesForPath('calendars\\/uzivatel...', Array)\\n#10 \\/var\\/www\\/nextcloud\\/htdocs\\/3rdparty\\/sabre\\/dav\\/lib\\/CalDAV\\/Plugin.php(236): Sabre\\\\CalDAV\\\\Plugin->calendarQueryReport(Object(Sabre\\\\CalDAV\\\\Xml\\\\Request\\\\CalendarQueryReport))\\n#11 [internal function]: Sabre\\\\CalDAV\\\\Plugin->report('{urn:ietf:param...', Object(Sabre\\\\CalDAV\\\\Xml\\\\Request\\\\CalendarQueryReport), 'calendars\\/uzivatel...')\\n#12 \\/var\\/www\\/nextcloud\\/htdocs\\/3rdparty\\/sabre\\/event\\/lib\\/EventEmitterTrait.php(105): call_user_func_array(Array, Array)\\n#13 \\/var\\/www\\/nextcloud\\/htdocs\\/3rdparty\\/sabre\\/dav\\/lib\\/DAV\\/CorePlugin.php(716): Sabre\\\\Event\\\\EventEmitter->emit('report', Array)\\n#14 [internal function]: Sabre\\\\DAV\\\\CorePlugin->httpReport(Object(Sabre\\\\HTTP\\\\Request), Object(Sabre\\\\HTTP\\\\Response))\\n#15 \\/var\\/www\\/nextcloud\\/htdocs\\/3rdparty\\/sabre\\/event\\/lib\\/EventEmitterTrait.php(105): call_user_func_array(Array, Array)\\n#16 \\/var\\/www\\/nextcloud\\/htdocs\\/3rdparty\\/sabre\\/dav\\/lib\\/DAV\\/Server.php(459): Sabre\\\\Event\\\\EventEmitter->emit('method:REPORT', Array)\\n#17 \\/var\\/www\\/nextcloud\\/htdocs\\/3rdparty\\/sabre\\/dav\\/lib\\/DAV\\/Server.php(248): Sabre\\\\DAV\\\\Server->invokeMethod(Object(Sabre\\\\HTTP\\\\Request), Object(Sabre\\\\HTTP\\\\Response))\\n#18 \\/var\\/www\\/nextcloud\\/htdocs\\/apps\\/dav\\/lib\\/Server.php(176): Sabre\\\\DAV\\\\Server->exec()\\n#19 \\/var\\/www\\/nextcloud\\/htdocs\\/apps\\/dav\\/appinfo\\/v2\\/remote.php(29): OCA\\\\DAV\\\\Server->exec()\\n#20 \\/var\\/www\\/nextcloud\\/htdocs\\/remote.php(164): require_once('\\/var\\/www\\/nextcloud\\/...')\\n#21 {main}\",\"File\":\"\\/var\\/www\\/nextcloud\\/htdocs\\/3rdparty\\/doctrine\\/dbal\\/lib\\/Doctrine\\/DBAL\\/Driver\\/AbstractMySQLDriver.php\",\"Line\":71,\"User\":\"uzivatel\"}",
"method": "REPORT",
"remoteAddr": "186.9.12.13",
"reqId": "4RsVBm5CZTbywN7vH8MV",
"time": "2016-08-23T14:23:34+00:00",
"url": "/remote.php/dav/calendars/uzivatel/defaultcalendar/",
"user": "uzivatel"
}
Actual version 10.0_rc
PHP 5.6 & 7 tested
10.0.26-MariaDB
I can see calendars, I cannot synchronize and load entries.
Please fill out the issue template and provide the table layout of oc_calendarobjects
oc_calendarobjects
Column Type Null Default Comments
id bigint(20) No
calendardata longblob Yes NULL
uri varchar(255) Yes NULL
calendarid int(10) No
lastmodified int(10) Yes NULL
etag varchar(32) Yes NULL
size bigint(20) No
componenttype varchar(255) Yes NULL
firstoccurence int(10) Yes NULL
lastoccurence int(10) Yes NULL
uid varchar(255) Yes NULL
The classification column should exist on both oC 9.1 and NC 10.
maybe some bug while upgrading to oC 9.1, can I somehow run "update" to fill it?
Update 3rd-party app: news dav: An exception occurred while executing 'CREATE TABLE `oc_addressbooks` (`id` BIGINT UNSIGNED AUTO_INCREMENT NOT NULL, `principaluri` VARCHAR(255) DEFAULT NULL, `displayname` VARCHAR(255) DEFAULT NULL, `uri` VARCHAR(255) DEFAULT NULL, `description` VARCHAR(255) DEFAULT NULL, `synctoken` INT UNSIGNED DEFAULT 1 NOT NULL, UNIQUE INDEX addressbook_index (`principaluri`, `uri`), PRIMARY KEY(`id`)) DEFAULT CHARACTER SET utf8 COLLATE utf8_bin ENGINE = InnoDB': SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'oc_addressbooks' already exists Drop old database tables Done 31/31 [============================] 100% Remove old (< 9.0) calendar/contact shares Done 4/4 [============================] 100%
I wonder if this error can cause not updated oc_calendarobjects table..
Same problem here, with the same exception on oc_addressbooks too. Is it related?...
The question is, why is it trying to "create" the table instead of "update"
The same problem of oc_addressbooks exception on every update is here: https://github.com/nextcloud/server/issues/761
same problem for me from 9.0.x to 10.0.1
I add the missing column with this sql statement
alter table oc_calendarobjects add classification int(10) unsigned DEFAULT 0;
Hope that could help
@gmat : and calendar is fully functional after this change?
@okias : yes. No more 500 error.
In apps/dav/appinfo/database.xml the default value is 0. With this, all the past events are visible to people in a shared calendar, just like before the upgrade. So that's fine for me.
@okias do you still have this problem?
If so it would be nice, if you can run the following query:
SELECT * FROM `oc_appconfig` WHERE `appid` = 'dav'
Also I just saw, that you are the same reporter as in #761
Instead of an update your instance tried to install, because of #761
Install failed because the table does already exist.
But table is not updated, because we only try to install and don't update, so of course the new column is missing.
@nickvergessen
SELECT * FROM
oc_appconfigWHEREappid= 'dav';
Empty set (0.00 sec)
@gmat
alter table oc_calendarobjects add classification int(10) unsigned DEFAULT 0;
Query OK, 0 rows affected (7.51 sec)
Records: 0 Duplicates: 0 Warnings: 0
Yes, it seems to be fixed.
Thank you guys!!!
@okias can you still execute my query and post the result? This seems to happen every now and then and I want to find the root cause.
I don't know if it could help you to find the root cause, but just before searching for fixing this problem, I also had to manually set all "remote_" entry in oc_appconfig as suggested here: https://github.com/owncloud/core/issues/23610 Same problem of update in tables?
@nickvergessen check my previous post, there is output of your query
Oh, empty result. Didn't see that. But that certainly helps to reproduce the issue. Now I can easily generate the error as well.
The only question is, why you ended up with it being empty.
Do you recall which version you originally installed and which versions you updated to/from?
Equally empty by my side. The initial installed version of ownCloud is 4.5 or 5, which version I update from.
I did ugly update.
I've been updating to 10.0_beta from some 9.1, which has been unsupported at that time (only upgrade from 9.0.x has been OK). Had to change version to string to success update..
Anyway, I had problem with updating since 8.x -> 9.x, it failed always with problem. I had to manually remove old calendar tables. But calendar worked at least.
after updating from 10.0.0 to 10.0.1 it throws
dav: An exception occurred while executing 'CREATE TABLE oc_addressbooks (id BIGINT UNSIGNED AUTO_INCREMENT NOT NULL, principaluri VARCHAR(255) DEFAULT NULL, displayname VARCHAR(255) DEFAULT NULL, uri VARCHAR(255) DEFAULT NULL, description VARCHAR(255) DEFAULT NULL, synctoken INT UNSIGNED DEFAULT 1 NOT NULL, UNIQUE INDEX addressbook_index (principaluri, uri), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8 COLLATE utf8_bin ENGINE = InnoDB': SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'oc_addressbooks' already exists
Did you also restore a backup at some point in time?
I wrote a little script that should solve the problem:
https://gist.github.com/nickvergessen/c83981bafbbe55e3cf5bde09b901cfcf
Please download it, put into the root of your Nextcloud, run it once and delete it afterwards.
@nickvergessen I've ran php repair-appconfig.php: sudo php repair-appconfig.php
No output, not fixed.. Please help me on this one.
Else how would I run those mysql commands exactly?
I tried a lot of combinations running the above commands but they all result in errors that the table's dont exists.
Anyone?
Sorry, I was quite busy last week, so this slipped through...
What is the error you are getting? Can you run this script: https://gist.github.com/nickvergessen/94b57082a5ab83e47bbbd1bef6d13f66
It should help to generate a list of queries for you to execute.
@nickvergessen No problem, the main issue is that my calendars don't show anymore. Logs:
Fatal webdav Doctrine\DBAL\Exception\TableNotFoundException: An exception occurred while executing 'SELECT id, uri, lastmodified, etag, calendarid, size, calendardata, componenttype, classification FROM oc_calendarobjects WHERE (calendarid = ?) AND (uri IN (?))' with params ["9", "0452506d-401d-4813-ba5c-ccb2bdd47c85.1478112800473.ics"]: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'nextcloud_db.oc_calendarobjects' doesn't exist
/var/www/nextcloud/3rdparty/doctrine/dbal/lib/Doctrine/DBAL/DBALException.php - line 116: Doctrine\DBAL\Driver\AbstractMySQLDriver->convertException('An exception oc...', Object(Doctrine\DBAL\Driver\PDOException))
/var/www/nextcloud/3rdparty/doctrine/dbal/lib/Doctrine/DBAL/Connection.php - line 836: Doctrine\DBAL\DBALException driverExceptionDuringQuery(Object(Doctrine\DBAL\Driver\PDOMySql\Driver), Object(Doctrine\DBAL\Driver\PDOException), 'SELECT id, u...', Array)
/var/www/nextcloud/lib/private/DB/Connection.php - line 189: Doctrine\DBAL\Connection->executeQuery('SELECTid,u...', Array, Array, NULL)
/var/www/nextcloud/3rdparty/doctrine/dbal/lib/Doctrine/DBAL/Query/QueryBuilder.php - line 206: OC\DB\Connection->executeQuery('SELECT id, `u...', Array, Array)
/var/www/nextcloud/lib/private/DB/QueryBuilder/QueryBuilder.php - line 142: Doctrine\DBAL\Query\QueryBuilder->execute()
/var/www/nextcloud/apps/dav/lib/CalDAV/CalDavBackend.php - line 577: OC\DB\QueryBuilder\QueryBuilder->execute()
/var/www/nextcloud/apps/dav/lib/CalDAV/Calendar.php - line 202: OCA\DAV\CalDAV\CalDavBackend->getMultipleCalendarObjects('9', Array)
/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Tree.php - line 272: OCA\DAV\CalDAV\Calendar->getMultipleChildren(Array)
/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php - line 960: Sabre\DAV\Tree->getMultipleNodes(Array)
/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Sync/Plugin.php - line 172: Sabre\DAV\Server->getPropertiesForMultiplePaths(Array, Array)
/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Sync/Plugin.php - line 144: Sabre\DAV\Sync\Plugin->sendSyncCollectionResponse('134', 'calendars/fanny...', Array, Array, Array, Array)
/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Sync/Plugin.php - line 65: Sabre\DAV\Sync\Plugin->syncCollection('calendars/fanny...', Object(Sabre\DAV\Xml\Request\SyncCollectionReport))
[internal function] Sabre\DAV\Sync\Plugin->Sabre\DAV\Sync{closure}('{DAV }sync-coll...', Object(Sabre\DAV\Xml\Request\SyncCollectionReport), 'calendars/fanny...')
/var/www/nextcloud/3rdparty/sabre/event/lib/EventEmitterTrait.php - line 105: call_user_func_array(Object(Closure), Array)
/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/CorePlugin.php - line 716: Sabre\Event\EventEmitter->emit('report', Array)
[internal function] Sabre\DAV\CorePlugin->httpReport(Object(Sabre\HTTP\Request), Object(Sabre\HTTP\Response))
/var/www/nextcloud/3rdparty/sabre/event/lib/EventEmitterTrait.php - line 105: call_user_func_array(Array, Array)
/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php - line 459: Sabre\Event\EventEmitter->emit('method REPORT', Array)
/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php - line 248: Sabre\DAV\Server->invokeMethod(Object(Sabre\HTTP\Request), Object(Sabre\HTTP\Response))
/var/www/nextcloud/apps/dav/lib/Server.php - line 184: Sabre\DAV\Server->exec()
/var/www/nextcloud/apps/dav/appinfo/v2/remote.php - line 30: OCA\DAV\Server->exec()
/var/www/nextcloud/remote.php - line 165: require_once('/var/www/nextcl...')
{main}
Thanks for your help!
Edit:
I now see I also have a problem with the address book...
Output of repair-appconfig.php:
root@cloud:/var/www/nextcloud# php -f repair-appconfig.php
root@cloud:/var/www/nextcloud#
Output of the script:
root@cloud:/var/www/nextcloud# php -f app-state-detection.php
1480249254 [OK] App admin_audit is installed and enabled
1480249254 [OK] App comments is installed and enabled
1480249254 [OK] App dav is installed and enabled
1480249254 [OK] Table addressbooks of app dav exists
1480249254 [Info] Table addressbooks has 8 entries
1480249254 [OK] Table cards of app dav exists
1480249254 [Info] Table cards has 707 entries
1480249254 [OK] Table addressbookchanges of app dav exists
1480249254 [Info] Table addressbookchanges has 715 entries
1480249254 [Error] Table calendarobjects of app dav does not exists
1480249254 [OK] Table calendars of app dav exists
1480249254 [Info] Table calendars has 17 entries
1480249254 [OK] Table calendarchanges of app dav exists
1480249254 [Info] Table calendarchanges has 1324 entries
1480249254 [OK] Table calendarsubscriptions of app dav exists
1480249254 [Info] Table calendarsubscriptions has 0 entries
1480249254 [OK] Table schedulingobjects of app dav exists
1480249254 [Info] Table schedulingobjects has 0 entries
1480249254 [OK] Table cards_properties of app dav exists
1480249254 [Info] Table cards_properties has 2801 entries
1480249254 [OK] Table dav_shares of app dav exists
1480249254 [Info] Table dav_shares has 2 entries
1480249254 [OK] App federatedfilesharing is installed and enabled
1480249254 [OK] Table federated_reshares of app federatedfilesharing exists
1480249254 [Info] Table federated_reshares has 0 entries
1480249254 [OK] App federation is installed and enabled
1480249254 [OK] Table trusted_servers of app federation exists
1480249254 [Info] Table trusted_servers has 0 entries
1480249254 [OK] App files_external is installed and enabled
1480249254 [OK] Table external_mounts of app files_external exists
1480249254 [Info] Table external_mounts has 1 entries
1480249254 [OK] Table external_applicable of app files_external exists
1480249254 [Info] Table external_applicable has 1 entries
1480249254 [OK] Table external_config of app files_external exists
1480249254 [Info] Table external_config has 4 entries
1480249254 [OK] Table external_options of app files_external exists
1480249254 [Info] Table external_options has 5 entries
1480249254 [OK] App files_sharing is installed and enabled
1480249254 [OK] Table share_external of app files_sharing exists
1480249254 [Info] Table share_external has 0 entries
1480249254 [OK] App files_trashbin is installed and enabled
1480249254 [OK] Table files_trash of app files_trashbin exists
1480249254 [Info] Table files_trash has 13 entries
1480249254 [OK] App twofactor_backupcodes is not found, not installed and disabled
1480249254 [OK] Table twofactor_backup_codes of app twofactor_backupcodes does not exists
1480249254 [OK] App user_ldap is installed but not enabled
1480249254 [OK] Table ldap_user_mapping of app user_ldap exists
1480249254 [Info] Table ldap_user_mapping has 0 entries
1480249254 [OK] Table ldap_group_mapping of app user_ldap exists
1480249254 [Info] Table ldap_group_mapping has 0 entries
1480249254 [OK] Table ldap_group_members of app user_ldap exists
1480249254 [Info] Table ldap_group_members has 0 entries
1480249254 [OK] App workflowengine is installed and enabled
1480249254 [OK] Table flow_checks of app workflowengine exists
1480249254 [Info] Table flow_checks has 0 entries
1480249254 [OK] Table flow_operations of app workflowengine exists
1480249254 [Info] Table flow_operations has 0 entries
1480249254 [OK] App activity is installed and enabled
1480249254 [OK] Table activity of app activity exists
1480249254 [Info] Table activity has 1249 entries
1480249254 [OK] Table activity_mq of app activity exists
1480249254 [Info] Table activity_mq has 0 entries
1480249254 [OK] App notifications is installed and enabled
1480249254 [OK] Table notifications of app notifications exists
1480249254 [Info] Table notifications has 0 entries
1480249254 [OK] App files_retention is installed and enabled
1480249254 [OK] Table retention of app files_retention exists
1480249254 [Info] Table retention has 0 entries
1480249254 [OK] App user_saml is not installed and disabled
1480249254 [OK] Table user_saml_users of app user_saml does not exists
1480249254 [OK] Table user_saml_auth_token of app user_saml does not exists
1480249254 [OK] App calendar is installed and enabled
1480249254 [Error] Table clndr_objects of app calendar does not exists
1480249254 [Error] Table clndr_calendars of app calendar does not exists
1480249254 [Error] Table clndr_share_event of app calendar does not exists
1480249254 [Error] Table clndr_share_calendar of app calendar does not exists
1480249254 [Error] Table clndr_repeat of app calendar does not exists
1480249254 [OK] App contacts is installed and enabled
1480249254 [Error] Table addressbook of app contacts does not exists
1480249254 [Error] Table addressbook_backend of app contacts does not exists
1480249254 [Error] Table contacts_addressbooks of app contacts does not exists
1480249254 [Error] Table contacts_cards of app contacts does not exists
1480249254 [Error] Table contacts_cards_properties of app contacts does not exists
Well, seems like the table holding the calendar events is missing for you. Something went wrong on your database update? Anyway, my advice would be to restore your last working backup in a test environment and copy the table from there.
He he... there is none... any advice on that? Or how do I delete all the entries en recreate the tables? Thanks for the help @nickvergessen
@ezraholm50 manipulate the oc_appconfig database table and set the configvalue for appid = 'dav' AND configkey = 'installed_version' to a lower version then you have currently. Afterwards an update should be triggered which generates the missing tables.
@nickvergessen you are the shizznit!!! Finally have a working calendar again, much appreciated!
@nickvergessen is now officially the shizznit... awesome