Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

Instance breaks while updating from 4.1.0 to 4.1.1 #322

Closed
TILvids opened this issue Mar 26, 2022 · 38 comments
Closed

Instance breaks while updating from 4.1.0 to 4.1.1 #322

TILvids opened this issue Mar 26, 2022 · 38 comments

Comments

@TILvids
Copy link

TILvids commented Mar 26, 2022

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
Copy link
Author

TILvids commented Mar 27, 2022

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
Copy link
Author

TILvids commented Mar 27, 2022

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
Copy link
Author

TILvids commented Mar 27, 2022

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
Copy link
Author

TILvids commented Mar 28, 2022

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
Copy link
Author

TILvids commented Mar 28, 2022

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
Copy link
Contributor

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

That's weird, I take a look.

@fflorent
Copy link
Contributor

fflorent commented Mar 28, 2022

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
Copy link
Author

TILvids commented Mar 28, 2022

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
Copy link
Contributor

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
Copy link
Author

TILvids commented Mar 28, 2022

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
Copy link
Contributor

fflorent commented Mar 28, 2022

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
Copy link
Author

TILvids commented Mar 28, 2022

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
Copy link
Contributor

fflorent commented Mar 28, 2022

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
Copy link
Author

TILvids commented Mar 28, 2022

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
Copy link
Contributor

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
Copy link
Author

TILvids commented Mar 28, 2022

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

@fflorent
Copy link
Contributor

fflorent commented Mar 28, 2022

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
Copy link
Author

TILvids commented Mar 28, 2022

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
Copy link
Contributor

Have you made the optional backup?

@TILvids
Copy link
Author

TILvids commented Mar 28, 2022

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

@fflorent
Copy link
Contributor

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
Copy link
Author

TILvids commented Mar 28, 2022

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
Copy link
Author

TILvids commented Mar 28, 2022

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
Copy link
Contributor

What logs do you have this far?

@TILvids
Copy link
Author

TILvids commented Mar 28, 2022

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
Copy link
Author

TILvids commented Mar 28, 2022

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
Copy link
Contributor

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

@TILvids
Copy link
Author

TILvids commented Mar 28, 2022

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
Copy link
Contributor

Can you please share error logs?

You can use the Yunohost UI: https://<YUNOHOST.tld>/yunohost/admin/#/services/peertube

Or using journalctl -u peertube

@TILvids
Copy link
Author

TILvids commented Mar 28, 2022

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
Copy link
Contributor

fflorent commented Mar 28, 2022

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
Copy link
Author

TILvids commented Mar 28, 2022

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
Copy link
Contributor

OK. Try running this query instead:

select name, count(name) from tag group by name having count(name) > 1;

@TILvids
Copy link
Author

TILvids commented Mar 28, 2022

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
Copy link
Contributor

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
Copy link
Author

TILvids commented Mar 28, 2022

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

@fflorent
Copy link
Contributor

fflorent commented Mar 28, 2022 via email

@TILvids
Copy link
Author

TILvids commented Mar 28, 2022

@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! :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants