🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: ee.prog
Article #51

arusaamatus mysql-is

#51
From: Gunnar Koppel
Date: Mon, 19 Jul 2004 15:38
51 lines
2783 bytes
Terr!

Selline inetu lugu juhtus, et sai tehtud andmebaasi kasutavates skriptides
rida muudatusi (ükshaaval, testitud ja kasutusse antud) ja siis ka tehtud
ühte mysql-i tabelisse selline muudatus:

alter table xtabel add ms enum('e', 'j') not null default 'e';

Toodud muudatus oli ettevaatav, st et ükski skript seda ei vajanud, uus
veerg tabelisse oli vajalik edaspidiseks. Lisaks oli veeru nimi unikaalne
kõigi kasutatavate andmebaaside piires, st et polnud võimalik ka tabelite
lohaka ühendamise korral segadust tekitada.

Pärast seda muudatust hakkas pihta seletamatu anomaalia: mysql tekitas üha
protsesse juurde, load kasvas taevasse ja mysql-iga suhtlemine polnud
võimalik, masin ise oli tatine. Kui mysql-ile restart teha, siis mõnda
aega oli kõik OK, aga tasapisi (sõltuvalt kasutamise aktiivsusest) olukord
taastus. Kuna mysqlis tehtud muudatus oli niivõrd süütu, jäi kahtlus ikka
skriptidele, aga mysqli logidest ei leidnud mingit ühte konkreetset
skripti, millega häda kaasneks. Küll aga jäi silma, et mitmete skriptide
loodud ühendused jäid pärast viimast päringut pikaks ajaks rippuma ja
ühenduse katkestamine toimus alles palju-palju hiljem. Ja kui ka lihtne
'insert' tabelisse (mitte muudetud tabel, isegi teine baas)  
käsureakliendi kaudu mysql-i täitsa tummaks võttis, siis hakkas süvenema
kahtlus, et kuidagi on kõige taga tabelisse tehtud muudatus.

Ja käsk:

alter table xtabel drop ms;

löikas mädapaise lahti ja kõik toimib jälle ladusalt. Mingit õpetlikku
järeldust ülaltoodust kahjuks teha ei suuda, ka oleks vaja nimetet veerg
ikkagi tabelisse tekitada. 

mysql oli alguses 3.23.49 (debiani pakiversioon), jamade käigus uuendasin
4.0.18 peale, mis aga olukorda kuidagi ei muutnud.

Iga selgitav vihje on teretulnd.

Tänud ette,

WK
Technical Details
Message-ID: <Pine.LNX.4.21.0407191746030.7289-100000@koi.raamatukoi.ee>
Path: arc1-ca.pugleaf.net!g2news1.google.com!news2.google.com!news.maxwell.syr.edu!news.tele.dk!news.tele.dk!small.news.tele.dk!irazu.switch.ch!switch.ch!newsfeed3.funet.fi!newsfeed1.funet.fi!newsfeeds.funet.fi!newsfeed.uninet.ee!diablo.uninet.ee!not-for-mail

Show Full Headers
Complete Article Headers
X-Google-Thread: f8b3f,eda72fd89da48cea,start
X-Google-Thread: fecc9,eda72fd89da48cea,start
X-Google-Attributes: gidf8b3f,gidfecc9,public
X-Google-Language: ESTONIAN,ASCII
Path: arc1-ca.pugleaf.net!g2news1.google.com!news2.google.com!news.maxwell.syr.edu!news.tele.dk!news.tele.dk!small.news.tele.dk!irazu.switch.ch!switch.ch!newsfeed3.funet.fi!newsfeed1.funet.fi!newsfeeds.funet.fi!newsfeed.uninet.ee!diablo.uninet.ee!not-for-mail
Newsgroups: ee.prog,ee.arvutid.unix.linux.vestlus
Date: Mon, 19 Jul 2004 18:38:23 +0300
From: Gunnar Koppel <wanradt@raamatukoi.ee>
Subject: arusaamatus mysql-is
Message-ID: <Pine.LNX.4.21.0407191746030.7289-100000@koi.raamatukoi.ee>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=ISO-8859-1
Content-Transfer-Encoding: QUOTED-PRINTABLE
Lines: 52
NNTP-Posting-Host: 194.204.28.99
X-Trace: 1090251661 diablo.uninet.ee 3106 194.204.28.99