Unable to create new Filter

  • [X] I’m using stock docker compose setup, unmodified.
  • [ ] I’m using docker compose setup, with modifications (modified .yml files, third party plugins/themes, etc.) - if so, describe your modifications in your post. Before reporting, see if your issue can be reproduced on the unmodified setup.
  • [ ] I’m not using docker on my primary instance, but my issue can be reproduced on the aforementioned docker setup and/or official demo.

Hi, i migrated from selft hosted local copy to a docker-setup of ttrss.

I migrated the mysql to postgres and everything worked. Till today.

I wanted to create a new Filter, but got an Internal Error (500). The Serverlogs says:

ttrss-docker-web-nginx-1  | 172.21.0.1 - - [12/Jul/2022:13:50:09 +0000] "POST /tt-rss/backend.php HTTP/1.0" 200 1352 "https://rss.xxxxxx.xxxx/tt-rss/prefs.php" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36"
ttrss-docker-db-1         | 2022-07-12 13:50:14.109 UTC [399] ERROR:  null value in column "cat_filter" violates not-null constraint
ttrss-docker-db-1         | 2022-07-12 13:50:14.109 UTC [399] DETAIL:  Failing row contains (47002, 45, Gasgrill, f, 1, null, null, ["CAT:17"], null).
ttrss-docker-db-1         | 2022-07-12 13:50:14.109 UTC [399] STATEMENT:  INSERT INTO ttrss_filters2_rules
ttrss-docker-db-1         | 							(filter_id, reg_exp,filter_type,feed_id,cat_id,match_on,inverse) VALUES
ttrss-docker-db-1         | 							($1, $2, $3, NULL, NULL, $4, $5)
ttrss-docker-db-1         | 2022-07-12 13:50:14.110 UTC [399] ERROR:  current transaction is aborted, commands ignored until end of transaction block
ttrss-docker-db-1         | 2022-07-12 13:50:14.110 UTC [399] STATEMENT:  DEALLOCATE pdo_stmt_00000012
ttrss-docker-db-1         | 2022-07-12 13:50:14.110 UTC [399] ERROR:  current transaction is aborted, commands ignored until end of transaction block
ttrss-docker-db-1         | 2022-07-12 13:50:14.110 UTC [399] STATEMENT:  DEALLOCATE pdo_stmt_00000013
ttrss-docker-db-1         | 2022-07-12 13:50:14.110 UTC [399] ERROR:  current transaction is aborted, commands ignored until end of transaction block
ttrss-docker-db-1         | 2022-07-12 13:50:14.110 UTC [399] STATEMENT:  DEALLOCATE pdo_stmt_00000010
ttrss-docker-db-1         | 2022-07-12 13:50:14.110 UTC [399] ERROR:  current transaction is aborted, commands ignored until end of transaction block
ttrss-docker-db-1         | 2022-07-12 13:50:14.110 UTC [399] STATEMENT:  SELECT * FROM ttrss_version
ttrss-docker-db-1         | 2022-07-12 13:50:14.110 UTC [399] ERROR:  current transaction is aborted, commands ignored until end of transaction block
ttrss-docker-db-1         | 2022-07-12 13:50:14.110 UTC [399] STATEMENT:  CREATE TABLE IF NOT EXISTS ttrss_version (schema_version integer not null)
ttrss-docker-db-1         | 2022-07-12 13:50:14.111 UTC [399] ERROR:  current transaction is aborted, commands ignored until end of transaction block
ttrss-docker-db-1         | 2022-07-12 13:50:14.111 UTC [399] STATEMENT:  SELECT id FROM ttrss_sessions WHERE id=$1
ttrss-docker-db-1         | 2022-07-12 13:50:14.111 UTC [399] ERROR:  current transaction is aborted, commands ignored until end of transaction block
ttrss-docker-db-1         | 2022-07-12 13:50:14.111 UTC [399] STATEMENT:  SELECT * FROM ttrss_version
ttrss-docker-db-1         | 2022-07-12 13:50:14.111 UTC [399] ERROR:  current transaction is aborted, commands ignored until end of transaction block
ttrss-docker-db-1         | 2022-07-12 13:50:14.111 UTC [399] STATEMENT:  CREATE TABLE IF NOT EXISTS ttrss_version (schema_version integer not null)

Anything a can do to resolve this issue by myself?

regards,
Friedhelm

which tool did you use?

it would be easier if you PMed me your database dump along with detailed list of steps you took in the UI to trigger this, i’ll take a look.

hmpf.

i’m too stupid to find the envelope-icon to PM you.

anyway, i did the following:

  • mysql, created a dump with " mysqldump --compatible=postgresql"
  • edited the dumpfile, dropped every “drop table”, “create table”, “create index”, “create sequence” from script.
  • converted the mysql-syntax to postgres using “GitHub - lanyrd/mysql-postgresql-converter: Lanyrd's MySQL to PostgreSQL conversion script
  • postgres (in docker), dropped everything, created the schema from scratch using schema/ttrss_schema_pgsql.sql
  • postgres (in docker) imported the converted script (in the right order, needed four attempts to respect the foreign keys)

This led to a working installation where even the starrred articles were imported. 2fa worked, subscribing to new rss-feeds works, dropping rss-sources works.

Right now to produce this error:
ttrss, settings, filter, “create filter”, title=“Gasgrill”, add Match (Gasgrill on Title in Feedgroup DealZ), klick on test, (created some hits), clicked on “+ Create”

okay i’m not going to bother with some kind of frankenstein broken database dump.

there’s a working export-import tool linked in the faq and on this forum, use that instead.

yes, i can understand this, but i had problems following the docs.

i sucessfully did an export with the migration-tool, but i was unable to do a php ./update.php in the docker-container, because there was no php in the app/updater-container (or i was unable to find it)

anyway, i’ll try to fiddle further around to fix this …