NC 19: Document not editable with external Collabora server: Doctrine DBAL Exception InvalidFieldNameException

Support intro

Sorry to hear you’re facing problems :slightly_frowning_face:

help.nextcloud.com is for home/non-enterprise users. If you’re running a business, paid support can be accessed via portal.nextcloud.com where we can ensure your business keeps running smoothly.

In order to help you as quickly as possible, before clicking Create Topic please provide as much of the below as you can. Feel free to use a pastebin service for logs, otherwise either indent short log examples with four spaces:

example

Or for longer, use three backticks above and below the code snippet:

longer
example
here

Some or all of the below information will be requested if it isn’t supplied; for fastest response please provide as much as you can :heart:

Nextcloud version (eg, 18.0.2): 19.0.0
Operating system and version (eg, Ubuntu 20.04): Ubuntu 18.04.1
Apache or nginx version (eg, Apache 2.4.25): Apache
PHP version (eg, 7.1): 7.3.17, PostgreSQL 10.12

The issue you are facing:

if I click on a document to edit, it tells me

Collabora Online Development Edition could not be loaded

Is this the first time you’ve seen this error? (Y/N): Y

Steps to replicate it:

  1. I have Collabora Office running on https://of.MYDOMAIN.TLD, Nextcloud 19.0.0. on https://nc.MYDOMAIN.TLD.
  2. I installed Collabora Online Nextcloud app and pointed to the Collobora Office url. I get a “green light” i.e. it can connect:
  3. However, if I click on a document to edit, it tells me

Collabora Online Development Edition could not be loaded

even though the Collabora Nextcloud app is not pointed to the Collabora Online Development Edition but to the separate Collabora installation.

The output of your Nextcloud log in Admin > Logging:

{"reqId":"Z3jpMFfE7awV1EzzxW5W","level":3,"time":"2020-06-05T12:12:50+00:00","remoteAddr":"80.81.8.68","user":"MYUSERNAME","app":"richdocuments","method":"GET","url":"/apps/richdocuments/index?fileId=768478&requesttoken=5Mp2b%2BSI%2BCsnKEX9ZsSm2dvm7ALLt24diAGxKswwmQs%3D%3AoowXXrPylXkVageUMK%2BQqpKvjWi4%2BSZV0lfkYp9H3V4%3D","message":{"Exception":"Doctrine\\DBAL\\Exception\\InvalidFieldNameException","Message":"An exception occurred while executing 'INSERT INTO \"oc_richdocuments_wopi\"(\"fileid\",\"owner_uid\",\"editor_uid\",\"version\",\"canwrite\",\"server_host\",\"token\",\"expiry\",\"template_destination\",\"hide_download\",\"direct\",\"is_remote_token\",\"template_id\") VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?)' with params [768478, \"MYUSERNAME\", \"MYUSERNAME\", 0, true, \"https:\\/\\/nc.MYDOMAIN.TLD\\/\", \"PX4zpQo13aUwbqdtMWCxs6j6wXqWpFTR\", 1591360970, 0, false, false, false, 0]:\n\nSQLSTATE[42703]: Undefined column: 7 ERROR:  column \"template_id\" of relation \"oc_richdocuments_wopi\" does not exist\nLINE 1: ...ation\",\"hide_download\",\"direct\",\"is_remote_token\",\"template_...\n                                                             ^","Code":0,"Trace":[{"file":"/app/code/3rdparty/doctrine/dbal/lib/Doctrine/DBAL/DBALException.php","line":169,"function":"convertException","class":"Doctrine\\DBAL\\Driver\\AbstractPostgreSQLDriver","type":"->","args":["An exception occurred while executing 'INSERT INTO \"oc_richdocuments_wopi\"(\"fileid\",\"owner_uid\",\"editor_uid\",\"version\",\"canwrite\",\"server_host\",\"token\",\"expiry\",\"template_destination\",\"hide_download\",\"direct\",\"is_remote_token\",\"template_id\") VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?)' with params [768478, \"MYUSERNAME\", \"MYUSERNAME\", 0, true, \"https:\\/\\/nc.MYDOMAIN.TLD\\/\", \"PX4zpQo13aUwbqdtMWCxs6j6wXqWpFTR\", 1591360970, 0, false, false, false, 0]:\n\nSQLSTATE[42703]: Undefined column: 7 ERROR:  column \"template_id\" of relation \"oc_richdocuments_wopi\" does not exist\nLINE 1: ...ation\",\"hide_download\",\"direct\",\"is_remote_token\",\"template_...\n                                                             ^",{"errorInfo":["42703",7,"ERROR:  column \"template_id\" of relation \"oc_richdocuments_wopi\" does not exist\nLINE 1: ...ation\",\"hide_download\",\"direct\",\"is_remote_token\",\"template_...\n                                                             ^"],"__class__":"Doctrine\\DBAL\\Driver\\PDOException"}]},{"file":"/app/code/3rdparty/doctrine/dbal/lib/Doctrine/DBAL/DBALException.php","line":145,"function":"wrapException","class":"Doctrine\\DBAL\\DBALException","type":"::","args":[{"__class__":"Doctrine\\DBAL\\Driver\\PDOPgSql\\Driver"},{"errorInfo":["42703",7,"ERROR:  column \"template_id\" of relation \"oc_richdocuments_wopi\" does not exist\nLINE 1: ...ation\",\"hide_download\",\"direct\",\"is_remote_token\",\"template_...\n                                                             ^"],"__class__":"Doctrine\\DBAL\\Driver\\PDOException"},"An exception occurred while executing 'INSERT INTO \"oc_richdocuments_wopi\"(\"fileid\",\"owner_uid\",\"editor_uid\",\"version\",\"canwrite\",\"server_host\",\"token\",\"expiry\",\"template_destination\",\"hide_download\",\"direct\",\"is_remote_token\",\"template_id\") VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?)' with params [768478, \"MYUSERNAME\", \"MYUSERNAME\", 0, true, \"https:\\/\\/nc.MYDOMAIN.TLD\\/\", \"PX4zpQo13aUwbqdtMWCxs6j6wXqWpFTR\", 1591360970, 0, false, false, false, 0]:\n\nSQLSTATE[42703]: Undefined column: 7 ERROR:  column \"template_id\" of relation \"oc_richdocuments_wopi\" does not exist\nLINE 1: ...ation\",\"hide_download\",\"direct\",\"is_remote_token\",\"template_...\n                                                             ^"]},{"file":"/app/code/3rdparty/doctrine/dbal/lib/Doctrine/DBAL/Statement.php","line":162,"function":"driverExceptionDuringQuery","class":"Doctrine\\DBAL\\DBALException","type":"::","args":[{"__class__":"Doctrine\\DBAL\\Driver\\PDOPgSql\\Driver"},{"errorInfo":["42703",7,"ERROR:  column \"template_id\" of relation \"oc_richdocuments_wopi\" does not exist\nLINE 1: ...ation\",\"hide_download\",\"direct\",\"is_remote_token\",\"template_...\n                                                             ^"],"__class__":"Doctrine\\DBAL\\Driver\\PDOException"},"INSERT INTO \"oc_richdocuments_wopi\"(\"fileid\",\"owner_uid\",\"editor_uid\",\"version\",\"canwrite\",\"server_host\",\"token\",\"expiry\",\"template_destination\",\"hide_download\",\"direct\",\"is_remote_token\",\"template_id\") VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?)",{"1":768478,"2":"MYUSERNAME","3":"MYUSERNAME","4":0,"5":true,"6":"https://nc.MYDOMAIN.TLD/","7":"PX4zpQo13aUwbqdtMWCxs6j6wXqWpFTR","8":1591360970,"9":0,"10":false,"11":false,"12":false,"13":0}]},{"file":"/app/code/lib/public/AppFramework/Db/Mapper.php","line":253,"function":"execute","class":"Doctrine\\DBAL\\Statement","type":"->","args":[]},{"file":"/app/code/lib/public/AppFramework/Db/Mapper.php","line":128,"function":"execute","class":"OCP\\AppFramework\\Db\\Mapper","type":"->","args":["INSERT INTO `*PREFIX*richdocuments_wopi`(`fileid`,`owner_uid`,`editor_uid`,`version`,`canwrite`,`server_host`,`token`,`expiry`,`template_destination`,`hide_download`,`direct`,`is_remote_token`,`template_id`) VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?)",[768478,"MYUSERNAME","MYUSERNAME",0,true,"https://nc.MYDOMAIN.TLD/","PX4zpQo13aUwbqdtMWCxs6j6wXqWpFTR",1591360970,0,false,false,false,0]]},{"file":"/app/data/apps/richdocuments/lib/Db/WopiMapper.php","line":89,"function":"insert","class":"OCP\\AppFramework\\Db\\Mapper","type":"->","args":[{"id":null,"__class__":"OCA\\Richdocuments\\Db\\Wopi"}]},{"file":"/app/data/apps/richdocuments/lib/TokenManager.php","line":205,"function":"generateFileToken","class":"OCA\\Richdocuments\\Db\\WopiMapper","type":"->","args":["*** sensitive parameter replaced ***","MYUSERNAME","MYUSERNAME","0",1,"https://nc.MYDOMAIN.TLD/",null,0,false,false,false,0,null]},{"file":"/app/data/apps/richdocuments/lib/Controller/DocumentController.php","line":245,"function":"getToken","class":"OCA\\Richdocuments\\TokenManager","type":"->","args":["*** sensitive parameters replaced ***"]},{"file":"/app/code/lib/private/AppFramework/Http/Dispatcher.php","line":170,"function":"index","class":"OCA\\Richdocuments\\Controller\\DocumentController","type":"->","args":["*** sensitive parameter replaced ***",null]},{"file":"/app/code/lib/private/AppFramework/Http/Dispatcher.php","line":100,"function":"executeController","class":"OC\\AppFramework\\Http\\Dispatcher","type":"->","args":[{"__class__":"OCA\\Richdocuments\\Controller\\DocumentController"},"index"]},{"file":"/app/code/lib/private/AppFramework/App.php","line":137,"function":"dispatch","class":"OC\\AppFramework\\Http\\Dispatcher","type":"->","args":[{"__class__":"OCA\\Richdocuments\\Controller\\DocumentController"},"index"]},{"file":"/app/code/lib/private/AppFramework/Routing/RouteActionHandler.php","line":47,"function":"main","class":"OC\\AppFramework\\App","type":"::","args":["OCA\\Richdocuments\\Controller\\DocumentController","index",{"__class__":"OC\\AppFramework\\DependencyInjection\\DIContainer"},{"_route":"richdocuments.document.index"}]},{"function":"__invoke","class":"OC\\AppFramework\\Routing\\RouteActionHandler","type":"->","args":[{"_route":"richdocuments.document.index"}]},{"file":"/app/code/lib/private/Route/Router.php","line":297,"function":"call_user_func","args":[{"__class__":"OC\\AppFramework\\Routing\\RouteActionHandler"},{"_route":"richdocuments.document.index"}]},{"file":"/app/code/lib/base.php","line":1007,"function":"match","class":"OC\\Route\\Router","type":"->","args":["/apps/richdocuments/index"]},{"file":"/app/code/index.php","line":37,"function":"handleRequest","class":"OC","type":"::","args":[]}],"File":"/app/code/3rdparty/doctrine/dbal/lib/Doctrine/DBAL/Driver/AbstractPostgreSQLDriver.php","Line":60,"Previous":{"Exception":"Doctrine\\DBAL\\Driver\\PDOException","Message":"SQLSTATE[42703]: Undefined column: 7 ERROR:  column \"template_id\" of relation \"oc_richdocuments_wopi\" does not exist\nLINE 1: ...ation\",\"hide_download\",\"direct\",\"is_remote_token\",\"template_...\n                                                             ^","Code":"42703","Trace":[{"file":"/app/code/3rdparty/doctrine/dbal/lib/Doctrine/DBAL/Statement.php","line":153,"function":"execute","class":"Doctrine\\DBAL\\Driver\\PDOStatement","type":"->","args":[null]},{"file":"/app/code/lib/public/AppFramework/Db/Mapper.php","line":253,"function":"execute","class":"Doctrine\\DBAL\\Statement","type":"->","args":[]},{"file":"/app/code/lib/public/AppFramework/Db/Mapper.php","line":128,"function":"execute","class":"OCP\\AppFramework\\Db\\Mapper","type":"->","args":["INSERT INTO `*PREFIX*richdocuments_wopi`(`fileid`,`owner_uid`,`editor_uid`,`version`,`canwrite`,`server_host`,`token`,`expiry`,`template_destination`,`hide_download`,`direct`,`is_remote_token`,`template_id`) VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?)",[768478,"MYUSERNAME","MYUSERNAME",0,true,"https://nc.MYDOMAIN.TLD/","PX4zpQo13aUwbqdtMWCxs6j6wXqWpFTR",1591360970,0,false,false,false,0]]},{"file":"/app/data/apps/richdocuments/lib/Db/WopiMapper.php","line":89,"function":"insert","class":"OCP\\AppFramework\\Db\\Mapper","type":"->","args":[{"id":null,"__class__":"OCA\\Richdocuments\\Db\\Wopi"}]},{"file":"/app/data/apps/richdocuments/lib/TokenManager.php","line":205,"function":"generateFileToken","class":"OCA\\Richdocuments\\Db\\WopiMapper","type":"->","args":["*** sensitive parameter replaced ***","MYUSERNAME","MYUSERNAME","0",1,"https://nc.MYDOMAIN.TLD/",null,0,false,false,false,0,null]},{"file":"/app/data/apps/richdocuments/lib/Controller/DocumentController.php","line":245,"function":"getToken","class":"OCA\\Richdocuments\\TokenManager","type":"->","args":["*** sensitive parameters replaced ***"]},{"file":"/app/code/lib/private/AppFramework/Http/Dispatcher.php","line":170,"function":"index","class":"OCA\\Richdocuments\\Controller\\DocumentController","type":"->","args":["*** sensitive parameter replaced ***",null]},{"file":"/app/code/lib/private/AppFramework/Http/Dispatcher.php","line":100,"function":"executeController","class":"OC\\AppFramework\\Http\\Dispatcher","type":"->","args":[{"__class__":"OCA\\Richdocuments\\Controller\\DocumentController"},"index"]},{"file":"/app/code/lib/private/AppFramework/App.php","line":137,"function":"dispatch","class":"OC\\AppFramework\\Http\\Dispatcher","type":"->","args":[{"__class__":"OCA\\Richdocuments\\Controller\\DocumentController"},"index"]},{"file":"/app/code/lib/private/AppFramework/Routing/RouteActionHandler.php","line":47,"function":"main","class":"OC\\AppFramework\\App","type":"::","args":["OCA\\Richdocuments\\Controller\\DocumentController","index",{"__class__":"OC\\AppFramework\\DependencyInjection\\DIContainer"},{"_route":"richdocuments.document.index"}]},{"function":"__invoke","class":"OC\\AppFramework\\Routing\\RouteActionHandler","type":"->","args":[{"_route":"richdocuments.document.index"}]},{"file":"/app/code/lib/private/Route/Router.php","line":297,"function":"call_user_func","args":[{"__class__":"OC\\AppFramework\\Routing\\RouteActionHandler"},{"_route":"richdocuments.document.index"}]},{"file":"/app/code/lib/base.php","line":1007,"function":"match","class":"OC\\Route\\Router","type":"->","args":["/apps/richdocuments/index"]},{"file":"/app/code/index.php","line":37,"function":"handleRequest","class":"OC","type":"::","args":[]}],"File":"/app/code/3rdparty/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOStatement.php","Line":119,"Previous":{"Exception":"PDOException","Message":"SQLSTATE[42703]: Undefined column: 7 ERROR:  column \"template_id\" of relation \"oc_richdocuments_wopi\" does not exist\nLINE 1: ...ation\",\"hide_download\",\"direct\",\"is_remote_token\",\"template_...\n                                                             ^","Code":"42703","Trace":[{"file":"/app/code/3rdparty/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOStatement.php","line":117,"function":"execute","class":"PDOStatement","type":"->","args":[null]},{"file":"/app/code/3rdparty/doctrine/dbal/lib/Doctrine/DBAL/Statement.php","line":153,"function":"execute","class":"Doctrine\\DBAL\\Driver\\PDOStatement","type":"->","args":[null]},{"file":"/app/code/lib/public/AppFramework/Db/Mapper.php","line":253,"function":"execute","class":"Doctrine\\DBAL\\Statement","type":"->","args":[]},{"file":"/app/code/lib/public/AppFramework/Db/Mapper.php","line":128,"function":"execute","class":"OCP\\AppFramework\\Db\\Mapper","type":"->","args":["INSERT INTO `*PREFIX*richdocuments_wopi`(`fileid`,`owner_uid`,`editor_uid`,`version`,`canwrite`,`server_host`,`token`,`expiry`,`template_destination`,`hide_download`,`direct`,`is_remote_token`,`template_id`) VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?)",[768478,"MYUSERNAME","MYUSERNAME",0,true,"https://nc.MYDOMAIN.TLD/","PX4zpQo13aUwbqdtMWCxs6j6wXqWpFTR",1591360970,0,false,false,false,0]]},{"file":"/app/data/apps/richdocuments/lib/Db/WopiMapper.php","line":89,"function":"insert","class":"OCP\\AppFramework\\Db\\Mapper","type":"->","args":[{"id":null,"__class__":"OCA\\Richdocuments\\Db\\Wopi"}]},{"file":"/app/data/apps/richdocuments/lib/TokenManager.php","line":205,"function":"generateFileToken","class":"OCA\\Richdocuments\\Db\\WopiMapper","type":"->","args":["*** sensitive parameter replaced ***","MYUSERNAME","MYUSERNAME","0",1,"https://nc.MYDOMAIN.TLD/",null,0,false,false,false,0,null]},{"file":"/app/data/apps/richdocuments/lib/Controller/DocumentController.php","line":245,"function":"getToken","class":"OCA\\Richdocuments\\TokenManager","type":"->","args":["*** sensitive parameters replaced ***"]},{"file":"/app/code/lib/private/AppFramework/Http/Dispatcher.php","line":170,"function":"index","class":"OCA\\Richdocuments\\Controller\\DocumentController","type":"->","args":["*** sensitive parameter replaced ***",null]},{"file":"/app/code/lib/private/AppFramework/Http/Dispatcher.php","line":100,"function":"executeController","class":"OC\\AppFramework\\Http\\Dispatcher","type":"->","args":[{"__class__":"OCA\\Richdocuments\\Controller\\DocumentController"},"index"]},{"file":"/app/code/lib/private/AppFramework/App.php","line":137,"function":"dispatch","class":"OC\\AppFramework\\Http\\Dispatcher","type":"->","args":[{"__class__":"OCA\\Richdocuments\\Controller\\DocumentController"},"index"]},{"file":"/app/code/lib/private/AppFramework/Routing/RouteActionHandler.php","line":47,"function":"main","class":"OC\\AppFramework\\App","type":"::","args":["OCA\\Richdocuments\\Controller\\DocumentController","index",{"__class__":"OC\\AppFramework\\DependencyInjection\\DIContainer"},{"_route":"richdocuments.document.index"}]},{"function":"__invoke","class":"OC\\AppFramework\\Routing\\RouteActionHandler","type":"->","args":[{"_route":"richdocuments.document.index"}]},{"file":"/app/code/lib/private/Route/Router.php","line":297,"function":"call_user_func","args":[{"__class__":"OC\\AppFramework\\Routing\\RouteActionHandler"},{"_route":"richdocuments.document.index"}]},{"file":"/app/code/lib/base.php","line":1007,"function":"match","class":"OC\\Route\\Router","type":"->","args":["/apps/richdocuments/index"]},{"file":"/app/code/index.php","line":37,"function":"handleRequest","class":"OC","type":"::","args":[]}],"File":"/app/code/3rdparty/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOStatement.php","Line":117}},"CustomMessage":"--"},"userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Firefox/78.0","version":"19.0.0.12","id":"5eda36c37a1f9"}

The output of your config.php file in /path/to/nextcloud (make sure you remove any identifiable information!):

<?php
$CONFIG = array (
  'passwordsalt' => 'PASSWORD',
  'secret' => 'PASSWORD',
  'trusted_domains' => 
  array (
    0 => 'nc.MYDOMAIN.TLD',
  ),
  'datadirectory' => '/app/data',
  'overwrite.cli.url' => 'https://nc.MYDOMAIN.TLD/',
  'dbtype' => 'pgsql',
  'version' => '19.0.0.12',
  'dbname' => 'DB',
  'dbhost' => 'postgresql',
  'dbport' => '5432',
  'dbtableprefix' => 'oc_',
  'dbuser' => 'USER',
  'dbpassword' => 'PASSWORD',
  'installed' => true,
  'forcessl' => '1',
  'mail_smtpmode' => 'smtp',
  'mail_smtpauth' => 'login',
  'mail_smtphost' => 'mail',
  'mail_smtpport' => '2525',
  'mail_smtpname' => 'nc.app@MYDOMAIN.TLD',
  'mail_smtppassword' => 'PASSWORD',
  'mail_from_address' => 'nc.app',
  'mail_domain' => 'MYDOMAIN.TLD',
  'updatechecker' => false,
  'lost_password_link' => 'https://my.MYDOMAIN.TLD/api/v1/session/password/resetRequest.html',
  'logfile' => '/run/nextcloud/nextcloud.log',
  'loglevel' => '3',
  'debug' => false,
  'redis' => 
  array (
    'host' => 'redis-6b94',
    'port' => '6379',
    'password' => 'PASSWORD',
  ),
  'memcache.local' => '\\OC\\Memcache\\Redis',
  'memcache.locking' => '\\OC\\Memcache\\Redis',
  'instanceid' => 'oc8nfe97o2tu',
  'ldapIgnoreNamingRules' => false,
  'ldapProviderFactory' => '\\OCA\\User_LDAP\\LDAPProviderFactory',
  'maintenance' => false,
  'updater.release.channel' => 'cloudron',
  'integrity.check.disabled' => true,
  'trashbin_retention_obligation' => 'auto, 7',
  'htaccess.RewriteBase' => '/',
  'trusted_proxies' => 
  array (
    0 => '172.18.0.1',
  ),
  'theme' => '',
  'overwritehost' => 'nc.MYDOMAIN.TLD',
  'overwriteprotocol' => 'https',
  'twofactor_enforced' => 'false',
  'twofactor_enforced_groups' => 
  array (
  ),
  'twofactor_enforced_excluded_groups' => 
  array (
  ),
  'mail_sendmailmode' => 'smtp',
  'enabledPreviewProviders' => 
  array (
    0 => 'OC\\Preview\\TXT',
    1 => 'OC\\Preview\\MarkDown',
    2 => 'OC\\Preview\\OpenDocument',
    3 => 'OC\\Preview\\PDF',
    4 => 'OC\\Preview\\MSOffice2003',
    5 => 'OC\\Preview\\MSOfficeDoc',
    6 => 'OC\\Preview\\PDF',
    7 => 'OC\\Preview\\Image',
    8 => 'OC\\Preview\\Photoshop',
    9 => 'OC\\Preview\\TIFF',
    10 => 'OC\\Preview\\SVG',
    11 => 'OC\\Preview\\Font',
    12 => 'OC\\Preview\\MP3',
    13 => 'OC\\Preview\\Movie',
    14 => 'OC\\Preview\\MKV',
    15 => 'OC\\Preview\\MP4',
    16 => 'OC\\Preview\\AVI',
  ),
  'simpleSignUpLink.shown' => false,
);

The output of your Apache/nginx/system log in /var/log/____:

PASTE HERE
1 Like

Hi,

I’ve had the exact same issue. I’m running Next Cloud on Postgresql. I can see in the file:

apps/richdocuments/lib/Migration/Version2060Date20200302131958.php

that template_id is defined for two tables, richdocuments_wopi, and richdocuments_direct.

I think I must’ve had an older-version of this plugin originally, as that column is defined in the middle of the table however the table definitions in my database were missing the column on both tables (unlikely to be an issue with the upgrade as otherwise the latter columns wouldn’t be there).

Seems the most likely explanation is that a latter version of the (plugin?) has added that column into the middle of the table definitions, without consideration for tables already defined.

I’ve manually fixed it in my case by running the following directly on the Postgres DB:

ALTER TABLE oc_richdocuments_wopi ADD COLUMN template_id INTEGER ;
ALTER TABLE oc_richdocuments_direct ADD COLUMN template_id INTEGER ;

(oc_ is my table prefix, it’s defined in my nextcloud/config/config.php file)

I only had a quick look but I don’t see any other issues with the upgrade now. Hopefully someone with access to the source can fix this before it becomes too large of a problem.

2 Likes