Application Error nach Update

Deutschsprachiges Forum für Diskussionen und Fragen zu MantisBT

Moderators: Developer, Contributor

Post Reply
malo.conny
Posts: 10
Joined: 12 Aug 2009, 10:15
Contact:

Application Error nach Update

Post by malo.conny »

Wir haben Mantis 1.3 auf MantisBT 2.24.1 gehoben. Seit dem bekommen wir in einigen Fällen, vor allem Beim Filtern auf Projekte einen Fehler.

Ich habe das Debugging aktiviert, um Hinweise zu bekommen, wie folgt. Den Update Prozess habe ich ohne Fehler durchlaufen, musste nach dem Update der Datenbank noch ein paar SQL Zeilen (siehe am Ende) laufen lassen, aber danach auf der Install Seite alles grün. Ich hoffe, ihr habt eine Lösung für mich. Schon jetzt Danke für die Zeit und Mühe.
INTERNAL APPLICATION ERROR

Bitte benutzen Sie die „Zurück“-Taste Ihres Browsers, um auf die vorhergehende Seite zurückzukehren. Dort können Sie den hier angezeigten Eintrag korrigieren oder eine andere Aktion ausführen. Über das Menü können Sie auch direkt zu einer anderen Aktion wechseln.

Code: Select all

Argument 1 passed to columns_remove_invalid() must be of the type array, null given, called in /usr/local/www/mantis/core/custom_function_api.php on line 315

Detailed error information
Full path: /usr/local/www/mantis/core/error_api.php
Line number: 92
Stack trace
#	Filename	Line	Class	Type	Function	Args
0	/usr/local/www/mantis/core/custom_function_api.php	315	-	-	columns_remove_invalid	-
1	/usr/local/www/mantis/core/helper_api.php	471	-	-	custom_function_default_get_columns_to_view	-
2	/usr/local/www/mantis/core/helper_api.php	506	-	-	helper_call_custom_function	-
3	/usr/local/www/mantis/core/filter_api.php	2299	-	-	helper_get_columns_to_view	-
4	/usr/local/www/mantis/core/classes/BugFilterQuery.class.php	1699	-	-	filter_get_visible_sort_properties_array	-
5	/usr/local/www/mantis/core/classes/BugFilterQuery.class.php	355	BugFilterQuery	->	build_order_by	-
6	/usr/local/www/mantis/core/classes/BugFilterQuery.class.php	227	BugFilterQuery	->	string_query_list	-
7	/usr/local/www/mantis/core/classes/BugFilterQuery.class.php	206	BugFilterQuery	->	build_query	-
8	/usr/local/www/mantis/core/classes/BugFilterQuery.class.php	191	BugFilterQuery	->	set_query_type	-
9	/usr/local/www/mantis/core/filter_api.php	1120	BugFilterQuery	->	__construct	-
10	/usr/local/www/mantis/my_view_inc.php	243	-	-	filter_get_bug_rows	-
11	/usr/local/www/mantis/my_view_page.php	153	-	-	include	<string>'/usr/local/www/mantis/my_view_inc.php'
Update der Databank, Anweisung via admin/install.php

Code: Select all

-- MantisBT 2.24.1 Database creation script
-- 2020-09-18T15:24:57+02:00

-- Schema step 184
-- No operation

-- Schema step 185
ALTER TABLE mantis_custom_field_string_table ADD text LONGTEXT DEFAULT NULL;

-- Schema step 186
-- Execute PHP Update Function: install_update_history_long_custom_fields()

-- Schema step 187
ALTER TABLE mantis_bug_monitor_table ADD  INDEX idx_bug_id  (bug_id);

-- Schema step 188
ALTER TABLE mantis_project_table MODIFY COLUMN inherit_global TINYINT NOT NULL DEFAULT 0;

-- Schema step 189
ALTER TABLE mantis_project_hierarchy_table MODIFY COLUMN inherit_parent TINYINT NOT NULL DEFAULT 0;

-- Schema step 190
-- Execute PHP Update Function: install_check_project_hierarchy()

-- Schema step 191
ALTER TABLE mantis_project_hierarchy_table ADD  UNIQUE INDEX idx_project_hierarchy  (child_id, parent_id);

-- Schema step 192
ALTER TABLE mantis_bug_history_table ADD  INDEX idx_bug_history_date_modified  (date_modified);

-- Schema step 193
-- Execute PHP Update Function: install_check_config_serialization()

-- Schema step 194
-- Execute PHP Update Function: install_check_token_serialization()

-- Schema step 195
-- Execute PHP Update Function: install_stored_filter_migrate()

-- Schema step 196
-- No operation

-- Schema step 197
-- No operation

-- Schema step 198
ALTER TABLE mantis_user_table MODIFY COLUMN password VARCHAR(64) NOT NULL DEFAULT '';

-- Schema step 199
-- No operation

-- Schema step 200
CREATE TABLE mantis_api_token_table (
id                       INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
user_id                  INTEGER NOT NULL DEFAULT 0,
name                     VARCHAR(128) NOT NULL,
hash                     VARCHAR(128) NOT NULL,
date_created             INTEGER UNSIGNED NOT NULL DEFAULT 0,
date_used                INTEGER UNSIGNED NOT NULL DEFAULT 0,
                 PRIMARY KEY (id)
)DEFAULT CHARSET=utf8;

-- Schema step 201
ALTER TABLE mantis_api_token_table ADD  UNIQUE INDEX idx_user_id_name  (user_id, name);

-- Schema step 202
ALTER TABLE mantis_user_table ADD  INDEX idx_email  (email);

-- Schema step 203
ALTER TABLE mantis_bug_file_table MODIFY COLUMN content LONGBLOB;

-- Schema step 204
ALTER TABLE mantis_project_file_table MODIFY COLUMN content LONGBLOB;

-- Schema step 205
-- Execute PHP Update Function: install_gravatar_plugin()

-- Schema step 206
ALTER TABLE mantis_user_table MODIFY COLUMN username VARCHAR(191) NOT NULL DEFAULT '';

-- Schema step 207
ALTER TABLE mantis_user_table MODIFY COLUMN realname VARCHAR(191) NOT NULL DEFAULT '';

-- Schema step 208
ALTER TABLE mantis_user_table MODIFY COLUMN email VARCHAR(191) NOT NULL DEFAULT '';

-- Schema step 209
ALTER TABLE mantis_api_token_table MODIFY COLUMN user_id INTEGER UNSIGNED NOT NULL DEFAULT 0;ALTER TABLE mantis_api_token_table MODIFY COLUMN date_created INTEGER UNSIGNED NOT NULL DEFAULT 1;ALTER TABLE mantis_api_token_table MODIFY COLUMN date_used INTEGER UNSIGNED NOT NULL DEFAULT 1;

-- Schema step 210
ALTER TABLE mantis_bug_file_table ADD bugnote_id INTEGER UNSIGNED DEFAULT 0;

-- Set database version
UPDATE mantis_config_table SET value = 210 WHERE config_id = 'database_version' AND project_id = 0 AND user_id = 0;
atrol
Site Admin
Posts: 7854
Joined: 26 Mar 2008, 21:37
Location: Germany

Re: Application Error nach Update

Post by atrol »

Ich nehme an es gibt ein paar unsaubere Einträge der Option view_issues_page_columns in der Datenbank (mantis_config_table).

Falls es bei allen Anwendern auftritt, kann man auf der Administrationsseite "Spalten verwalten" nachschauen (zunächst unter "Alle Projekte" und ggf. unter einzelnen Projekten falls nur bestimmte Projekte betroffen sind)

Falls nur einzelne Anwender betroffen sind, unter "Konto" > "Spalten verwalten" prüfen.
Please use Search before posting and read the Manual
malo.conny
Posts: 10
Joined: 12 Aug 2009, 10:15
Contact:

Re: Application Error nach Update

Post by malo.conny »

Vielen Dank @atrol.

Ich kann im Bereich, Administration --> Spalter (`/manage_config_columns_page.php`) verwalten leider nichts tun, da dort der Fehler ebenso zuschlägt, siehe Code block folgend.
Wenn ich in einem Projekt bin, dann finde ich administrativ keinen Zugriff auf die Spalten: "Verwaltung --> Projekte verwalten --> Projekt (`/manage_proj_edit_page.php?project_id=41`)", die benutzerdefinierten Felder sin gelistet, keine Fehler o.ä. erkennbar.

Danke für einen Stubs in die richtige Richtung.

Code: Select all

INTERNAL APPLICATION ERROR

Argument 1 passed to columns_remove_invalid() must be of the type array, null given, called in /usr/local/www/mantis/core/custom_function_api.php on line 315

Bitte benutzen Sie die „Zurück“-Taste Ihres Browsers, um auf die vorhergehende Seite zurückzukehren. Dort können Sie den hier angezeigten Eintrag korrigieren oder eine andere Aktion ausführen. Über das Menü können Sie auch direkt zu einer anderen Aktion wechseln.
Detailed error information
Full path: /usr/local/www/mantis/core/error_api.php
Line number: 92
Stack trace
#	Filename	Line	Class	Type	Function	Args
0	/usr/local/www/mantis/core/custom_function_api.php	315	-	-	columns_remove_invalid	-
1	/usr/local/www/mantis/core/helper_api.php	471	-	-	custom_function_default_get_columns_to_view	-
2	/usr/local/www/mantis/core/helper_api.php	506	-	-	helper_call_custom_function	-
3	/usr/local/www/mantis/manage_columns_inc.php	71	-	-	helper_get_columns_to_view	-
4	/usr/local/www/mantis/manage_config_columns_page.php	50	-	-	include	<string>'/usr/local/www/mantis/manage_columns_inc.php'
malo.conny
Posts: 10
Joined: 12 Aug 2009, 10:15
Contact:

Re: Application Error nach Update

Post by malo.conny »

Kleines Update, habe mir alle Einträge namens view_issues_page_columns in der Tabelle mantis_config_table angeschaut, da scheint das Problem. Zumindest schließe ich das auf den Code, siehe https://github.com/mantisbt/mantisbt/bl ... i.php#L315

Aktuell komme ich so nun auch auf die Spalten via Konfiguration. Alle Nutzereinträge bzgl. view_issues_page_columns habe ich entfernt, da User diese ggf. wieder erzeugen können. Nun mal schauen, ob alle Anwender noch Sorgen haben.
atrol
Site Admin
Posts: 7854
Joined: 26 Mar 2008, 21:37
Location: Germany

Re: Application Error nach Update

Post by atrol »

Hinweis am Rande: Es gibt auch die Administrations-Seite "Konfigurations-Report" mit der man derartige Probleme ohne direkten Datenbankzugriff finden und beseitigen kann.
Please use Search before posting and read the Manual
malo.conny
Posts: 10
Joined: 12 Aug 2009, 10:15
Contact:

Re: Application Error nach Update

Post by malo.conny »

Die Reports habe ich mir angeschaut, danke. Mir ist leider nicht klar, wie man Probleme identifiziert. Aktuell schaue ich mir die Debug Meldung an, schaue den Code auf GitHub an und erkenne daran die Felder in der Datenbank die Probleme machen. Wenn du dazu erläutern könntest, wie man die Probleme in der Admin-Oberfläche erkennen kann, wäre das super.
atrol
Site Admin
Posts: 7854
Joined: 26 Mar 2008, 21:37
Location: Germany

Re: Application Error nach Update

Post by atrol »

Die Seite ersetzt kein vollständiges Debugging.
Im konkreten Fall hätte man nach "view_issues_page_columns" filtern können und hätte vermutlich auffällige Einträge gefunden.
Please use Search before posting and read the Manual
malo.conny
Posts: 10
Joined: 12 Aug 2009, 10:15
Contact:

Re: Application Error nach Update

Post by malo.conny »

Jap, so habe ich es gemacht. Aber die Einträge werden dann einfach gelistet, kein Erkennen was an ihnen falsch ist, obwohl sie doch wohl nicht als Array geparst werden. Auf das Feld, bspw. "issues_page_columns", bin ich nur gekommen, weil ich bei GitHub den Code zum Fehler gelesen habe.

Danke für dein Zeit!
Post Reply