From: Ded <de...@hq...> - 2002-10-28 16:27:13
|
Raymond Kennington wrote: > > Dmitry Yemanov wrote: > > > > Helen, > > > > > I might be mistaken, but I think he was talking about a SP > > > containing a > > > PLAN which had a reference to an integrity index (RDB$PRIMARYnnn, > > > etc.). If so, he got the wrong answer about current gbak > > > behaviour, which does NOT maintain the original identifiers for > > > integrity indexes when restoring. > > > > Sorry, but it DOES. Every RDB$PRIMARY34 or RDB$FOREIGN56 will have exactly > > the same name after restore and will correspond to the same tables/fields. > > Only recreating a database from script will rename these indices. > > > > Dmitry > > Wrong! I just tried it with FB1.0: > > gbak: ERROR: index RDB$FOREIGN66 cannot be used in the specified plan > gbak: ERROR: index RDB$FOREIGN66 cannot be used in the specified plan > gbak: ERROR: Exiting before completion due to errors. Raymond, IIRC I encountered this behaviour on IB4 and, being active user of explicit planning, since that time don't use system indexes in plans. But just of curiousity I made experiment on FB1 - created database with 3 tables one of which with references to two another, got RDB$PRIMARY1 T1 RDB$PRIMARY2 T2 RDB$PRIMARY3 T3 RDB$FOREIGN4 T3 RDB$PRIMARY1 RDB$FOREIGN5 T3 RDB$PRIMARY2 dropped constraint based on RDB$FOREIGN4 and made b/r. Result: RDB$PRIMARY1 T1 RDB$PRIMARY2 T2 RDB$PRIMARY3 T3 RDB$FOREIGN5 T3 RDB$PRIMARY2 hole in numeration is not used and FK index name is the same. More likely in your case constraint which used RDB$FOREIGN66 was dropped and then created once more. Another guess - looking ib-support I see you alternate access to the same database with different servers. I'm afraid this can provide unpredictable results. And usage utilities from one server with different one - too. Advice on your problem with SP I'll post in ib-support. Best regards, Alexander V.Nevsky. |