Seite 1 von 1

bug in setup/data/tables.txt

Verfasst: Do 19. Jan 2006, 12:15
von emergence
contenido 4.6.x

zufälligerweise beim erstellen eines dumps bei mysql 4.1.x aufgefallen...
mit älteren versionen wird intressanter weise der dump korrekt erzeugt...

der fehler macht sich erst bemerkbar wenn man versucht diesen dump bei einer mysql 5 version einzuspielen...

Code: Alles auswählen

"art_lang";"timemgmt";"tinyint(1)";"YES";"";"";"";""
ersetzen durch

Code: Alles auswählen

"art_lang";"timemgmt";"tinyint(1)";"YES";"";"0";"";""

Code: Alles auswählen

"config_client";"idclient";"int(10)";"YES";"";"";"";""
ersetzen durch

Code: Alles auswählen

"config_client";"idclient";"int(10)";"YES";"";"0";"";""

Code: Alles auswählen

"container";"idmod";"int(10)";"YES";"";"";"";""
ersetzen durch

Code: Alles auswählen

"container";"idmod";"int(10)";"YES";"";"0";"";""
es kann sonst vorkommen das etwas wie folgende fehlermeldung erscheint:

Invalid default value for 'idclient'
CREATE TABLE con_config_client( `idconfc` INT(10) NOT NULL default '0', `idclient` INT(10) default '', `abs_path` VARCHAR(255) default '', `url_path` VARCHAR(255) default '', `css_path` VARCHAR(255) default '', `js_path` VARCHAR(255) default '', `filename` VARCHAR(127) default '', PRIMARY KEY (idconfc) ) TYPE=MyISAM

mit diesen änderungen wird ein korrektes default value bei INT feldern gesetzt...

ich hab nur keine ahnung ob dieser fehler durch ein upgrade behoben wird, oder ob noch andere änderungen notwendig sind...

der fehler besteht an sich auch in der 4.4.x serie...

Verfasst: Do 19. Jan 2006, 12:33
von emergence
und weiter gehts... selbes file

Code: Alles auswählen

"art_lang";"datestart";"datetime";"YES";"";"";"";""
"art_lang";"dateend";"datetime";"YES";"";"";"";""
ersetzen durch

Code: Alles auswählen

"art_lang";"datestart";"datetime";"YES";"";"0000-00-00 00:00:00";"";""
"art_lang";"dateend";"datetime";"YES";"";"0000-00-00 00:00:00";"";""

Code: Alles auswählen

"art_lang";"free_use_01";"mediumint(7)";"YES";"";"";"";""
"art_lang";"free_use_02";"mediumint(7)";"YES";"";"";"";""
"art_lang";"free_use_03";"mediumint(7)";"YES";"";"";"";""
"art_lang";"time_move_cat";"mediumint(7)";"YES";"";"";"";""
"art_lang";"time_target_cat";"mediumint(7)";"YES";"";"";"";""
"art_lang";"time_online_move";"mediumint(7)";"YES";"";"";"";""
ersetzen durch

Code: Alles auswählen

"art_lang";"free_use_01";"mediumint(7)";"YES";"";"0";"";""
"art_lang";"free_use_02";"mediumint(7)";"YES";"";"0";"";""
"art_lang";"free_use_03";"mediumint(7)";"YES";"";"0";"";""
"art_lang";"time_move_cat";"mediumint(7)";"YES";"";"0";"";""
"art_lang";"time_target_cat";"mediumint(7)";"YES";"";"0";"";""
"art_lang";"time_online_move";"mediumint(7)";"YES";"";"0";"";""

Code: Alles auswählen

"data";"idclient";"int(10)";"YES";"";"";"";""
ersetzen durch

Code: Alles auswählen

"data";"idclient";"int(10)";"YES";"";"0";"";""

Verfasst: Do 19. Jan 2006, 13:05
von emergence

Code: Alles auswählen

"lay";"deletable";"tinyint(1)";"YES";"";"";"";""
ersetzen durch

Code: Alles auswählen

"lay";"deletable";"tinyint(1)";"YES";"";"0";"";""

Code: Alles auswählen

"link";"idartlang";"int(10)";"YES";"";"";"";""
"link";"idcat";"int(10)";"YES";"";"";"";""
"link";"idart";"int(10)";"YES";"";"";"";""
ersetzen durch

Code: Alles auswählen

"link";"idartlang";"int(10)";"YES";"";"0";"";""
"link";"idcat";"int(10)";"YES";"";"0";"";""
"link";"idart";"int(10)";"YES";"";"0";"";""

Code: Alles auswählen

"link";"internal";"tinyint(1)";"YES";"";"";"";""
"link";"active";"tinyint(1)";"YES";"";"";"";""
ersetzen durch

Code: Alles auswählen

"link";"internal";"tinyint(1)";"YES";"";"0";"";""
"link";"active";"tinyint(1)";"YES";"";"0";"";""

Code: Alles auswählen

"mod";"deletable";"tinyint(1)";"YES";"";"";"";""
ersetzen durch

Code: Alles auswählen

"mod";"deletable";"tinyint(1)";"YES";"";"0";"";""

Code: Alles auswählen

"phplib_auth_user_md5";"wysi";"tinyint(2)";"YES";"";"";"";""
ersetzen

Code: Alles auswählen

"phplib_auth_user_md5";"wysi";"tinyint(2)";"YES";"";"0";"";""

Code: Alles auswählen

"plugins";"idclient";"int(10)";"YES";"";"";"";""
ersetzen durch

Code: Alles auswählen

"plugins";"idclient";"int(10)";"YES";"";"0";"";""

Code: Alles auswählen

"plugins";"idclient";"int(10)";"YES";"";"";"";""
ersetzen durch

Code: Alles auswählen

"plugins";"idclient";"int(10)";"YES";"";"0";"";""

Code: Alles auswählen

"template";"idlay";"int(10)";"YES";"MUL";"";"";""
ersetzen durch

Code: Alles auswählen

"template";"idlay";"int(10)";"YES";"MUL";"0";"";""

Code: Alles auswählen

"template";"idtplcfg";"int(10)";"YES";"MUL";"";"";""
ersetzen durch

Code: Alles auswählen

"template";"idtplcfg";"int(10)";"YES";"MUL";"0";"";""

Code: Alles auswählen

"template";"deletable";"tinyint(1)";"YES";"";"";"";""
"template";"status";"int(10)";"YES";"";"";"";""
ersetzen durch

Code: Alles auswählen

"template";"deletable";"tinyint(1)";"YES";"";"0";"";""
"template";"status";"int(10)";"YES";"";"0";"";""

Code: Alles auswählen

"template_conf";"idtpl";"int(10)";"YES";"MUL";"";"";""
"template_conf";"status";"int(10)";"YES";"";"";"";""
ersetzen durch

Code: Alles auswählen

"template_conf";"idtpl";"int(10)";"YES";"MUL";"0";"";""
"template_conf";"status";"int(10)";"YES";"";"0";"";""

Verfasst: Do 19. Jan 2006, 13:09
von phpchris
Wie sieht es denn mal mit dem gesamten Dateiinhalt aus?

Verfasst: Do 19. Jan 2006, 13:13
von emergence

Code: Alles auswählen

"news";"newsdate";"datetime";"YES";"";"";"";""
ersetzen durch

Code: Alles auswählen

"news";"newsdate";"datetime";"YES";"";"0000-00-00 00:00:00";"";""
ich glaub das müsste so ziemlich alles gewesen sein...

Verfasst: Do 19. Jan 2006, 13:28
von emergence
es ist noch nicht gesagt das jede der änderungen so wirklich 100%ig korrekt ist...
es muss wirklich für jeden eintrag kontrolliert werden ob der default wert so überhaupt ok ist...

deshalb poste ich keinen gesamten dateiinhalt...

bei einigen einträge weiss ich ehrlich gesagt noch nicht ob nicht manchmal NULL als default wert ausreichen würde...

und einige sonderfälle gibts auch noch, wo ich nicht mal weiss wie ich das umgehen sollte.. -> zb bei timestamp

das ganze muss zu älteren mysql version bis rauf zu mysql 5 kompatibel sein...
also nicht hetzen sonst werd ich sauer...

Verfasst: Fr 20. Jan 2006, 15:00
von emergence
so noch ein paar andere änderungen

Code: Alles auswählen

"stat";"visitdate";"varchar(14)";"YES";"";"";"";""
ersetzen durch

Code: Alles auswählen

"stat";"visitdate";"datetime";"YES";"";"0000-00-00 00:00:00";"";""

Code: Alles auswählen

"stat_archive";"visitdate";"varchar(14)";"YES";"";"";"";""
ersetzen durch

Code: Alles auswählen

"stat_archive";"datetime";"varchar(14)";"YES";"";"0000-00-00 00:00:00";"";""

Code: Alles auswählen

"template";"created";"timestamp(14)";"YES";"";"";"";""
"template";"lastmodified";"timestamp(14)";"YES";"";"";"";""
ersetzen durch

Code: Alles auswählen

"template";"created";"datetime";"YES";"";"0000-00-00 00:00:00";"";""
"template";"lastmodified";"datetime";"YES";"";"0000-00-00 00:00:00";"";""

Code: Alles auswählen

"template_conf";"created";"varchar(14)";"YES";"";"";"";""
"template_conf";"lastmodified";"timestamp(14)";"YES";"";"";"";""
ersetzen durch

Code: Alles auswählen

"template_conf";"created";"datetime";"YES";"";"0000-00-00 00:00:00";"";""
"template_conf";"lastmodified";"datetime";"YES";"";"0000-00-00 00:00:00";"";""

Verfasst: Fr 20. Jan 2006, 16:08
von emergence
tja aufgrund der änderung muss auch noch etwas im core code von contenido geändert werden...

includes.pretplcfg_edit.php zu beginn

Code: Alles auswählen

        $timestamp = time();
ersetzen durch

Code: Alles auswählen

        $timestamp = date("Y-m-d H:i:s");
functions.tpl.php -> function tplDuplicateTemplate

Code: Alles auswählen

    $created    = time();
    $lastmod    = time();
ersetzen durch

Code: Alles auswählen

    $created    = date("Y-m-d H:i:s");
    $lastmod    = date("Y-m-d H:i:s");
wohlgemerkt wer das ausprobiert und sich seine db zerschießt -> selbst schuld und nicht mein problem... (high risk)

so und nun schau ich mir das zeugs nicht weiter an...