nextcloud / calendar

📆 Calendar app for Nextcloud
https://apps.nextcloud.com/apps/calendar
GNU Affero General Public License v3.0
965 stars 237 forks source link

Bug invitation when event is deleted by an other participant #4925

Open CorentinS6 opened 1 year ago

CorentinS6 commented 1 year ago

Steps to reproduce

  1. User A create en event, and add two participants, B and C.
  2. User B refuse the invitation, and delete the event, which ends up in its trash.
  3. User C clic (for exemple) on "Accept" link in invitation mail, and get an HTTP 500 error (see my logs).
  4. User B delete the event from its trash, then the user C can accept on decline the invitation, without error.

Expected behavior

User C should be able to accept (or decline) the invitation regardless of what user B does with this invitation/event (accept/decline/delete in trash, etc).

Actual behaviour

User C cannot accept (or decline) the invitation if user C put it in its trash on his side.

Calendar app version

3.5.4

CalDAV-clients used

nextcloud web interface

Browser

any

Client operating system

any

Server operating system

debian11

Web server

Apache

Database engine version

MariaDB

PHP engine version

PHP 8.0

Nextcloud version

24.0.9

Updated from an older installed version or fresh install

Updated from an older version

List of activated apps

Enabled:
  - accessibility: 1.10.0
  - apporder: 0.15.0
  - bruteforcesettings: 2.4.0
  - calendar: 3.5.4
  - cloud_federation_api: 1.7.0
  - contacts: 4.2.3
  - dav: 1.22.0
  - deck: 1.7.3
  - federatedfilesharing: 1.14.0
  - files: 1.19.0
  - impersonate: 1.11.0
  - logreader: 2.9.0
  - lookup_server_connector: 1.12.0
  - notifications: 2.12.1
  - oauth2: 1.12.0
  - provisioning_api: 1.14.0
  - serverinfo: 1.14.0
  - settings: 1.6.0
  - tasks: 0.14.5
  - theming: 1.15.0
  - theming_customcss: 1.12.0
  - twofactor_backupcodes: 1.13.0
  - user_cas: 1.10.0
  - user_ldap: 1.14.1
  - viewer: 1.8.0
  - workflowengine: 2.6.0

Nextcloud configuration

{
    "system": {
        "installed": true,
        "maintenance": false,
        "instanceid": "***REMOVED SENSITIVE VALUE***",
        "passwordsalt": "***REMOVED SENSITIVE VALUE***",
        "secret": "***REMOVED SENSITIVE VALUE***",
        "version": "24.0.9.2",
        "updatechecker": false,
        "upgrade.disable-web": true,
        "appstoreenabled": true,
        "filesystem_check_changes": 1,
        "hide_login_form": true,
        "auth.bruteforce.protection.enabled": true,
        "datadirectory": "***REMOVED SENSITIVE VALUE***",
        "skeletondirectory": "\/data\/skeleton",
        "overwrite.cli.url": "https:\/\/*******",
        "overwriteprotocol": "https",
        "proxy": "****",
        "trusted_domains": [
            ****
        ],
        "trusted_proxies": "***REMOVED SENSITIVE VALUE***",
        "forwarded_for_headers": [
            "HTTP_X_FORWARDED",
            "HTTP_FORWARDED_FOR"
        ],
        "dbtype": "mysql",
        "dbname": "***REMOVED SENSITIVE VALUE***",
        "dbhost": "***REMOVED SENSITIVE VALUE***",
        "dbport": "",
        "dbtableprefix": "oc_",
        "mysql.utf8mb4": true,
        "dbuser": "***REMOVED SENSITIVE VALUE***",
        "dbpassword": "***REMOVED SENSITIVE VALUE***",
        "ldapIgnoreNamingRules": false,
        "ldapProviderFactory": "\\OCA\\User_LDAP\\LDAPProviderFactory",
        "sort_groups_by_name": true,
        "debug": false,
        "log_type": "file",
        "logfile": "\/var\/log\/nextcloud\/nextcloud.log",
        "loglevel": 3,
        "logfilemode": 416,
        "log_rotate_size": 0,
        "logtimezone": "Europe\/Paris",
        "memcache.local": "\\OC\\Memcache\\APCu",
        "memcache.locking": "\\OC\\Memcache\\Redis",
        "memcache.distributed": "\\OC\\Memcache\\Redis",
        "redis": {
            "host": "***REMOVED SENSITIVE VALUE***",
            "port": 6379
        },
        "mail_sendmailmode": "smtp",
        "mail_smtphost": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpport": "25",
        "mail_from_address": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpmode": "smtp",
        "mail_domain": "***REMOVED SENSITIVE VALUE***",
        "allow_user_to_change_display_name": false,
        "knowledgebaseenabled": false,
        "lost_password_link": "disabled",
        "activity_expire_days": 12,
        "enable_avatar": false,
        "force_language": "fr",
        "default_language": "fr",
        "default_locale": "fr",
        "force_locale": "fr",
        "default_phone_region": "FR",
        "defaultapp": "apporder",
        "theme": "",
        "profile.enabled": false,
        "enable_previews": false,
        "trashbin_retention_obligation": "30,30",
        "versions_retention_obligation": "12,12",
        "sharing.minSearchStringLength": 3
    }
}

Web server error log

No response

Log file

{"reqId":"4e09TevURbrwCZnVnGVc","level":3,"time":"2023-01-26T10:44:58+01:00","remoteAddr":"172.16.7.230","user":"XXXXX","app":"index","method":"GET","url":"/index.php/apps/dav/invitation/accept/xBDF8UryAnvkC0ibaNIS795RYEWH30YBQfkSuXyeOx000G1vTXwZeqR9ZpDP","message":"Deleted calendar object with uid already exists in this calendar collection.","userAgent":"Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:102.0) Gecko/20100101 Firefox/102.0","version":"24.0.9.2","exception":{"Exception":"Sabre\\DAV\\Exception\\BadRequest","Message":"Deleted calendar object with uid already exists in this calendar collection.","Code":0,"Trace":[{"file":"/nextcloud/3rdparty/sabre/dav/lib/CalDAV/Calendar.php","line":199,"function":"createCalendarObject","class":"OCA\\DAV\\CalDAV\\CalDavBackend","type":"->"},{"file":"/nextcloud/3rdparty/sabre/dav/lib/CalDAV/Schedule/Plugin.php","line":525,"function":"createFile","class":"Sabre\\CalDAV\\Calendar","type":"->"},{"file":"/nextcloud/apps/dav/lib/CalDAV/Schedule/Plugin.php","line":176,"function":"scheduleLocalDelivery","class":"Sabre\\CalDAV\\Schedule\\Plugin","type":"->"},{"file":"/nextcloud/3rdparty/sabre/event/lib/WildcardEmitterTrait.php","line":89,"function":"scheduleLocalDelivery","class":"OCA\\DAV\\CalDAV\\Schedule\\Plugin","type":"->"},{"file":"/nextcloud/3rdparty/sabre/dav/lib/CalDAV/Schedule/Plugin.php","line":350,"function":"emit","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/nextcloud/3rdparty/sabre/dav/lib/CalDAV/Schedule/Plugin.php","line":627,"function":"deliver","class":"Sabre\\CalDAV\\Schedule\\Plugin","type":"->"},{"file":"/nextcloud/3rdparty/sabre/dav/lib/CalDAV/Schedule/Plugin.php","line":535,"function":"processICalendarChange","class":"Sabre\\CalDAV\\Schedule\\Plugin","type":"->"},{"file":"/nextcloud/apps/dav/lib/CalDAV/Schedule/Plugin.php","line":176,"function":"scheduleLocalDelivery","class":"Sabre\\CalDAV\\Schedule\\Plugin","type":"->"},{"file":"/nextcloud/3rdparty/sabre/event/lib/WildcardEmitterTrait.php","line":89,"function":"scheduleLocalDelivery","class":"OCA\\DAV\\CalDAV\\Schedule\\Plugin","type":"->"},{"file":"/nextcloud/3rdparty/sabre/dav/lib/CalDAV/Schedule/Plugin.php","line":350,"function":"emit","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/nextcloud/3rdparty/sabre/dav/lib/CalDAV/Schedule/Plugin.php","line":627,"function":"deliver","class":"Sabre\\CalDAV\\Schedule\\Plugin","type":"->"},{"file":"/nextcloud/3rdparty/sabre/dav/lib/CalDAV/Schedule/Plugin.php","line":535,"function":"processICalendarChange","class":"Sabre\\CalDAV\\Schedule\\Plugin","type":"->"},{"file":"/nextcloud/apps/dav/lib/CalDAV/Schedule/Plugin.php","line":176,"function":"scheduleLocalDelivery","class":"Sabre\\CalDAV\\Schedule\\Plugin","type":"->"},{"file":"/nextcloud/apps/dav/lib/CalDAV/InvitationResponse/InvitationResponseServer.php","line":124,"function":"scheduleLocalDelivery","class":"OCA\\DAV\\CalDAV\\Schedule\\Plugin","type":"->"},{"file":"/nextcloud/apps/dav/lib/Controller/InvitationResponseController.php","line":85,"function":"handleITipMessage","class":"OCA\\DAV\\CalDAV\\InvitationResponse\\InvitationResponseServer","type":"->"},{"file":"/nextcloud/lib/private/AppFramework/Http/Dispatcher.php","line":225,"function":"accept","class":"OCA\\DAV\\Controller\\InvitationResponseController","type":"->"},{"file":"/nextcloud/lib/private/AppFramework/Http/Dispatcher.php","line":133,"function":"executeController","class":"OC\\AppFramework\\Http\\Dispatcher","type":"->"},{"file":"/nextcloud/lib/private/AppFramework/App.php","line":172,"function":"dispatch","class":"OC\\AppFramework\\Http\\Dispatcher","type":"->"},{"file":"/nextcloud/lib/private/Route/Router.php","line":298,"function":"main","class":"OC\\AppFramework\\App","type":"::"},{"file":"/nextcloud/lib/base.php","line":1030,"function":"match","class":"OC\\Route\\Router","type":"->"},{"file":"/nextcloud/index.php","line":36,"function":"handleRequest","class":"OC","type":"::"}],"File":"/nextcloud/apps/dav/lib/CalDAV/CalDavBackend.php","Line":1288,"CustomMessage":"--"}}

Browser log

No response

Additional info

No response

miaulalala commented 1 year ago

Possibly related to https://github.com/nextcloud/server/issues/30096