Päivityksen jälkeen tietokannan päivitys epäonnistui

Started by taleman, 19.04.18 - klo:15:24

Previous topic - Next topic

taleman

Päivitin 1.15.5 -> 1.17.0. Ensimmäisellä kirjautumisella tuli selaimen yläreunaan ilmoitus:
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.

Error.log tiedostosta leikkasin tämän:
[code[Thu Apr 19 12:40:14.483272 2018] [fcgid:warn] [pid 778] [client 176.93.107.194:50069] mod_fcgid: stderr: ) failed: (1213) Deadlock found when trying to get lock; try restarting transaction, referer: https://laskutus.satatuuli.fi/mlinvoice/index.php?func=open_invoices&list=invoice&form=invoice&listid=resultlist_open_invoices&id=1270
[Thu Apr 19 15:12:05.244594 2018] [fcgid:warn] [pid 22054] [client 176.93.107.194:60911] mod_fcgid: stderr: Query 'ALTER TABLE mlinvoice_base ADD COLUMN inactive tinyint NOT NULL default 0' with params array (
[Thu Apr 19 15:12:05.244883 2018] [fcgid:warn] [pid 22054] [client 176.93.107.194:60911] mod_fcgid: stderr: ) failed: (1060) Duplicate column name 'inactive'
[Thu Apr 19 15:12:05.244889 2018] [fcgid:warn] [pid 22054] [client 176.93.107.194:60911] mod_fcgid: stderr: Database upgrade query failed. Please execute the following queries manually:
[Thu Apr 19 15:12:05.244892 2018] [fcgid:warn] [pid 22054] [client 176.93.107.194:60911] mod_fcgid: stderr:   ALTER TABLE mlinvoice_base ADD COLUMN inactive tinyint NOT NULL default 0;
[Thu Apr 19 15:12:05.244895 2018] [fcgid:warn] [pid 22054] [client 176.93.107.194:60911] mod_fcgid: stderr:   REPLACE INTO mlinvoice_state (id, data) VALUES ('version', '52');
]


Tietokannasta katsoin tuo sarake inactive tosiaan on jo siellä, näyttää kaikille yrityksille arvona on nolla. Koitan ottaa tuon "ALTER TABLE mlinvoice_base ADD COLUMN inactive tinyint NOT NULL default 0;" -rivin pois tuosta SQL-rimpsusta josko se loppu sitten suoriutuisi oikein.

taleman

Se olikin vaikeaa kun olisi siitä error.log tekstistä pitänyt rivi kerrallaan leikata ja liimata.
Korjasinkin tarkistamalla mitkä oikeudet tietokantakäyttäjällä oli. Kummallista, PHPMyadmin ei näyttänyt yhtään oikeutta valittuna tuolla käyttäjälle. Pistin oikeudet mitkä asennusohjeessa sanotaan, sitten kirjauduin sisään eikä tullut virheilmoitusta ja MLInvoice toimi.

Ihmettelen mikä tuolta käyttäjältä on poistanut kaikki oikeudet? Ja miksi MLInvoice silti toimi ennen päivitystä.

Ere Maijala

Nyt ollaan sellaisten kysymysten äärellä, että en ihan äkkiä keksi selitystä. MLInvoice ei missään vaiheessa yritä muokata käyttäjän oikeuksia.

taleman

Vika oli minussa, en osannut käyttää PHPMyadminia.Voi olla ettei tuo oikeuksien peukalointi lainkaan vaikuttanut asiaan ja se vaan toimi toisella  yrittämällä. Joka tapauksessa ne oikeudet on kunnossa, ja turhaan niitä muutin väärästä paikasta.