1.12.1: Tietokannan päivitys epäonnistui

Started by jahau, 30.12.15 - klo:11:51

Previous topic - Next topic

jahau

Uuteen ympäristöön asennettu. Login - sivulla saan seuraavan ilmoituksen:

Tietokannan päivitys epäonnistui. Tarkemmat tiedot PHP:n virhelokissa. Järjestelmä ei välttämättä toimi oikein ennen kuin päivitys on onnistunut.

Ei pitäisi olla MySQL käyttäjäoikeusongelma. Onko ideoita, miten ratkaista ongelma?

Ere Maijala

Katso PHP:n virhelokista tarvittavat SQL-komennot ja aja ne käsin tietokantaan yksitellen tai niin, että jokaisen perässä puolipiste (lokissa näkyvät vähän hassusti peräkkäin). Valitettavasti nykyinen versio ei kirjoita lokiin epäonnistumisen syytä, korjataan tämä seuraavaan versioon.

--Ere

NTKP

Miksi tuo tietokannan päivitysvirhe tulee? Asensin uuden MLInvoice 1.12.1 tyhjään tietokantaan, tuota virhettä tuli. Lokista löytyi alla olevat ilmoitukset (muokkasin rivejä lyhyemmiksi poistamalla alusta aikaleimaa yms.):


mod_fcgid: stderr: Query 'ALTER TABLE mlinvoice_invoice_row ADD COLUMN partial_payment tinyint NOT NULL default 0' failed: (1060) Duplicate column name 'partial_payment', referer: http://laskutus.satatuuli.fi/mlinvoice/logout.php
Database upgrade query failed. Please execute the following queries manually:, referer: http://laskutus.satatuuli.fi/mlinvoice/logout.php
ALTER TABLE mlinvoice_invoice_row ADD COLUMN partial_payment tinyint NOT NULL default 0, referer: http://laskutus.satatuuli.fi/mlinvoice/logout.php
REPLACE INTO mlinvoice_state (id, data) VALUES ('version', '39'), referer: http://laskutus.satatuuli.fi/mlinvoice/logout.php
UPDATE mlinvoice_invoice_state SET invoice_unpaid=1 WHERE id=1, referer: http://laskutus.satatuuli.fi/mlinvoice/logout.php
REPLACE INTO mlinvoice_state (id, data) VALUES ('version', '40'), referer: http://laskutus.satatuuli.fi/mlinvoice/logout.php


Ainakin tuo ensimmäinen rivi kuuluukin epäonnistua, taulussa on jo sarake partial_payment, eli saman sarakkeen lisäys toiseen kertaan epäonnistuu.

Temppuilin nuo ensimmäisen rivin jälkeen tulevat komennot suoritukseen ja se tuntuu toistaiseksi korjanneen, ei tule enää ilmoitusta virheestä. Mahtaako tämä virhe tulla uudestaan?

Mielestäni eilen ei virheilmoitusta näkynyt. Silloin asensin tuon saman 1.12.1. Tänään alkoi virheilmoitusta tulla, enkä erikoisempaa tehnyt kuin testailin logon lisäystä. Näköjään liian korkea logo pistää osoitteen tulostumaan niin alas ettei se näy ikkunakuoressa.

Ere Maijala

Pahus, tuonne create_database.sql:ään on jäänyt väärä versionumero, jolloin ohjelma yrittää kirjautumisen yhteydessä päivittää tietokannan.

Ongelmaa ei pitäisi tulla enää jatkossa, jos on ajanut tuon viimeisen: REPLACE INTO mlinvoice_state (id, data) VALUES ('version', '40')

...ellen mokaa jälleen tulevaisuudessa uudestaan. Teen tuosta korjauksen tulevia asennuksia varten joka tapauksessa.

--Ere

Ere Maijala

Julkaisin saman tien version 1.12.2, jossa tuo tietokannan päivitys on korjattu. Se osaa myös ohittaa partial_payment-sarakkeen luonnin tarvittaessa.

--Ere

jahau

Kiitoksia nopeasta vastauksesta ja korjauksesta. En havainnut enää ongelmia viimeisimmällä julkaistulla versiolla!