Transakcnost DDL & Oracle (Re: ako synchronizovat databazove skupiny podla tabulky?)

Honza Pazdziora adelton na informatics.muni.cz
Středa Únor 25 11:31:53 CET 2004


On Wed, Feb 25, 2004 at 09:56:25AM +0100, Jan Serak wrote:
> 
> Proc ale Oracle implementoval DDL tak, ze kazdy prikaz je samostatna 
> transakce? Kdyz pominu jako duvod ojebavku, vzletne oznacovanou jako 
> "limitation", tak jediny duvod je pruchodnost databaze (pripadne zmeny v 
> datech se nemusi delat pres rollback segment).

Ty duvody tam muzou byt. Napriklad muzes mit objekty, ktere holt
v rollback segmentech nejsou. Zkompilovana tela funkci a packagu
a naloadovane dynamicke knihovny. Proste DDL se muze tykat ruznych
veci. Navic pak mas problem s tim, ze se musis transakcne zacit chovat
i k optimizeru, protoze ten samy select, zopakovany po provedeni
nejake DDL operace, uz potrebuje jiny plan.

On taky ten PostgreSQL par verzi zpet (presne tu hlasku ted nemuzu
najit) kdyz clovek udelal drop table, tak napsal neco jako "ano, delam
to v transakci, ale ted rychle koukej udelat commit, protoze na drop
table neumim rollback".

> Kazdopadne tohle byla posledni kapka, ktera me donuti ten zazracny 
> PostreSQL nainstalovat ;-)

No, nemoznost radit podle ruznych jazykovych kriterii a nutnost rict
razeni pri vytvareni clusteru databaze (dokonce to ani neni per
databaze) je dosti otravna. Stejne jako neexistence packagu, a fakt,
ze temporary tabulka nema per session obsah, ale taky pouze existuje
per session. Abys nebyl zklamany.

-- 
------------------------------------------------------------------------
 Honza Pazdziora | adelton na fi.muni.cz | http://www.fi.muni.cz/~adelton/
 .project: Perl, mod_perl, DBI, Oracle, large Web systems, XML/XSL, ...
		Only self-confident people can be simple.


Další informace o konferenci Test