YunoHost-Apps / peertube_ynh

Federated (ActivityPub) video streaming platform using P2P for YunoHost
https://joinpeertube.org/fr/
GNU Affero General Public License v3.0
87 stars 27 forks source link

Instance breaks while updating from 4.1.0 to 4.1.1 #322

Closed TILvids closed 2 years ago

TILvids commented 2 years ago

After running the update from 4.1.0 to 4.1.1 the instance breaks. This is the log file that was generated.

https://paste.yunohost.org/raw/lecorivudu

Let me know what else I can get to dig into it. My best guess so far is that while trying to run through the database during the update, the job wasn't completed and the installer timed-out, leaving it in a broken state. No idea where to start on fixing it. Maybe @yalh76 has thoughts?

TILvids commented 2 years ago

I tried restoring from a backup, but the server is still in the same state even after the backup. Probably going to require some manual digging, would certainly appreciate any ideas on this one.

TILvids commented 2 years ago

Here's the result from journalctl

Mar 27 03:08:16 tilvids.com systemd[1]: Started PeerTube daemon. Mar 27 03:08:22 tilvids.com peertube[1374]: [tilvids.com:443] 2022-03-27 03:08:22.491 info: Database peertube_peertube is ready. Mar 27 03:08:22 tilvids.com peertube[1374]: [tilvids.com:443] 2022-03-27 03:08:22.739 error: Cannot install application. { Mar 27 03:08:22 tilvids.com peertube[1374]: "err": { Mar 27 03:08:22 tilvids.com peertube[1374]: "stack": "Error\n at Query.run (/var/www/peertube/node_modules/sequelize/dist/lib/dialects/postgres/query.js:50:25)\n at /var/www/peertube/node_modules/sequelize/dist/lib/ Mar 27 03:08:22 tilvids.com peertube[1374]: "message": "Validation error", Mar 27 03:08:22 tilvids.com peertube[1374]: "name": "SequelizeUniqueConstraintError", Mar 27 03:08:22 tilvids.com peertube[1374]: "errors": [ Mar 27 03:08:22 tilvids.com peertube[1374]: { Mar 27 03:08:22 tilvids.com peertube[1374]: "message": "url must be unique", Mar 27 03:08:22 tilvids.com peertube[1374]: "type": "unique violation", Mar 27 03:08:22 tilvids.com peertube[1374]: "path": "url", Mar 27 03:08:22 tilvids.com peertube[1374]: "value": "https://tilvids.com/accounts/john_doe", Mar 27 03:08:22 tilvids.com peertube[1374]: "origin": "DB", Mar 27 03:08:22 tilvids.com peertube[1374]: "instance": null, Mar 27 03:08:22 tilvids.com peertube[1374]: "validatorKey": "not_unique", Mar 27 03:08:22 tilvids.com peertube[1374]: "validatorName": null, Mar 27 03:08:22 tilvids.com peertube[1374]: "validatorArgs": [] Mar 27 03:08:22 tilvids.com peertube[1374]: } Mar 27 03:08:22 tilvids.com peertube[1374]: ], Mar 27 03:08:22 tilvids.com peertube[1374]: "parent": { Mar 27 03:08:22 tilvids.com peertube[1374]: "stack": "error: could not create unique index \"actor_url\"\n at Parser.parseErrorMessage (/var/www/peertube/node_modules/pg-protocol/dist/parser.js:287:98)\n at Parser Mar 27 03:08:22 tilvids.com peertube[1374]: "message": "could not create unique index \"actor_url\"", Mar 27 03:08:22 tilvids.com peertube[1374]: "length": 204, Mar 27 03:08:22 tilvids.com peertube[1374]: "name": "error", Mar 27 03:08:22 tilvids.com peertube[1374]: "severity": "ERROR", Mar 27 03:08:22 tilvids.com peertube[1374]: "code": "23505", Mar 27 03:08:22 tilvids.com peertube[1374]: "detail": "Key (url)=(https://tilvids.com/accounts/john_doe) is duplicated.", Mar 27 03:08:22 tilvids.com peertube[1374]: "schema": "public", Mar 27 03:08:22 tilvids.com peertube[1374]: "table": "actor", Mar 27 03:08:22 tilvids.com peertube[1374]: "constraint": "actor_url", Mar 27 03:08:22 tilvids.com peertube[1374]: "file": "tuplesort.c", Mar 27 03:08:22 tilvids.com peertube[1374]: "line": "4056", Mar 27 03:08:22 tilvids.com peertube[1374]: "routine": "comparetup_index_btree", Mar 27 03:08:22 tilvids.com peertube[1374]: "sql": "CREATE UNIQUE INDEX \"actor_url\" ON \"actor\" (\"url\")" Mar 27 03:08:22 tilvids.com peertube[1374]: }, Mar 27 03:08:22 tilvids.com peertube[1374]: "fields": { Mar 27 03:08:22 tilvids.com peertube[1374]: "url": "https://tilvids.com/accounts/john_doe" Mar 27 03:08:22 tilvids.com peertube[1374]: }, Mar 27 03:08:22 tilvids.com peertube[1374]: "sql": "CREATE UNIQUE INDEX \"actor_url\" ON \"actor\" (\"url\")" Mar 27 03:08:22 tilvids.com peertube[1374]: } Mar 27 03:08:22 tilvids.com peertube[1374]: } Mar 27 03:08:22 tilvids.com systemd[1]: peertube.service: Main process exited, code=exited, status=255/EXCEPTION

TILvids commented 2 years ago

Update: I tried deleting the row that as complaining about a "duplicate" entry, but still no luck. I tried upgrading again, and it just fell down in a different spot at the database. Here's the new log - https://paste.yunohost.org/raw/fokenatome

This is where it looks like things start falling apart...

2022-03-27 13:45:16,457: DEBUG - + systemctl enable peertube --quiet 2022-03-27 13:45:16,649: DEBUG - + systemctl daemon-reload 2022-03-27 13:45:16,842: INFO - [##########+.........] > Starting a systemd service... 2022-03-27 13:45:16,843: DEBUG - + ynh_systemd_action --service_name=peertube --action=start --log_path=systemd '--line_match=HTTP server listening on localhost' 2022-03-27 13:45:17,005: DEBUG - + service_name=peertube 2022-03-27 13:45:17,006: DEBUG - + action=start 2022-03-27 13:45:17,006: DEBUG - + line_match='HTTP server listening on localhost' 2022-03-27 13:45:17,006: DEBUG - + length=20 2022-03-27 13:45:17,006: DEBUG - + log_path=systemd 2022-03-27 13:45:17,006: DEBUG - + timeout=300 2022-03-27 13:45:17,006: DEBUG - + '[' start == stop ']' 2022-03-27 13:45:17,006: DEBUG - + [[ -n HTTP server listening on localhost ]] 2022-03-27 13:45:17,006: DEBUG - ++ mktemp 2022-03-27 13:45:17,007: DEBUG - + local templog=/tmp/tmp.8kDs4z2Emc 2022-03-27 13:45:17,007: DEBUG - + '[' systemd == systemd ']' 2022-03-27 13:45:17,007: DEBUG - + local pid_tail=1569 2022-03-27 13:45:17,007: DEBUG - + journalctl --unit=peertube --follow --since=-0 --quiet 2022-03-27 13:45:17,007: DEBUG - + '[' start == reload ']' 2022-03-27 13:45:17,007: DEBUG - + systemctl start peertube 2022-03-27 13:45:17,014: DEBUG - + [[ -n HTTP server listening on localhost ]] 2022-03-27 13:45:46,110: WARNING - (this may take some time) 2022-03-27 13:50:18,041: DEBUG - + '[' 300 -ge 3 ']' 2022-03-27 13:50:18,042: DEBUG - + '[' 300 -eq 300 ']' 2022-03-27 13:50:18,042: DEBUG - + ynh_print_warn '--message=The service peertube didn'\''t fully executed the action start before the timeout.' 2022-03-27 13:50:18,042: DEBUG - 2022-03-27 13:50:18,054: DEBUG - + ynh_print_log 'The service peertube didn'\''t fully executed the action start before the timeout.' 2022-03-27 13:50:18,054: DEBUG - + echo -e 'The service peertube didn'\''t fully executed the action start before the timeout.' 2022-03-27 13:50:18,054: DEBUG - + ynh_print_warn '--message=Please find here an extract of the end of the log of the service peertube:' 2022-03-27 13:50:18,055: WARNING - The service peertube didn't fully executed the action start before the timeout. 2022-03-27 13:50:18,068: DEBUG - + ynh_print_log 'Please find here an extract of the end of the log of the service peertube:' 2022-03-27 13:50:18,068: WARNING - Please find here an extract of the end of the log of the service peertube: 2022-03-27 13:50:18,070: DEBUG - + echo -e 'Please find here an extract of the end of the log of the service peertube:' 2022-03-27 13:50:18,070: DEBUG - + ynh_exec_warn journalctl --quiet --no-hostname --no-pager --lines=20 --unit=peertube

I'll post this over on the PeerTube github as well, since I'm not sure if the root-cause of the problem lies with PeerTube, yunohost, or somewhere in-between.

TILvids commented 2 years ago

I deleted a few more db records that the log was complaining about, but this has never been an issue before (I last ran an update a few weeks ago, and certainly had the "problem" tags on the last upgrade). I really think there might be some issue with the upgrade script for yunohost, and am wondering if the root-cause is somewhere in this error message:

The service peertube didn't fully executed the action start before the timeout.

It really seems like the script is not being patient enough while something is happening in the background. The above error message always happens after this point:

Starting a systemd service... (this may take some time)

I just ran another update, it's complaining about the database again. I'm going to try removing the offending entry (it's a tag this time) but I really doubt this is the root-cause, since a) I've updated many times in the past with some of these tags present and b) no matter how many database entries I remove, it keeps complaining while waiting to do something.

Will x-post this to PeerTube Github as well, just in case...

TILvids commented 2 years ago

Don't know if @yalh76 or anyone else might know if there might be some issue with the new upgrade script? I literally didn't change anything between my update to 4.1.0 and this attempt to upgrade to 4.1.1. Only thing I did was try to push the upgrade (and possibly whatever system updates yunohost said were available).

fflorent commented 2 years ago

You seem to have an issue while installing the peertube-plugin-auth-ldap.

That's weird, I take a look.

fflorent commented 2 years ago

OK, you seem to have installed a plugin named videojs-chromecast. Can you paste here the package.json of the plugin installed through this command: sudo cat /home/yunohost.app/peertube/storage/plugins/package.json?

TILvids commented 2 years ago

Yup, here is the output @fflorent

{ "dependencies": { "peertube-plugin-auth-ldap": "0.0.10", "peertube-plugin-bittube-logo-favicon": "^1.0.5", "peertube-plugin-custom-links": "^0.0.10", "peertube-plugin-livechat": "5.5.0", "peertube-plugin-social-sharing": "0.10.1", "peertube-plugin-tv-streaming": "1.0.1", "peertube-theme-bittube-dark-mode": "3.0.0", "peertube-theme-bittube-dark-mode-no-background": "3.0.1", "peertube-theme-dark": "2.2.5" } }

fflorent commented 2 years ago

That's it!

There has been a recent change in the peertube-plugin-tv-streaming: https://framagit.org/kontrollanten/peertube-plugin-tv-streaming/-/commit/bdb014a2eca4ba460e0dbf1c2b9c0ab29cf14469

This line in what you pasted is interesting:

Error: Command failed: yarn add peertube-plugin-auth-ldap@0.0.10\nwarning package.json: No license field\nwarning No license field\nerror Command failed.\nExit code: 128\nCommand: git\nArguments: ls-remote --tags --heads git://github.com/kontrollanten/videojs-chromecast\nDirectory: /home/yunohost.app/peertube/storage/plugins\nOutput:\nfatal: remote error: \n The unauthenticated git protocol on port 9418 is no longer supported.\nPlease see https://github.blog/2021-09-01-improving-git-protocol-security-github/ for more information.\n\n at ChildProcess.exithandler (node:child_process:399:12)\n at ChildProcess.emit (node:events:520:28)\n at ChildProcess.emit (node:domain:475:12)\n at maybeClose (node:internal/child_process:1092:16)\n at Process.ChildProcess._handle.onexit (node:internal/child_process:302:5)

The error says: remote error: The unauthenticated git protocol on port 9418 is no longer supported

So I guess updating this plugin should do the trick?

Is your instance running at this moment or is it broken? In the first case, you should be able to update the plugin through the web admin interface (https://tilvids.com/admin/plugins/list-installed?pluginType=1)

TILvids commented 2 years ago

Nope, sadly this has taken down the entire site for the last three days. :(

Is there a way to remove it from CLI? That plugin was added over a year ago because a user wanted to be able to watch PeerTube via Chromecast. It definitely does not need to be installed, especially if it's the cause of the site being down. :)

fflorent commented 2 years ago

I guess you can attempt to update the plugin through npm (if /var/www/peertube points to the right directory, otherwise adapt the cd and NODE_CONFIG_DIR):

cd /var/www/peertube
sudo -u peertube PATH="/opt/node_n/n/versions/node/16/bin:$PATH" NODE_CONFIG_DIR="/var/www/peertube/config" NODE_ENV=production npm run plugin:install -- --npm-name peertube-plugin-tv-streaming

If there is an error, please share the logs.

Otherwise, attempt a restart:

systemctl restart peertube

Or a backup restoration.

TILvids commented 2 years ago

I'll try updating it, but is there a way to just remove it from the command line? We definitely don't need it.

fflorent commented 2 years ago

Quite the same command, except you invoke plugin:uninstall (if /var/www/peertube points to the right directory, otherwise adapt the cd and NODE_CONFIG_DIR):

cd /var/www/peertube
sudo -u peertube PATH="/opt/node_n/n/versions/node/16/bin:$PATH" NODE_CONFIG_DIR="/var/www/peertube/config" NODE_ENV=production npm run plugin:uninstall -- --npm-name peertube-plugin-tv-streaming
TILvids commented 2 years ago

Tried and failed to uninstall:

peertube@4.1.0 plugin:uninstall node ./dist/scripts/plugin/uninstall.js "--npm-name" "peertube-plugin-tv-streaming" [tilvids.com:443] 2022-03-28 17:26:27.796 info: Uninstalling plugin peertube-plugin-tv-streaming. [tilvids.com:443] 2022-03-28 17:26:27.799 info: Unregister plugin peertube-plugin-tv-streaming. [tilvids.com:443] 2022-03-28 17:26:27.800 warn: Cannot unregister plugin peertube-plugin-tv-streaming. { "err": { "stack": "Error: Unknown plugin peertube-plugin-tv-streaming to unregister\n at PluginManager. (/var/www/peertube/dist/server/lib/plugins/plugin-manager.js:180:23)\n at Generator.next ()\n at /var/www/peertube/node_modules/tslib/tslib.js:117:75\n at new Promise ()\n at awaiter (/var/www/peertube/node_modules/tslib/tslib.js:113:16)\n at PluginManager.unregister (/var/www/peertube/dist/server/lib/plugins/plugin-manager.js:176:38)\n at PluginManager. (/var/www/peertube/dist/server/lib/plugins/plugin-manager.js:260:28)\n at Generator.next ()\n at /var/www/peertube/node_modules/tslib/tslib.js:117:75\n at new Promise ()\n at awaiter (/var/www/peertube/node_modules/tslib/tslib.js:113:16)\n at PluginManager.uninstall (/var/www/peertube/dist/server/lib/plugins/plugin-manager.js:257:38)\n at /var/www/peertube/dist/scripts/plugin/uninstall.js:25:55\n at Generator.next ()\n at fulfilled (/var/www/peertube/node_modules/tslib/tslib.js:114:62)\n at processTicksAndRejections (node:internal/process/task_queues:96:5)", "message": "Unknown plugin peertube-plugin-tv-streaming to unregister" } } { err: Error: Command failed: yarn remove peertube-plugin-tv-streaming /bin/sh: 1: yarn: not found

Looks like it can't find that plugin maybe?

fflorent commented 2 years ago

Looks like it can't find that plugin maybe?

No, you have an issue with yarn not being installed. I guess the peertube installation is in an unknown state.

Before going further, do you have a backup of your PeerTube instance with all its videos in it?

TILvids commented 2 years ago

I believe I have a snapshot that would work, yes, though obviously would love to avoid putting that to the test...

fflorent commented 2 years ago

Alright. That should be somewhat OK.

Optional: If you have enough disk space for duplicating your videos, you can attempt a full backup: sudo yunohost backup create --apps peertube -n peertube_before_removing_plugin

If you attempted a backup restoration using the peertube-pre-upgrade1.tar archive, please copy it somewhere else while the instance is not running using version 4.1.1.

Then try this:

cd /home/yunohost.app/peertube/storage/plugins
sudo -u peertube PATH="/opt/node_n/n/versions/node/16/bin:$PATH" NODE_CONFIG_DIR="/var/www/peertube/config" NODE_ENV=production npm uninstall --save peertube-plugin-tv-streaming

And try restoring the backup (sudo yunohost backup restore peertube-pre-upgrade1)

EDIT: and if after that your instance is running, go to https://tilvids.com/admin/plugins/list-installed?pluginType=1 and uninstall the plugin. You may have an error but the uninstallation should still be effective after a manual page reload.

PS: You may be interested in borg for your backups, it's quite powerful. You have a client and a server for Yunohost

TILvids commented 2 years ago

Here's the result of that:

removed 183 packages, and audited 100 packages in 2s

8 packages are looking for funding run npm fund for details

found 0 vulnerabilities

When I tell it to restore the backup, it outputs:

Error: The following apps can't be restored because they are already installed: peertube

Should I uninstall the peertube app via Yunohost first?

fflorent commented 2 years ago

Have you made the optional backup?

TILvids commented 2 years ago

Yeah, I have a downloaded local copy of that peertube-pre-upgrade1

fflorent commented 2 years ago

My question was for this:

Optional: If you have enough disk space for duplicating your videos, you can attempt a full backup: sudo yunohost backup create --apps peertube -n peertube_before_removing_plugin

Because I fear of removing the data directory in /home/yunohost.app/peertube (which contains your videos).

Still, that must not be required if I am correct, the removal by default keeps the data directory: https://github.com/YunoHost-Apps/peertube_ynh/blob/master/scripts/remove#L89-L94

If you are OK with that assumption, you can attempt this:

sudo yunohost app remove peertube
sudo yunohost backup restore peertube-pre-upgrade1
TILvids commented 2 years ago

Unfortunately don't have space to make a full backup on the server like that. I have removed the app before though (two days ago, trying to fix this) and it appears that removing the PeerTube app via Yunohost does not touch the video data.

I will give it a shot, because at this point, I'm not sure what else to try...

TILvids commented 2 years ago

Tried restoring, there were some errors, but looks like it restored all the data. However, site was still 502'ing. I tried a restart, no luck. I'm going to try running the update again, I'll post the (inevitable) error log when it's done.

fflorent commented 2 years ago

What logs do you have this far?

TILvids commented 2 years ago

Waiting on the upgrade attempt right now, I'll post what I see from that when it's done. Let me know if there are any other logs you think would help.

TILvids commented 2 years ago

Upgrade failed. Here's some of the output:

Updating a config file... Building Yarn dependencies... Upgrading systemd configuration... Starting a systemd service... (this may take some time) The service peertube didn't fully executed the action start before the timeout. Please find here an extract of the end of the log of the service peertube: Mar 28 19:21:12 peertube[12550]: "schema": "public", Mar 28 19:21:12 peertube[12550]: "table": "tag", Mar 28 19:21:12 peertube[12550]: "constraint": "tag_name", Mar 28 19:21:12 peertube[12550]: "file": "tuplesort.c", Mar 28 19:21:12 peertube[12550]: "line": "4056", Mar 28 19:21:12 peertube[12550]: "routine": "comparetup_index_btree", Mar 28 19:21:12 peertube[12550]: "sql": "CREATE UNIQUE INDEX \"tag_name\" ON \"tag\" (\"name\")" Mar 28 19:21:12 peertube[12550]: }, Mar 28 19:21:12 peertube[12550]: "fields": { Mar 28 19:21:12 peertube[12550]: "name": "freesoftware" Mar 28 19:21:12 peertube[12550]: }, Mar 28 19:21:12 peertube[12550]: "sql": "CREATE UNIQUE INDEX \"tag_name\" ON \"tag\" (\"name\")" Mar 28 19:21:12 peertube[12550]: } Mar 28 19:21:12 peertube[12550]: } Mar 28 19:21:12 systemd[1]: peertube.service: Main process exited, code=exited, status=255/EXCEPTION Mar 28 19:21:12 systemd[1]: peertube.service: Failed with result 'exit-code'. Mar 28 19:21:12 systemd[1]: peertube.service: Service RestartSec=100ms expired, scheduling restart. Mar 28 19:21:12 systemd[1]: peertube.service: Scheduled restart job, restart counter is at 69. Mar 28 19:21:12 systemd[1]: Stopped PeerTube daemon. Mar 28 19:21:12 systemd[1]: Started PeerTube daemon. Installing LDAP plugin...

Let me know what else would be useful to diagnose.

fflorent commented 2 years ago

Don't you have more information above? (especially about the index creation)

TILvids commented 2 years ago

Well wait, so now this is interesting. It looks like the upgrade succeeded...

Now upgrading peertube... Loading installation settings... Checking version... Backing up the app before upgrading (may take a while)... Stopping a systemd service... Ensuring downward compatibility... NOTICE: extension "unaccent" already exists, skipping NOTICE: extension "pg_trgm" already exists, skipping '/etc/apt/sources.list.d/yarn.list' wasn't deleted because it doesn't exist. '/usr/share/yunohost/hooks/conf_regen/15-nginx_peertube' wasn't deleted because it doesn't exist. '/home/yunohost.app/peertube/storage/logs' wasn't deleted because it doesn't exist. Making sure dedicated system user exists... Upgrading source files... Upgrading NGINX web server configuration... Upgrading dependencies... dpkg: warning: version 'v7.5.0' has bad syntax: version number does not start with digit '/etc/apt/trusted.gpg.d/peertube.asc' wasn't deleted because it doesn't exist. Creating a data directory... Updating a config file... Building Yarn dependencies... Upgrading systemd configuration... Starting a systemd service... (this may take some time) The service peertube didn't fully executed the action start before the timeout. Please find here an extract of the end of the log of the service peertube: Mar 28 19:21:12 peertube[12550]: "schema": "public", Mar 28 19:21:12 peertube[12550]: "table": "tag", Mar 28 19:21:12 peertube[12550]: "constraint": "tag_name", Mar 28 19:21:12 peertube[12550]: "file": "tuplesort.c", Mar 28 19:21:12 peertube[12550]: "line": "4056", Mar 28 19:21:12 peertube[12550]: "routine": "comparetup_index_btree", Mar 28 19:21:12 peertube[12550]: "sql": "CREATE UNIQUE INDEX \"tag_name\" ON \"tag\" (\"name\")" Mar 28 19:21:12 peertube[12550]: }, Mar 28 19:21:12 peertube[12550]: "fields": { Mar 28 19:21:12 peertube[12550]: "name": "freesoftware" Mar 28 19:21:12 peertube[12550]: }, Mar 28 19:21:12 peertube[12550]: "sql": "CREATE UNIQUE INDEX \"tag_name\" ON \"tag\" (\"name\")" Mar 28 19:21:12 peertube[12550]: } Mar 28 19:21:12 peertube[12550]: } Mar 28 19:21:12 systemd[1]: peertube.service: Main process exited, code=exited, status=255/EXCEPTION Mar 28 19:21:12 systemd[1]: peertube.service: Failed with result 'exit-code'. Mar 28 19:21:12 systemd[1]: peertube.service: Service RestartSec=100ms expired, scheduling restart. Mar 28 19:21:12 systemd[1]: peertube.service: Scheduled restart job, restart counter is at 69. Mar 28 19:21:12 systemd[1]: Stopped PeerTube daemon. Mar 28 19:21:12 systemd[1]: Started PeerTube daemon. Installing LDAP plugin... Installing PeerTube livechat plugin... Stopping a systemd service... Upgrading logrotate configuration... Integrating service in YunoHost... Starting a systemd service... (this may take some time) The service peertube didn't fully executed the action start before the timeout. Please find here an extract of the end of the log of the service peertube: Mar 28 19:26:31 peertube[15346]: "name": "error", Mar 28 19:26:31 peertube[15346]: "severity": "ERROR", Mar 28 19:26:31 peertube[15346]: "code": "23505", Mar 28 19:26:31 peertube[15346]: "detail": "Key (name)=(freesoftware) is duplicated.", Mar 28 19:26:31 peertube[15346]: "schema": "public", Mar 28 19:26:31 peertube[15346]: "table": "tag", Mar 28 19:26:31 peertube[15346]: "constraint": "tag_name", Mar 28 19:26:31 peertube[15346]: "file": "tuplesort.c", Mar 28 19:26:31 peertube[15346]: "line": "4056", Mar 28 19:26:31 peertube[15346]: "routine": "comparetup_index_btree", Mar 28 19:26:31 peertube[15346]: "sql": "CREATE UNIQUE INDEX \"tag_name\" ON \"tag\" (\"name\")" Mar 28 19:26:31 peertube[15346]: }, Mar 28 19:26:31 peertube[15346]: "fields": { Mar 28 19:26:31 peertube[15346]: "name": "freesoftware" Mar 28 19:26:31 peertube[15346]: }, Mar 28 19:26:31 peertube[15346]: "sql": "CREATE UNIQUE INDEX \"tag_name\" ON \"tag\" (\"name\")" Mar 28 19:26:31 peertube[15346]: } Mar 28 19:26:31 peertube[15346]: } Mar 28 19:26:31 systemd[1]: peertube.service: Main process exited, code=exited, status=255/EXCEPTION Mar 28 19:26:31 systemd[1]: peertube.service: Failed with result 'exit-code'. Reloading NGINX web server... Upgrade of peertube completed peertube upgraded Upgrade complete

But there were still a bunch of errors with database entries, but looks like it at least went through this time. But then when I go to the site (after a restart of the server), I'm still getting a 502 error.

So...maybe it's a different thing we have to figure out now?

fflorent commented 2 years ago

Can you please share error logs?

You can use the Yunohost UI: https:///yunohost/admin/#/services/peertube

Or using journalctl -u peertube

TILvids commented 2 years ago

Output of journalctl -u peertube:

-- Logs begin at Mon 2022-03-28 19:11:45 UTC, end at Mon 2022-03-28 20:12:16 UTC. -- Mar 28 19:11:49 tilvids.com systemd[1]: Started PeerTube daemon. Mar 28 19:11:55 tilvids.com peertube[1366]: [tilvids.com:443] 2022-03-28 19:11:55.359 info: Database peertube_peertube is ready. Mar 28 19:11:55 tilvids.com peertube[1366]: [tilvids.com:443] 2022-03-28 19:11:55.451 error: Cannot install application. { Mar 28 19:11:55 tilvids.com peertube[1366]: "err": { Mar 28 19:11:55 tilvids.com peertube[1366]: "stack": "Error\n at Query.run (/var/www/peertube/node_modules/sequelize/dist/lib/dialects/postgres/query.js:50:25)\n at / Mar 28 19:11:55 tilvids.com peertube[1366]: "message": "Validation error", Mar 28 19:11:55 tilvids.com peertube[1366]: "name": "SequelizeUniqueConstraintError", Mar 28 19:11:55 tilvids.com peertube[1366]: "errors": [ Mar 28 19:11:55 tilvids.com peertube[1366]: { Mar 28 19:11:55 tilvids.com peertube[1366]: "message": "name must be unique", Mar 28 19:11:55 tilvids.com peertube[1366]: "type": "unique violation", Mar 28 19:11:55 tilvids.com peertube[1366]: "path": "name", Mar 28 19:11:55 tilvids.com peertube[1366]: "value": "freesoftware", Mar 28 19:11:55 tilvids.com peertube[1366]: "origin": "DB", Mar 28 19:11:55 tilvids.com peertube[1366]: "instance": null, Mar 28 19:11:55 tilvids.com peertube[1366]: "validatorKey": "not_unique", Mar 28 19:11:55 tilvids.com peertube[1366]: "validatorName": null, Mar 28 19:11:55 tilvids.com peertube[1366]: "validatorArgs": [] Mar 28 19:11:55 tilvids.com peertube[1366]: } Mar 28 19:11:55 tilvids.com peertube[1366]: ], Mar 28 19:11:55 tilvids.com peertube[1366]: "parent": { Mar 28 19:11:55 tilvids.com peertube[1366]: "stack": "error: could not create unique index \"tag_name\"\n at Parser.parseErrorMessage (/var/www/peertube/node_modules/p Mar 28 19:11:55 tilvids.com peertube[1366]: "message": "could not create unique index \"tag_name\"", Mar 28 19:11:55 tilvids.com peertube[1366]: "length": 176, Mar 28 19:11:55 tilvids.com peertube[1366]: "name": "error", Mar 28 19:11:55 tilvids.com peertube[1366]: "severity": "ERROR", Mar 28 19:11:55 tilvids.com peertube[1366]: "code": "23505", Mar 28 19:11:55 tilvids.com peertube[1366]: "detail": "Key (name)=(freesoftware) is duplicated.", Mar 28 19:11:55 tilvids.com peertube[1366]: "schema": "public", Mar 28 19:11:55 tilvids.com peertube[1366]: "table": "tag", Mar 28 19:11:55 tilvids.com peertube[1366]: "constraint": "tag_name", Mar 28 19:11:55 tilvids.com peertube[1366]: "file": "tuplesort.c", Mar 28 19:11:55 tilvids.com peertube[1366]: "line": "4056", Mar 28 19:11:55 tilvids.com peertube[1366]: "routine": "comparetup_index_btree", Mar 28 19:11:55 tilvids.com peertube[1366]: "sql": "CREATE UNIQUE INDEX \"tag_name\" ON \"tag\" (\"name\")" Mar 28 19:11:55 tilvids.com peertube[1366]: }, Mar 28 19:11:55 tilvids.com peertube[1366]: "fields": { Mar 28 19:11:55 tilvids.com peertube[1366]: "name": "freesoftware" Mar 28 19:11:55 tilvids.com peertube[1366]: }, Mar 28 19:11:55 tilvids.com peertube[1366]: "sql": "CREATE UNIQUE INDEX \"tag_name\" ON \"tag\" (\"name\")" Mar 28 19:11:55 tilvids.com peertube[1366]: } Mar 28 19:11:55 tilvids.com peertube[1366]: } Mar 28 19:11:55 tilvids.com systemd[1]: peertube.service: Main process exited, code=exited, status=255/EXCEPTION Mar 28 19:11:55 tilvids.com systemd[1]: peertube.service: Failed with result 'exit-code'. Mar 28 19:11:55 tilvids.com systemd[1]: peertube.service: Service RestartSec=100ms expired, scheduling restart. Mar 28 19:11:55 tilvids.com systemd[1]: peertube.service: Scheduled restart job, restart counter is at 1. Mar 28 19:11:55 tilvids.com systemd[1]: Stopped PeerTube daemon. Mar 28 19:11:55 tilvids.com systemd[1]: Started PeerTube daemon. Mar 28 19:11:58 tilvids.com peertube[1399]: [tilvids.com:443] 2022-03-28 19:11:58.327 info: Database peertube_peertube is ready. Mar 28 19:11:58 tilvids.com peertube[1399]: [tilvids.com:443] 2022-03-28 19:11:58.409 error: Cannot install application. { Mar 28 19:11:58 tilvids.com peertube[1399]: "err": { Mar 28 19:11:49 tilvids.com systemd[1]: Started PeerTube daemon. Mar 28 19:11:55 tilvids.com peertube[1366]: [tilvids.com:443] 2022-03-28 19:11:55.359 info: Database peertube_peertube is ready. Mar 28 19:11:55 tilvids.com peertube[1366]: [tilvids.com:443] 2022-03-28 19:11:55.451 error: Cannot install application. { Mar 28 19:11:55 tilvids.com peertube[1366]: "err": { Mar 28 19:11:55 tilvids.com peertube[1366]: "stack": "Error\n at Query.run (/var/www/peertube/node_modules/sequelize/dist/lib/dialects/postgres/query.js:50:25)\n at / Mar 28 19:11:55 tilvids.com peertube[1366]: "message": "Validation error", Mar 28 19:11:55 tilvids.com peertube[1366]: "name": "SequelizeUniqueConstraintError", Mar 28 19:11:55 tilvids.com peertube[1366]: "errors": [ Mar 28 19:11:55 tilvids.com peertube[1366]: { Mar 28 19:11:55 tilvids.com peertube[1366]: "message": "name must be unique", Mar 28 19:11:55 tilvids.com peertube[1366]: "type": "unique violation", Mar 28 19:11:55 tilvids.com peertube[1366]: "path": "name", Mar 28 19:11:55 tilvids.com peertube[1366]: "value": "freesoftware", Mar 28 19:11:55 tilvids.com peertube[1366]: "origin": "DB", Mar 28 19:11:55 tilvids.com peertube[1366]: "instance": null, Mar 28 19:11:55 tilvids.com peertube[1366]: "validatorKey": "not_unique", Mar 28 19:11:55 tilvids.com peertube[1366]: "validatorName": null, Mar 28 19:11:55 tilvids.com peertube[1366]: "validatorArgs": [] Mar 28 19:11:55 tilvids.com peertube[1366]: } Mar 28 19:11:55 tilvids.com peertube[1366]: ], Mar 28 19:11:55 tilvids.com peertube[1366]: "parent": { Mar 28 19:11:55 tilvids.com peertube[1366]: "stack": "error: could not create unique index \"tag_name\"\n at Parser.parseErrorMessage (/var/www/peertube/node_modules/p Mar 28 19:11:55 tilvids.com peertube[1366]: "message": "could not create unique index \"tag_name\"", Mar 28 19:11:55 tilvids.com peertube[1366]: "length": 176, Mar 28 19:11:55 tilvids.com peertube[1366]: "name": "error", Mar 28 19:11:55 tilvids.com peertube[1366]: "severity": "ERROR", Mar 28 19:11:55 tilvids.com peertube[1366]: "code": "23505", Mar 28 19:11:55 tilvids.com peertube[1366]: "detail": "Key (name)=(freesoftware) is duplicated.", Mar 28 19:11:55 tilvids.com peertube[1366]: "schema": "public", Mar 28 19:11:55 tilvids.com peertube[1366]: "table": "tag", Mar 28 19:11:55 tilvids.com peertube[1366]: "constraint": "tag_name", Mar 28 19:11:55 tilvids.com peertube[1366]: "file": "tuplesort.c", Mar 28 19:11:55 tilvids.com peertube[1366]: "line": "4056", Mar 28 19:11:55 tilvids.com peertube[1366]: "routine": "comparetup_index_btree", Mar 28 19:11:55 tilvids.com peertube[1366]: "sql": "CREATE UNIQUE INDEX \"tag_name\" ON \"tag\" (\"name\")" Mar 28 19:11:55 tilvids.com peertube[1366]: }, Mar 28 19:11:55 tilvids.com peertube[1366]: "fields": { Mar 28 19:11:55 tilvids.com peertube[1366]: "name": "freesoftware" Mar 28 19:11:55 tilvids.com peertube[1366]: }, Mar 28 19:11:55 tilvids.com peertube[1366]: "sql": "CREATE UNIQUE INDEX \"tag_name\" ON \"tag\" (\"name\")" Mar 28 19:11:55 tilvids.com peertube[1366]: } Mar 28 19:11:55 tilvids.com peertube[1366]: } Mar 28 19:11:55 tilvids.com systemd[1]: peertube.service: Main process exited, code=exited, status=255/EXCEPTION Mar 28 19:11:55 tilvids.com systemd[1]: peertube.service: Failed with result 'exit-code'. Mar 28 19:11:55 tilvids.com systemd[1]: peertube.service: Service RestartSec=100ms expired, scheduling restart. Mar 28 19:11:55 tilvids.com systemd[1]: peertube.service: Scheduled restart job, restart counter is at 1. Mar 28 19:11:55 tilvids.com systemd[1]: Stopped PeerTube daemon. Mar 28 19:11:55 tilvids.com systemd[1]: Started PeerTube daemon. Mar 28 19:11:58 tilvids.com peertube[1399]: [tilvids.com:443] 2022-03-28 19:11:58.327 info: Database peertube_peertube is ready. Mar 28 19:11:58 tilvids.com peertube[1399]: [tilvids.com:443] 2022-03-28 19:11:58.409 error: Cannot install application. { Mar 28 19:11:58 tilvids.com peertube[1399]: "err": { Mar 28 19:11:58 tilvids.com peertube[1399]: "stack": "Error\n at Query.run (/var/www/peertube/node_modules/sequelize/dist/lib/dialects/postgres/query.js:50:25)\n at / ar 28 19:11:49 tilvids.com systemd[1]: Started PeerTube daemon. Mar 28 19:11:55 tilvids.com peertube[1366]: [tilvids.com:443] 2022-03-28 19:11:55.359 info: Database peertube_peertube is ready. Mar 28 19:11:55 tilvids.com peertube[1366]: [tilvids.com:443] 2022-03-28 19:11:55.451 error: Cannot install application. { Mar 28 19:11:55 tilvids.com peertube[1366]: "err": { Mar 28 19:11:55 tilvids.com peertube[1366]: "stack": "Error\n at Query.run (/var/www/peertube/node_modules/sequelize/dist/lib/dialects/postgres/query.js:50:25)\n at / Mar 28 19:11:55 tilvids.com peertube[1366]: "message": "Validation error", Mar 28 19:11:55 tilvids.com peertube[1366]: "name": "SequelizeUniqueConstraintError", Mar 28 19:11:55 tilvids.com peertube[1366]: "errors": [ Mar 28 19:11:55 tilvids.com peertube[1366]: { Mar 28 19:11:55 tilvids.com peertube[1366]: "message": "name must be unique", Mar 28 19:11:55 tilvids.com peertube[1366]: "type": "unique violation", Mar 28 19:11:55 tilvids.com peertube[1366]: "path": "name", Mar 28 19:11:55 tilvids.com peertube[1366]: "value": "freesoftware", Mar 28 19:11:55 tilvids.com peertube[1366]: "origin": "DB", Mar 28 19:11:55 tilvids.com peertube[1366]: "instance": null, Mar 28 19:11:55 tilvids.com peertube[1366]: "validatorKey": "not_unique", Mar 28 19:11:55 tilvids.com peertube[1366]: "validatorName": null, Mar 28 19:11:55 tilvids.com peertube[1366]: "validatorArgs": [] Mar 28 19:11:55 tilvids.com peertube[1366]: } Mar 28 19:11:55 tilvids.com peertube[1366]: ], Mar 28 19:11:55 tilvids.com peertube[1366]: "parent": { Mar 28 19:11:55 tilvids.com peertube[1366]: "stack": "error: could not create unique index \"tag_name\"\n at Parser.parseErrorMessage (/var/www/peertube/node_modules/p Mar 28 19:11:55 tilvids.com peertube[1366]: "message": "could not create unique index \"tag_name\"", Mar 28 19:11:55 tilvids.com peertube[1366]: "length": 176, Mar 28 19:11:55 tilvids.com peertube[1366]: "name": "error", Mar 28 19:11:55 tilvids.com peertube[1366]: "severity": "ERROR", Mar 28 19:11:55 tilvids.com peertube[1366]: "code": "23505", Mar 28 19:11:55 tilvids.com peertube[1366]: "detail": "Key (name)=(freesoftware) is duplicated.", Mar 28 19:11:55 tilvids.com peertube[1366]: "schema": "public", Mar 28 19:11:55 tilvids.com peertube[1366]: "table": "tag", Mar 28 19:11:55 tilvids.com peertube[1366]: "constraint": "tag_name", Mar 28 19:11:55 tilvids.com peertube[1366]: "file": "tuplesort.c", Mar 28 19:11:55 tilvids.com peertube[1366]: "line": "4056", Mar 28 19:11:55 tilvids.com peertube[1366]: "routine": "comparetup_index_btree", Mar 28 19:11:55 tilvids.com peertube[1366]: "sql": "CREATE UNIQUE INDEX \"tag_name\" ON \"tag\" (\"name\")" Mar 28 19:11:55 tilvids.com peertube[1366]: }, Mar 28 19:11:55 tilvids.com peertube[1366]: "fields": { Mar 28 19:11:55 tilvids.com peertube[1366]: "name": "freesoftware" Mar 28 19:11:55 tilvids.com peertube[1366]: }, Mar 28 19:11:55 tilvids.com peertube[1366]: "sql": "CREATE UNIQUE INDEX \"tag_name\" ON \"tag\" (\"name\")" Mar 28 19:11:55 tilvids.com peertube[1366]: } Mar 28 19:11:55 tilvids.com peertube[1366]: } Mar 28 19:11:55 tilvids.com systemd[1]: peertube.service: Main process exited, code=exited, status=255/EXCEPTION Mar 28 19:11:55 tilvids.com systemd[1]: peertube.service: Failed with result 'exit-code'. Mar 28 19:11:55 tilvids.com systemd[1]: peertube.service: Service RestartSec=100ms expired, scheduling restart. Mar 28 19:11:55 tilvids.com systemd[1]: peertube.service: Scheduled restart job, restart counter is at 1. Mar 28 19:11:55 tilvids.com systemd[1]: Stopped PeerTube daemon. Mar 28 19:11:55 tilvids.com systemd[1]: Started PeerTube daemon. Mar 28 19:11:58 tilvids.com peertube[1399]: [tilvids.com:443] 2022-03-28 19:11:58.327 info: Database peertube_peertube is ready. Mar 28 19:11:58 tilvids.com peertube[1399]: [tilvids.com:443] 2022-03-28 19:11:58.409 error: Cannot install application. { Mar 28 19:11:58 tilvids.com peertube[1399]: "err": { Mar 28 19:11:58 tilvids.com peertube[1399]: "stack": "Error\n at Query.run (/var/www/peertube/node_modules/sequelize/dist/lib/dialects/postgres/query.js:50:25)\n at / Mar 28 19:11:58 tilvids.com peertube[1399]: "message": "Validation error", Mar 28 19:11:49 tilvids.com systemd[1]: Started PeerTube daemon. Mar 28 19:11:55 tilvids.com peertube[1366]: [tilvids.com:443] 2022-03-28 19:11:55.359 info: Database peertube_peertube is ready. Mar 28 19:11:55 tilvids.com peertube[1366]: [tilvids.com:443] 2022-03-28 19:11:55.451 error: Cannot install application. { Mar 28 19:11:55 tilvids.com peertube[1366]: "err": { Mar 28 19:11:55 tilvids.com peertube[1366]: "stack": "Error\n at Query.run (/var/www/peertube/node_modules/sequelize/dist/lib/dialects/postgres/query.js:50:25)\n at / Mar 28 19:11:55 tilvids.com peertube[1366]: "message": "Validation error", Mar 28 19:11:55 tilvids.com peertube[1366]: "name": "SequelizeUniqueConstraintError", Mar 28 19:11:55 tilvids.com peertube[1366]: "errors": [ Mar 28 19:11:55 tilvids.com peertube[1366]: { Mar 28 19:11:55 tilvids.com peertube[1366]: "message": "name must be unique", Mar 28 19:11:55 tilvids.com peertube[1366]: "type": "unique violation", Mar 28 19:11:55 tilvids.com peertube[1366]: "path": "name", Mar 28 19:11:55 tilvids.com peertube[1366]: "value": "freesoftware", Mar 28 19:11:55 tilvids.com peertube[1366]: "origin": "DB", Mar 28 19:11:55 tilvids.com peertube[1366]: "instance": null, Mar 28 19:11:55 tilvids.com peertube[1366]: "validatorKey": "not_unique", Mar 28 19:11:55 tilvids.com peertube[1366]: "validatorName": null, Mar 28 19:11:55 tilvids.com peertube[1366]: "validatorArgs": [] Mar 28 19:11:55 tilvids.com peertube[1366]: } Mar 28 19:11:55 tilvids.com peertube[1366]: ], Mar 28 19:11:55 tilvids.com peertube[1366]: "parent": { Mar 28 19:11:55 tilvids.com peertube[1366]: "stack": "error: could not create unique index \"tag_name\"\n at Parser.parseErrorMessage (/var/www/peertube/node_modules/p Mar 28 19:11:55 tilvids.com peertube[1366]: "message": "could not create unique index \"tag_name\"", Mar 28 19:11:55 tilvids.com peertube[1366]: "length": 176, Mar 28 19:11:55 tilvids.com peertube[1366]: "name": "error", Mar 28 19:11:55 tilvids.com peertube[1366]: "severity": "ERROR", Mar 28 19:11:55 tilvids.com peertube[1366]: "code": "23505", Mar 28 19:11:55 tilvids.com peertube[1366]: "detail": "Key (name)=(freesoftware) is duplicated.", Mar 28 19:11:55 tilvids.com peertube[1366]: "schema": "public", Mar 28 19:11:55 tilvids.com peertube[1366]: "table": "tag", Mar 28 19:11:55 tilvids.com peertube[1366]: "constraint": "tag_name", Mar 28 19:11:55 tilvids.com peertube[1366]: "file": "tuplesort.c", Mar 28 19:11:55 tilvids.com peertube[1366]: "line": "4056", Mar 28 19:11:55 tilvids.com peertube[1366]: "routine": "comparetup_index_btree", Mar 28 19:11:55 tilvids.com peertube[1366]: "sql": "CREATE UNIQUE INDEX \"tag_name\" ON \"tag\" (\"name\")" Mar 28 19:11:55 tilvids.com peertube[1366]: }, Mar 28 19:11:55 tilvids.com peertube[1366]: "fields": { Mar 28 19:11:55 tilvids.com peertube[1366]: "name": "freesoftware" Mar 28 19:11:55 tilvids.com peertube[1366]: }, Mar 28 19:11:55 tilvids.com peertube[1366]: "sql": "CREATE UNIQUE INDEX \"tag_name\" ON \"tag\" (\"name\")" Mar 28 19:11:55 tilvids.com peertube[1366]: } Mar 28 19:11:55 tilvids.com peertube[1366]: } Mar 28 19:11:55 tilvids.com systemd[1]: peertube.service: Main process exited, code=exited, status=255/EXCEPTION Mar 28 19:11:55 tilvids.com systemd[1]: peertube.service: Failed with result 'exit-code'. Mar 28 19:11:55 tilvids.com systemd[1]: peertube.service: Service RestartSec=100ms expired, scheduling restart. Mar 28 19:11:55 tilvids.com systemd[1]: peertube.service: Scheduled restart job, restart counter is at 1. Mar 28 19:11:55 tilvids.com systemd[1]: Stopped PeerTube daemon. Mar 28 19:11:55 tilvids.com systemd[1]: Started PeerTube daemon. Mar 28 19:11:58 tilvids.com peertube[1399]: [tilvids.com:443] 2022-03-28 19:11:58.327 info: Database peertube_peertube is ready. Mar 28 19:11:58 tilvids.com peertube[1399]: [tilvids.com:443] 2022-03-28 19:11:58.409 error: Cannot install application. { Mar 28 19:11:58 tilvids.com peertube[1399]: "err": { Mar 28 19:11:58 tilvids.com peertube[1399]: "stack": "Error\n at Query.run (/var/www/peertube/node_modules/sequelize/dist/lib/dialects/postgres/query.js:50:25)\n at / Mar 28 19:11:58 tilvids.com peertube[1399]: "message": "Validation error", Mar 28 19:11:58 tilvids.com peertube[1399]: "name": "SequelizeUniqueConstraintError",

fflorent commented 2 years ago

OK

Get your database password:

yunohost app setting peertube db_pwd

Run this command and when prompted enter the password you got above:

psql peertube_peertube peertube

And run this SQL query in order to see the names in the tag table and the duplicates (count(name) > 2):

select name, count(name) from tag group by name order by count(name);
TILvids commented 2 years ago

Hmm, I'm not a SQL expert at all, but when I run the command

select name, count(name) from tag group by name order by count(name);

I get a HUGE list with lots of counts that say "1". Should I be doing something else to see the duplicates?

fflorent commented 2 years ago

OK. Try running this query instead:

select name, count(name) from tag group by name having count(name) > 1;
TILvids commented 2 years ago

There look to be 158 items that have a count > 1 (all are 2). First one listed is "freesoftware" (which is what the update listed as failing on). Let me know if you need more.

fflorent commented 2 years ago

I guess you indeed have duplicated entries in your tag table.

Try this:

delete from tag t where t.id NOT IN (select MIN(id) from tag group by name);
TILvids commented 2 years ago

Ok, it came back with having deleted "160", which appears to be what we had above (plus two more?). Next? Restart the server?

fflorent commented 2 years ago

Sure, try a restart.

28 mars 2022 23:02:55 TILvids @.***>:

Ok, it came back with having deleted "160", which appears to be what we had above (plus two more?). Next? Restart the server?

— Reply to this email directly, view it on GitHub[https://github.com/YunoHost-Apps/peertube_ynh/issues/322#issuecomment-1081140246], or unsubscribe[https://github.com/notifications/unsubscribe-auth/AAC2X6MJEXRQHX3PUOMAGUDVCIM7ZANCNFSM5RXRYJXA]. You are receiving this because you were mentioned.[Image de pistage][https://github.com/notifications/beacon/AAC2X6MPK4ULP52PD2N665TVCIM7ZA5CNFSM5RXRYJXKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOIBYOIFQ.gif]

TILvids commented 2 years ago

@fflorent Restart and...looks like it's working!

I have no idea what the root-cause of this was that caused everything; only two factors I can see that fixed it were:

  1. Deleting that Chromecast plugin
  2. Deleting a lot of duplicate records that existed (might have been messed up during the update? Some of those records have definitely been around through other updates).

Might be worth digging into for any of the yunohost PeerTube folks, and happy to give any info if it's useful. Super appreciate the effort @fflorent hit me up with a DM on one of our social channels to let me know how I can buy you a beverage of your choice! :)