Du bist nicht angemeldet. Der Zugriff auf einige Boards wurde daher deaktiviert.

#1 14. April 2015 08:01

Andynium
Moderator
Ort: Dohna / SN / Deutschland
Registriert: 13. September 2010
Beiträge: 7.018
Webseite

"Metaphysische" Fehlerkorrekturen

Wie bekannt beschäftige ich mich gerade etwas intensiver mit ADOdb. So ist mein Augenmerk auch auf folgende Code-Zeile in der mysqli_datadict.inc gefallen:

  foreach( $tableoptions as $key => &$value )
          {
            $value = str_replace('TYPE=MyISAM','ENGINE=MyISAM',$value);
          }

Hab ich natürlich gleich bei Wikipedia gecheckt

http://de.wikipedia.org/wiki/MyISAM schrieb:

Ältere Versionen von MySQL verwenden das Schlüsselwort TYPE statt ENGINE (Beispiel: TYPE = MYISAM). MySQL 5.0 und 5.1 unterstützen diese Syntax abwärtskompatibel, allerdings wird die Verwendung von ENGINE empfohlen. Seit MySQL 5.5 wird nur noch das Schlüsselwort ENGINE unterstützt.)

Die Verwendung von ENGINE ist optional. Ohne Angabe wird der in den Voreinstellungen hinterlegte Tabellentyp verwendet. MySQL nutzt seit Version 5.5 standardmäßig InnoDB

Ist dies für CMSMS von Bedeutung?

Tja, leider - sowohl im News-Modul als auch in den Upgrade-Prozeduren der 1.12 findet sich noch derartiges

$taboptarray = array('mysql' => 'TYPE=MyISAM');

Aha, jetzt ist mir auch klar, weshalb ich letztens bei einem älteren Kundenprojekt Tabellen vom Typ InnoDB in der Datenbank gefunden habe. Nach meinem Verständnis ist jedoch nur eine konsistente Datenbank das Optimum für ein rund laufendes System (auch wenn dieser Faux pass hier keine Auswirkungen haben dürfte).

Aktuell ist MySQL 5.7, ergo TYPE=MYISAM ist unbekannt, weshalb lt. Wikipedia automatisch InnoDB genommen wird. Und daher auch die (erforderliche) Korrektur in der mysqli_datadict.inc

Hmm, hätte ich auch wesentlich leichter heraus bekommen können, wenn ich gleich Herrn Google befragt sad - da war jemand schneller als ich (sogar mit Lösung)

http://dev.cmsmadesimple.org/bug/view/10477
http://dev.cmsmadesimple.org/bug/view/10478
http://dev.cmsmadesimple.org/bug/view/10479

Aber hoppla ...

Status: Closed

Häää??

Resolution: Invalid

Resolution: Won't Fix

Da scheint sich jemand nicht wirklich einig zu sein, ob die die Lösung nun ungültig ist oder nur nicht behoben wird. Zumal diesen Fehler jeder popelige Text-Editor mit 'nem Replace auf das ganze Verzeichnis in 2 Sekunden erledigt hätte. Wenn sich nur jede Arbeit so schnell erledigen ließe ...

OK, nun wissen wir's alle ...

Und über den (Un-)Sinn von Funktionen hatte ich ja bereits gestern geschrieben ... auch, wenn es nur eher selten genutzte Funktionen bei Upgrades bzw. der Installation von Modulen sind.

Von daher: "Lang lebe der Media-Markt - Geiz ist geil glasses!" (ich hasse die unnötige Verschwendung von Ressourcen).

By the way - diese Art der metaphysischen Fehlerkorrekturen werd ich nie nachvollziehen können, wenn da seitens eines Projektleiters eines so großartigen Sache wie CMSMS, von dem ich erwarte, dass er absolut über den Dingen steht, persönliche Animositäten vollständig über den Erfolg der Sache, also dem Vorankommen von CMSMS (was wir hier alle wollen) stellt. Wenn es (m)einer Sache nützt, gehe ich sogar mit dem Teufel ins Bett.

Schade auch, dass der Bugreporter noch nicht zu unserem Forum gefunden hat. Hätte mich gern mal mit ihm etwas länger unterhalten. Vllt sollte ich ihn mal einladen smile, scheint ganz gescheit zu sein, hab schon des öfteren von ihm gelesen.

Offline