nextcloud / server

☁️ Nextcloud server, a safe home for all your data
https://nextcloud.com
GNU Affero General Public License v3.0
27.23k stars 4.05k forks source link

Webdav Calendar Integrity constraint violation: 1062 Duplicate entry #1779

Closed ggeorgg closed 7 years ago

ggeorgg commented 8 years ago

I have a problem with webdav. I am not sure if this is a bug or if something in my configuration is wrong. Could someone try to reproduce this? I have a shared calendar with my girlfriend and everytime she tries to create an event with her mobile phone she can't see this event but I normally do. There is a fatal error message in my nextcloud log which says that there is a constraint violation: 1062 Duplicate entry.

Steps to reproduce

  1. Create calendar with user1 and share this calendar with user2 with.
  2. Give user2 the rights to edit the shared calendar
  3. Create an event with user2 on a mobile phone which syncs the calendar with DAVdroid OR create an event with user2 in Thunderbird and sync the calendar with SOGo.

    Expected behaviour

Event is displayed for both users in the calendar

Actual behaviour

Event is only displayed for user1 in the shared calendar.

Server configuration

Operating system:

Web server: Shared Host ALLinkl

Database: MySQL PHP version: PHP 7.0.10 CGI Nextcloud version: (see Nextcloud admin page) Nextcloud 10.0.1

Updated from an older Nextcloud/ownCloud or fresh install: updated from owncloud 9 to nextcloud 9 to nextcloud 10

Where did you install Nextcloud from: Manual updated from https://download.nextcloud.com/server/releases/nextcloud-10.0.1.zip

Signing status:

Signing status ``` No errors have been found. ```

List of activated apps:

Calendar 1.4.0, Tasks 0.9.3 ``` Activity, Auditing/Logging, Collaborative tags, Comments, Deleted files, External storage support, Federation, File sharing, First run wizard, Gallery, Mail template editor, Notifications, Password policy, PDF viewer, Provisioning API, Server info, Text editor, Theming, Update notificaiton, Usage report, Versions, Video player, Calendar 1.4.0, Contacts, Tasks 0.9.3, Fb Sync, Keeweb, Mail ```

The content of config/config.php:

Config report ``` 'XXXXX', 'passwordsalt' => 'XXXXX', 'secret' => 'XXXXX', 'trusted_domains' => array ( 0 => 'domain.de', ), 'datadirectory' => '/www/htdocs/XXXXXXXX/domain.de/data', 'overwrite.cli.url' => 'https://domain.de/owncloud', 'dbtype' => 'mysql', 'version' => '9.1.1.5', 'dbname' => 'dbname', 'dbhost' => 'localhost', 'dbtableprefix' => 'oc_', 'dbuser' => 'dbname', 'dbpassword' => 'XXXXX', 'logtimezone' => 'Europe/Berlin', 'installed' => true, 'tempdirectory' => '/www/htdocs/XXXXXXXX/domain.de/tmp/', 'appstore.experimental.enabled' => true, 'theme' => '', 'loglevel' => 2, 'maintenance' => false, 'mail_smtpmode' => 'smtp', 'mail_from_address' => 'XXXXX', 'mail_domain' => 'XXXXX.de', 'mail_smtpsecure' => 'tls', 'mail_smtpauthtype' => 'LOGIN', 'mail_smtpauth' => 1, 'mail_smtphost' => 'XXXXXXXX.kasserver.com', 'mail_smtpport' => '587', 'asset-pipeline.enabled' => false, 'updatechecker' => true, 'updater.release.channel' => 'stable', ); ```

Are you using external storage, if yes which one: local/smb/sftp/... dropbox

Are you using encryption: yes/no no

Are you using an external user-backend, if yes which one: LDAP/ActiveDirectory/Webdav/...

Client configuration

Browser: Firefox Operating system: Windows 10, Android 4

Logs

Nextcloud log (data/nextcloud.log)

Nextcloud log ``` Exception: {"Message":"An exception occurred while executing 'INSERT INTO `oc_calendarobjects` (`calendarid`, `uri`, `calendardata`, `lastmodified`, `etag`, `size`, `componenttype`, `firstoccurence`, `lastoccurence`, `classification`, `uid`) VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)' with params [\"11\", \"52880154-667a-4acb-80f2-f8d5c594d6ad.ics\", \"BEGIN:VCALENDAR\\r\\nPRODID:-\\\/\\\/Mozilla.org\\\/NONSGML Mozilla Calendar V1.1\\\/\\\/EN\\r\\nVERSION:2.0\\r\\nBEGIN:VTIMEZONE\\r\\nTZID:Europe\\\/Berlin\\r\\nBEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CEST\\r\\nDTSTART:19700329T020000\\r\\nRRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=3\\r\\nEND:DAYLIGHT\\r\\nBEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:CET\\r\\nDTSTART:19701025T030000\\r\\nRRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=10\\r\\nEND:STANDARD\\r\\nEND:VTIMEZONE\\r\\nBEGIN:VTODO\\r\\nCREATED:20161018T072408Z\\r\\nLAST-MODIFIED:20161018T072551Z\\r\\nDTSTAMP:20161018T072551Z\\r\\nUID:52880154-667a-4acb-80f2-f8d5c594d6ad\\r\\nSUMMARY:Theaterkarten\\r\\nDTSTART;TZID=Europe\\\/Berlin:20161017T092408\\r\\nCLASS:PRIVATE\\r\\nX-MOZ-GENERATION:1\\r\\nEND:VTODO\\r\\nEND:VCALENDAR\\r\\n\", 1476776421, \"311c763c4ead40ba23fac4d18f64bf41\", 698, \"VTODO\", null, null, 1, \"52880154-667a-4acb-80f2-f8d5c594d6ad\"]:\n\nSQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '11-52880154-667a-4acb-80f2-f8d5c594d6ad.ics' for key 'calobjects_index'","Exception":"Doctrine\\DBAL\\Exception\\UniqueConstraintViolationException","Code":0,"Trace":"#0 \/www\/htdocs\/xxxxxxxx\/domain.de\/owncloud\/3rdparty\/doctrine\/dbal\/lib\/Doctrine\/DBAL\/DBALException.php(116): Doctrine\\DBAL\\Driver\\AbstractMySQLDriver->convertException('An exception oc...', Object(Doctrine\\DBAL\\Driver\\PDOException))\n#1 \/www\/htdocs\/xxxxxxxx\/domain.de\/owncloud\/3rdparty\/doctrine\/dbal\/lib\/Doctrine\/DBAL\/Connection.php(996): Doctrine\\DBAL\\DBALException::driverExceptionDuringQuery(Object(Doctrine\\DBAL\\Driver\\PDOMySql\\Driver), Object(Doctrine\\DBAL\\Driver\\PDOException), 'INSERT INTO `oc...', Array)\n#2 \/www\/htdocs\/xxxxxxxx\/domain.de\/owncloud\/lib\/private\/DB\/Connection.php(210): Doctrine\\DBAL\\Connection->executeUpdate('INSERT INTO `oc...', Array, Array)\n#3 \/www\/htdocs\/xxxxxxxx\/domain.de\/owncloud\/3rdparty\/doctrine\/dbal\/lib\/Doctrine\/DBAL\/Query\/QueryBuilder.php(208): OC\\DB\\Connection->executeUpdate('INSERT INTO `oc...', Array, Array)\n#4 \/www\/htdocs\/xxxxxxxx\/domain.de\/owncloud\/lib\/private\/DB\/QueryBuilder\/QueryBuilder.php(142): Doctrine\\DBAL\\Query\\QueryBuilder->execute()\n#5 \/www\/htdocs\/xxxxxxxx\/domain.de\/owncloud\/apps\/dav\/lib\/CalDAV\/CalDavBackend.php(634): OC\\DB\\QueryBuilder\\QueryBuilder->execute()\n#6 \/www\/htdocs\/xxxxxxxx\/domain.de\/owncloud\/3rdparty\/sabre\/dav\/lib\/CalDAV\/Calendar.php(199): OCA\\DAV\\CalDAV\\CalDavBackend->createCalendarObject('11', '52880154-667a-4...', 'BEGIN:VCALENDAR...')\n#7 \/www\/htdocs\/xxxxxxxx\/domain.de\/owncloud\/3rdparty\/sabre\/dav\/lib\/DAV\/Server.php(1036): Sabre\\CalDAV\\Calendar->createFile('52880154-667a-4...', 'BEGIN:VCALENDAR...')\n#8 \/www\/htdocs\/xxxxxxxx\/domain.de\/owncloud\/3rdparty\/sabre\/dav\/lib\/DAV\/CorePlugin.php(523): Sabre\\DAV\\Server->createFile('calendars\/carin...', 'BEGIN:VCALENDAR...', NULL)\n#9 [internal function]: Sabre\\DAV\\CorePlugin->httpPut(Object(Sabre\\HTTP\\Request), Object(Sabre\\HTTP\\Response))\n#10 \/www\/htdocs\/xxxxxxxx\/domain.de\/owncloud\/3rdparty\/sabre\/event\/lib\/EventEmitterTrait.php(105): call_user_func_array(Array, Array)\n#11 \/www\/htdocs\/xxxxxxxx\/domain.de\/owncloud\/3rdparty\/sabre\/dav\/lib\/DAV\/Server.php(459): Sabre\\Event\\EventEmitter->emit('method:PUT', Array)\n#12 \/www\/htdocs\/xxxxxxxx\/domain.de\/owncloud\/3rdparty\/sabre\/dav\/lib\/DAV\/Server.php(248): Sabre\\DAV\\Server->invokeMethod(Object(Sabre\\HTTP\\Request), Object(Sabre\\HTTP\\Response))\n#13 \/www\/htdocs\/xxxxxxxx\/domain.de\/owncloud\/apps\/dav\/lib\/Server.php(184): Sabre\\DAV\\Server->exec()\n#14 \/www\/htdocs\/xxxxxxxx\/domain.de\/owncloud\/apps\/dav\/appinfo\/v2\/remote.php(30): OCA\\DAV\\Server->exec()\n#15 \/www\/htdocs\/xxxxxxxx\/domain.de\/owncloud\/remote.php(165): require_once('\/www\/htdocs\/w01...')\n#16 {main}","File":"\/www\/htdocs\/xxxxxxxx\/domain.de\/owncloud\/3rdparty\/doctrine\/dbal\/lib\/Doctrine\/DBAL\/Driver\/AbstractMySQLDriver.php","Line":66,"User":"user2"} ```
ggeorgg commented 7 years ago

This issue can be closed since I made a fresh install of nextcloud 11 where I can't reproduce this error.