Most mar ugy dontottem megkerdezem, mert keptelen vagyok eldonteni.
Itt van a megfelelo kodreszlet: http://ideone.com/aVpKHn
Borzasztoan nem ertem, hogy miert azt adja, amit ad. Ha mindent atirok static:: -rol self:: -re, akkor is majdnem ugyanezt kapom (ez utobbi mondjuk termeszetes, mert ilyenkor a getClass() is 'A'-t ad vissza).
A cel az lenne, hogy szuksegem lenne egy olyan statik valtozora, amit a parent osztaly definial(?) es tolt fel adatokkal, de az minden gyerekosztalyban egyedi.
Mivel statik a kontextusom (es annak is kell lennie), igy nem csinalhatok peldanyvaltozot - ami nagyban megkonnyitene az eletemet. Ez azert van igy, mert a getFoo() az eles kodban egy helper kulonfele statikus peldanygyarto metodusokhoz.
A legrosszabb esetben nem cachelem el a $foo erteket, hanem mindig dinamikusan talalom ki - de ez nem a legidealisabb megoldas, szeretnem egy querynel csak egyszer kitalalni a $foo erteket.
PHP 5.3 es 5.4 is ugyanezt a hibat dobja.
Ha ez ismert bug, van-e ra valami ertelmes megoldas? Sessionre gondoltam meg, de az annyira csunya lenne.
- 10972 megtekintés
Hozzászólások
Amennyire látom, ezt így nem tudod megcsinálni.
Igaz, C++-ban gondolkodom.
Gondold el, polimorfizmus és öröklődés van.
A static azt is jelenti, hogy az osztály _minden_ példányában ugyanazt az értèket veszi fel.
Mi van akkor, ha egy B osztályban vagy, ami A is a leszármazottság miatt?
Mivel B példánya vagy, a static tagváltozódnak a megfelelő értéknek kell lennie.
De A példánya is vagy, ott meg mást írsz elő!
Olyasmit akarnál, hogy egy tagváltozó értéke attól függjön, hogyan hivatkozol rá. "Virtual" tagváltozó kéne.
Erre pl a konstanssal visszatérő virtuális tagfüggvényt javasolnám. Habár lehet, hogy ez sem lehet static.
Szerk: nem virtualra gondoltam (hiszen az itt értelmeten), felüldefiniáltra.
- A hozzászóláshoz be kell jelentkezni
- A hozzászóláshoz be kell jelentkezni
Ne hívj meg statikusként nem static metódusokat, ez strict warningot kellene, hogy adjon. Ha a
getClass()
-t átírod staticra, teljesen úgy működik, ahogy kell neki.
Vagyis a
guessFoo()
csak egyszer iniciaizálja a
$foo
-t. Így annak a class-nak neve lesz benne, amire elsőre meghívod.
Szóval ha
B::printFoo()
-val kezdesz, akkor mindig B-t ad vissza: http://ideone.com/2r9Bsu
- A hozzászóláshoz be kell jelentkezni
Igen, azt - hajnal reven - elboktem, az eredeti kodban ertelemszeruen ezek statik metodusok. De nekem az kellene (amit irtam is kommentben az eredetinel - hogy minden class a sajat nevet adja vissza (I am A, I am B, I am C).
Kozben - meg lefekves elott - bevillant, hogy valoszinuleg az lesz a megoldas, hogy minden classban definialom ezt a static valtozot. Most kiprobaltam, ugy nez ki, hogy ez megoldja - cserebe nagyon csunyan nez ki. Tehat a protected static $foo -t minden osztalyban le kell definialni.
Az a problema, hogy egy osztalyspecifikus cache-re lenne szuksegem. A parent osztaly az abstract, kozvetlenul nem is peldanyosul soha, sot meghivva sincs soha. A B es C child osztalyoknak viszont teljesen sajat $foo -juknak kell lenni, kulonben megkavarodik a belso mukodesuk, amely viszont lenyegeben az A-ban van implementalva.
Most fogok nekiallni atirni a classokat ugy, hogy az A-nak megfeleloben legyen egy guard, ami az A-ban definialt specialis ertek (NULL) hatasara eldobja az agyat, miszerint ezt felul kell vagni, a B es C pedig ad egy konstans defaultot az A szamara (pl. egy ures tomb), amit az hasznalhat.
--
Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant. | Gentoo Portal
- A hozzászóláshoz be kell jelentkezni
Sajnos csak ez van, újradefiniálja az ember. Mi is így használjuk bizonyos helyeken. Esetleg még lehet, hogy a cache mint tömb első dimenziója osztályspecifikus, így nem kell azzal törődni, hogy épp melyik static változóra hivatkozunk, vagy független cache megvalósítást kell használni.
- A hozzászóláshoz be kell jelentkezni
Mikor nekialltam volna bemasolgatni a cuccokat, akkor jutott nekem is az eszembe, hogy a cachek lehetnenek tombok is, es akkor az osztalynev menten indexelhetem oket - es ez is lett a nota vege.
Kar, hogy ebben a keretrendszerben nem tudok teszteket irni, mert semmi tamogatas nincs hozza - jo lenne.
--
Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant. | Gentoo Portal
- A hozzászóláshoz be kell jelentkezni
A php engedi (oké, dob rá egy warningot, de nem errort) nem statikus metódus meghívását statikus metódusból?
http://cdn.memegenerator.net/instances/400x/27393426.jpg
- A hozzászóláshoz be kell jelentkezni
Sőt ez visszafelé is igaz, és akkor még warningot sem dob :)
- A hozzászóláshoz be kell jelentkezni
Nem statik metodusbol barmilyen nyelven hivhatsz statikot, ez teljesen normalis.
--
Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant. | Gentoo Portal
- A hozzászóláshoz be kell jelentkezni
Igen, de azért valljuk be, statikus metódusból egy nem statikus metódust hívni az több, mint wtf. ($this, ugyebár...)
Az igazán vicces az az, hogy ha egy objektumból hívsz meg egy másik osztályt, akkor a hívó objektum lesz a $this.
----------------
Lvl86 Troll, "hobbifejlesztő" - Think Wishfully™
- A hozzászóláshoz be kell jelentkezni
Úgy értettem, hogy pl.:
class A {
public static function wat() {
echo 'wat';
}
}
$a = new A();
$a->wat();
Csak ilyenkor nincs $this, marad statikus kontextusban.
- A hozzászóláshoz be kell jelentkezni
PHP engedi oda-vissza mindenféle trükkös módon. ;)
----------------
Lvl86 Troll, "hobbifejlesztő" - Think Wishfully™
- A hozzászóláshoz be kell jelentkezni
Igaz ez ha a php < 5.4
- A hozzászóláshoz be kell jelentkezni
Ez nem bug, egyszerűen nem jól használod. A __CLASS__ az constants (méghozzá magic constant), de ettől függetlenűl még nem futás időben, hanem fordítási időben sül el és máshogy, mint ahogy gondolod. Egyébként meg olvasd el a php.net idevonatkozó szócikkeit (minden, de tényleg minden le van írva, olvass!).
Ami neked kell:
- get_called_class()
- get_parent_class()
- is_subclass_of()
- A hozzászóláshoz be kell jelentkezni
A felrakott kod hibas, a metodusoknak statikusnak kell lenniuk, ezt vedd figyelembe.
Valojaban nekem a child osztaly neve kell, es csak az.
A tortenet arrol szol, hogy van egy MVC keretrendszer, amibol a C es a V mar meg van valositva, az M-hez viszont semmifele tamogatas nincs, egy vekony validacios osztalyt leszamitva. Mivel en mocskosul utalom a spagettikodot, a copy-pastat meg meg ennel is jobban (Ruby-nal azt verik folyamatosan a fejunkbe, hogy ha egy kodot kettonel tobbszor masolsz be valtozatlan formaban, akkor csinalj ra mixint, mert kulonben a maintenance hellben fogsz ropogosra egni), igy nekialltam valami elheto alaprendszer gyartasanak.
A dolog jol is mukodott, mindaddig amig csak egy darab modell volt a rendszerben. Mivel nekem a konkret modell osztaly konkret neve kellett, es mivel a child osztalyokban sosincsenek megvalositva azok a metodusok, amiket a parent megvalosit, igy mindenkeppen szuksegem volt arra, hogy honnet jon a class.
Ez a get_called_class() jonak tunik, kar, hogy nagyon ritkan hivom meg direktben azokat a fuggvenyeket, amikben szuksegem van a class nevere. A legtobbszor static:: hivasok sulnek el, es a doksibol nagyon nem tiszta, hogy ilyenkor mit is ad vissza a get_called_class().
Jelenleg a modell osztalyokban mindegyikben le van implementalva a static getClass() metodus, ami a __CLASS__ aktualis erteket adja vissza.
Szerk: megneztem. LOL. Nem tudom, hogy hogy csinalja, de tenyleg mindig az igazi class-t adja vissza, nem tudom egyszeruen szarul meghivni... Azert leirhatnak a doksiba.
Jovok egy sorrel, vagy amivel akarod.
Szerk2: ez amugy meg mindig nem oldja meg a cachelesi problemamat - arra valoszinuleg marad az a megoldas, hogy a cache egy classnev alapu asszociativ tomb.
--
Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant. | Gentoo Portal
- A hozzászóláshoz be kell jelentkezni
A kulcsszo: late static bindings
olvasd el, itt tobbet megtudsz rola: http://www.php.net/manual/en/language.oop5.late-static-bindings.php
a peldakban pont __CLASS__ -os dolgok vannak vegig
- A hozzászóláshoz be kell jelentkezni
Ez jo cucc, koszi.
--
Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant. | Gentoo Portal
- A hozzászóláshoz be kell jelentkezni
PHP-ben van late static bindig, azaz a hívó metódus tudja, hogy melyik osztályon lett ő meghívva. Emiatt tudja az első esetben. A második esetben azért az A osztályt dobja, mert a guessFoo az A tagja.
Amit te akarsz ahhoz nem statikus metódusok kellenek (eleve más nyelvekben, pl. felüldefiniálni sem lehet azokat. Gyakorlatilag úgy működik, mint egy sima függvény, csak egy osztályba belerakva.)
----------------
Lvl86 Troll, "hobbifejlesztő" - Think Wishfully™
- A hozzászóláshoz be kell jelentkezni
Az a baj, hogy a kiindulo olyasmi, hogy ilyen API-t szeretnek:
$admin = AdminModel::findFirst(array('admin_email' => 'hron@mittudomain.com'));
Illetve a model maga teljesen dinamikus, vagyis a propertyket a tabla oszlopok alapjan talalja ki (like PDO, csak azt itt nem hasznalhatok, mert sajat DB API van). Ehhez viszont ismernem kell, hogy a tablaban milyen oszlopok vannak. Ez jo is, csak nem akarom minden find hivashoz lekerdezni azokat, igy azt a megoldast talaltam ki, hogy az elso findnel becachelem az oszlopok listajat osztalyszinten, hiszen egy osztaly ugyis tobbe-kevesbe egy tablahoz kotodik (nincs igeny tobbtablas modellekre vagy shardingra), igy azok a request lefutasa alatt fixek (amugy se szokas felkeszulni sema modositasra minden requestnel).
Az osztalynev kitalalas azert kellett, mert egyreszt az egesz dinamikus, tehat amikor pl. peldanyositok egy modelt, akkor a new-nak kellene egy osztalynevet atadni megiscsak, masreszt ha nincs explicit tablanev megadva, akkor az is a modellnevbol van kikalkulalva. (AdminModel => admin).
De amugy igy mar csak nagyon keves esetben kellenek feluldefinialhato statikus metodusok, mert PHP-nal ha jol tudom nem lehet kodot futtatni csak ugy class-level, mint rubynal, tehat nem tudok olyant irni, hogy:
class FooModel extends AbstractModel {
setTable('foo2');
}
mert ez igy mindenfele warningokat dob. Igy ilyen esetekben muszaj felulvagnom a fix getTable() metodust.
--
Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant. | Gentoo Portal
- A hozzászóláshoz be kell jelentkezni
Model messze nem egyenlő az adattáblák 1=1-ben való leképezésével, ezt most verd ki a fejedből. Ez az ORM hamis ígérete.
Másrészt ez nem más, mint sima late static binding.
----------------
Lvl86 Troll, "hobbifejlesztő" - Think Wishfully™
- A hozzászóláshoz be kell jelentkezni
Tudom, hogy nem egyenlo. De egy AbstractModel szamara eleg. Nekem pedig jelenleg erre van szuksegem. De egy csomo (odavalo) logikat fogok letolni a model szintjere, ha ez vegre elkezd mukodni, mert most nagyon osszevissza van az egesz.
Egyszeruen en olyan idiota vagyok, hogy addig nem tudok ertelmesen dolgozni, amig egy turheto, a Rails-era hasonlito ActiveRecord implementacio nincs alattam. Es nem erdekel hogy modellnak vagy masnak hivjak-e, nekem ilyesmi kell ahhoz, hogy normalisan menjenek a dolgok, mert en rohadtul utalom az sql string bizgetest.
--
Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant. | Gentoo Portal
- A hozzászóláshoz be kell jelentkezni
Hasznalj parameterezett queryket.
----------------
Lvl86 Troll, "hobbifejlesztő" - Think Wishfully™
- A hozzászóláshoz be kell jelentkezni
De az alattam futo DB layer olyat nem tud. PDO-zni szeretnek, de nem lehet, illetve lehetne, csak azzal meg tobb munka lenne.
Az a baj, hogy ez a framework olyan szeretem/nemszeretem dolog. Nem szeretem, mert baromira nem ugy gondolkodik, ahogy en, de ezen mar nagyjabol tul vagyok, kezdek atallni az o gondolkodasmodjara. Viszont szeretem, mert ami nekem kell, azt viszonylag keves kodolassal meg tudom csinalni. Ez a modellkezelos dolog az egyetlen kivetel. Igazabol van mar par olyan cucc, ami sql stringekkel operal, de latom, hogy ez annyira nem jo dolog.
Gyakorlatilag egy MySQL integralt szolgaltatas alapveto menedzsmentjen dolgozok, eddig PHPMyAdminbol kezelgettuk, de most eljutottunk oda, hogy ez keves. Nem akarok sokat, illetve nem is feltetlen surgos a cucc, foleg nem rendszerkritikus, szoval nem baj az, ha kiserleti, vagy nem tokeletes megoldasok vannak benne.
Tekintve hogy jelenleg a framework csak es kizarolag az sql string konkatenaciojaval letrehozott query-kre bukik, amit most csinalok, az egy hatalmas szintlepes.
Azert erre indultam el, mert ezt ertem, hogy hogy mukodik, es viszonylag egyszeru is implementalni azt a reszet, ami engem erdekel. A parameterezett sql query viszont necces, mert nem PDO-t es nem mysqli-t hasznalunk.
--
Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant. | Gentoo Portal
- A hozzászóláshoz be kell jelentkezni
Ja MySQL... Azt hittem, valami adatbaziskezelorol van szo.
phpmyadmin kulon fail kategoria.
---------------
Lvl86 Troll, "hobbifejlesztő" - Think Wishfully™
- A hozzászóláshoz be kell jelentkezni
MySQL-lel mi a bajod úgy őszintén? :)
PMA az ördögtől származik.
-----------
"640GB sokmindenre elég"
- A hozzászóláshoz be kell jelentkezni
Nem rossz a PMA arra, amire valo. MySQL db bongeszesere teljesen jo fejlesztes vagy hibakereses kozben.
--
Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant. | Gentoo Portal
- A hozzászóláshoz be kell jelentkezni
+1, csak jól el kell dugni a webszerveren:)
- A hozzászóláshoz be kell jelentkezni
Fejlesztésre PMA? Kb. a sajtreszelővel csinálás kategória egy normális asztali kliens mellett.
(HeidiSQL egyébként egészen bevált.)
----------------
Lvl86 Troll, "hobbifejlesztő" - Think Wishfully™
- A hozzászóláshoz be kell jelentkezni
mindnek megvan a saját betegsége és nincs egy normális crossplatform. A pma legalább mindenütt ugyanúgy szar (én nem szídom, browse-olgatni tökéletes, a query-ket meg magam írom)
- A hozzászóláshoz be kell jelentkezni
- A hozzászóláshoz be kell jelentkezni
A mysql-t már jó ideje, teljes értékű adatbáziskezelőnek kell tekinteni.
Főleg mióta az 5.5-ben az Oracle újraírta az InnoDB engine-t.
Ha valaki ezzel nem ért egyet, ezt javaslom átfutni:
http://shop.oreilly.com/product/0636920022343.do
PHP orm-nek pedig szerintem ez az egyetlen használható:
http://propelorm.org/
- A hozzászóláshoz be kell jelentkezni
Debianon alom az 5.5
Arrol nem beszelve, hogy myisam-only a ceg.
ORM-nek en ezt talaltam kellemesnek: http://www.phpactiverecord.org/
--
Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant. | Gentoo Portal
- A hozzászóláshoz be kell jelentkezni
Barmikor felteheted magadnak az 5.5-ot debianra.
Letoltod, leforditod, aztan hadd szóljon.
Másrészt létezik olyan repo, ahonnan felmegy a legujabb mysql magatol is.
http://www.dotdeb.org/ pl ilyen.
Harmadrészt az oracle féle innodb létezik kiegészítőként az 5.1-hez is...
A myisam és a cég szó nem fér össze!
Ugyanis a myisam gyors, de nem biztonságos, nagyon nagyon könnyű adatot veszteni vele.
Részleteket lásd a linkelt könyvben...
A linkelt orm nekem nem áll kézre, kia frász akarja tömbben megadni az értékeket, ha lehetne mindegyiknek saját setter fuggvenye, és automatikusan kitalalja az ide melyiket kezdem el írni.
Ajánlom a propelt kipróbálni...
- A hozzászóláshoz be kell jelentkezni
Te, nekem ne mutasd be a MyISAM-ot. En vagyok itt a rendszergazda. :-)
Nezd, en nem fejlesztek parszaz kodsorosnal komolyabb PHP appokat, a kodsor ala nem besorolva a fuggveny es osztalydefiniciokat meg a nyito PHP jeleket.
Nekem az osszes kulso repoval az a nyugom, hogy nem tudom, milyen szintu tamogatas van hozza. Beleszaladok valami ordas bugba es mi van? Lehet-e varni, hogy majd lesz valam fix?
Forrasbol pedig nem forditunk semmit, hacsak nincs nagyon nyomatekos indok ra. Nem a forrassal van a bajom, hanem hogy azt karban is kell tartani, frissiteni peldaul.
A konyv amugy jo, tok sok info van mar a samplerben is. Az a baj, hogy ha most megvennem, tuti nem lenne idom elolvasni... :-(
--
Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant. | Gentoo Portal
- A hozzászóláshoz be kell jelentkezni
1 szervernel meg nem problemas (es tobb szervernel sem) a forrasbol valo forditast. Tobb szervernel a vegcel egy .deb vagy barmi amit az adott repo hasznal, egy szervernel pedig csak a ./configure && make && make install (illetve a sajat parameterek, de ha ezt osszeparositod egy wget *latest-stable*.tar.gz && tar xvzf -el es egyeb aprosagokkal, csak scriptet inditasz).
En raszoktam arra, hogy kezzel forditok mindent, mert vannak csomagok sok eves lemaradassal is.
- A hozzászóláshoz be kell jelentkezni
En is raszoknek, de van annyi szerver a felugyeletem alatt, hogy nincs ra sem kapacitas sem szandek. Mert ha egy helyen van valami jo, akkor ketto dolog szokott tortenni:
- Mindenki arra a szerverre akarja tenni a cuccait
- Minden szerverre fel kellene tenni azt a jot.
Nincs jo dontes.
Ugyanez all a .deb-es tortenetekre is: tudok csomagepiteni, ha nagyon muszaj, de attol meg nem valik a csomag karbantartotta, csak a csomagkezelo altal lebanyaszhatova. Nagy kulonbseg am...
--
Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant. | Gentoo Portal
- A hozzászóláshoz be kell jelentkezni
Hat, nalam ez ugy nez ki hogy rebuild-latest.sh indit. (o letolti a legfrissebbet, lenyomja a ./configure && make && make install, deb keszites es bemasolja a repoba) o elszoszol maganak, egy screen meg elfer nekem, a szervereken meg ugyanugy apt-get update & upgrade ha befejezte. Evente 1x kell egy 3-4 percet raforditani, ha netan valtozna valami.
Ez inkabb akkor macera, ha van 10 szerver, ami 10 fajta
- A hozzászóláshoz be kell jelentkezni
Nekem az a baj, hogy egyaltalan foglalkoznom kell vele. Ha van rendes tamogatas, akkor jon egy level, hogy nyomjam le az apt-get upgrade -t, mert epp security frissites van (vagy akarmi, megkapom emailben a changelogot), lenyomom, aztan ismet elfelejtem, hogy az a gep dohog is valahol.
De sajat forditasu cuccnal pollozni kell, hogy mikor jon ki valami frissites. Ha az embernek nem csak egy szervere van, es nem csak a frissitgetes a feladata, akkor nyug.
Es nincs garancia, hogy evente csak 1x kell vele foglalkozni. Ha nagyobb bugokat fixalnak, akkor jo mihamarabb frissiteni, hogy meg az eselye se legyen meg annak, hogy azok elojonnek.
--
Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant. | Gentoo Portal
- A hozzászóláshoz be kell jelentkezni
milyen distrorol beszelunk? Mert ha ubuntu/debian, az pont nem a csomagok frissessegerol hires:)
- A hozzászóláshoz be kell jelentkezni
Viszont backportoljak a fontosabb security meg egyeb hibak javitasat. Nem verzioszam-buzi vagyok, szoval az annyira nem izgat.
--
Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant. | Gentoo Portal
- A hozzászóláshoz be kell jelentkezni
Remek, csak amikor valamibol ki akarnal probalni egy picit modernebb dolgot es kozli veled, hogy akkor a libc-ig cserelj mindent (mono 3, debi squeeze), mindezt ugy, hogy mas rendszeren ez ugy nez ki, hogy leszeded az .msi/setup.exe/.dmg/.egyeb csomagot es felteszed, tobbnyire hiszti nelkul.
----------------
Lvl86 Troll, "hobbifejlesztő" - Think Wishfully™
- A hozzászóláshoz be kell jelentkezni
... legfeljebb csak siman nem indul el. Izles kerdese, ki mit preferal jobban.
--
Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant. | Gentoo Portal
- A hozzászóláshoz be kell jelentkezni
"myisam"
Ezzel az erővel egy Excel táblát is alá lehetne tolni a rendszer alá.
----------------
Lvl86 Troll, "hobbifejlesztő" - Think Wishfully™
- A hozzászóláshoz be kell jelentkezni
Azert ennyire nem rossz am a MyISAM. Nem azt mondom, hogy jo, mert nem jo, de meglepodtem, hogy ahhoz kepest, amit hallottam rola, mennyit bir.
Aztan az Excel tabla peldaul sokkal kevesbe javithato, meg a MyISAM-nal is, legalabbis az Office-val valo szivasaim eddig mindig arrol gyoztek meg, hogy a Microsoft meg csak nem is hallott arrol, hogy teljesen torott tablat reszlegesen helyrerakni. Ha o maga doglott meg, akkor meg valamennyire tudott vele kezdeni valamit, de ha rajta kivulallo okok miatt serult meg a fajl, eselytelen voltam. A MyISAM-mal eddig sokkal pozitivabb tapasztalataim vannak - bar az teny, hogy tobbet is doglik meg magatol a dolog.
Ettol eltekintve igazad van.
--
Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant. | Gentoo Portal
- A hozzászóláshoz be kell jelentkezni
MyISAM:
- még mindig tábla szinten történik a lockolás (ellentétben az InnoDB-vel)?
- még mindig nem támogatottak a külső kulcsok (ellentétben az InnoDB-vel)? Mármint úgy értem, hogy ami használ is valamit abban, hogy valami minimális adatkonzisztenciát fel lehessen tartani...
Bónuszkérdés:
- MySQL még mindig képtelen normálisan lekezelni és szétcseszi a táblákat, ha betelik alatta a lemez?
"bar az teny, hogy tobbet is doglik meg magatol a dolog."
Na az egyetlen RDBMS, amit eddig láttam magától megdögleni, az a MySQL volt.
----------------
Lvl86 Troll, "hobbifejlesztő" - Think Wishfully™
- A hozzászóláshoz be kell jelentkezni
"- még mindig tábla szinten történik a lockolás (ellentétben az InnoDB-vel)?"
Ez állítható, nem?
- A hozzászóláshoz be kell jelentkezni
Nem tudom már, hál'istennek csak egy rendszer van (még) a felügyeletem alatt, ami MySQL-t használ, nyárra az is áldozatul fog esni az egységesítési törekvéseinknek. (Van egy hasonló, de featuredúsabb rendszer, az postgresql-es, ebből át lesz lapátolva a másikba, ami használható - az is jellemzően olyan, amit múlt nyáron pofoztunk helyre vagy írtunk újra kollégával -, így egy kódbázis lesz, nem kell mindent 2x implementálni, ami jó.)
----------------
Lvl86 Troll, "hobbifejlesztő" - Think Wishfully™
- A hozzászóláshoz be kell jelentkezni
Telt mar fel mysql szerverem, egyetlen egyszer volt egy eset, amikor reparalni kellett a tablat, de az is intezheto volt online, sqlbol. De az meg valami osregi MySQL volt, talan Debian 5.0 alatt. Az meg igencsak regen volt mar.
--
Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant. | Gentoo Portal
- A hozzászóláshoz be kell jelentkezni