Subject | Re: [firebird-support] Stored procedure stops functioning correctly after restore under Firebird 3 |
---|---|
Author | Kevin Stanton |
Post date | 2019-02-13T21:26:26Z |
Thank you! Thankfully I made the dialect 1 to 3 conversion years ago.
I will check these out. It will be a bit before I can devote 100% on this.
I will check these out. It will be a bit before I can devote 100% on this.
> On Feb 13, 2019, at 1:03 PM, FSPAPA INCA Team inca@... [firebird-support] <firebird-support@yahoogroups.com> wrote:[Non-text portions of this message have been removed]
>
>
> Hi Kevin – I’ve had good results using fbclone to migrate from InterBase 7.5.1 to Firebird 3 using this method. Migrating from 1.5 might not be too dissimilar.
>
> https://github.com/zedalaye/fbclone <https://github.com/zedalaye/fbclone>
>
>
> I made a couple of changes to support dialect 1 (we’re going to switch to dialect 3 and remove legacy UDFs etc after our migration is complete) and reverse migration.
>
> https://github.com/stevedrake/fbclone <https://github.com/stevedrake/fbclone>
> https://github.com/stevedrake/uib <https://github.com/stevedrake/uib>
>
>
>
>
>
>
> From: firebird-support@yahoogroups.com <mailto:firebird-support@yahoogroups.com> <firebird-support@yahoogroups.com <mailto:firebird-support@yahoogroups.com>>
> Sent: Thursday, 14 February 2019 6:30 AM
> To: Firebird Support <firebird-support@yahoogroups.com <mailto:firebird-support@yahoogroups.com>>
> Subject: Re: [firebird-support] Stored procedure stops functioning correctly after restore under Firebird 3
>
>
>
>
>
> Thanks Mark. I realize it’s a huge migration. I will be exhaustively testing everything. I like the idea of creating an empty database and pumping the data over. Is there a tool for this? (Actually just found one from Clever Components)
>
> I have looked at the migration docs for the 2.x versions and will do more.
>
> Do you think it’s worth me going to 2.5 first or go directly to 3.0? Both will be a ton of work so I’m thinking directly to 3.0.
>
> Thanks again!
> Kevin
>
> > On Feb 13, 2019, at 9:05 AM, Mark Rotteveel mark@... <mailto:mark@...> [firebird-support] <firebird-support@yahoogroups.com <mailto:firebird-support@yahoogroups.com>> wrote:
> >
> > On 13-2-2019 16:58, Kevin Stanton Kevin.Stanton@... <mailto:Kevin.Stanton@...> <mailto:Kevin.Stanton@... <mailto:Kevin.Stanton@...>>
> > [firebird-support] wrote:
> > > I’m starting to look into migrating from 1.56 to either 2..5 or directly to 3.0. I’ve bought the Migration Guide but haven’t read it yet.
> > >
> > > It concerns me that I would/will have to recompile all SPs and triggers. Is there an automated way to do this? I have 909 SPs and 785 triggers. This will be one heck of a task with my installation base.
> >
> > The choice is to either carefully and exhaustively verify if all your
> > stored procedures and triggers continue to work correctly, and only
> > recreate those that you know need it, or recreate the whole shebang (you
> > will still need to carefully and exhaustively verify them).
> >
> > Firebird itself has no way to recreate stored procedure and triggers
> > automatically, although it is possible to craft scripts that rebuild it
> > based on the database metadata (assuming the source blobs haven't been
> > cleared). I would recommend against doing that automatically and instead
> > you should use known good and verified scripts for the actual upgrade,
> > if only to avoid running into issue with things that are now no longer
> > syntactically valid or unquoted use of identifiers that are now reserved
> > words.
> >
> > Some people advocate that you shouldn't upgrade a database at all, but
> > instead recreate it and pump the data over. In a situation with a lot of
> > deployments that might also fix problems with diverging structure (but
> > if that is the case, the migration path will be more prone to errors).
> >
> > Especially when taking the big step from 1.5, it might make sense to
> > take it as an opportunity to improve your database design, and get rid
> > of things that are no longer needed (eg use built-in functions instead
> > of UDFs, switch from dialect 1 to dialect 3 if you are still on dialect
> > 1), etc. and then migrate the data from the old to the new.
> >
> > Firebird 1.5 to 2.0 was already a big step with a lot of new features,
> > but also some breaking changes, sometimes subtle, sometimes not. Don't
> > expect going from 1.5 to be simply backing up and restoring, especially
> > not with 909 stored procedures and 785 triggers, and more so if you use
> > a lot of UDFs, or relied on some of the ambiguous behavior that is no
> > longer valid, used unquoted identifiers that are now reserved words, etc.
> >
> > And realize that Firebird 2.0 was released 12 years ago. A lot of
> > migration knowledge from 1.5 to 2.0 may have been forgotten since (or at
> > best not easily recalled). You should really carefully study the 2.0,
> > 2.1, 2.5 and 3.0 release notes and the Firebird 2 installation and
> > migration guide, and as you bought it, Carlos' Migration Guide to
> > Firebird 3.
> >
> > Mark
> > --
> > Mark Rotteveel
> >
> >
>
> ------------------------------------------------------------------------------------------------------------------------
> Note:
> This e-mail message has been inspected for malicious content.
>
> Attention:
> The information contained in this message and or attachments is intended only for the person
> or entity to which it is addressed and may contain confidential and/or privileged material. Any
> review, retransmission, dissemination or other use of, or taking of any action in reliance upon,
> this information by persons or entities other than the intended recipient is prohibited. If you
> received this in error, please contact the sender and delete the material from any system and
> destroy any copies.
> Please note that the views and opinions expressed in this message may be those of the
> individual and not necessarily those of Foodstuffs South Island Ltd.
>
> Thank you.
> ------------------------------------------------------------------------------------------------------------------------
>
>