nextcloud / nextcloud/files_fulltextsearch
Indexing fails in shared/group folders if uploader is not the owner
Nobody has claimed this yet.
- Dominant language
- PHP
- Stars
- 72
- Forks
- 41
- Avg merge
- 1d 3h
- Merged PRs (30d)
- 9
Description
How to use GitHub
- Please use the π reaction to show that you are affected by the same issue.
- Please don't comment if you have no relevant information to add. It's just extra noise for everyone subscribed to this issue.
- Subscribe to receive notifications on status change and new comments.
Steps to reproduce
- Install Nextcloud with fulltextsearch, fulltextsearch_elasticsearch, files_fulltextsearch
- Have a running live index
- Have the user
Aliceshare a folderfoowith the userBob(Note:Aliceis the "owner" of the folder) - Have the user
Aliceupload a PDF with ocr content to the folderfoo--> Live index detects the file and search works for both users
Memory: 62 MB
ββ Indexing ββββ
β Action: waiting
β Provider: Files Account: Alice
β Document: 1234
β Info: application/pdf
β Title: foo/example_with_ocr.pdf
β Content size: 340716
βββ
ββ Results ββββ
β Result: 1234/1234
β Index: files:1234
β Status: ok
β Message: {"_index":"nextcloud","_type":"_doc","_id":"files:1234","_version
β ":1,"result":"created","_shards":{"total":1,"successful":1,"failed":0},"_seq_
β no":1234,"_primary_term":9}
βββ
- Delete the file from the shared folder
- Have the user
Bobupload the same file to the folderfoo--> Live index is not successful and neither user can search for the content
ββ Indexing ββββ
β Action: waiting
β Provider: Files Account: Bob
β Document: 1234
β Info:
β Title:
β Content size: 0
βββ
ββ Results ββββ
β Result: 1234/1234
β Index: files:1234
β Status: ok
β Message: []
β
β
βββ
Notes:
- If
Bobuploads the same file to a location in his personal files (not a folder shared by someone else) the indexing works as well. --> There is no problem with the indexing for the accountBobitself here. - If
Bobmoves the correctly indexed file uploaded byAlicefrom the shared folder to a personal folder the indexing is deleted and the file is not re-indexed (log output looks identical to the error case above). - If either
BoborAliceupload the file to agroup Folder(withIndex the content of group folders. [x]) the same index-error is produced regardless of who uploads the file.
Expected behaviour
If Bob uploads the file to the folder owned by Alice the live index should behave the same way as it does when Alice uploads the file and both users should be able to search the content using fulltextsearch. This behavior is expected for shared folders as well as for group folders.
Actual behaviour
Live index fails - see live index output in steps to reproduce
Server configuration
Web server: Nginx
Database: PostgreSQL
PHP version: 8.3.26
Nextcloud version: 31.0.9
List of activated apps
Enabled:
- activity: 4.0.0
- app_api: 5.0.2
- bruteforcesettings: 4.0.0
- calendar: 5.5.9
- circles: 31.0.0
- cloud_federation_api: 1.14.0
- comments: 1.21.0
- contacts: 7.3.7
- contactsinteraction: 1.12.0
- cospend: 3.1.6
- dashboard: 7.11.0
- dav: 1.33.0
- deck: 1.15.5
- federatedfilesharing: 1.21.0
- federation: 1.21.0
- files: 2.3.1
- files_automatedtagging: 2.0.1
- files_autorename: 2.2.3
- files_downloadlimit: 4.0.0
- files_fulltextsearch: 31.0.0
- files_linkeditor: 1.1.23
- files_pdfviewer: 4.0.0
- files_reminders: 1.4.0
- files_sharing: 1.23.1
- files_trashbin: 1.21.0
- files_versions: 1.24.0
- firstrunwizard: 4.0.0
- forms: 5.2.3
- fulltextsearch: 31.0.1
- fulltextsearch_elasticsearch: 31.0.0
- logreader: 4.0.0
- lookup_server_connector: 1.19.0
- money: 0.31.0
- nextcloud_announcements: 3.0.0
- notifications: 4.0.0
- notify_push: 1.2.1
- oauth2: 1.19.1
- password_policy: 3.0.0
- passwords: 2025.11.10
- photos: 4.0.0
- privacy: 3.0.0
- profile: 1.0.0
- provisioning_api: 1.21.0
- recommendations: 4.0.0
- related_resources: 2.0.0
- richdocuments: 8.7.6
- serverinfo: 3.0.0
- settings: 1.14.0
- sharebymail: 1.21.0
- support: 3.0.0
- survey_client: 3.0.0
- systemtags: 1.21.1
- text: 5.0.0
- theming: 2.6.1
- twofactor_backupcodes: 1.20.0
- twofactor_totp: 13.0.0-dev.0
- twofactor_webauthn: 2.4.1
- updatenotification: 1.21.0
- user_status: 1.11.0
- viewer: 4.0.0
- weather_status: 1.11.0
- webhook_listeners: 1.2.0
- workflow_ocr: 1.31.3
- workflow_pdf_converter: 2.0.0
- workflow_script: 2.0.0
- workflowengine: 2.13.0
Disabled:
- admin_audit: 1.21.0
- drawio: 3.1.2 (installed 3.1.2)
- encryption: 2.19.0
- files_external: 1.23.0 (installed 1.23.0)
- suspicious_login: 9.0.1
- twofactor_nextcloud_notification: 5.0.0
- user_ldap: 1.22.0
Nextcloud configuration
{
"system": {
"memcache.local": "\\OC\\Memcache\\APCu",
"apps_paths": [
{
"path": "\/var\/www\/html\/apps",
"url": "\/apps",
"writable": false
},
{
"path": "\/var\/www\/html\/custom_apps",
"url": "\/custom_apps",
"writable": true
}
],
"trusted_proxies": "***REMOVED SENSITIVE VALUE***",
"upgrade.disable-web": true,
"passwordsalt": "***REMOVED SENSITIVE VALUE***",
"secret": "***REMOVED SENSITIVE VALUE***",
"trusted_domains": [
"localhost",
"1.2.3.4",
"127.0.0.1",
"::1",
"domain.tld",
"nextcloud.domain.tld"
],
"datadirectory": "***REMOVED SENSITIVE VALUE***",
"dbtype": "pgsql",
"version": "31.0.9.1",
"dbname": "***REMOVED SENSITIVE VALUE***",
"dbhost": "***REMOVED SENSITIVE VALUE***",
"dbport": "",
"dbtableprefix": "oc_",
"dbuser": "***REMOVED SENSITIVE VALUE***",
"dbpassword": "***REMOVED SENSITIVE VALUE***",
"installed": true,
"instanceid": "***REMOVED SENSITIVE VALUE***",
"overwritehost": "nextcloud.domain.tld",
"overwriteprotocol": "https",
"overwrite.cli.url": "https:\/\/nextcloud.domain.tld",
"simpleSignUpLink.shown": false,
"enabledPreviewProviders": [
"OC\\Preview\\MP3",
"OC\\Preview\\TXT",
"OC\\Preview\\MarkDown",
"OC\\Preview\\OpenDocument",
"OC\\Preview\\Krita",
"OC\\Preview\\Imaginary"
],
"preview_imaginary_url": "***REMOVED SENSITIVE VALUE***",
"preview_concurrency_all": "6",
"preview_concurrency_new": "4",
"loglevel": 2,
"maintenance": false,
"memories.db.triggers.fcu": true,
"memories.exiftool": "\/var\/www\/html\/custom_apps\/memories\/bin-ext\/exiftool-aarch64-glibc",
"memories.vod.path": "\/var\/www\/html\/custom_apps\/memories\/bin-ext\/go-vod-aarch64",
"memcache.distributed": "\\OC\\Memcache\\Redis",
"memcache.locking": "\\OC\\Memcache\\Redis",
"redis": {
"host": "***REMOVED SENSITIVE VALUE***",
"password": "***REMOVED SENSITIVE VALUE***",
"port": 6379
},
"app_install_overwrite": [],
"maintenance_window_start": 3,
"default_phone_region": "DE",
"office_wopi_allowlist": "<long-list-for-nextcloud-office>",
"trashbin_retention_obligation": "auto, 30",
"versions_retention_obligation": "auto, 180",
"remember_login_cookie_lifetime": 86400,
"session_lifetime": 28800,
"session_keepalive": false,
"auto_logout": false,
"twofactor_enforced": "true",
"twofactor_enforced_groups": [],
"twofactor_enforced_excluded_groups": [],
"DATA_DIR": "\/var\/www\/html\/data"
},
"apps": {
"activity": {
"types": "filesystem",
"enabled": "yes",
"installed_version": "4.0.0"
},
"app_api": {
"types": "",
"enabled": "yes",
"installed_version": "5.0.2"
},
"backgroundjob": {
"lastjob": "172"
},
"bruteForce": {
"whitelist_1": "172.16.0.2\/24"
},
"bruteforcesettings": {
"types": "",
"enabled": "yes",
"installed_version": "4.0.0",
"apply_allowlist_to_ratelimit": "1"
},
"calendar": {
"installed_version": "5.5.9",
"types": "",
"enabled": "yes"
},
"circles": {
"types": "filesystem,dav",
"enabled": "yes",
"installed_version": "31.0.0",
"migration_run": "0",
"migration_22": "1",
"loopback_tmp_scheme": "https",
"maintenance_run": "0",
"maintenance_update": "{\"3\":1764017221,\"2\":1764019201,\"1\":1764019141}"
},
"cloud_federation_api": {
"types": "filesystem",
"enabled": "yes",
"installed_version": "1.14.0"
},
"comments": {
"types": "logging",
"enabled": "yes",
"installed_version": "1.21.0"
},
"contacts": {
"installed_version": "7.3.7",
"types": "dav",
"enabled": "yes"
},
"contactsinteraction": {
"types": "dav",
"enabled": "yes",
"installed_version": "1.12.0"
},
"core": {
"installedat": "1747675644.5674",
"vendor": "nextcloud",
"public_files": "files_sharing\/public.php",
"shareapi_default_remote_expire_date": "yes",
"backgroundjobs_mode": "cron",
"moveavatarsdone": "yes",
"previewsCleanedUp": "1",
"metadataGenerationDone": true,
"lastupdateResult": "{\"version\":\"31.0.11.2\",\"versionstring\":\"Nextcloud 31.0.11\",\"url\":\"https:\\\/\\\/download.nextcloud.com\\\/server\\\/releases\\\/nextcloud-31.0.11.zip\",\"web\":\"https:\\\/\\\/docs.nextcloud.com\\\/server\\\/31\\\/admin_manual\\\/maintenance\\\/upgrade.html\",\"changes\":\"https:\\\/\\\/updates.nextcloud.com\\\/changelog_server\\\/?version=31.0.11\",\"autoupdater\":\"1\",\"eol\":\"0\"}",
"lastcron": 1764019201,
"shareapi_remote_expire_after_n_days": "180",
"shareapi_default_expire_date": "yes",
"shareapi_default_internal_expire_date": "no",
"lastupdatedat": 1764017811,
"shareapi_expire_after_n_days": "180",
"oc.integritycheck.checker": [],
"files_metadata": {
"photos-original_date_time": {
"value": null,
"type": "int",
"etag": "",
"indexed": true,
"editPermission": 0
},
"photos-exif": {
"value": null,
"type": "array",
"etag": "",
"indexed": false,
"editPermission": 0
},
"photos-ifd0": {
"value": null,
"type": "array",
"etag": "",
"indexed": false,
"editPermission": 0
},
"photos-size": {
"value": null,
"type": "array",
"etag": "",
"indexed": false,
"editPermission": 0
},
"blurhash": {
"value": null,
"type": "string",
"etag": "93604e3b7510fcea5974b79d6e28d868",
"indexed": false,
"editPermission": 0
},
"photos-gps": {
"value": null,
"type": "array",
"etag": "",
"indexed": false,
"editPermission": 0
},
"photos-place": {
"value": null,
"type": "string",
"etag": "",
"indexed": true,
"editPermission": 0
},
"files-live-photo": {
"value": null,
"type": "string",
"etag": "",
"indexed": false,
"editPermission": 1
}
}
},
"cospend": {
"types": "",
"enabled": "yes",
"installed_version": "3.1.6"
},
"dashboard": {
"types": "",
"enabled": "yes",
"installed_version": "7.11.0"
},
"dav": {
"types": "filesystem",
"enabled": "yes",
"regeneratedBirthdayCalendarsForYearFix": "yes",
"buildCalendarSearchIndex": "yes",
"buildCalendarReminderIndex": "yes",
"installed_version": "1.33.0",
"chunks_migrated": "1",
"builtSocialSearchIndex": "yes"
},
"deck": {
"installed_version": "1.15.5",
"types": "dav",
"enabled": "yes"
},
"drawio": {
"installed_version": "3.1.2",
"enabled": "no",
"types": "filesystem"
},
"federatedfilesharing": {
"types": "",
"enabled": "yes",
"installed_version": "1.21.0"
},
"federation": {
"types": "authentication",
"enabled": "yes",
"installed_version": "1.21.0"
},
"files": {
"types": "filesystem",
"enabled": "yes",
"installed_version": "2.3.1",
"mimetype_version": "31.0.9.1"
},
"files_automatedtagging": {
"types": "filesystem",
"installed_version": "2.0.1",
"enabled": "yes"
},
"files_autorename": {
"installed_version": "2.2.3",
"types": "",
"enabled": "yes"
},
"files_downloadlimit": {
"types": "",
"enabled": "yes",
"installed_version": "4.0.0"
},
"files_external": {
"enabled": "no",
"installed_version": "1.23.0",
"types": "filesystem"
},
"files_fulltextsearch": {
"installed_version": "31.0.0",
"types": "filesystem",
"enabled": "yes",
"files_local": "1",
"files_group_folders": "1",
"files_open_result_directly": "1",
"files_encrypted": "0",
"files_federated": "0",
"files_size": "150",
"files_pdf": "1",
"files_office": "1",
"files_image": "0",
"files_audio": "0",
"files_external": "2"
},
"files_fulltextsearch_tesseract": {
"tesseract_enabled": "1",
"tesseract_psm": "4",
"tesseract_pdf_limit": "0",
"tesseract_pdf": "1",
"tesseract_lang": "eng,deu,tur",
"installed_version": "27.0.1",
"types": "",
"enabled": "no"
},
"files_linkeditor": {
"installed_version": "1.1.23",
"types": "",
"enabled": "yes"
},
"files_pdfviewer": {
"types": "",
"enabled": "yes",
"installed_version": "4.0.0"
},
"files_reminders": {
"types": "",
"enabled": "yes",
"installed_version": "1.4.0"
},
"files_sharing": {
"types": "filesystem",
"installed_version": "1.23.1",
"enabled": "yes"
},
"files_trashbin": {
"types": "filesystem,dav",
"enabled": "yes",
"installed_version": "1.21.0",
"background_job_expire_trash_offset": 0
},
"files_versions": {
"types": "filesystem,dav",
"enabled": "yes",
"installed_version": "1.24.0"
},
"firstrunwizard": {
"enabled": "yes",
"types": "",
"installed_version": "4.0.0"
},
"forms": {
"installed_version": "5.2.3",
"enabled": "yes",
"types": "prevent_group_restriction"
},
"fulltextsearch": {
"types": "",
"installed_version": "31.0.1",
"enabled": "yes",
"cron_err_reset": "1762614302",
"search_platform": "OCA\\FullTextSearch_Elasticsearch\\Platform\\ElasticSearchPlatform",
"app_navigation": "0"
},
"fulltextsearch_elasticsearch": {
"installed_version": "31.0.0",
"types": "",
"enabled": "yes",
"elastic_host": "http:\/\/elastic:SkYqm3VzfC6Fnt2uhtSe@elasticsearch:9200\/",
"analyzer_tokenizer": "standard",
"elastic_index": "nextcloud"
},
"gpxpod": {
"installed_version": "7.0.4",
"types": "",
"enabled": "no"
},
"logreader": {
"types": "logging",
"enabled": "yes",
"installed_version": "4.0.0",
"shownLevels": "[2,3,4]"
},
"lookup_server_connector": {
"types": "authentication",
"enabled": "yes",
"installed_version": "1.19.0"
},
"memories": {
"installed_version": "7.5.2",
"types": "",
"last_index_job_duration": "0.78",
"last_index_job_start": "1747686902",
"enabled": "no",
"last_index_job_status": "Indexing completed successfully",
"last_index_job_status_type": "success"
},
"money": {
"types": "",
"enabled": "yes",
"installed_version": "0.31.0"
},
"nextcloud_announcements": {
"types": "logging",
"enabled": "yes",
"installed_version": "3.0.0",
"pub_date": "Thu, 24 Oct 2019 00:00:00 +0200"
},
"notifications": {
"types": "logging",
"enabled": "yes",
"installed_version": "4.0.0"
},
"notify_push": {
"enabled": "yes",
"installed_version": "1.2.1",
"types": "filesystem",
"cookie": "***REMOVED SENSITIVE VALUE***",
"base_endpoint": "https:\/\/nextcloud.domain.tld\/push"
},
"oauth2": {
"types": "authentication",
"enabled": "yes",
"installed_version": "1.19.1"
},
"password_policy": {
"types": "authentication",
"enabled": "yes",
"installed_version": "3.0.0",
"maximumLoginAttempts": "10"
},
"passwords": {
"survey\/server\/week": "48",
"migration\/customFields": "2020.12.2",
"auto-backup\/status": "0",
"cron\/php\/version\/id": "80326",
"survey\/server\/mode": "2",
"entity\/purge\/timeout": "31536000",
"cron\/php\/version\/string": "8.3.26",
"web\/php\/version\/id": "80326",
"installed_version": "2025.11.10",
"web\/php\/version\/string": "8.3.26",
"passwords\/localdb\/type": "hibp",
"survey\/server\/notification": "1757793315",
"types": "",
"enabled": "yes",
"service\/favicon\/bi\/counter": "47:8:0",
"service\/favicon": "bi",
"settings\/password\/security\/hash": "30"
},
"photos": {
"types": "dav,authentication",
"enabled": "yes",
"installed_version": "4.0.0",
"lastPlaceMappedUser": "admin",
"lastPlaceMappingDone": "true"
},
"polls": {
"installed_version": "8.5.0",
"enabled": "no",
"types": ""
},
"privacy": {
"types": "",
"enabled": "yes",
"installed_version": "3.0.0",
"readableLocation": "de"
},
"profile": {
"installed_version": "1.0.0",
"types": "",
"enabled": "yes"
},
"provisioning_api": {
"types": "prevent_group_restriction",
"enabled": "yes",
"installed_version": "1.21.0"
},
"recommendations": {
"types": "",
"enabled": "yes",
"installed_version": "4.0.0"
},
"related_resources": {
"types": "",
"enabled": "yes",
"installed_version": "2.0.0"
},
"richdocuments": {
"installed_version": "8.7.6",
"wopi_url": "https:\/\/office.domain.tld",
"wopi_callback_url": "",
"public_wopi_url": "https:\/\/office.domain.tld",
"disable_certificate_verification": "",
"types": "filesystem,prevent_group_restriction",
"wopi_allowlist": "<long-list>",
"enabled": "yes"
},
"richdocumentscode_arm64": {
"types": "",
"enabled": "no",
"installed_version": "25.4.202"
},
"serverinfo": {
"types": "",
"enabled": "yes",
"size_appdata_storage": -1,
"installed_version": "3.0.0",
"cached_count_storages": 16,
"cached_count_appdata_files": 293299,
"cached_count_filecache": 363731
},
"settings": {
"types": "",
"enabled": "yes",
"installed_version": "1.14.0"
},
"sharebymail": {
"types": "filesystem",
"enabled": "yes",
"installed_version": "1.21.0"
},
"support": {
"types": "session",
"enabled": "yes",
"installed_version": "3.0.0",
"SwitchUpdaterServerHasRun": "yes"
},
"survey_client": {
"types": "",
"enabled": "yes",
"installed_version": "3.0.0",
"server": "yes",
"stats": "yes",
"files_sharing": "yes",
"encryption": "yes"
},
"systemtags": {
"types": "logging",
"enabled": "yes",
"installed_version": "1.21.1"
},
"tasks": {
"installed_version": "0.16.1",
"types": "",
"enabled": "no"
},
"text": {
"types": "dav",
"enabled": "yes",
"installed_version": "5.0.0"
},
"theming": {
"types": "logging",
"enabled": "yes",
"installed_version": "2.6.1",
"backgroundMime": "image\/svg+xml",
"primary_color": "#656565",
"background_color": "#313131",
"name": "Nextcloud",
"url": "***REMOVED SENSITIVE VALUE***",
"slogan": "***REMOVED SENSITIVE VALUE***",
"logoMime": "image\/svg+xml",
"faviconMime": "image\/vnd.microsoft.icon",
"logoheaderMime": "image\/svg+xml",
"logoDimensions": "286x286",
"cachebuster": "26"
},
"thesearchpage": {
"installed_version": "1.2.14",
"types": "",
"enabled": "no"
},
"twofactor_backupcodes": {
"types": "",
"enabled": "yes",
"installed_version": "1.20.0"
},
"twofactor_totp": {
"installed_version": "13.0.0-dev.0",
"types": "",
"enabled": "yes"
},
"twofactor_webauthn": {
"types": "",
"enabled": "yes",
"installed_version": "2.4.1"
},
"updatenotification": {
"types": "",
"enabled": "yes",
"installed_version": "1.21.0",
"update_check_errors": 0,
"files_linkeditor": "1.1.23",
"contacts": "7.3.7",
"forms": "5.2.3",
"files_automatedtagging": "2.0.1",
"richdocumentscode_arm64": "25.4.202",
"cospend": "3.1.6",
"deck": "1.15.5",
"calendar": "5.5.9",
"notify_push": "1.2.1",
"money": "0.31.0",
"polls": "8.4.6",
"twofactor_webauthn": "2.4.1",
"richdocuments": "8.7.6",
"core": "31.0.11.2",
"passwords": "2025.11.10",
"fulltextsearch": "31.0.1"
},
"user_oidc": {
"installed_version": "7.2.0",
"types": "authentication",
"enabled": "no"
},
"user_status": {
"types": "",
"enabled": "yes",
"installed_version": "1.11.0"
},
"viewer": {
"types": "",
"enabled": "yes",
"installed_version": "4.0.0"
},
"weather_status": {
"types": "",
"enabled": "yes",
"installed_version": "1.11.0"
},
"webhook_listeners": {
"types": "filesystem",
"enabled": "yes",
"installed_version": "1.2.0"
},
"workflow_ocr": {
"installed_version": "1.31.3",
"types": "filesystem",
"enabled": "yes"
},
"workflow_pdf_converter": {
"installed_version": "2.0.0",
"types": "filesystem",
"enabled": "yes"
},
"workflow_script": {
"installed_version": "2.0.0",
"types": "filesystem",
"enabled": "yes"
},
"workflowengine": {
"types": "filesystem",
"enabled": "yes",
"installed_version": "2.13.0"
}
}
}
Browser
Browser name: Firefox, Chrome
Browser version: 144.0.2 (Firefox), 142.0.7444.176 (Chrome)
Operating system: Windows (Browser based test), Raspberry Pie with Debian Bookworm (Nextcloud client based test):
$ nextcloudcmd --version
Nextcloud version 3.10.1
Git revision 8da13eb02269b08cd0e73ad7d3880d62f41b8acb
Using Qt 5.15.10, built against Qt 5.15.10
Using 'OpenSSL 3.1.8 11 Feb 2025'
Running on Alpine Linux v3.19, arm64
Note: The test on Linux was done using the container dontobi/nextcloud-client.rpi:latest
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up β it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the shared-folder and group-folder cases described for fulltextsearch, fulltextsearch_elasticsearch, and files_fulltextsearch, using the live index output as the entry point. Compare uploads by the folder owner and another user, including the move-to-personal-folder case. Done means both users can search the uploaded PDF content in shared and group folders.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- elasticsearch, php
- Domain
- search
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100