Subject Re: Firebird enters infinite? loop executing this query.
Author Adam
--- In, Andrew Guts <developer@...>
> At 11:59 PM 18/12/2006, you wrote:
> >Hello Firebird Support,
> >
> >I need to convert some of my database fields into UTF-8. So I
wrote and
> >run operator by operator the script below:
> >-----------
> ---------------------------------------------
> >alter table cms_wiki
> >add u_name varchar(100) character set UTF8,
> >add u_title varchar(100) character set UTF8,
> >add u_description blob sub_type 1 character set UTF8,
> >add u_text blob sub_type 1 character set UTF8;
> COMMIT; /* !!!!!!!!!!!!!!!!!!!!!!!!!!!! */
> >update cms_wiki set
> >u_name = name, u_title = title, u_text = text, u_description =
> >description; /* Here it hangs */
> >
> Thank you.
> But it does not work. Even after restarting the Firebird. The "update"
> operator right after the "commit" hangs as if without "commit". Any
ideas ?

Tell us the approximate record count and also tell us about any before
update or after update triggers on cms_wiki (there is a hint for you
there to disable these triggers for your batch update).

Then you will have the issue of garbage collection that your update is
performing. If you have tried this several times and bombed the server
before it committed, then chances are you have lots of back versions
that need to be garbage collected. It may be faster to backup (with
-g) and then restore and run your statement on a clean database.