Boardunity & Video Forum

Boardunity & Video Forum (https://boardunity.de/)
-   Forensoftware (https://boardunity.de/forensoftware-f5.html)
-   -   BurningBoard 2.3.1 Installationsprobleme: Server auf 100% (https://boardunity.de/burningboard-2-3-1-installationsprobleme-server-100-a-t2973.html)

BurnedFinger 30.03.2005 17:38

BurningBoard 2.3.1 Installationsprobleme: Server auf 100%
 
Ich habe mir eine Lizenz für das WBB 2.3.1 besorgt und hatte das Problem, dass die Installation nicht funktionierte. Die Tabellen wurden nicht angelegt. Stattdessen lief der Server auf 100% Leistung und blieb da auch mindestens 30 Sekunden bis ich ihn von Hand abwürgte. Das Anlegen der Tabellen sollte max 3-4 secs dauern. Lite installiert die innerhalb von 1 sec.

Das Script class_query.php analysiert das Tabellen-Struktur-Script structure.sql und lastete dabei den Prozessor aus. Noch bevor der Datenbankzugriff erfolgte. Das SQL-Script ist 40k lang und bei der Abarbeitung wird es Zeichen für Zeichen durchgearbeitet. Also 40.000 mal Schleife fahren mit einigen Aktionen für ein Script, das man mal eben der Datenbank vorwerfen sollte.

Der Grund für diese Vorgehensweise scheint darin zu liegen, dass das Script auch mehrere durch Strickpunkt getrennte SQL-Befehle verarbeiten soll.
Netter Hack. Leider bricht deswegen mein Server (Athlon 2400+) zusammen.

Die Lite-Version des Boards installierte dagegen sauber, obwohl die Passage in class_query.php identisch ist. Allerdings ist da das Lite-SQL-Script nur halb so groß.

Letzenendes habe ich das setup.php dahingehend geändert, dass ich die großen Datenbank-Scripte von Hand ausgeführt habe und nur die kleinen Aktionen vom setup durchführen ließ. Das hat dann allerdings einwandfrei geklappt und das Forum läuft.

Wie performant das Forum mit diesem class_query-Script läuft, habe ich noch nicht ausprobiert. Resourcenschonend ist es meiner Meinung nach nicht gerade programmiert.

Auch der restliche Code sieht ziemlich durcheinandergewürfelt aus. Da tummelt sich nach althergebrachter PHP-Manier alles von der Request-Verarbeitung, der Verlinkung bis zum SQL-Statement wild kopulierend in einem einzigen Script. Dass MVC nicht Mainzer Volks Carneval bedeutet, scheint sich noch nicht bis hierher rumgesprochen zu haben. Das Konzept lässt sich sogar mit PHP umsetzen.

Metro Man 30.03.2005 19:33

Habe gerade eine Install auf meinem Root mit 1,4ghz versucht und auf meinen homerechner geht. Passiert der Fehler nur bei version 2.3.1 oder auch bei ner 2.2?

rellek 31.03.2005 06:46

.....

BurnedFinger 31.03.2005 11:27

So jetzt habe ich es festgenagelt.
Das Problem lag an einer nicht definierten Konstante (USE_MBSTRING). In der Funktion functions.php:wbb_strlen() wird sie jedesmal abgefragt. USE_MBSTRING (global.php) gibt Info, ob das "mbstring"-Modul (Encoding-Unterstützung) geladen ist. global.php wird in die setup.php aber nicht eingebunden. USE_MBSTRING bleibt undefiniert und das Abfragen dieser Undefinitierten kostet bei mir soviel Zeit. Ich habe also USE_MBSTRING von Hand mit false definiert (habe mbstring nicht an Bord) und siehe da, alles lief flott durch.
Ach ja. Ich verwende PHP 4.3.6
Ich hatte Bedenken, dass das ganze Forum lahm sein würde. Aber da USE_MBSTRING normalerweise definiert ist, sollte es im Betrieb kein Problem darstellen.
Ich hoffe nur, dass das gleiche mit einer anderen Undefinierten nicht nochmal auftritt, wenn ich den Server nicht im Auge habe.
Ich werde den error_reporting level mal auf 15 erhöhen (incl. NOTICE) und beobachten, was da so alles geloggt wird.

Deathfragger 31.03.2005 18:03

Hast du das Problem an Woltlab weitergeleitet?

BurnedFinger 04.04.2005 09:53

Habe das gerade erledigt. Bin schon auf die Antwort gespannt, ob die das auch so sehen.

BurnedFinger 04.04.2005 10:27

Antwort von Woltlab:

"Es handelt sich um einen Fehler in älteren PHP-Versionen. In neueren
PHP-Versionen beantsprucht die Abfrage undefinierter Konstanten
deutlich weniger Ausführungsgeschwindigkeit.
Wir werden im nächsten Update das Setup des Forums entsprechend
anpassen, um dieses Problem zu umgehen."

Fixe Jungens! Die Antwort dauerte nur 20 Minuten! Da lebt die Patriotische Seele wieder auf und freut sich, dass ich kein nichtalteuropäisches Konkurrenz-Produkt genommen habe :D


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:17 Uhr.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25