Good Evening
I have my own setup for Nextcloud 18.0.3, running on FreeBSD 12.1-RELEASE-p2. The backend is using nginx/1.16.1, php 7.3.16, and postgres (PostgreSQL) 11.7, and I’m using Firefox 76.0.1 with Floccus to access my bookmarks.
There are 1793 individual entries I have for all bookmarks. Absolutely none of them have thumbnails. Not even a default; its a flat white square. I’m also unable to delete any bookmark from this interface. This is an assumption, since I have only tried to delete a few. I believe it is a safe one.
Looking in the Logging tab under settings, my logs are absolutely polluted with “BadFunctionCallException” exceptions. One of the entries is documented below. A more detailed version is attached as a pastebin. I’m not sure why this is; are there any ideas?
"message":{"Exception":"BadFunctionCallException","Message":"image is not a valid attribute"
https://pastebin.com/0NNXvQ7v
Mmmh, I’m not sure in which versions the image column was used on the oc_bookmarks table. That was before migrations were introduced, so I guess you have had that column for a while without it doing anything but also not making trouble.
It seems it’s starting to do trouble now. I will fix this error, but the best thing for you would probably be to drop the image
column from the oc_bookmarks
table. This will also fix preview and favicon generation (provided you have enabled network access in the admin preferences).
Thanks. I’ll document what I’ve done below when I take the time to execute your suggestion.
Ok, so here is the table structure within the database:
nextcloud=> \d+ oc_bookmarks*
Table "nextcloud.oc_bookmarks"
Column | Type | Collation | Nullable | Default | Storage | Stats target | Description
--------------+-------------------------+-----------+----------+------------------------------------------+----------+--------------+-------------
id | integer | | not null | nextval('oc_bookmarks_id_seq'::regclass) | plain | |
url | character varying(4096) | | not null | ''::character varying | extended | |
title | character varying(4096) | | not null | ''::character varying | extended | |
user_id | character varying(64) | | not null | ''::character varying | extended | |
description | character varying(4096) | | not null | ''::character varying | extended | |
added | integer | | | 0 | plain | |
lastmodified | integer | | | 0 | plain | |
clickcount | integer | | not null | 0 | plain | |
image | character varying(4096) | | | NULL::character varying | extended | |
last_preview | integer | | | 0 | plain | |
Indexes:
"oc_bookmarks_pkey" PRIMARY KEY, btree (id)
"bookmarks_modified" btree (lastmodified)
"idx_3ee1cd04a76ed395" btree (user_id)
"idx_3ee1cd04df091378" btree (last_preview)
A simple ALTER TABLE nextcloud.oc_bookmarks DROP image;
And…
nextcloud=> \d oc_bookmarks
Table "nextcloud.oc_bookmarks"
Column | Type | Collation | Nullable | Default
--------------+-------------------------+-----------+----------+------------------------------------------
id | integer | | not null | nextval('oc_bookmarks_id_seq'::regclass)
url | character varying(4096) | | not null | ''::character varying
title | character varying(4096) | | not null | ''::character varying
user_id | character varying(64) | | not null | ''::character varying
description | character varying(4096) | | not null | ''::character varying
added | integer | | | 0
lastmodified | integer | | | 0
clickcount | integer | | not null | 0
last_preview | integer | | | 0
Indexes:
"oc_bookmarks_pkey" PRIMARY KEY, btree (id)
"bookmarks_modified" btree (lastmodified)
"idx_3ee1cd04a76ed395" btree (user_id)
"idx_3ee1cd04df091378" btree (last_preview)
With the image column gone, I loaded up the web interface, and thumbnails returned; and deleting was successful.
Although outside the scope, this was also a good opportunity to document how to backup, restore, and upgrade the database software. (11.7 to 12.3)