nextcloud / server

☁️ Nextcloud server, a safe home for all your data
https://nextcloud.com
GNU Affero General Public License v3.0
26.77k stars 4k forks source link

[Bug]: Can't create tag with some Thai characters from Files and Recognize #41178

Open bugsyb opened 10 months ago

bugsyb commented 10 months ago

⚠️ This issue respects the following points: ⚠️

Bug description

Because problem persists across two (or more apps) and same entry can be created directly using psql, belief is it is at Server/core level. Problem is of nature that can't create tag with some Thai characters from Files and Recognize .

"Classifier process output: [\n  {\n    className: '\u0e1e\u0e23\u0e30\u0e17\u0e35\u0e48\u0e19\u0e31\u0e48\u0e07\u0e2d\u0e32\u0e20\u0e23\u0e13\u0e4c\u0e20\u0e34\u0e42\u0e21\u0e01\u0e02\u0e4c\u0e1b\u0e23\u0e32\u0e2a\u0e32\u0e17',\n    probability: 0.9035003781318665\n  }\n]\n","userAgent":"--","version":"27.1.2.1","data":{"app":"recognize"}}

Worth mentioning that other tag with Thai letters could be created from Files: อินพุต-NC-level-tagged

version: 27.1.2.1

Steps to reproduce

  1. Create file or folder.
  2. Try to create tag from Files: พระที่นั่งอาภรณ์ภิโมกข์ปราสาท

Expected behavior

Create tag without an error.

Installation method

Docker (Debian)

Nextcloud Server version

27

Operating system

None

PHP engine version

8.2

Web server

Nginx

Database engine version

Postgres

Is this bug present after an update or on a fresh install?

None

Are you using the Nextcloud Server Encryption module?

None

What user-backends are you using?

Configuration report

No response

List of activated Apps

No response

Nextcloud Signing status

No response

Nextcloud Logs

"app":"core","method":"","url":"/cron.php","message":"Error while running background job (class: OCA\\Recognize\\BackgroundJobs\\ClassifyLandmarksJob, arguments: Array\n(\n    [storageId] => 10\n    [rootId] => 31946\n)\n)","userAgent":"--","version":"27.1.2.1","exception":{"Exception":"Doctrine\\DBAL\\Exception\\DriverException","Message":"An exception occurred while executing a query: SQLSTATE[22021]: Character not in repertoire: 7 ERROR:  invalid byte sequence for encoding \"UTF8\": 0xe0\nCONTEXT:  unnamed portal parameter $1","Code":7,"Trace":[{"file":"/var/www/html/3rdparty/doctrine/dbal/src/Connection.php","line":1814,"function":"convert","class":"Doctrine\\DBAL\\Driver\\API\\PostgreSQL\\ExceptionConverter","type":"->","args":[["Doctrine\\DBAL\\Driver\\PDO\\Exception"],["Doctrine\\DBAL\\Query"]]},{"file":"/var/www/html/3rdparty/doctrine/dbal/src/Connection.php","line":1749,"function":"handleDriverException","class":"Doctrine\\DBAL\\Connection","type":"->","args":[["Doctrine\\DBAL\\Driver\\PDO\\Exception"],["Doctrine\\DBAL\\Query"]]},{"file":"/var/www/html/3rdparty/doctrine/dbal/src/Connection.php","line":1055,"function":"convertExceptionDuringQuery","class":"Doctrine\\DBAL\\Connection","type":"->","args":[["Doctrine\\DBAL\\Driver\\PDO\\Exception"],"SELECT * FROM \"oc_systemtag\" WHERE (\"name\" = ?) AND (\"visibility\" = ?) AND (\"editable\" = ?)",[null,1,1],[]]},{"file":"/var/www/html/lib/private/DB/Connection.php","line":262,"function":"executeQuery","class":"Doctrine\\DBAL\\Connection","type":"->","args":["SELECT * FROM \"oc_systemtag\" WHERE (\"name\" = ?) AND (\"visibility\" = ?) AND (\"editable\" = ?)",[null,1,1],[],null]},{"file":"/var/www/html/3rdparty/doctrine/dbal/src/Query/QueryBuilder.php","line":345,"function":"executeQuery","class":"OC\\DB\\Connection","type":"->","args":["SELECT * FROM \"oc_systemtag\" WHERE (\"name\" = :name) AND (\"visibility\" = :visibility) AND (\"editable\" = :editable)",[null,1,1],[]]},{"file":"/var/www/html/lib/private/DB/QueryBuilder/QueryBuilder.php","line":280,"function":"execute","class":"Doctrine\\DBAL\\Query\\QueryBuilder","type":"->","args":[]},{"file":"/var/www/html/lib/private/SystemTag/SystemTagManager.php","line":186,"function":"execute","class":"OC\\DB\\QueryBuilder\\QueryBuilder","type":"->","args":[]},{"file":"/var/www/html/custom_apps/recognize/lib/Service/TagManager.php","line":31,"function":"getTag","class":"OC\\SystemTag\\SystemTagManager","type":"->","args":["*** sensitive parameters replaced ***",true,true]},{"file":"/var/www/html/custom_apps/recognize/lib/Service/TagManager.php","line":71,"function":"getTag","class":"OCA\\Recognize\\Service\\TagManager","type":"->","args":["*** sensitive parameters replaced ***"]},{"function":"OCA\\Recognize\\Service\\{closure}","class":"OCA\\Recognize\\Service\\TagManager","type":"->","args":["*** sensitive parameters replaced ***"]},{"file":"/var/www/html/custom_apps/recognize/lib/Service/TagManager.php","line":70,"function":"array_map","args":[["Closure"],["landmark","*** sensitive parameters replaced ***"]]},{"file":"/var/www/html/custom_apps/recognize/lib/Classifiers/Images/LandmarksClassifier.php","line":47,"function":"assignTags","class":"OCA\\Recognize\\Service\\TagManager","type":"->","args":[531275,["landmark","*** sensitive parameters replaced ***"]]},{"file":"/var/www/html/custom_apps/recognize/lib/BackgroundJobs/ClassifyLandmarksJob.php","line":41,"function":"classify","class":"OCA\\Recognize\\Classifiers\\Images\\LandmarksClassifier","type":"->","args":[[["OCA\\Recognize\\Db\\QueueFile",343962],["OCA\\Recognize\\Db\\QueueFile",343963],["OCA\\Recognize\\Db\\QueueFile",343964],
[...CUT...]
["OCA\\Recognize\\Db\\QueueFile",346040],["OCA\\Recognize\\Db\\QueueFile",346041],["OCA\\Recognize\\Db\\QueueFile",346042],["OCA\\Recognize\\Db\\QueueFile",346043],["OCA\\Recognize\\Db\\QueueFile",346044]]]},{"file":"/var/www/html/custom_apps/recognize/lib/BackgroundJobs/ClassifierJob.php","line":73,"function":"classify","class":"OCA\\Recognize\\BackgroundJobs\\ClassifyLandmarksJob","type":"->","args":[[["OCA\\Recognize\\Db\\QueueFile",343962],["OCA\\Recognize\\Db\\QueueFile",343963],["OCA\\Recognize

[...cut...]

\\QueueFile",346041],["OCA\\Recognize\\Db\\QueueFile",346042],["OCA\\Recognize\\Db\\QueueFile",346043],["OCA\\Recognize\\Db\\QueueFile",346044]]]},{"file":"/var/www/html/custom_apps/recognize/lib/BackgroundJobs/ClassifyLandmarksJob.php","line":33,"function":"runClassifier","class":"OCA\\Recognize\\BackgroundJobs\\ClassifierJob","type":"->","args":["landmarks",[10,31946]]},{"file":"/var/www/html/lib/public/BackgroundJob/Job.php","line":81,"function":"run","class":"OCA\\Recognize\\BackgroundJobs\\ClassifyLandmarksJob","type":"->","args":[[10,31946]]},{"file":"/var/www/html/lib/public/BackgroundJob/TimedJob.php","line":103,"function":"start","class":"OCP\\BackgroundJob\\Job","type":"->","args":[["OC\\BackgroundJob\\JobList"]]},{"file":"/var/www/html/lib/public/BackgroundJob/TimedJob.php","line":93,"function":"start","class":"OCP\\BackgroundJob\\TimedJob","type":"->","args":[["OC\\BackgroundJob\\JobList"]]},{"file":"/var/www/html/cron.php","line":152,"function":"execute","class":"OCP\\BackgroundJob\\TimedJob","type":"->","args":[["OC\\BackgroundJob\\JobList"],["OC\\Log"]]}],"File":"/var/www/html/3rdparty/doctrine/dbal/src/Driver/PDO/Statement.php","Line":101}},"message":"Error while running background job (class: OCA\\Recognize\\BackgroundJobs\\ClassifyLandmarksJob, arguments: Array\n(\n    [storageId] => 10\n    [rootId] => 31946\n)\n)","exception":{},"CustomMessage":"Error while running background job (class: OCA\\Recognize\\BackgroundJobs\\ClassifyLandmarksJob, arguments: Array\n(\n    [storageId] => 10\n    [rootId] => 31946\n)\n)"}}


### Additional info

_No response_
bugsyb commented 10 months ago

Linked issues:

bugsyb commented 10 months ago

Did further investigation and found out:

bugsyb commented 10 months ago

And additional test directly with "Files". It might be wrong, though it looks like issue is somewhere around:

      "File": "/var/www/html/3rdparty/doctrine/dbal/src/Driver/PDO/Exception.php",
      "Line": 30,
      "Previous": {
        "Exception": "PDOException",
        "Message": "SQLSTATE[22021]: Character not in repertoire: 7 ERROR:  invalid byte sequence for encoding \"UTF8\": 0xe0\nCONTEXT:  unnamed portal parameter $1",
        "Code": "22021",
        "Trace": [
          {
            "file": "/var/www/html/3rdparty/doctrine/dbal/src/Driver/PDO/Statement.php",
            "line": 101,
            "function": "execute",
            "class": "PDOStatement",
            "type": "->",
            "args": [
              null
            ]
          },

Full error dump below:

{
  "reqId": "aNX2WijeyI2uxzUaZAsC",
  "level": 3,
  "time": "2023-10-31T13:58:20+01:00",
  "remoteAddr": "127.0.0.1",
  "user": "test-user",
  "app": "webdav",
  "method": "POST",
  "url": "/remote.php/dav/systemtags",
  "message": "An exception occurred while executing a query: SQLSTATE[22021]: Character not in repertoire: 7 ERROR:  invalid byte sequence for encoding \"UTF8\": 0xe0\nCONTEXT:  unnamed portal parameter $1",
  "userAgent": "Mozilla",
  "version": "27.1.2.1",
  "exception": {
    "Exception": "Doctrine\\DBAL\\Exception\\DriverException",
    "Message": "An exception occurred while executing a query: SQLSTATE[22021]: Character not in repertoire: 7 ERROR:  invalid byte sequence for encoding \"UTF8\": 0xe0\nCONTEXT:  unnamed portal parameter $1",
    "Code": 7,
    "Trace": [
      {
        "file": "/var/www/html/3rdparty/doctrine/dbal/src/Connection.php",
        "line": 1814,
        "function": "convert",
        "class": "Doctrine\\DBAL\\Driver\\API\\PostgreSQL\\ExceptionConverter",
        "type": "->",
        "args": [
          [
            "Doctrine\\DBAL\\Driver\\PDO\\Exception"
          ],
          [
            "Doctrine\\DBAL\\Query"
          ]
        ]
      },
      {
        "file": "/var/www/html/3rdparty/doctrine/dbal/src/Connection.php",
        "line": 1749,
        "function": "handleDriverException",
        "class": "Doctrine\\DBAL\\Connection",
        "type": "->",
        "args": [
          [
            "Doctrine\\DBAL\\Driver\\PDO\\Exception"
          ],
          [
            "Doctrine\\DBAL\\Query"
          ]
        ]
      },
      {
        "file": "/var/www/html/3rdparty/doctrine/dbal/src/Connection.php",
        "line": 1163,
        "function": "convertExceptionDuringQuery",
        "class": "Doctrine\\DBAL\\Connection",
        "type": "->",
        "args": [
          [
            "Doctrine\\DBAL\\Driver\\PDO\\Exception"
          ],
          "INSERT INTO \"oc_systemtag\" (\"name\", \"visibility\", \"editable\") VALUES(?, ?, ?)",
          [
            null,
            1,
            1
          ],
          [
            2,
            2,
            2
          ]
        ]
      },
      {
        "file": "/var/www/html/lib/private/DB/Connection.php",
        "line": 295,
        "function": "executeStatement",
        "class": "Doctrine\\DBAL\\Connection",
        "type": "->",
        "args": [
          "INSERT INTO \"oc_systemtag\" (\"name\", \"visibility\", \"editable\") VALUES(?, ?, ?)",
          [
            null,
            1,
            1
          ],
          [
            2,
            2,
            2
          ]
        ]
      },
      {
        "file": "/var/www/html/3rdparty/doctrine/dbal/src/Query/QueryBuilder.php",
        "line": 354,
        "function": "executeStatement",
        "class": "OC\\DB\\Connection",
        "type": "->",
        "args": [
          "INSERT INTO \"oc_systemtag\" (\"name\", \"visibility\", \"editable\") VALUES(:dcValue1, :dcValue2, :dcValue3)",
          [
            null,
            1,
            1
          ],
          [
            2,
            2,
            2
          ]
        ]
      },
      {
        "file": "/var/www/html/lib/private/DB/QueryBuilder/QueryBuilder.php",
        "line": 280,
        "function": "execute",
        "class": "Doctrine\\DBAL\\Query\\QueryBuilder",
        "type": "->",
        "args": []
      },
      {
        "file": "/var/www/html/lib/private/SystemTag/SystemTagManager.php",
        "line": 214,
        "function": "execute",
        "class": "OC\\DB\\QueryBuilder\\QueryBuilder",
        "type": "->",
        "args": []
      },
      {
        "file": "/var/www/html/apps/dav/lib/SystemTag/SystemTagPlugin.php",
        "line": 216,
        "function": "createTag",
        "class": "OC\\SystemTag\\SystemTagManager",
        "type": "->",
        "args": [
          "*** sensitive parameters replaced ***"
        ]
      },
      {
        "file": "/var/www/html/apps/dav/lib/SystemTag/SystemTagPlugin.php",
        "line": 145,
        "function": "createTag",
        "class": "OCA\\DAV\\SystemTag\\SystemTagPlugin",
        "type": "->",
        "args": [
          "*** sensitive parameters replaced ***"
        ]
      },
      {
        "file": "/var/www/html/3rdparty/sabre/event/lib/WildcardEmitterTrait.php",
        "line": 89,
        "function": "httpPost",
        "class": "OCA\\DAV\\SystemTag\\SystemTagPlugin",
        "type": "->",
        "args": [
          [
            "Sabre\\HTTP\\Request"
          ],
          [
            "Sabre\\HTTP\\Response"
          ]
        ]
      },
      {
        "file": "/var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php",
        "line": 472,
        "function": "emit",
        "class": "Sabre\\DAV\\Server",
        "type": "->",
        "args": [
          "method:POST",
          [
            [
              "Sabre\\HTTP\\Request"
            ],
            [
              "Sabre\\HTTP\\Response"
            ]
          ]
        ]
      },
      {
        "file": "/var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php",
        "line": 253,
        "function": "invokeMethod",
        "class": "Sabre\\DAV\\Server",
        "type": "->",
        "args": [
          [
            "Sabre\\HTTP\\Request"
          ],
          [
            "Sabre\\HTTP\\Response"
          ]
        ]
      },
      {
        "file": "/var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php",
        "line": 321,
        "function": "start",
        "class": "Sabre\\DAV\\Server",
        "type": "->",
        "args": []
      },
      {
        "file": "/var/www/html/apps/dav/lib/Server.php",
        "line": 365,
        "function": "exec",
        "class": "Sabre\\DAV\\Server",
        "type": "->",
        "args": []
      },
      {
        "file": "/var/www/html/apps/dav/appinfo/v2/remote.php",
        "line": 35,
        "function": "exec",
        "class": "OCA\\DAV\\Server",
        "type": "->",
        "args": []
      },
      {
        "file": "/var/www/html/remote.php",
        "line": 172,
        "args": [
          "/var/www/html/apps/dav/appinfo/v2/remote.php"
        ],
        "function": "require_once"
      }
    ],
    "File": "/var/www/html/3rdparty/doctrine/dbal/src/Driver/API/PostgreSQL/ExceptionConverter.php",
    "Line": 91,
    "Previous": {
      "Exception": "Doctrine\\DBAL\\Driver\\PDO\\Exception",
      "Message": "SQLSTATE[22021]: Character not in repertoire: 7 ERROR:  invalid byte sequence for encoding \"UTF8\": 0xe0\nCONTEXT:  unnamed portal parameter $1",
      "Code": 7,
      "Trace": [
        {
          "file": "/var/www/html/3rdparty/doctrine/dbal/src/Driver/PDO/Statement.php",
          "line": 103,
          "function": "new",
          "class": "Doctrine\\DBAL\\Driver\\PDO\\Exception",
          "type": "::",
          "args": [
            [
              "PDOException",
              [
                "22021",
                7,
                "ERROR:  invalid byte sequence for encoding \"UTF8\": 0xe0\nCONTEXT:  unnamed portal parameter $1"
              ]
            ]
          ]
        },
        {
          "file": "/var/www/html/3rdparty/doctrine/dbal/src/Connection.php",
          "line": 1153,
          "function": "execute",
          "class": "Doctrine\\DBAL\\Driver\\PDO\\Statement",
          "type": "->",
          "args": []
        },
        {
          "file": "/var/www/html/lib/private/DB/Connection.php",
          "line": 295,
          "function": "executeStatement",
          "class": "Doctrine\\DBAL\\Connection",
          "type": "->",
          "args": [
            "INSERT INTO \"oc_systemtag\" (\"name\", \"visibility\", \"editable\") VALUES(?, ?, ?)",
            [
              null,
              1,
              1
            ],
            [
              2,
              2,
              2
            ]
          ]
        },
        {
          "file": "/var/www/html/3rdparty/doctrine/dbal/src/Query/QueryBuilder.php",
          "line": 354,
          "function": "executeStatement",
          "class": "OC\\DB\\Connection",
          "type": "->",
          "args": [
            "INSERT INTO \"oc_systemtag\" (\"name\", \"visibility\", \"editable\") VALUES(:dcValue1, :dcValue2, :dcValue3)",
            [
              null,
              1,
              1
            ],
            [
              2,
              2,
              2
            ]
          ]
        },
        {
          "file": "/var/www/html/lib/private/DB/QueryBuilder/QueryBuilder.php",
          "line": 280,
          "function": "execute",
          "class": "Doctrine\\DBAL\\Query\\QueryBuilder",
          "type": "->",
          "args": []
        },
        {
          "file": "/var/www/html/lib/private/SystemTag/SystemTagManager.php",
          "line": 214,
          "function": "execute",
          "class": "OC\\DB\\QueryBuilder\\QueryBuilder",
          "type": "->",
          "args": []
        },
        {
          "file": "/var/www/html/apps/dav/lib/SystemTag/SystemTagPlugin.php",
          "line": 216,
          "function": "createTag",
          "class": "OC\\SystemTag\\SystemTagManager",
          "type": "->",
          "args": [
            "*** sensitive parameters replaced ***"
          ]
        },
        {
          "file": "/var/www/html/apps/dav/lib/SystemTag/SystemTagPlugin.php",
          "line": 145,
          "function": "createTag",
          "class": "OCA\\DAV\\SystemTag\\SystemTagPlugin",
          "type": "->",
          "args": [
            "*** sensitive parameters replaced ***"
          ]
        },
        {
          "file": "/var/www/html/3rdparty/sabre/event/lib/WildcardEmitterTrait.php",
          "line": 89,
          "function": "httpPost",
          "class": "OCA\\DAV\\SystemTag\\SystemTagPlugin",
          "type": "->",
          "args": [
            [
              "Sabre\\HTTP\\Request"
            ],
            [
              "Sabre\\HTTP\\Response"
            ]
          ]
        },
        {
          "file": "/var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php",
          "line": 472,
          "function": "emit",
          "class": "Sabre\\DAV\\Server",
          "type": "->",
          "args": [
            "method:POST",
            [
              [
                "Sabre\\HTTP\\Request"
              ],
              [
                "Sabre\\HTTP\\Response"
              ]
            ]
          ]
        },
        {
          "file": "/var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php",
          "line": 253,
          "function": "invokeMethod",
          "class": "Sabre\\DAV\\Server",
          "type": "->",
          "args": [
            [
              "Sabre\\HTTP\\Request"
            ],
            [
              "Sabre\\HTTP\\Response"
            ]
          ]
        },
        {
          "file": "/var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php",
          "line": 321,
          "function": "start",
          "class": "Sabre\\DAV\\Server",
          "type": "->",
          "args": []
        },
        {
          "file": "/var/www/html/apps/dav/lib/Server.php",
          "line": 365,
          "function": "exec",
          "class": "Sabre\\DAV\\Server",
          "type": "->",
          "args": []
        },
        {
          "file": "/var/www/html/apps/dav/appinfo/v2/remote.php",
          "line": 35,
          "function": "exec",
          "class": "OCA\\DAV\\Server",
          "type": "->",
          "args": []
        },
        {
          "file": "/var/www/html/remote.php",
          "line": 172,
          "args": [
            "/var/www/html/apps/dav/appinfo/v2/remote.php"
          ],
          "function": "require_once"
        }
      ],
      "File": "/var/www/html/3rdparty/doctrine/dbal/src/Driver/PDO/Exception.php",
      "Line": 30,
      "Previous": {
        "Exception": "PDOException",
        "Message": "SQLSTATE[22021]: Character not in repertoire: 7 ERROR:  invalid byte sequence for encoding \"UTF8\": 0xe0\nCONTEXT:  unnamed portal parameter $1",
        "Code": "22021",
        "Trace": [
          {
            "file": "/var/www/html/3rdparty/doctrine/dbal/src/Driver/PDO/Statement.php",
            "line": 101,
            "function": "execute",
            "class": "PDOStatement",
            "type": "->",
            "args": [
              null
            ]
          },
          {
            "file": "/var/www/html/3rdparty/doctrine/dbal/src/Connection.php",
            "line": 1153,
            "function": "execute",
            "class": "Doctrine\\DBAL\\Driver\\PDO\\Statement",
            "type": "->",
            "args": []
          },
          {
            "file": "/var/www/html/lib/private/DB/Connection.php",
            "line": 295,
            "function": "executeStatement",
            "class": "Doctrine\\DBAL\\Connection",
            "type": "->",
            "args": [
              "INSERT INTO \"oc_systemtag\" (\"name\", \"visibility\", \"editable\") VALUES(?, ?, ?)",
              [
                null,
                1,
                1
              ],
              [
                2,
                2,
                2
              ]
            ]
          },
          {
            "file": "/var/www/html/3rdparty/doctrine/dbal/src/Query/QueryBuilder.php",
            "line": 354,
            "function": "executeStatement",
            "class": "OC\\DB\\Connection",
            "type": "->",
            "args": [
              "INSERT INTO \"oc_systemtag\" (\"name\", \"visibility\", \"editable\") VALUES(:dcValue1, :dcValue2, :dcValue3)",
              [
                null,
                1,
                1
              ],
              [
                2,
                2,
                2
              ]
            ]
          },
          {
            "file": "/var/www/html/lib/private/DB/QueryBuilder/QueryBuilder.php",
            "line": 280,
            "function": "execute",
            "class": "Doctrine\\DBAL\\Query\\QueryBuilder",
            "type": "->",
            "args": []
          },
          {
            "file": "/var/www/html/lib/private/SystemTag/SystemTagManager.php",
            "line": 214,
            "function": "execute",
            "class": "OC\\DB\\QueryBuilder\\QueryBuilder",
            "type": "->",
            "args": []
          },
          {
            "file": "/var/www/html/apps/dav/lib/SystemTag/SystemTagPlugin.php",
            "line": 216,
            "function": "createTag",
            "class": "OC\\SystemTag\\SystemTagManager",
            "type": "->",
            "args": [
              "*** sensitive parameters replaced ***"
            ]
          },
          {
            "file": "/var/www/html/apps/dav/lib/SystemTag/SystemTagPlugin.php",
            "line": 145,
            "function": "createTag",
            "class": "OCA\\DAV\\SystemTag\\SystemTagPlugin",
            "type": "->",
            "args": [
              "*** sensitive parameters replaced ***"
            ]
          },
          {
            "file": "/var/www/html/3rdparty/sabre/event/lib/WildcardEmitterTrait.php",
            "line": 89,
            "function": "httpPost",
            "class": "OCA\\DAV\\SystemTag\\SystemTagPlugin",
            "type": "->",
            "args": [
              [
                "Sabre\\HTTP\\Request"
              ],
              [
                "Sabre\\HTTP\\Response"
              ]
            ]
          },
          {
            "file": "/var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php",
            "line": 472,
            "function": "emit",
            "class": "Sabre\\DAV\\Server",
            "type": "->",
            "args": [
              "method:POST",
              [
                [
                  "Sabre\\HTTP\\Request"
                ],
                [
                  "Sabre\\HTTP\\Response"
                ]
              ]
            ]
          },
          {
            "file": "/var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php",
            "line": 253,
            "function": "invokeMethod",
            "class": "Sabre\\DAV\\Server",
            "type": "->",
            "args": [
              [
                "Sabre\\HTTP\\Request"
              ],
              [
                "Sabre\\HTTP\\Response"
              ]
            ]
          },
          {
            "file": "/var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php",
            "line": 321,
            "function": "start",
            "class": "Sabre\\DAV\\Server",
            "type": "->",
            "args": []
          },
          {
            "file": "/var/www/html/apps/dav/lib/Server.php",
            "line": 365,
            "function": "exec",
            "class": "Sabre\\DAV\\Server",
            "type": "->",
            "args": []
          },
          {
            "file": "/var/www/html/apps/dav/appinfo/v2/remote.php",
            "line": 35,
            "function": "exec",
            "class": "OCA\\DAV\\Server",
            "type": "->",
            "args": []
          },
          {
            "file": "/var/www/html/remote.php",
            "line": 172,
            "args": [
              "/var/www/html/apps/dav/appinfo/v2/remote.php"
            ],
            "function": "require_once"
          }
        ],
        "File": "/var/www/html/3rdparty/doctrine/dbal/src/Driver/PDO/Statement.php",
        "Line": 101
      }
    },
    "message": "An exception occurred while executing a query: SQLSTATE[22021]: Character not in repertoire: 7 ERROR:  invalid byte sequence for encoding \"UTF8\": 0xe0\nCONTEXT:  unnamed portal parameter $1",
    "exception": {},
    "CustomMessage": "An exception occurred while executing a query: SQLSTATE[22021]: Character not in repertoire: 7 ERROR:  invalid byte sequence for encoding \"UTF8\": 0xe0\nCONTEXT:  unnamed portal parameter $1"
  }
}
bugsyb commented 3 months ago

Same issue happens still on v28.0.4.

bugsyb commented 3 months ago

Found related if not the same issue fixed in other app and the way to fix it. https://github.com/SergeyMosin/Appointments/issues/510#issuecomment-2093510133

bugsyb commented 3 months ago

It has been confirmed by NextCloud key developer, Marcel Klehr that it looks like to be the core component issue: https://github.com/nextcloud/recognize/issues/859#issuecomment-2135484326

Thank you for looking into it.