Contacts not shown in web frontend

Steps to reproduce

  1. open contacts in web frontend
    2.
    3.

Expected behaviour

all contacts should get listet

Actual behaviour

none are listed in the web-app.
But they are in the database. And they are in the Webdav-Export and they are visible in other frontends using Webdav.

Server configuration

Operating system:
Debian 9

Web server:
Apache 2.4

Database:
10.1.26-MariaDB-0+deb9u1

PHP version:
5.6.30-0+deb8u1

ownCloud version: (see ownCloud admin page)
9.0.10 (production)

Updated from an older ownCloud or fresh install:
Updated

Where did you install ownCloud from:
owncloud.org

Signing status (ownCloud 9.0 and above):

Login as admin user into your ownCloud and access 
http://example.com/index.php/settings/integrity/failed 
paste the results into https://gist.github.com/ and puth the link here.

Integrity checker has been disabled. Integrity cannot be verified.

The content of config/config.php:

Log in to the web-UI with an administrator account and click on
'admin' -> 'Generate Config Report' -> 'Download ownCloud config report'
This report includes the config.php settings, the list of activated apps
and other details in a well sanitized form.

or 

If you have access to your command line run e.g.:
sudo -u www-data php occ config:list system
from within your ownCloud installation folder

*ATTENTION:* Do not post your config.php file in public as is. Please use one of the above
methods whenever possible. Both, the generated reports from the web-ui and from occ config:list
consistently remove sensitive data. You still may want to review the report before sending.
If done manually then it is critical for your own privacy to dilligently
remove *all* host names, passwords, usernames, salts and other credentials before posting.
You should assume that attackers find such information and will use them against your systems.

{
"system": {
"instanceid": "51121a6156e42",
"passwordsalt": "REMOVED SENSITIVE VALUE",
"datadirectory": "\/var\/www\/diewolke\/data",
"dbtype": "mysql",
"version": "9.0.10.2",
"dbname": "diewolke",
"overwritewebroot": "\/diewolke",
"dbhost": "localhost",
"dbtableprefix": "oc_",
"dbuser": "REMOVED SENSITIVE VALUE",
"dbpassword": "REMOVED SENSITIVE VALUE",
"installed": true,
"ldapIgnoreNamingRules": false,
"theme": "",
"maintenance": false,
"trusted_domains": [
"**INTERNAL***"
],
"forcessl": true,
"secret": "REMOVED SENSITIVE VALUE",
"overwrite.cli.url": "\/diewolke",
"loglevel": 0
}
}

List of activated apps:

If you have access to your command line run e.g.:
sudo -u www-data php occ app:list
from within your ownCloud installation folder.

Enabled:
- activity: 2.2.1
- calendar: 1.4.1
- comments: 0.2
- configreport: 0.1.1
- contacts: 1.5.1
- dav: 0.1.6
- federatedfilesharing: 0.1.0
- federation: 0.0.4
- files: 1.4.4
- files_locking: true
- files_pdfviewer: 0.8.1
- files_sharing: 0.9.1
- files_texteditor: 2.1
- files_trashbin: 0.8.0
- files_versions: 1.2.0
- files_videoplayer: 0.9.8
- files_videoviewer: 0.1.3
- firstrunwizard: 1.1
- gallery: 14.5.0
- notifications: 0.2.3
- provisioning_api: 0.4.1
- search_lucene: 0.6.0
- systemtags: 0.2
- templateeditor: 0.1
- updatenotification: 0.1.0
Disabled:
- admin_dependencies_chk
- admin_migrate
- bookmarks
- encryption
- external
- files_antivirus
- files_archive
- files_encryption
- files_external
- files_imageviewer
- files_odfviewer
- impress
- media
- tasks
- updater
- user_external
- user_ldap
- user_migrate
- user_openid
- user_webdavauth
- user_webfinger

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

Are you using encryption: yes/no
no

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

LDAP configuration (delete this part if not used)

With access to your command line run e.g.:
sudo -u www-data php occ ldap:show-config
from within your ownCloud installation folder

Without access to your command line download the data/owncloud.db to your local
computer or access your SQL server remotely and run the select query:
SELECT * FROM `oc_appconfig` WHERE `appid` = 'user_ldap';


Eventually replace sensitive data as the name/IP-address of your LDAP server or groups.

Client configuration

Browser:
Firefox / Chrome
Operating system:
Debian

Logs

Web server error log

Insert your webserver log here

repeatetly:
[Sun Oct 29 09:58:50.522208 2017] [authz_core:error] [pid 17930] [client 10.1.1.25:47370] AH01630: client denied by server configuration: /var/www/diewolke/data/htaccesstest.txt

ownCloud log (data/owncloud.log)

Insert your ownCloud log here

currently none

Browser log

Insert your browser log here, this could for example include:

a) The javascript console log
Using //@ to indicate sourceMappingURL pragmas is deprecated. Use //# instead[Learn More]  jquery.min.js:1
Use of getPreventDefault() is deprecated.  Use defaultPrevented instead.  jquery-1.10.2.js:5375:28
Use of getAttributeNode() is deprecated. Use getAttribute() instead.  jquery-migrate.min.js:2:1616
Use of attributes’ nodeValue attribute is deprecated. Use value instead.  jquery-migrate.min.js:2:1616

        
b) The network log 
all  status 200
c) ...

Did you make an update recently?
If yes - frow which version?

Updater Backup says, the version before was 8.2.11.

Unfortunately I can not tell for sure when the problem started. I use the web frontend very rarely. My typical client is the Contacts on my Android Smartphone and in Thunderbird. And they both work nicely.

So contacts on the phone and Thunderbird work but not on the web UI?

I just tested it with the other clients. Forget them. They are working on cached data.

So the interesting part is only the link...

...remote.php/dav/addressbooks/users/nobs/contacts/?export

... which shows hundreds of entries of user nobs, whereas the GUI only shows a part. As it seems it is those entries which are in a group.

I recreated the contacts from scratch from a data dump. I guess the problem was a corruption od data on DB level.