On 18/09/2012 04:39, Claudio Valderrama C. wrote:
>> -----Original Message-----
>> From: Carlos H. Cantu [mailto:lis...@warmboot.com.br] 
>> Sent: Lunes, 17 de Septiembre de 2012 9:09
>>
>> If it is too much difficult to fix this behavior, I would suggest to
>> make the ALTER fail too, to avoid bad surprises when metadata is
>> extracted and run, bringing more consistency between the two 
>> operations.
> After reading all the letters, I see that's only a problem of the extraction
> routines, not the engine.
>
>
It's not a extract problem. The problem is a subset of a big one (the
big one is that Firebird DDL is very broken for anything but basic).

First, a fix would need to create computed fields after all fields. Then
you see it while fix the reported problem, it will not fix the problem
if a computed field depends on another one.

So then you need to make a dependency graph to check what need to be
first created. But it's not only that.

Since Firebird generally does not allow broken (invalid) metadata, you'd
need to let things temporary broken until a commit, for user's
flexibility. It does not means, however, that anything must be validated
only at commit.

If you add fields with the same name, the validation must not be
deferred, cause otherwise subsequent commands would not understand a
table with more than one field with the same name.

So you would think DFW must be extended. Wrong! DFW in the way it is is
the least reliable DDL phase.

The problem is big. Not on code, but on thinking about it. The solution,
I guess, would delete more code than create.


Adriano


------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel

Reply via email to