Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Places - "An error occurred" #1717

Closed
vanantwerp opened this issue Mar 29, 2023 · 4 comments
Closed

Places - "An error occurred" #1717

vanantwerp opened this issue Mar 29, 2023 · 4 comments
Labels
0. Needs triage Pending approval or rejection. This issue is pending approval. bug Something isn't working

Comments

@vanantwerp
Copy link

vanantwerp commented Mar 29, 2023

Describe the bug
When I click the "Places" menu item (left hand nav) the screen displays "An error occurred" with an exclamation mark symbol. Nothing else appears to happen in the UI. It throws an error in admin logs (below).

To Reproduce
Steps to reproduce the behavior:

  1. Go to Photos app
  2. Click on Places (left hand nav)
  3. Error appears

Expected behavior
Unsure what this feature is.

Screenshots
2023-03-28 22_44_59-Photos - Photos - Nextcloud — Mozilla Firefox

Client
Desktop (please complete the following information):

  • OS: Win 11
  • Browser: Firefox
  • Version: 111.0.1

Browser log

500 error for PROPFIND myserver.com/remote.php/dav/photos/user/places/

Server

  • Ubuntu / Docker
  • Nextcloud Hub 4 (26.0.0)
  • postgres
  • nginx
  • Photos 2.2.0

Admin log

[webdav] Error: OC\DB\Exceptions\DbalException: An exception occurred while executing a query: SQLSTATE[42883]: Undefined function: 7 ERROR:  could not identify an equality operator for type json
LINE 1: SELECT DISTINCT "meta"."metadata" FROM "oc_file_metadata" "m...
                        ^ at <<closure>>

 0. /var/www/html/lib/private/DB/QueryBuilder/QueryBuilder.php line 295
    OC\DB\Exceptions\DbalException::wrap(["Doctrine\\DBAL ... "])
 1. /var/www/html/apps/photos/lib/DB/Place/PlaceMapper.php line 62
    OC\DB\QueryBuilder\QueryBuilder->executeQuery()
 2. /var/www/html/apps/photos/lib/Sabre/Place/PlacesHome.php line 95
    OCA\Photos\DB\Place\PlaceMapper->findPlacesForUser("user")
 3. /var/www/html/3rdparty/sabre/dav/lib/DAV/Tree.php line 200
    OCA\Photos\Sabre\Place\PlacesHome->getChildren()
 4. /var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php line 900
    Sabre\DAV\Tree->getChildren("photos/user/places")
 5. /var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php line 982
    Sabre\DAV\Server->generatePathNodes(["Sabre\\DAV\\PropFind"], [["Sabre\\DAV\\P ... ]])
 6. /var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php line 1662
    Sabre\DAV\Server->getPropertiesIteratorForPath("photos/user/places", ["{http://nextcl ... "], 1)
 7. /var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php line 1647
    Sabre\DAV\Server->writeMultiStatus(["Sabre\\Xml\\Wr ... ]], ["Generator"], false)
 8. /var/www/html/3rdparty/sabre/dav/lib/DAV/CorePlugin.php line 346
    Sabre\DAV\Server->generateMultiStatus(["Generator"], false)
 9. /var/www/html/3rdparty/sabre/event/lib/WildcardEmitterTrait.php line 89
    Sabre\DAV\CorePlugin->httpPropFind(["Sabre\\HTTP\\Request"], ["Sabre\\HTTP\\Response"])
10. /var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php line 472
    Sabre\DAV\Server->emit("method:PROPFIND", [["Sabre\\HTTP\\ ... ]])
11. /var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php line 253
    Sabre\DAV\Server->invokeMethod(["Sabre\\HTTP\\Request"], ["Sabre\\HTTP\\Response"])
12. /var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php line 321
    Sabre\DAV\Server->start()
13. /var/www/html/apps/dav/lib/Server.php line 366
    Sabre\DAV\Server->exec()
14. /var/www/html/apps/dav/appinfo/v2/remote.php line 35
    OCA\DAV\Server->exec()
15. /var/www/html/remote.php line 171
    require_once("/var/www/html/a ... p")

Caused by:

Doctrine\DBAL\Exception\DriverException: An exception occurred while executing a query: SQLSTATE[42883]: Undefined function: 7 ERROR:  could not identify an equality operator for type json
LINE 1: SELECT DISTINCT "meta"."metadata" FROM "oc_file_metadata" "m...
                        ^ at <<closure>>

 0. /var/www/html/3rdparty/doctrine/dbal/src/Connection.php line 1814
    Doctrine\DBAL\Driver\API\PostgreSQL\ExceptionConverter->convert(["Doctrine\\DBAL ... "], ["Doctrine\\DBAL\\Query"])
 1. /var/www/html/3rdparty/doctrine/dbal/src/Connection.php line 1749
    Doctrine\DBAL\Connection->handleDriverException(["Doctrine\\DBAL ... "], ["Doctrine\\DBAL\\Query"])
 2. /var/www/html/3rdparty/doctrine/dbal/src/Connection.php line 1055
    Doctrine\DBAL\Connection->convertExceptionDuringQuery(["Doctrine\\DBAL ... "], "SELECT DISTINCT ... )", [3,6,"photos_place"], [1,1,2])
 3. /var/www/html/lib/private/DB/Connection.php line 264
    Doctrine\DBAL\Connection->executeQuery("SELECT DISTINCT ... )", [3,6,"photos_place"], [1,1,2], null)
 4. /var/www/html/3rdparty/doctrine/dbal/src/Query/QueryBuilder.php line 345
    OC\DB\Connection->executeQuery("SELECT DISTINCT ... )", [3,6,"photos_place"], [1,1,2])
 5. /var/www/html/lib/private/DB/QueryBuilder/QueryBuilder.php line 280
    Doctrine\DBAL\Query\QueryBuilder->execute()
 6. /var/www/html/lib/private/DB/QueryBuilder/QueryBuilder.php line 293
    OC\DB\QueryBuilder\QueryBuilder->execute()
 7. /var/www/html/apps/photos/lib/DB/Place/PlaceMapper.php line 62
    OC\DB\QueryBuilder\QueryBuilder->executeQuery()
 8. /var/www/html/apps/photos/lib/Sabre/Place/PlacesHome.php line 95
    OCA\Photos\DB\Place\PlaceMapper->findPlacesForUser("user")
 9. /var/www/html/3rdparty/sabre/dav/lib/DAV/Tree.php line 200
    OCA\Photos\Sabre\Place\PlacesHome->getChildren()
10. /var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php line 900
    Sabre\DAV\Tree->getChildren("photos/user/places")
11. /var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php line 982
    Sabre\DAV\Server->generatePathNodes(["Sabre\\DAV\\PropFind"], [["Sabre\\DAV\\P ... ]])
12. /var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php line 1662
    Sabre\DAV\Server->getPropertiesIteratorForPath("photos/user/places", ["{http://nextcl ... "], 1)
13. /var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php line 1647
    Sabre\DAV\Server->writeMultiStatus(["Sabre\\Xml\\Wr ... ]], ["Generator"], false)
14. /var/www/html/3rdparty/sabre/dav/lib/DAV/CorePlugin.php line 346
    Sabre\DAV\Server->generateMultiStatus(["Generator"], false)
15. /var/www/html/3rdparty/sabre/event/lib/WildcardEmitterTrait.php line 89
    Sabre\DAV\CorePlugin->httpPropFind(["Sabre\\HTTP\\Request"], ["Sabre\\HTTP\\Response"])
16. /var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php line 472
    Sabre\DAV\Server->emit("method:PROPFIND", [["Sabre\\HTTP\\ ... ]])
17. /var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php line 253
    Sabre\DAV\Server->invokeMethod(["Sabre\\HTTP\\Request"], ["Sabre\\HTTP\\Response"])
18. /var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php line 321
    Sabre\DAV\Server->start()
19. /var/www/html/apps/dav/lib/Server.php line 366
    Sabre\DAV\Server->exec()
20. /var/www/html/apps/dav/appinfo/v2/remote.php line 35
    OCA\DAV\Server->exec()
21. /var/www/html/remote.php line 171
    require_once("/var/www/html/a ... p")

Caused by:

Doctrine\DBAL\Driver\PDO\Exception: SQLSTATE[42883]: Undefined function: 7 ERROR:  could not identify an equality operator for type json
LINE 1: SELECT DISTINCT "meta"."metadata" FROM "oc_file_metadata" "m...
                        ^ at <<closure>>

 0. /var/www/html/3rdparty/doctrine/dbal/src/Driver/PDO/Statement.php line 103
    Doctrine\DBAL\Driver\PDO\Exception::new(["PDOException", ... ]])
 1. /var/www/html/3rdparty/doctrine/dbal/src/Connection.php line 1045
    Doctrine\DBAL\Driver\PDO\Statement->execute()
 2. /var/www/html/lib/private/DB/Connection.php line 264
    Doctrine\DBAL\Connection->executeQuery("SELECT DISTINCT ... )", [3,6,"photos_place"], [1,1,2], null)
 3. /var/www/html/3rdparty/doctrine/dbal/src/Query/QueryBuilder.php line 345
    OC\DB\Connection->executeQuery("SELECT DISTINCT ... )", [3,6,"photos_place"], [1,1,2])
 4. /var/www/html/lib/private/DB/QueryBuilder/QueryBuilder.php line 280
    Doctrine\DBAL\Query\QueryBuilder->execute()
 5. /var/www/html/lib/private/DB/QueryBuilder/QueryBuilder.php line 293
    OC\DB\QueryBuilder\QueryBuilder->execute()
 6. /var/www/html/apps/photos/lib/DB/Place/PlaceMapper.php line 62
    OC\DB\QueryBuilder\QueryBuilder->executeQuery()
 7. /var/www/html/apps/photos/lib/Sabre/Place/PlacesHome.php line 95
    OCA\Photos\DB\Place\PlaceMapper->findPlacesForUser("user")
 8. /var/www/html/3rdparty/sabre/dav/lib/DAV/Tree.php line 200
    OCA\Photos\Sabre\Place\PlacesHome->getChildren()
 9. /var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php line 900
    Sabre\DAV\Tree->getChildren("photos/user/places")
10. /var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php line 982
    Sabre\DAV\Server->generatePathNodes(["Sabre\\DAV\\PropFind"], [["Sabre\\DAV\\P ... ]])
11. /var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php line 1662
    Sabre\DAV\Server->getPropertiesIteratorForPath("photos/user/places", ["{http://nextcl ... "], 1)
12. /var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php line 1647
    Sabre\DAV\Server->writeMultiStatus(["Sabre\\Xml\\Wr ... ]], ["Generator"], false)
13. /var/www/html/3rdparty/sabre/dav/lib/DAV/CorePlugin.php line 346
    Sabre\DAV\Server->generateMultiStatus(["Generator"], false)
14. /var/www/html/3rdparty/sabre/event/lib/WildcardEmitterTrait.php line 89
    Sabre\DAV\CorePlugin->httpPropFind(["Sabre\\HTTP\\Request"], ["Sabre\\HTTP\\Response"])
15. /var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php line 472
    Sabre\DAV\Server->emit("method:PROPFIND", [["Sabre\\HTTP\\ ... ]])
16. /var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php line 253
    Sabre\DAV\Server->invokeMethod(["Sabre\\HTTP\\Request"], ["Sabre\\HTTP\\Response"])
17. /var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php line 321
    Sabre\DAV\Server->start()
18. /var/www/html/apps/dav/lib/Server.php line 366
    Sabre\DAV\Server->exec()
19. /var/www/html/apps/dav/appinfo/v2/remote.php line 35
    OCA\DAV\Server->exec()
20. /var/www/html/remote.php line 171
    require_once("/var/www/html/a ... p")

Caused by:

PDOException: SQLSTATE[42883]: Undefined function: 7 ERROR:  could not identify an equality operator for type json
LINE 1: SELECT DISTINCT "meta"."metadata" FROM "oc_file_metadata" "m...
                        ^ at <<closure>>

 0. /var/www/html/3rdparty/doctrine/dbal/src/Driver/PDO/Statement.php line 101
    PDOStatement->execute(null)
 1. /var/www/html/3rdparty/doctrine/dbal/src/Connection.php line 1045
    Doctrine\DBAL\Driver\PDO\Statement->execute()
 2. /var/www/html/lib/private/DB/Connection.php line 264
    Doctrine\DBAL\Connection->executeQuery("SELECT DISTINCT ... )", [3,6,"photos_place"], [1,1,2], null)
 3. /var/www/html/3rdparty/doctrine/dbal/src/Query/QueryBuilder.php line 345
    OC\DB\Connection->executeQuery("SELECT DISTINCT ... )", [3,6,"photos_place"], [1,1,2])
 4. /var/www/html/lib/private/DB/QueryBuilder/QueryBuilder.php line 280
    Doctrine\DBAL\Query\QueryBuilder->execute()
 5. /var/www/html/lib/private/DB/QueryBuilder/QueryBuilder.php line 293
    OC\DB\QueryBuilder\QueryBuilder->execute()
 6. /var/www/html/apps/photos/lib/DB/Place/PlaceMapper.php line 62
    OC\DB\QueryBuilder\QueryBuilder->executeQuery()
 7. /var/www/html/apps/photos/lib/Sabre/Place/PlacesHome.php line 95
    OCA\Photos\DB\Place\PlaceMapper->findPlacesForUser("user")
 8. /var/www/html/3rdparty/sabre/dav/lib/DAV/Tree.php line 200
    OCA\Photos\Sabre\Place\PlacesHome->getChildren()
 9. /var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php line 900
    Sabre\DAV\Tree->getChildren("photos/user/places")
10. /var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php line 982
    Sabre\DAV\Server->generatePathNodes(["Sabre\\DAV\\PropFind"], [["Sabre\\DAV\\P ... ]])
11. /var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php line 1662
    Sabre\DAV\Server->getPropertiesIteratorForPath("photos/user/places", ["{http://nextcl ... "], 1)
12. /var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php line 1647
    Sabre\DAV\Server->writeMultiStatus(["Sabre\\Xml\\Wr ... ]], ["Generator"], false)
13. /var/www/html/3rdparty/sabre/dav/lib/DAV/CorePlugin.php line 346
    Sabre\DAV\Server->generateMultiStatus(["Generator"], false)
14. /var/www/html/3rdparty/sabre/event/lib/WildcardEmitterTrait.php line 89
    Sabre\DAV\CorePlugin->httpPropFind(["Sabre\\HTTP\\Request"], ["Sabre\\HTTP\\Response"])
15. /var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php line 472
    Sabre\DAV\Server->emit("method:PROPFIND", [["Sabre\\HTTP\\ ... ]])
16. /var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php line 253
    Sabre\DAV\Server->invokeMethod(["Sabre\\HTTP\\Request"], ["Sabre\\HTTP\\Response"])
17. /var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php line 321
    Sabre\DAV\Server->start()
18. /var/www/html/apps/dav/lib/Server.php line 366
    Sabre\DAV\Server->exec()
19. /var/www/html/apps/dav/appinfo/v2/remote.php line 35
    OCA\DAV\Server->exec()
20. /var/www/html/remote.php line 171
    require_once("/var/www/html/a ... p")

PROPFIND /remote.php/dav/photos/user/places/ 
@vanantwerp vanantwerp added 0. Needs triage Pending approval or rejection. This issue is pending approval. bug Something isn't working labels Mar 29, 2023
@davidcroda
Copy link

I think this could be related to the fact that the photos app seems to write the place name as plaintext into a json type field. I had a problem when converting from a sqlite database to a postgres database where it was failing due to the string "Dresher" being present in the ocfile_metadata.metadata json field. Sqlite does not validate type data but postgres does.

I think in the setPlaceForFile function place should be set into a proper json object, ie. {"place": $place} when being inserted into the table. I just started digging into this so there are other queries I'm sure which would need to correctly query on the now valid json as well.

@kpaaro
Copy link

kpaaro commented Apr 20, 2023

I get this exception as but i am using postgres. The error reads as in the DB log

2023-04-20 17:34:13.589 EEST [10727] ERROR:  could not identify an equality operator for type json at character 17
2023-04-20 17:34:13.589 EEST [10727] STATEMENT:  SELECT DISTINCT "meta"."metadata" FROM "oc_file_metadata" "meta" INNER JOIN "oc_filecache" "file" ON "file"."fileid" = "meta"."id" WHERE ("file"."storage" = $1) AND ("file"."mimepart" = $2) AND ("meta"."group_name" = $3)

and in nextcloud log:

{
"app": "webdav",
"exception":
    {
    "Code": 7,
    "CustomMessage": "An exception occurred while executing a query: SQLSTATE[42883]: Undefined function: 7 ERROR:  could not identify an equality operator for type json\nLINE 1: SELECT DISTINCT \"meta\".\"metadata\" FROM \"oc_file_metadata\" \"m...\n                        ^",
    "Exception": "OC\\DB\\Exceptions\\DbalException",
    "exception":
        {
        },
    "File": "/config/www/nextcloud/lib/private/DB/Exceptions/DbalException.php",
    "Line": 70,
    "message": "An exception occurred while executing a query: SQLSTATE[42883]: Undefined function: 7 ERROR:  could not identify an equality operator for type json\nLINE 1: SELECT DISTINCT \"meta\".\"metadata\" FROM \"oc_file_metadata\" \"m...\n                        ^",
    "Message": "An exception occurred while executing a query: SQLSTATE[42883]: Undefined function: 7 ERROR:  could not identify an equality operator for type json\nLINE 1: SELECT DISTINCT \"meta\".\"metadata\" FROM \"oc_file_metadata\" \"m...\n                        ^",
    "Previous":
        {
        "Code": 7,
        "Exception": "Doctrine\\DBAL\\Exception\\DriverException",
        "File": "/config/www/nextcloud/3rdparty/doctrine/dbal/src/Driver/API/PostgreSQL/ExceptionConverter.php",
        "Line": 91,
        "Message": "An exception occurred while executing a query: SQLSTATE[42883]: Undefined function: 7 ERROR:  could not identify an equality operator for type json\nLINE 1: SELECT DISTINCT \"meta\".\"metadata\" FROM \"oc_file_metadata\" \"m...\n                        ^",
        "Previous":
            {
            "Code": 7,
            "Exception": "Doctrine\\DBAL\\Driver\\PDO\\Exception",
            "File": "/config/www/nextcloud/3rdparty/doctrine/dbal/src/Driver/PDO/Exception.php",
            "Line": 30,
            "Message": "SQLSTATE[42883]: Undefined function: 7 ERROR:  could not identify an equality operator for type json\nLINE 1: SELECT DISTINCT \"meta\".\"metadata\" FROM \"oc_file_metadata\" \"m...\n                        ^",
            "Previous":
                {
                "Code": "42883",
                "Exception": "PDOException",
                "File": "/config/www/nextcloud/3rdparty/doctrine/dbal/src/Driver/PDO/Statement.php",
                "Line": 101,
                "Message": "SQLSTATE[42883]: Undefined function: 7 ERROR:  could not identify an equality operator for type json\nLINE 1: SELECT DISTINCT \"meta\".\"metadata\" FROM \"oc_file_metadata\" \"m...\n                        ^",
                "Trace":
                    [
                        {
                        "class": "PDOStatement",
                        "file": "/config/www/nextcloud/3rdparty/doctrine/dbal/src/Driver/PDO/Statement.php",
                        "function": "execute",
                        "line": 101,
                        "type": "->"
                        },
                        {
                        "class": "Doctrine\\DBAL\\Driver\\PDO\\Statement",
                        "file": "/config/www/nextcloud/3rdparty/doctrine/dbal/src/Connection.php",
                        "function": "execute",
                        "line": 1045,
                        "type": "->"
                        },
                        {
                        "class": "Doctrine\\DBAL\\Connection",
                        "file": "/config/www/nextcloud/lib/private/DB/Connection.php",
                        "function": "executeQuery",
                        "line": 264,
                        "type": "->"
                        },
                        {
                        "class": "OC\\DB\\Connection",
                        "file": "/config/www/nextcloud/3rdparty/doctrine/dbal/src/Query/QueryBuilder.php",
                        "function": "executeQuery",
                        "line": 345,
                        "type": "->"
                        },
                        {
                        "class": "Doctrine\\DBAL\\Query\\QueryBuilder",
                        "file": "/config/www/nextcloud/lib/private/DB/QueryBuilder/QueryBuilder.php",
                        "function": "execute",
                        "line": 280,
                        "type": "->"
                        },
                        {
                        "class": "OC\\DB\\QueryBuilder\\QueryBuilder",
                        "file": "/config/www/nextcloud/lib/private/DB/QueryBuilder/QueryBuilder.php",
                        "function": "execute",
                        "line": 293,
                        "type": "->"
                        },
                        {
                        "class": "OC\\DB\\QueryBuilder\\QueryBuilder",
                        "file": "/config/www/nextcloud/apps/photos/lib/DB/Place/PlaceMapper.php",
                        "function": "executeQuery",
                        "line": 62,
                        "type": "->"
                        },
                        {
                        "class": "OCA\\Photos\\DB\\Place\\PlaceMapper",
                        "file": "/config/www/nextcloud/apps/photos/lib/Sabre/Place/PlacesHome.php",
                        "function": "findPlacesForUser",
                        "line": 95,
                        "type": "->"
                        },
                        {
                        "class": "OCA\\Photos\\Sabre\\Place\\PlacesHome",
                        "file": "/config/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Tree.php",
                        "function": "getChildren",
                        "line": 200,
                        "type": "->"
                        },
                        {
                        "class": "Sabre\\DAV\\Tree",
                        "file": "/config/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php",
                        "function": "getChildren",
                        "line": 900,
                        "type": "->"
                        },
                        {
                        "class": "Sabre\\DAV\\Server",
                        "file": "/config/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php",
                        "function": "generatePathNodes",
                        "line": 982,
                        "type": "->"
                        },
                        {
                        "class": "Sabre\\DAV\\Server",
                        "file": "/config/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php",
                        "function": "getPropertiesIteratorForPath",
                        "line": 1662,
                        "type": "->"
                        },
                        {
                        "class": "Sabre\\DAV\\Server",
                        "file": "/config/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php",
                        "function": "writeMultiStatus",
                        "line": 1647,
                        "type": "->"
                        },
                        {
                        "class": "Sabre\\DAV\\Server",
                        "file": "/config/www/nextcloud/3rdparty/sabre/dav/lib/DAV/CorePlugin.php",
                        "function": "generateMultiStatus",
                        "line": 346,
                        "type": "->"
                        },
                        {
                        "class": "Sabre\\DAV\\CorePlugin",
                        "file": "/config/www/nextcloud/3rdparty/sabre/event/lib/WildcardEmitterTrait.php",
                        "function": "httpPropFind",
                        "line": 89,
                        "type": "->"
                        },
                        {
                        "class": "Sabre\\DAV\\Server",
                        "file": "/config/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php",
                        "function": "emit",
                        "line": 472,
                        "type": "->"
                        },
                        {
                        "class": "Sabre\\DAV\\Server",
                        "file": "/config/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php",
                        "function": "invokeMethod",
                        "line": 253,
                        "type": "->"
                        },
                        {
                        "class": "Sabre\\DAV\\Server",
                        "file": "/config/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php",
                        "function": "start",
                        "line": 321,
                        "type": "->"
                        },
                        {
                        "class": "Sabre\\DAV\\Server",
                        "file": "/config/www/nextcloud/apps/dav/lib/Server.php",
                        "function": "exec",
                        "line": 366,
                        "type": "->"
                        },
                        {
                        "class": "OCA\\DAV\\Server",
                        "file": "/config/www/nextcloud/apps/dav/appinfo/v2/remote.php",
                        "function": "exec",
                        "line": 35,
                        "type": "->"
                        },
                        {
                        "args":
                            [
                            "/config/www/nextcloud/apps/dav/appinfo/v2/remote.php"
                            ],
                        "file": "/config/www/nextcloud/remote.php",
                        "function": "require_once",
                        "line": 171
                        }
                    ]
                },
            "Trace":
                [
                    {
                    "class": "Doctrine\\DBAL\\Driver\\PDO\\Exception",
                    "file": "/config/www/nextcloud/3rdparty/doctrine/dbal/src/Driver/PDO/Statement.php",
                    "function": "new",
                    "line": 103,
                    "type": "::"
                    },
                    {
                    "class": "Doctrine\\DBAL\\Driver\\PDO\\Statement",
                    "file": "/config/www/nextcloud/3rdparty/doctrine/dbal/src/Connection.php",
                    "function": "execute",
                    "line": 1045,
                    "type": "->"
                    },
                    {
                    "class": "Doctrine\\DBAL\\Connection",
                    "file": "/config/www/nextcloud/lib/private/DB/Connection.php",
                    "function": "executeQuery",
                    "line": 264,
                    "type": "->"
                    },
                    {
                    "class": "OC\\DB\\Connection",
                    "file": "/config/www/nextcloud/3rdparty/doctrine/dbal/src/Query/QueryBuilder.php",
                    "function": "executeQuery",
                    "line": 345,
                    "type": "->"
                    },
                    {
                    "class": "Doctrine\\DBAL\\Query\\QueryBuilder",
                    "file": "/config/www/nextcloud/lib/private/DB/QueryBuilder/QueryBuilder.php",
                    "function": "execute",
                    "line": 280,
                    "type": "->"
                    },
                    {
                    "class": "OC\\DB\\QueryBuilder\\QueryBuilder",
                    "file": "/config/www/nextcloud/lib/private/DB/QueryBuilder/QueryBuilder.php",
                    "function": "execute",
                    "line": 293,
                    "type": "->"
                    },
                    {
                    "class": "OC\\DB\\QueryBuilder\\QueryBuilder",
                    "file": "/config/www/nextcloud/apps/photos/lib/DB/Place/PlaceMapper.php",
                    "function": "executeQuery",
                    "line": 62,
                    "type": "->"
                    },
                    {
                    "class": "OCA\\Photos\\DB\\Place\\PlaceMapper",
                    "file": "/config/www/nextcloud/apps/photos/lib/Sabre/Place/PlacesHome.php",
                    "function": "findPlacesForUser",
                    "line": 95,
                    "type": "->"
                    },
                    {
                    "class": "OCA\\Photos\\Sabre\\Place\\PlacesHome",
                    "file": "/config/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Tree.php",
                    "function": "getChildren",
                    "line": 200,
                    "type": "->"
                    },
                    {
                    "class": "Sabre\\DAV\\Tree",
                    "file": "/config/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php",
                    "function": "getChildren",
                    "line": 900,
                    "type": "->"
                    },
                    {
                    "class": "Sabre\\DAV\\Server",
                    "file": "/config/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php",
                    "function": "generatePathNodes",
                    "line": 982,
                    "type": "->"
                    },
                    {
                    "class": "Sabre\\DAV\\Server",
                    "file": "/config/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php",
                    "function": "getPropertiesIteratorForPath",
                    "line": 1662,
                    "type": "->"
                    },
                    {
                    "class": "Sabre\\DAV\\Server",
                    "file": "/config/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php",
                    "function": "writeMultiStatus",
                    "line": 1647,
                    "type": "->"
                    },
                    {
                    "class": "Sabre\\DAV\\Server",
                    "file": "/config/www/nextcloud/3rdparty/sabre/dav/lib/DAV/CorePlugin.php",
                    "function": "generateMultiStatus",
                    "line": 346,
                    "type": "->"
                    },
                    {
                    "class": "Sabre\\DAV\\CorePlugin",
                    "file": "/config/www/nextcloud/3rdparty/sabre/event/lib/WildcardEmitterTrait.php",
                    "function": "httpPropFind",
                    "line": 89,
                    "type": "->"
                    },
                    {
                    "class": "Sabre\\DAV\\Server",
                    "file": "/config/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php",
                    "function": "emit",
                    "line": 472,
                    "type": "->"
                    },
                    {
                    "class": "Sabre\\DAV\\Server",
                    "file": "/config/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php",
                    "function": "invokeMethod",
                    "line": 253,
                    "type": "->"
                    },
                    {
                    "class": "Sabre\\DAV\\Server",
                    "file": "/config/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php",
                    "function": "start",
                    "line": 321,
                    "type": "->"
                    },
                    {
                    "class": "Sabre\\DAV\\Server",
                    "file": "/config/www/nextcloud/apps/dav/lib/Server.php",
                    "function": "exec",
                    "line": 366,
                    "type": "->"
                    },
                    {
                    "class": "OCA\\DAV\\Server",
                    "file": "/config/www/nextcloud/apps/dav/appinfo/v2/remote.php",
                    "function": "exec",
                    "line": 35,
                    "type": "->"
                    },
                    {
                    "args":
                        [
                        "/config/www/nextcloud/apps/dav/appinfo/v2/remote.php"
                        ],
                    "file": "/config/www/nextcloud/remote.php",
                    "function": "require_once",
                    "line": 171
                    }
                ]
            },
        "Trace":
            [
                {
                "class": "Doctrine\\DBAL\\Driver\\API\\PostgreSQL\\ExceptionConverter",
                "file": "/config/www/nextcloud/3rdparty/doctrine/dbal/src/Connection.php",
                "function": "convert",
                "line": 1814,
                "type": "->"
                },
                {
                "class": "Doctrine\\DBAL\\Connection",
                "file": "/config/www/nextcloud/3rdparty/doctrine/dbal/src/Connection.php",
                "function": "handleDriverException",
                "line": 1749,
                "type": "->"
                },
                {
                "class": "Doctrine\\DBAL\\Connection",
                "file": "/config/www/nextcloud/3rdparty/doctrine/dbal/src/Connection.php",
                "function": "convertExceptionDuringQuery",
                "line": 1055,
                "type": "->"
                },
                {
                "class": "Doctrine\\DBAL\\Connection",
                "file": "/config/www/nextcloud/lib/private/DB/Connection.php",
                "function": "executeQuery",
                "line": 264,
                "type": "->"
                },
                {
                "class": "OC\\DB\\Connection",
                "file": "/config/www/nextcloud/3rdparty/doctrine/dbal/src/Query/QueryBuilder.php",
                "function": "executeQuery",
                "line": 345,
                "type": "->"
                },
                {
                "class": "Doctrine\\DBAL\\Query\\QueryBuilder",
                "file": "/config/www/nextcloud/lib/private/DB/QueryBuilder/QueryBuilder.php",
                "function": "execute",
                "line": 280,
                "type": "->"
                },
                {
                "class": "OC\\DB\\QueryBuilder\\QueryBuilder",
                "file": "/config/www/nextcloud/lib/private/DB/QueryBuilder/QueryBuilder.php",
                "function": "execute",
                "line": 293,
                "type": "->"
                },
                {
                "class": "OC\\DB\\QueryBuilder\\QueryBuilder",
                "file": "/config/www/nextcloud/apps/photos/lib/DB/Place/PlaceMapper.php",
                "function": "executeQuery",
                "line": 62,
                "type": "->"
                },
                {
                "class": "OCA\\Photos\\DB\\Place\\PlaceMapper",
                "file": "/config/www/nextcloud/apps/photos/lib/Sabre/Place/PlacesHome.php",
                "function": "findPlacesForUser",
                "line": 95,
                "type": "->"
                },
                {
                "class": "OCA\\Photos\\Sabre\\Place\\PlacesHome",
                "file": "/config/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Tree.php",
                "function": "getChildren",
                "line": 200,
                "type": "->"
                },
                {
                "class": "Sabre\\DAV\\Tree",
                "file": "/config/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php",
                "function": "getChildren",
                "line": 900,
                "type": "->"
                },
                {
                "class": "Sabre\\DAV\\Server",
                "file": "/config/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php",
                "function": "generatePathNodes",
                "line": 982,
                "type": "->"
                },
                {
                "class": "Sabre\\DAV\\Server",
                "file": "/config/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php",
                "function": "getPropertiesIteratorForPath",
                "line": 1662,
                "type": "->"
                },
                {
                "class": "Sabre\\DAV\\Server",
                "file": "/config/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php",
                "function": "writeMultiStatus",
                "line": 1647,
                "type": "->"
                },
                {
                "class": "Sabre\\DAV\\Server",
                "file": "/config/www/nextcloud/3rdparty/sabre/dav/lib/DAV/CorePlugin.php",
                "function": "generateMultiStatus",
                "line": 346,
                "type": "->"
                },
                {
                "class": "Sabre\\DAV\\CorePlugin",
                "file": "/config/www/nextcloud/3rdparty/sabre/event/lib/WildcardEmitterTrait.php",
                "function": "httpPropFind",
                "line": 89,
                "type": "->"
                },
                {
                "class": "Sabre\\DAV\\Server",
                "file": "/config/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php",
                "function": "emit",
                "line": 472,
                "type": "->"
                },
                {
                "class": "Sabre\\DAV\\Server",
                "file": "/config/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php",
                "function": "invokeMethod",
                "line": 253,
                "type": "->"
                },
                {
                "class": "Sabre\\DAV\\Server",
                "file": "/config/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php",
                "function": "start",
                "line": 321,
                "type": "->"
                },
                {
                "class": "Sabre\\DAV\\Server",
                "file": "/config/www/nextcloud/apps/dav/lib/Server.php",
                "function": "exec",
                "line": 366,
                "type": "->"
                },
                {
                "class": "OCA\\DAV\\Server",
                "file": "/config/www/nextcloud/apps/dav/appinfo/v2/remote.php",
                "function": "exec",
                "line": 35,
                "type": "->"
                },
                {
                "args":
                    [
                    "/config/www/nextcloud/apps/dav/appinfo/v2/remote.php"
                    ],
                "file": "/config/www/nextcloud/remote.php",
                "function": "require_once",
                "line": 171
                }
            ]
        },
    "Trace":
        [
            {
            "class": "OC\\DB\\Exceptions\\DbalException",
            "file": "/config/www/nextcloud/lib/private/DB/QueryBuilder/QueryBuilder.php",
            "function": "wrap",
            "line": 295,
            "type": "::"
            },
            {
            "class": "OC\\DB\\QueryBuilder\\QueryBuilder",
            "file": "/config/www/nextcloud/apps/photos/lib/DB/Place/PlaceMapper.php",
            "function": "executeQuery",
            "line": 62,
            "type": "->"
            },
            {
            "class": "OCA\\Photos\\DB\\Place\\PlaceMapper",
            "file": "/config/www/nextcloud/apps/photos/lib/Sabre/Place/PlacesHome.php",
            "function": "findPlacesForUser",
            "line": 95,
            "type": "->"
            },
            {
            "class": "OCA\\Photos\\Sabre\\Place\\PlacesHome",
            "file": "/config/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Tree.php",
            "function": "getChildren",
            "line": 200,
            "type": "->"
            },
            {
            "class": "Sabre\\DAV\\Tree",
            "file": "/config/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php",
            "function": "getChildren",
            "line": 900,
            "type": "->"
            },
            {
            "class": "Sabre\\DAV\\Server",
            "file": "/config/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php",
            "function": "generatePathNodes",
            "line": 982,
            "type": "->"
            },
            {
            "class": "Sabre\\DAV\\Server",
            "file": "/config/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php",
            "function": "getPropertiesIteratorForPath",
            "line": 1662,
            "type": "->"
            },
            {
            "class": "Sabre\\DAV\\Server",
            "file": "/config/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php",
            "function": "writeMultiStatus",
            "line": 1647,
            "type": "->"
            },
            {
            "class": "Sabre\\DAV\\Server",
            "file": "/config/www/nextcloud/3rdparty/sabre/dav/lib/DAV/CorePlugin.php",
            "function": "generateMultiStatus",
            "line": 346,
            "type": "->"
            },
            {
            "class": "Sabre\\DAV\\CorePlugin",
            "file": "/config/www/nextcloud/3rdparty/sabre/event/lib/WildcardEmitterTrait.php",
            "function": "httpPropFind",
            "line": 89,
            "type": "->"
            },
            {
            "class": "Sabre\\DAV\\Server",
            "file": "/config/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php",
            "function": "emit",
            "line": 472,
            "type": "->"
            },
            {
            "class": "Sabre\\DAV\\Server",
            "file": "/config/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php",
            "function": "invokeMethod",
            "line": 253,
            "type": "->"
            },
            {
            "class": "Sabre\\DAV\\Server",
            "file": "/config/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php",
            "function": "start",
            "line": 321,
            "type": "->"
            },
            {
            "class": "Sabre\\DAV\\Server",
            "file": "/config/www/nextcloud/apps/dav/lib/Server.php",
            "function": "exec",
            "line": 366,
            "type": "->"
            },
            {
            "class": "OCA\\DAV\\Server",
            "file": "/config/www/nextcloud/apps/dav/appinfo/v2/remote.php",
            "function": "exec",
            "line": 35,
            "type": "->"
            },
            {
            "args":
                [
                "/config/www/nextcloud/apps/dav/appinfo/v2/remote.php"
                ],
            "file": "/config/www/nextcloud/remote.php",
            "function": "require_once",
            "line": 171
            }
        ]
    },
"level": 3,
"message": "An exception occurred while executing a query: SQLSTATE[42883]: Undefined function: 7 ERROR:  could not identify an equality operator for type json\nLINE 1: SELECT DISTINCT \"meta\".\"metadata\" FROM \"oc_file_metadata\" \"m...\n                        ^",
"method": "PROPFIND",
"remoteAddr": "192.168.69.219",
"reqId": "5UDsonLd4gaihkEm2x8i",
"time": "2023-04-20T14:02:30+00:00",
"url": "/remote.php/dav/photos/kaur/places/",
"user": "kaur",
"userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.0.0 Safari/537.36 OPR/97.0.0.0",
"version": "26.0.0.11"
}

@joshtrichards
Copy link
Member

Fixed in nextcloud/server#37146 and #1692. Released in NC27 and backported to v26.0.1.

@vanantwerp - Please confirm you can no longer reproduce this behavior and close this Issue out. Thanks!

@vanantwerp
Copy link
Author

@joshtrichards apologies but I've since switched to the AIO and am unable to go back to the environment I originally noticed the issue in. Thank you for your work on the fix!

@artonge artonge closed this as completed Feb 14, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
0. Needs triage Pending approval or rejection. This issue is pending approval. bug Something isn't working
Projects
None yet
Development

No branches or pull requests

5 participants