Subject Re: [Firebird-Architect] the insert into t select * from t infinite
Author Ann W. Harrison
Dmitry Yemanov wrote:
>
> I think that if/when the conformant behaviour is implemented, it should be
> optional (transaction level? attachment level?) and perhaps even turned off
> by default. Performance really matters.

A standard-compliant, fairly obvious statement - removing the records
with the lowest value using a delete with a subselect - has
unpredictable destructive results. If we're not going to fix it,
perhaps we should at least recognize the case and decline to execute the
statement. Not trashing databases also matters.

My first suggestion was that we recognize in cmp (semantic analysis)
that we've got an insert/update/delete with a self-reference in the
where clause. That should limit the effect of the solution to cases
where there is an actual problem.

Regards,


Ann