Fw: in place alter messing things up
Posted in 2007
Topics: Logging & Checkpoints
I believe that you are incorrect regarding the logging of a "dummy" update. I use them frequently to repair failed ER transactions. Doing so forces the record to be replicated, a feat that is only achieved if the action is logged.
----- Original Message ----
From: "dcruncher4@aim.com" <dcruncher4@aim.com>
To: informix-list@iiug.org
Sent: Friday, November 9, 2007 12:31:01 PM
Subject: Re: in place alter messing things up
Always follow this golden rule for in-place alter. run an
update statement which will do a dummy update on all rows.
update table set col1 = col1 where 1=1;If I were you, I would not have put the system back to production
without running a dummy update.
I believe the engine is smart enuf to know that the above mentioned
dummy update does not require entries in logical logs.
_______________________________________________
Informix-list mailing list
Informix-list@iiug.org
http://www.iiug.org/mailman/listinfo/informix-list
On Nov 9, 1:59 pm, DL Redden <redde...@yahoo.com> wrote:
> I believe that you are incorrect regarding the logging of a "dummy" update. I use them frequently to repair failed ER transactions. Doing so forces the record to be replicated, a feat that is only achieved if the action is logged.
>
> ----- Original Message ----
> From: "dcrunch...@aim.com" <dcrunch...@aim.com>
> To: informix-l...@iiug.org
> Sent: Friday, November 9, 2007 12:31:01 PM
> Subject: Re: in place alter messing things up
>
> Always follow this golden rule for in-place alter. run an
> update statement which will do a dummy update on all rows.
> update table set col1 = col1 where 1=1;> If I were you, I would not have put the system back to production
> without running a dummy update.
>
> I believe the engine is smart enuf to know that the above mentioned
> dummy update does not require entries in logical logs.
>
> _______________________________________________
> Informix-list mailing list
> Informix-l...@iiug.orghttp://www.iiug.org/mailman/listinfo/informix-list
Absolutely correct about the dummy update, Since the pages are
actually changed to the new format this can involve rewriting the
whole record to another page if there isn't space on the current page.
On 09/11/2007, bozon <curtis@crowson1.com> wrote:
> On Nov 9, 1:59 pm, DL Redden <redde...@yahoo.com> wrote:
> > I believe that you are incorrect regarding the logging of a "dummy" update. I use them frequently to repair failed ER transactions. Doing so forces the record to be replicated, a feat that is only achieved if the action is logged.
> >
> > ----- Original Message ----
> > From: "dcrunch...@aim.com" <dcrunch...@aim.com>
> > To: informix-l...@iiug.org
> > Sent: Friday, November 9, 2007 12:31:01 PM
> > Subject: Re: in place alter messing things up
> >
> > Always follow this golden rule for in-place alter. run an
> > update statement which will do a dummy update on all rows.
> > update table set col1 = col1 where 1=1;> > If I were you, I would not have put the system back to production
> > without running a dummy update.
> >
> > I believe the engine is smart enuf to know that the above mentioned
> > dummy update does not require entries in logical logs.
> >
> > _______________________________________________
> > Informix-list mailing list
> > Informix-l...@iiug.orghttp://www.iiug.org/mailman/listinfo/informix-list
>
> Absolutely correct about the dummy update, Since the pages are
> actually changed to the new format this can involve rewriting the
> whole record to another page if there isn't space on the current page.
>
> _______________________________________________
> Informix-list mailing list
> Informix-list@iiug.org
> http://www.iiug.org/mailman/listinfo/informix-list
>
>From recollection 'dummy' updates do not normally get logged unless
they are the subject of ER (or they force a version update of the
record) then they are logged in their entirety, full record rather
than just the updated fields.
Regarding the original issue, I've seen this where the update changes
any of the fields being used as the select statement, also if the
select is by recid as this is obviously changed when a record is
written in a new format!
Keith