nextcloud / nextcloud/fulltextsearch

fulltextsearch test failing on nextcloud 15

Open
#477 14 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
PHP
Stars
234
Forks
64
Avg merge
6h 18m
Merged PRs (30d)
10

Description

Hello please help me i can't find any solution! Thanks

Here is my env:
NextCloud 15.0.5
Full text search 1.2.5
Full text search - Elasticsearch Platform 1.2.4
Full text search - Files 1.2.6
Full text search - Files - Tesseract OCR 1.2.0
PHP 7.2.10
mysql Ver 15.1 Distrib 5.5.60-MariaDB

/var/www/html/nextcloud# sudo -u apache php occ fulltextsearch:test

.Testing your current setup:
Creating mocked content provider. ok
Testing mocked provider: get indexable documents. (2 items) ok
Loading search platform. (Elasticsearch) ok
Testing search platform. ok
Locking process ok
Removing test. ok
Pausing 3 seconds 1 2 3 ok
Initializing index mapping. ok
Indexing generated documents. ok
Pausing 3 seconds 1 2 3 ok
Retreiving content from a big index (license). (size: 32386) ok
Comparing document with source. ok
Searching basic keywords:

  • 'test' An unhandled exception has been thrown:
    TypeError: Return value of OCA\FullTextSearch\Model\SearchRequest::getProviders() must be of the type array, null returned in /var/www/html/nextcloud/apps/fulltextsearch/lib/Model/SearchRequest.php:110
    Stack trace:
    #0 /var/www/html/nextcloud/apps/fulltextsearch/lib/Model/SearchRequest.php(665): OCA\FullTextSearch\Model\SearchRequest->getProviders()
    #1 [internal function]: OCA\FullTextSearch\Model\SearchRequest->jsonSerialize()
    #2 /var/www/html/nextcloud/apps/fulltextsearch_elasticsearch/lib/Service/SearchService.php(98): json_encode(Object(OCA\FullTextSearch\Model\SearchRequest))
    #3 /var/www/html/nextcloud/apps/fulltextsearch_elasticsearch/lib/Platform/ElasticSearchPlatform.php(340): OCA\FullTextSearch_ElasticSearch\Service\SearchService->searchRequest(Object(Elasticsearch\Client), Object(OCA\FullTextSearch\Model\SearchResult), Object(OCP\FullTextSearch\Model\DocumentAccess))
    #4 /var/www/html/nextcloud/apps/fulltextsearch/lib/Command/Test.php(582): OCA\FullTextSearch_ElasticSearch\Platform\ElasticSearchPlatform->searchRequest(Object(OCA\FullTextSearch\Model\SearchResult), Object(OCP\FullTextSearch\Model\DocumentAccess))
    #5 /var/www/html/nextcloud/apps/fulltextsearch/lib/Command/Test.php(434): OCA\FullTextSearch\Command\Test->search(Object(Symfony\Component\Console\Output\ConsoleOutput), Object(OCA\FullTextSearch_ElasticSearch\Platform\ElasticSearchPlatform), Object(OCA\FullTextSearch\Provider\TestProvider), Object(OCP\FullTextSearch\Model\DocumentAccess), 'test', Array)
    #6 /var/www/html/nextcloud/apps/fulltextsearch/lib/Command/Test.php(170): OCA\FullTextSearch\Command\Test->testSearchSimple(Object(Symfony\Component\Console\Output\ConsoleOutput), Object(OCA\FullTextSearch_ElasticSearch\Platform\ElasticSearchPlatform), Object(OCA\FullTextSearch\Provider\TestProvider))
    #7 /var/www/html/nextcloud/3rdparty/symfony/console/Command/Command.php(255): OCA\FullTextSearch\Command\Test->execute(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
    #8 /var/www/html/nextcloud/core/Command/Base.php(166): Symfony\Component\Console\Command\Command->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
    #9 /var/www/html/nextcloud/3rdparty/symfony/console/Application.php(946): OC\Core\Command\Base->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
    #10 /var/www/html/nextcloud/3rdparty/symfony/console/Application.php(248): Symfony\Component\Console\Application->doRunCommand(Object(OCA\FullTextSearch\Command\Test), Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
    #11 /var/www/html/nextcloud/3rdparty/symfony/console/Application.php(148): Symfony\Component\Console\Application->doRun(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
    #12 /var/www/html/nextcloud/lib/private/Console/Application.php(213): Symfony\Component\Console\Application->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
    #13 /var/www/html/nextcloud/console.php(96): OC\Console\Application->run()
    #14 /var/www/html/nextcloud/occ(11): require_once('/var/www/html/n...')

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by running sudo -u apache php occ fulltextsearch:test and inspect apps/fulltextsearch/lib/Model/SearchRequest.php at the reported getProviders() locations. Trace the request through apps/fulltextsearch_elasticsearch/lib/Service/SearchService.php and apps/fulltextsearch/lib/Command/Test.php; done means the basic keyword search completes without the reported TypeError.

Written by the indexing model from the issue text.

Assessment

Tech stack
mysql, php
Domain
backend, cli, search
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.