Circles app crashes webdav

Hello everyone,
I am hosting a Nextcloud instance of over 1000 users and I have an issue when activating the Circles app. I’ve been having this problem for a long time and I disabled the app hoping a fix in future updates. I just upgraded to Nextcloud 28 and the issue is still present.
When activating the Circles app the whole webdav system crashes and the clients are unable to sync the files, calendar or contacts. It affects all users at once. The issue seems to be related to a database Exception.
I tried deleting the Circles configuration using occ but it didn’t solve anything. Also, the rest of the Nextcloud instance runs ok with no other errors.
I need some advice on how I could solve this issue.
The error is the following:

{“reqId”:“mkBPsrni88U4Ee6NO6VV”,“level”:3,“time”:“2024-04-05T06:54:15+00:00”,“remoteAddr”:“172.16.16.9”,“user”:“6CDB60D1-00C8-400A-A075-1150D77A50B0”,“app”:“webdav”,“method”:“PROPFIND”,“url”:“/remote.php/dav/files/6CDB60D1-00C8-400A-A075-1150D77A50B0/”,“message”:“SELECT cs.unique_id, cs.name, cs.display_name, cs.sanitized_name, cs.source, cs.description, cs.settings, cs.config, cs.contact_addressbook, cs.contact_groupname, cs.creation FROM *PREFIX*circles_circle cs INNER JOIN *PREFIX*circles_member cs_mm ON cs_mm.circle_id = cs.unique_id WHERE (cs.instance = ‘’) AND ((cs_mm.user_id = :dcValue1) AND (cs_mm.user_type = :dcValue2) AND (cs_mm.level >= :dcValue3)) AND ((cs.config & 1) > :dcValue4)”,“userAgent”:“Mozilla/5.0 (Windows) mirall/3.12.3stable-Win64 (build 20240328) (Nextcloud, windows-10.0.22631 ClientArchitecture: x86_64 OsArchitecture: x86_64)”,“version”:“28.0.4.1”,“exception”:{“Exception”:“Exception”,“Message”:“SELECT cs.unique_id, cs.name, cs.display_name, cs.sanitized_name, cs.source, cs.description, cs.settings, cs.config, cs.contact_addressbook, cs.contact_groupname, cs.creation FROM *PREFIX*circles_circle cs INNER JOIN *PREFIX*circles_member cs_mm ON cs_mm.circle_id = cs.unique_id WHERE (cs.instance = ‘’) AND ((cs_mm.user_id = :dcValue1) AND (cs_mm.user_type = :dcValue2) AND (cs_mm.level >= :dcValue3)) AND ((cs.config & 1) > :dcValue4)”,“Code”:0,“Trace”:[{“file”:“/var/www/nextcloud/apps/circles/lib/Db/CircleRequest.php”,“line”:432,“function”:“getItemFromRequest”,“class”:“OCA\Circles\Db\CircleRequestBuilder”,“type”:“->”},{“file”:“/var/www/nextcloud/apps/circles/lib/Service/FederatedUserService.php”,“line”:1028,“function”:“getSingleCircle”,“class”:“OCA\Circles\Db\CircleRequest”,“type”:“->”},{“file”:“/var/www/nextcloud/apps/circles/lib/Service/FederatedUserService.php”,“line”:995,“function”:“getSingleCircle”,“class”:“OCA\Circles\Service\FederatedUserService”,“type”:“->”},{“file”:“/var/www/nextcloud/apps/circles/lib/Service/FederatedUserService.php”,“line”:543,“function”:“fillSingleCircleId”,“class”:“OCA\Circles\Service\FederatedUserService”,“type”:“->”},{“file”:“/var/www/nextcloud/apps/circles/lib/ShareByCircleProvider.php”,“line”:550,“function”:“getLocalFederatedUser”,“class”:“OCA\Circles\Service\FederatedUserService”,“type”:“->”},{“file”:“/var/www/nextcloud/lib/private/Share20/Manager.php”,“line”:1411,“function”:“getSharedWith”,“class”:“OCA\Circles\ShareByCircleProvider”,“type”:“->”},{“file”:“/var/www/nextcloud/apps/files_sharing/lib/MountProvider.php”,“line”:69,“function”:“getSharedWith”,“class”:“OC\Share20\Manager”,“type”:“->”},{“file”:“/var/www/nextcloud/lib/private/Files/Config/MountProviderCollection.php”,“line”:89,“function”:“getMountsForUser”,“class”:“OCA\Files_Sharing\MountProvider”,“type”:“->”},{“file”:“/var/www/nextcloud/lib/private/Files/Config/MountProviderCollection.php”,“line”:146,“function”:“getMountsFromProvider”,“class”:“OC\Files\Config\MountProviderCollection”,“type”:“->”},{“file”:“/var/www/nextcloud/lib/private/Files/SetupManager.php”,“line”:215,“function”:“addMountForUser”,“class”:“OC\Files\Config\MountProviderCollection”,“type”:“->”},{“file”:“/var/www/nextcloud/lib/private/Files/SetupManager.php”,“line”:318,“function”:“OC\Files\{closure}”,“class”:“OC\Files\SetupManager”,“type”:“->”,“args”:[“*** sensitive parameters replaced “]},{“file”:”/var/www/nextcloud/lib/private/Files/SetupManager.php",“line”:214,“function”:“setupForUserWith”,“class”:“OC\Files\SetupManager”,“type”:“->”},{“file”:“/var/www/nextcloud/lib/private/Files/SetupManager.php”,“line”:398,“function”:“setupForUser”,“class”:“OC\Files\SetupManager”,“type”:“->”},{“file”:“/var/www/nextcloud/lib/private/Files/Mount/Manager.php”,“line”:139,“function”:“setupForPath”,“class”:“OC\Files\SetupManager”,“type”:“->”},{“file”:“/var/www/nextcloud/lib/private/Files/View.php”,“line”:1411,“function”:“findIn”,“class”:“OC\Files\Mount\Manager”,“type”:“->”},{“file”:“/var/www/nextcloud/lib/private/Files/Node/Node.php”,“line”:117,“function”:“addSubMounts”,“class”:“OC\Files\View”,“type”:“->”},{“file”:“/var/www/nextcloud/lib/private/Files/Node/Node.php”,“line”:235,“function”:“getFileInfo”,“class”:“OC\Files\Node\Node”,“type”:“->”},{“function”:“getSize”,“class”:“OC\Files\Node\Node”,“type”:“->”},{“file”:“/var/www/nextcloud/lib/private/Files/Node/LazyFolder.php”,“line”:84,“function”:“call_user_func_array”},{“file”:“/var/www/nextcloud/lib/private/Files/Node/LazyFolder.php”,“line”:250,“function”:“__call”,“class”:“OC\Files\Node\LazyFolder”,“type”:“->”},{“file”:“/var/www/nextcloud/apps/dav/lib/Connector/Sabre/Node.php”,“line”:237,“function”:“getSize”,“class”:“OC\Files\Node\LazyFolder”,“type”:“->”},{“file”:“/var/www/nextcloud/apps/dav/lib/Connector/Sabre/FilesPlugin.php”,“line”:359,“function”:“getSize”,“class”:“OCA\DAV\Connector\Sabre\Node”,“type”:“->”},{“file”:“/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/PropFind.php”,“line”:95,“function”:“OCA\DAV\Connector\Sabre\{closure}”,“class”:“OCA\DAV\Connector\Sabre\FilesPlugin”,“type”:“->”,“args”:[" sensitive parameters replaced ***”]},{“file”:“/var/www/nextcloud/apps/dav/lib/Connector/Sabre/FilesPlugin.php”,“line”:358,“function”:“handle”,“class”:“Sabre\DAV\PropFind”,“type”:“->”},{“file”:“/var/www/nextcloud/3rdparty/sabre/event/lib/WildcardEmitterTrait.php”,“line”:89,“function”:“handleGetProperties”,“class”:“OCA\DAV\Connector\Sabre\FilesPlugin”,“type”:“->”},{“file”:“/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php”,“line”:1052,“function”:“emit”,“class”:“Sabre\DAV\Server”,“type”:“->”},{“file”:“/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php”,“line”:984,“function”:“getPropertiesByNode”,“class”:“Sabre\DAV\Server”,“type”:“->”},{“file”:“/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php”,“line”:1662,“function”:“getPropertiesIteratorForPath”,“class”:“Sabre\DAV\Server”,“type”:“->”},{“file”:“/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php”,“line”:1647,“function”:“writeMultiStatus”,“class”:“Sabre\DAV\Server”,“type”:“->”},{“file”:“/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/CorePlugin.php”,“line”:346,“function”:“generateMultiStatus”,“class”:“Sabre\DAV\Server”,“type”:“->”},{“file”:“/var/www/nextcloud/3rdparty/sabre/event/lib/WildcardEmitterTrait.php”,“line”:89,“function”:“httpPropFind”,“class”:“Sabre\DAV\CorePlugin”,“type”:“->”},{“file”:“/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php”,“line”:472,“function”:“emit”,“class”:“Sabre\DAV\Server”,“type”:“->”},{“file”:“/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php”,“line”:253,“function”:“invokeMethod”,“class”:“Sabre\DAV\Server”,“type”:“->”},{“file”:“/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php”,“line”:321,“function”:“start”,“class”:“Sabre\DAV\Server”,“type”:“->”},{“file”:“/var/www/nextcloud/apps/dav/lib/Server.php”,“line”:373,“function”:“exec”,“class”:“Sabre\DAV\Server”,“type”:“->”},{“file”:“/var/www/nextcloud/apps/dav/appinfo/v2/remote.php”,“line”:35,“function”:“exec”,“class”:“OCA\DAV\Server”,“type”:“->”},{“file”:“/var/www/nextcloud/remote.php”,“line”:172,“args”:[“/var/www/nextcloud/apps/dav/appinfo/v2/remote.php”],“function”:“require_once”}],“File”:“/var/www/nextcloud/apps/circles/lib/Db/CircleRequestBuilder.php”,“Line”:114,“message”:“SELECT cs.unique_id, cs.name, cs.display_name, cs.sanitized_name, cs.source, cs.description, cs.settings, cs.config, cs.contact_addressbook, cs.contact_groupname, cs.creation FROM *PREFIX*circles_circle cs INNER JOIN *PREFIX*circles_member cs_mm ON cs_mm.circle_id = cs.unique_id WHERE (cs.instance = ‘’) AND ((cs_mm.user_id = :dcValue1) AND (cs_mm.user_type = :dcValue2) AND (cs_mm.level >= :dcValue3)) AND ((cs.config & 1) > :dcValue4)”,“exception”:,“CustomMessage”:“SELECT cs.unique_id, cs.name, cs.display_name, cs.sanitized_name, cs.source, cs.description, cs.settings, cs.config, cs.contact_addressbook, cs.contact_groupname, cs.creation FROM *PREFIX*circles_circle cs INNER JOIN *PREFIX*circles_member cs_mm ON cs_mm.circle_id = cs.unique_id WHERE (cs.instance = ‘’) AND ((cs_mm.user_id = :dcValue1) AND (cs_mm.user_type = :dcValue2) AND (cs_mm.level >= :dcValue3)) AND ((cs.config & 1) > :dcValue4)”},“id”:“660fa0186c206”}

@valentin.stangaciu welcome to the wonderful world of Nextcould. You are now a happy member of the nextcloud-community-forum.

This amount of users means you have left, by definition, the status of a homeuser and qualify as a professional user now.

I personally doubt that you will find a whole lot of members here with that amount of nc-users. So it could get hard to find a solution for you.

Anyways, having said that, it dawns on me that you are missing every other and additional informations about your installation. I’m afraid that makes it even harder to try and find a solution for you…

Hello @JimmyKater,

I am new to this forum. What other information might be useful to tackle this issue ?
Also, I don’t think the user count is relevant here ( I could have omitted it) because the average usage is quite low and only 10% of the users are active on a daily basis. The only reason I specified this number is because I need a solution that does not require a database purge. A purge off the data in the database regarding the Circles app may be solution but I don’t know how to do address this.

well you said you suspect some database-hazzle. Do we know which database you run?
And how it’s installed?
TBH it’s a strange behaviour of your instance to deny any request after activating circles-app.
It could be everything. From lack of RAM, via lack of storage, via timeouts and and and.
So I don’t really know which exact information you need to give out to make it easier for ppl here to help you (though there’s no guarantee). I would give out as much as possible.

Well… I think it could be one of the reasons for your problems since I know many (smaller) instances running circles without any problem. So this is one of the few and worthy informations that you gave out about your instance.
And sure you don’t need to switch to professionel support now you can still try your luck here. I only tried to tell you that IF the amount of users would be a reason for your problems it’ll be hard to find more users with the same problem.
Anyways: have you tried Issues · nextcloud/circles · GitHub already? Maybe there’s a similar problem hidden.

My Nextloud setup:

  • 1VM for the webserver - 32 GB RAM 32 CPU
  • Network storage 10 Gbps
  • 1VM for Mysql Database- 128 GB RA 64 CPU
  • 1VM for Redis

The issue is absolutely not related to lack of resources and hardware problems. The whole infrastructure is actively monitored.

Here is the configuration file I use (with the sensitive information hidden):

<?php
$CONFIG = array (
  'instanceid' => '*****',
  'passwordsalt' => '*****',
  'secret' => '*****',
  'trusted_domains' =>
  array (
    0 => '*****',
    1 => '*****',
    2 => '*****',
  ),
  'datadirectory' => '*****',
  'dbtype' => 'mysql',
  'version' => '28.0.4.1',
  'overwrite.cli.url' => 'https://*****',
  'dbname' => 'nextclouddb',
  'htaccess.RewriteBase' => '/',
  'dbhost' => '*****',
  'dbport' => '',
  'dbtableprefix' => 'oc_',
  'mysql.utf8mb4' => true,
  'dbuser' => '*****',
  'dbpassword' => '*****',
  'installed' => true,
  'memcache.distributed' => '\\OC\\Memcache\\Redis',
  'memcache.locking' => '\\OC\\Memcache\\Redis',
  'memcache.local' => '\\OC\\Memcache\\Redis',
  'filelocking.enabled' => true,
  'filelocking.ttl' => 3600,
  'redis' =>
  array (
    'host' => '*****',
    'port' => 6379,
    'timeout' => 0,
    'user' => 'nextcloud',
    'password' => '*****',
  ),
  'ldapIgnoreNamingRules' => false,
  'ldapProviderFactory' => 'OCA\\User_LDAP\\LDAPProviderFactory',
  'mail_smtpmode' => 'smtp',
  'mail_smtpsecure' => 'ssl',
  'mail_smtpauth' => 1,
  'mail_sendmailmode' => 'smtp',
  'mail_from_address' => '*****',
  'mail_domain' => '*****',
  'mail_smtpauthtype' => 'PLAIN',
  'mail_smtphost' => '*****',
  'mail_smtpport' => '465',
  'mail_smtpname' => '*****',
  'mail_smtppassword' => '*****',
  'default_locale' => 'ro_utf8',
  'maintenance' => false,
  'loglevel' => 1,
  'maintenance_window_start' => 1,
  'log_type' => 'file',
  'updater.release.channel' => 'stable',
  'default_phone_region' => 'RO',
  'auth.bruteforce.protection.enabled' => false,
  'debug' => false,
  'bulkupload.enabled' => false,
  'session_lifetime' => 604800,
  'remember_login_cookie_lifetime' => 1296000,
  'theme' => '',
  'log_type_audit' => 'syslog',
  'syslog_tag_audit' => 'nextcloud',
  'logfile_audit' => '',
  'app_install_overwrite' =>
  array (
    0 => 'files_external_onedrive',
    1 => 'extract',
    2 => 'metadata',
  ),
  'default_timezone' => 'Europe/Bucharest',
);

One idea that I wanted to try is to delete all the information regarding the circles app from the database but I’m not sure how to do this. I deleted the obvious tables related to the circles app but I’m not sure that’s all of it.

I am having this issue before the Circles app was integrated into the main core of Nextcloud and I hoped that the problem would be fixed by future updates.

I took your suggestion in checking circles issue list but so far nothing seems to match. I will have a much closer look I case I missed something

I would greatly appreciate some suggestions in how to solve this issue.