From: Alex P. <pes...@ma...> - 2013-06-24 07:22:40
|
On 06/23/13 22:18, Adriano dos Santos Fernandes wrote: > Hi! > > This error is inconsistent in 2.5 and 3.0! > > 2.5 accepts a DECLARE for a denied module, but rejects it if a procedure > references the function. This happens because DFW does not load the just > declared function, but it happens when it is referenced. This is at > least strange. Legacy behavior - exists at least since ib6. > > In 3.0 DFW loads it and rejects it right on the declaration. But it > happens then that restore may not work (I guess it may not work in 2.5 > too Due to this code (2.5) it's just a warning: if (tdbb->getAttachment()->att_flags & ATT_gbak_attachment) { warning(Arg::Warning(isc_funnotdef) << Arg::Str(name) << Arg::Warning(isc_modnotfound)); } else { csb->csb_blr_reader.seekBackward(count); error(csb, Arg::Gds(isc_funnotdef) << Arg::Str(name) << Arg::Gds(isc_modnotfound)); } > ). Currently this error in restore makes metadata wrong and causes > somewhat unrelated crashes with procedures not completely loaded. > > How do you want to fix this? For me 2.5 is OK - may be with the warning when declaring missing function in addittion to what we have now. |