dbTalk Databases Forums  

CRCOLS and VERCOLS and REPLCHECK

comp.databases.informix comp.databases.informix


Discuss CRCOLS and VERCOLS and REPLCHECK in the comp.databases.informix forum.



Reply
 
Thread Tools Display Modes
  #1  
Old   
Laurie Gustin
 
Posts: n/a

Default CRCOLS and VERCOLS and REPLCHECK - 04-21-2010 , 11:18 AM






IDS 115FC6X3


I am setting up a system that will use both SDS servers and ER. I understand that CRCOLS and REPLCHECK columns are used for ER and VERCOLS are mainly for SDS servers... but it doesnt appear that you can add all 3 (or even 2) sets of these columns to a single table. Can anyone give me guidance on which set of columns would be best... if ER must have CRCOLS... then are there any options for using the other two?

Thanks

Laurie


Laurie Gustin
IT Programmer Analyst
Department of Public Safety
lgustin (AT) utah (DOT) gov
801-965-4410

Reply With Quote
  #2  
Old   
Art Kagel
 
Posts: n/a

Default Re: CRCOLS and VERCOLS and REPLCHECK - 04-21-2010 , 12:25 PM






Why choose, you can have all three:

Quote:
create table has_it_all(one serial) with crcols with replcheck with
vercols;

Table created.

ER needs CRCOLs for normal processing and conflict resolution. It can use
the replcheck columns to speed synchronizing servers. Any and all can be
used by application programs to implement optimistic locking protocols
better and more cheaply.

Art

Art S. Kagel
Advanced DataTools (www.advancedatatools.com)
IIUG Board of Directors (art (AT) iiug (DOT) org)

See you at the 2010 IIUG Informix Conference
April 25-28, 2010
Overland Park (Kansas City), KS
www.iiug.org/conf

Disclaimer: Please keep in mind that my own opinions are my own opinions and
do not reflect on my employer, Advanced DataTools, the IIUG, nor any other
organization with which I am associated either explicitly, implicitly, or by
inference. Neither do those opinions reflect those of other individuals
affiliated with any entity with which I am affiliated nor those of the
entities themselves.



On Wed, Apr 21, 2010 at 12:18 PM, Laurie Gustin <lgustin (AT) utah (DOT) gov> wrote:

Quote:
IDS 115FC6X3


I am setting up a system that will use both SDS servers and ER. I
understand that CRCOLS and REPLCHECK columns are used for ER and VERCOLS
are mainly for SDS servers... but it doesnt appear that you can add all 3
(or even 2) sets of these columns to a single table. Can anyone give me
guidance on which set of columns would be best... if ER must have CRCOLS...
then are there any options for using the other two?

Thanks

Laurie


Laurie Gustin
IT Programmer Analyst
Department of Public Safety
lgustin (AT) utah (DOT) gov
801-965-4410

_______________________________________________
Informix-list mailing list
Informix-list (AT) iiug (DOT) org
http://www.iiug.org/mailman/listinfo/informix-list


Reply With Quote
  #3  
Old   
James Brunskill
 
Posts: n/a

Default RE: CRCOLS and VERCOLS and REPLCHECK - 04-22-2010 , 05:48 PM



Hey All,



I was just experimenting with the replcheck cols to improve sync
performance, and I seem to get a segmentation fault when trying to do a
cdr check replicate.

Nothing relevant seems to show up in the online log on either server.



[informix@r1) ~]$ cdr check replicate --master g_s67 --repl=aqs_packs_67
g_r1;



Apr 23 2010 09:13:20 ------ Table scan for aqs_packs_67 start
--------



Segmentation fault

------------------



We are running on RHEL 4 with informix 11.50.UC5 / (X2)

The X2 patch fixed an sever memory leak we had with ER transmits. It is
only installed on s67 as r1 doesn't send much er data so memory leak
doesn't really affect it.

R1 is and enterprise er server, and s67 is a leaf node WE edition.



[informix@r1 ~]$ onstat -



IBM Informix Dynamic Server Version 11.50.UC5 -- On-Line -- Up
17:48:00 -- 2295016 Kbytes



[sdev@s67 ~]$ onstat -



IBM Informix Dynamic Server Version 11.50.UC5X2 -- On-Line -- Up 20
days 17:42:21 -- 505544 Kbytes



Has anyone else seen this? Could it be due to our X2 patch?





Should also note that packs_new on r1 was an empty table, just created
it to test. I then copied some rows from s67 with a insert into select
* from and tried again...

[informix@r1 ~]$ cdr check replicate --master g_sirrp67
--repl=aqs_packs_67 g_rhea;



Apr 23 2010 10:36:24 ------ Table scan for aqs_packs_67 start
--------



Error in cmpCol

SQL types do not match for pack_id(117) unit_id(103)

command failed -- Source and Target do not have the same data type (202)





ER/DB details:



[informix@r1) ~]$ cdr define repl -C ignore aqs_packs_67 \

"R aqs@g_r1:sdev.packs_new" "SELECT * FROM packs_new" \

"P aqs@g_s67:sdev.packs" "SELECT * FROM packs"

[informix@r1) ~]$ cdr modify repl --ignoredel y aqs_packs_67

[informix@r1) ~]$ cdr start repl aqs_packs_67





[informix@r1) ~]$ dbschema -d aqs -t packs_new -ss



DBSCHEMA Schema Utility INFORMIX-SQL Version 11.50.UC5



{ TABLE "sdev".packs_new row size = 102 number of columns = 18 index
size = 51 }

create table "sdev".packs_new

(

pack_id serial8 not null ,

unit_id integer not null ,

item_dt datetime year to fraction(3),

pack_number integer,

check_weight float not null ,

tare_weight float,

head_target float,

head_number integer,

po_number char(12),

productsource integer,

aqs_control smallint

default 0,

valid_pack smallint

default 0,

seal_check smallint

default 0,

metal_detected smallint

default 0,

underweight smallint

default 0,

overweight smallint

default 0,

print_check smallint

default 0

) in aqs extent size 25000000 next size 409600 lock mode page;

alter table "sdev".packs_new add crcols;

alter table "sdev".packs_new add replcheck;



revoke all on "sdev".packs_new from "public" as "sdev";





create unique index "sdev".packs_er_idx on "sdev".packs_new (pack_id,

ifx_replcheck) using btree in aqs;

create unique index "sdev".packs_idx on "sdev".packs_new (unit_id,

item_dt) using btree in aqs;

alter table "sdev".packs_new add constraint primary key (unit_id,

item_dt) constraint "sdev".packs_pk ;





alter table "sdev".packs_new add constraint (foreign key (unit_id)

references "sdev".units constraint "sdev".pack_new_units_fk);







[informix@s67 ~]$ dbschema -d aqs -t packs -ss



DBSCHEMA Schema Utility INFORMIX-SQL Version 11.50.UC5X2



{ TABLE "sdev".packs row size = 102 number of columns = 18 index size =
79 }

create table "sdev".packs

(

pack_id serial8 not null ,

unit_id integer not null ,

item_dt datetime year to fraction(3),

pack_number integer,

check_weight float not null ,

tare_weight float,

head_target float,

head_number integer,

po_number char(12),

productsource integer,

aqs_control smallint

default 0,

valid_pack smallint

default 0,

seal_check smallint

default 0,

metal_detected smallint

default 0,

underweight smallint

default 0,

overweight smallint

default 0,

print_check smallint

default 0

) extent size 40960 next size 40960 lock mode row;

alter table "sdev".packs add crcols;

alter table "sdev".packs add replcheck;



revoke all on "sdev".packs from "public" as "sdev";





create index "sdev".item_dt_idx on "sdev".packs (item_dt) using

btree in data01;

create unique index "sdev".pack_id_idx on "sdev".packs (pack_id)

using btree in data01;

create unique index "sdev".packs_er_idx on "sdev".packs (pack_id,

ifx_replcheck) using btree in data01;

create index "sdev".po_idx on "sdev".packs (po_number) using btree

in data01;





alter table "sdev".packs add constraint (foreign key (unit_id)

references "sdev".units constraint "sdev".pack_units_fk);







From: informix-list-bounces (AT) iiug (DOT) org
[mailto:informix-list-bounces (AT) iiug (DOT) org] On Behalf Of Art Kagel
Sent: Thursday, April 22, 2010 5:25 AM
To: Laurie Gustin
Cc: informix-list (AT) iiug (DOT) org
Subject: Re: CRCOLS and VERCOLS and REPLCHECK



Why choose, you can have all three:

Quote:
create table has_it_all(one serial) with crcols with replcheck with
vercols;

Table created.

ER needs CRCOLs for normal processing and conflict resolution. It can
use the replcheck columns to speed synchronizing servers. Any and all
can be used by application programs to implement optimistic locking
protocols better and more cheaply.

Art

Art S. Kagel
Advanced DataTools (www.advancedatatools.com)
IIUG Board of Directors (art (AT) iiug (DOT) org)

See you at the 2010 IIUG Informix Conference
April 25-28, 2010
Overland Park (Kansas City), KS
www.iiug.org/conf

Disclaimer: Please keep in mind that my own opinions are my own opinions
and do not reflect on my employer, Advanced DataTools, the IIUG, nor any
other organization with which I am associated either explicitly,
implicitly, or by inference. Neither do those opinions reflect those of
other individuals affiliated with any entity with which I am affiliated
nor those of the entities themselves.




On Wed, Apr 21, 2010 at 12:18 PM, Laurie Gustin <lgustin (AT) utah (DOT) gov>
wrote:

IDS 115FC6X3





I am setting up a system that will use both SDS servers and ER. I
understand that CRCOLS and REPLCHECK columns are used for ER and
VERCOLS are mainly for SDS servers... but it doesnt appear that you can
add all 3 (or even 2) sets of these columns to a single table. Can
anyone give me guidance on which set of columns would be best... if ER
must have CRCOLS... then are there any options for using the other two?



Thanks



Laurie





Laurie Gustin
IT Programmer Analyst
Department of Public Safety
lgustin (AT) utah (DOT) gov
801-965-4410


_______________________________________________
Informix-list mailing list
Informix-list (AT) iiug (DOT) org
http://www.iiug.org/mailman/listinfo/informix-list

Reply With Quote
  #4  
Old   
James Brunskill
 
Posts: n/a

Default RE: CRCOLS and VERCOLS and REPLCHECK - 04-22-2010 , 05:53 PM



Actually think I may have just found the problem.

Always happens about 30s after sending the email.

My primary key on the r1 server is different to s67...



Cdr check is running now. Will see if it completes successfully.



James



From: James Brunskill
Sent: Friday, April 23, 2010 10:49 AM
To: informix-list (AT) iiug (DOT) org
Subject: RE: CRCOLS and VERCOLS and REPLCHECK



Hey All,



I was just experimenting with the replcheck cols to improve sync
performance, and I seem to get a segmentation fault when trying to do a
cdr check replicate.

Nothing relevant seems to show up in the online log on either server.



[informix@r1) ~]$ cdr check replicate --master g_s67 --repl=aqs_packs_67
g_r1;



Apr 23 2010 09:13:20 ------ Table scan for aqs_packs_67 start
--------



Segmentation fault

------------------



We are running on RHEL 4 with informix 11.50.UC5 / (X2)

The X2 patch fixed an sever memory leak we had with ER transmits. It is
only installed on s67 as r1 doesn't send much er data so memory leak
doesn't really affect it.

R1 is and enterprise er server, and s67 is a leaf node WE edition.



[informix@r1 ~]$ onstat -



IBM Informix Dynamic Server Version 11.50.UC5 -- On-Line -- Up
17:48:00 -- 2295016 Kbytes



[sdev@s67 ~]$ onstat -



IBM Informix Dynamic Server Version 11.50.UC5X2 -- On-Line -- Up 20
days 17:42:21 -- 505544 Kbytes



Has anyone else seen this? Could it be due to our X2 patch?





Should also note that packs_new on r1 was an empty table, just created
it to test. I then copied some rows from s67 with a insert into select
* from and tried again...

[informix@r1 ~]$ cdr check replicate --master g_sirrp67
--repl=aqs_packs_67 g_rhea;



Apr 23 2010 10:36:24 ------ Table scan for aqs_packs_67 start
--------



Error in cmpCol

SQL types do not match for pack_id(117) unit_id(103)

command failed -- Source and Target do not have the same data type (202)





ER/DB details:



[informix@r1) ~]$ cdr define repl -C ignore aqs_packs_67 \

"R aqs@g_r1:sdev.packs_new" "SELECT * FROM packs_new" \

"P aqs@g_s67:sdev.packs" "SELECT * FROM packs"

[informix@r1) ~]$ cdr modify repl --ignoredel y aqs_packs_67

[informix@r1) ~]$ cdr start repl aqs_packs_67





[informix@r1) ~]$ dbschema -d aqs -t packs_new -ss



DBSCHEMA Schema Utility INFORMIX-SQL Version 11.50.UC5



{ TABLE "sdev".packs_new row size = 102 number of columns = 18 index
size = 51 }

create table "sdev".packs_new

(

pack_id serial8 not null ,

unit_id integer not null ,

item_dt datetime year to fraction(3),

pack_number integer,

check_weight float not null ,

tare_weight float,

head_target float,

head_number integer,

po_number char(12),

productsource integer,

aqs_control smallint

default 0,

valid_pack smallint

default 0,

seal_check smallint

default 0,

metal_detected smallint

default 0,

underweight smallint

default 0,

overweight smallint

default 0,

print_check smallint

default 0

) in aqs extent size 25000000 next size 409600 lock mode page;

alter table "sdev".packs_new add crcols;

alter table "sdev".packs_new add replcheck;



revoke all on "sdev".packs_new from "public" as "sdev";





create unique index "sdev".packs_er_idx on "sdev".packs_new (pack_id,

ifx_replcheck) using btree in aqs;

create unique index "sdev".packs_idx on "sdev".packs_new (unit_id,

item_dt) using btree in aqs;

alter table "sdev".packs_new add constraint primary key (unit_id,

item_dt) constraint "sdev".packs_pk ;





alter table "sdev".packs_new add constraint (foreign key (unit_id)

references "sdev".units constraint "sdev".pack_new_units_fk);







[informix@s67 ~]$ dbschema -d aqs -t packs -ss



DBSCHEMA Schema Utility INFORMIX-SQL Version 11.50.UC5X2



{ TABLE "sdev".packs row size = 102 number of columns = 18 index size =
79 }

create table "sdev".packs

(

pack_id serial8 not null ,

unit_id integer not null ,

item_dt datetime year to fraction(3),

pack_number integer,

check_weight float not null ,

tare_weight float,

head_target float,

head_number integer,

po_number char(12),

productsource integer,

aqs_control smallint

default 0,

valid_pack smallint

default 0,

seal_check smallint

default 0,

metal_detected smallint

default 0,

underweight smallint

default 0,

overweight smallint

default 0,

print_check smallint

default 0

) extent size 40960 next size 40960 lock mode row;

alter table "sdev".packs add crcols;

alter table "sdev".packs add replcheck;



revoke all on "sdev".packs from "public" as "sdev";





create index "sdev".item_dt_idx on "sdev".packs (item_dt) using

btree in data01;

create unique index "sdev".pack_id_idx on "sdev".packs (pack_id)

using btree in data01;

create unique index "sdev".packs_er_idx on "sdev".packs (pack_id,

ifx_replcheck) using btree in data01;

create index "sdev".po_idx on "sdev".packs (po_number) using btree

in data01;





alter table "sdev".packs add constraint (foreign key (unit_id)

references "sdev".units constraint "sdev".pack_units_fk);







From: informix-list-bounces (AT) iiug (DOT) org
[mailto:informix-list-bounces (AT) iiug (DOT) org] On Behalf Of Art Kagel
Sent: Thursday, April 22, 2010 5:25 AM
To: Laurie Gustin
Cc: informix-list (AT) iiug (DOT) org
Subject: Re: CRCOLS and VERCOLS and REPLCHECK



Why choose, you can have all three:

Quote:
create table has_it_all(one serial) with crcols with replcheck with
vercols;

Table created.

ER needs CRCOLs for normal processing and conflict resolution. It can
use the replcheck columns to speed synchronizing servers. Any and all
can be used by application programs to implement optimistic locking
protocols better and more cheaply.

Art

Art S. Kagel
Advanced DataTools (www.advancedatatools.com)
IIUG Board of Directors (art (AT) iiug (DOT) org)

See you at the 2010 IIUG Informix Conference
April 25-28, 2010
Overland Park (Kansas City), KS
www.iiug.org/conf

Disclaimer: Please keep in mind that my own opinions are my own opinions
and do not reflect on my employer, Advanced DataTools, the IIUG, nor any
other organization with which I am associated either explicitly,
implicitly, or by inference. Neither do those opinions reflect those of
other individuals affiliated with any entity with which I am affiliated
nor those of the entities themselves.



On Wed, Apr 21, 2010 at 12:18 PM, Laurie Gustin <lgustin (AT) utah (DOT) gov>
wrote:

IDS 115FC6X3





I am setting up a system that will use both SDS servers and ER. I
understand that CRCOLS and REPLCHECK columns are used for ER and
VERCOLS are mainly for SDS servers... but it doesnt appear that you can
add all 3 (or even 2) sets of these columns to a single table. Can
anyone give me guidance on which set of columns would be best... if ER
must have CRCOLS... then are there any options for using the other two?



Thanks



Laurie





Laurie Gustin
IT Programmer Analyst
Department of Public Safety
lgustin (AT) utah (DOT) gov
801-965-4410


_______________________________________________
Informix-list mailing list
Informix-list (AT) iiug (DOT) org
http://www.iiug.org/mailman/listinfo/informix-list





DISCLAIMER:
This email contains confidential information and may be legally privileged. If you are not the intended recipient or have received this email in error, please notify the sender immediately and destroy this email.
You may not use, disclose or copy this email or its attachments in any way.
Any opinions expressed in this email are those of the author and are not necessarily those of the Fonterra Co-operative Group.
http://www.fonterra.com/

Reply With Quote
  #5  
Old   
mpruet
 
Posts: n/a

Default Re: CRCOLS and VERCOLS and REPLCHECK - 04-22-2010 , 11:25 PM



On Apr 22, 5:53*pm, "James Brunskill" <James.Brunsk... (AT) fonterra (DOT) com>
wrote:
Quote:
Actually think I may have just found the problem.

Always happens about 30s after sending the email.

My primary key on the r1 server is different to s67...

Cdr check is running now. Will see if it completes successfully.

James
Well that's good news. Can you get the details about the original one
which was failing? While there may have been a bit of an issue, we
shouldn't have crashed. At most we should have complained.... ;-)


Thanks,

M.Pruet
Quote:
From: James Brunskill
Sent: Friday, April 23, 2010 10:49 AM
To: informix-l... (AT) iiug (DOT) org
Subject: RE: CRCOLS and VERCOLS and REPLCHECK

Hey All,

I was just experimenting with the replcheck cols to improve sync
performance, and I seem to get a segmentation fault when trying to do a
cdr check replicate.

Nothing relevant seems to show up in the online log on either server.

[informix@r1) ~]$ cdr check replicate --master g_s67 --repl=aqs_packs_67
g_r1;

Apr 23 2010 09:13:20 ------ * Table scan for aqs_packs_67 start
--------

Segmentation fault

------------------

We are running on RHEL 4 with informix 11.50.UC5 / (X2)

The X2 patch fixed an sever memory leak we had with ER transmits. It is
only installed on s67 as r1 doesn't send much er data so memory leak
doesn't really affect it.

R1 is and enterprise er server, and s67 is a leaf node WE edition.

[informix@r1 ~]$ onstat -

IBM Informix Dynamic Server Version 11.50.UC5 * * -- On-Line -- Up
17:48:00 -- 2295016 Kbytes

[sdev@s67 ~]$ onstat -

IBM Informix Dynamic Server Version 11.50.UC5X2 * -- On-Line -- Up 20
days 17:42:21 -- 505544 Kbytes

Has anyone else seen this? Could it be due to our X2 patch?

Should also note that packs_new on r1 was an empty table, just created
it to test. *I then copied some rows from s67 with a insert into select
* from *and tried again...

[informix@r1 ~]$ *cdr check replicate --master g_sirrp67
--repl=aqs_packs_67 g_rhea;

Apr 23 2010 10:36:24 ------ * Table scan for aqs_packs_67 start
--------

Error in cmpCol

* * * * SQL types do not match for pack_id(117) unit_id(103)

command failed -- Source and Target do not have the same data type (202)

ER/DB details:

[informix@r1) ~]$ cdr define repl -C ignore aqs_packs_67 \

* *"R aqs@g_r1:sdev.packs_new" "SELECT * FROM packs_new" \

* *"P aqs@g_s67:sdev.packs" "SELECT * FROM packs"

[informix@r1) ~]$ cdr modify repl --ignoredel y aqs_packs_67

[informix@r1) ~]$ cdr start repl aqs_packs_67

[informix@r1) ~]$ dbschema -d aqs -t packs_new -ss

DBSCHEMA Schema Utility * * * INFORMIX-SQL Version 11.50.UC5

{ TABLE "sdev".packs_new row size = 102 number of columns = 18 index
size = 51 }

create table "sdev".packs_new

* (

* * pack_id serial8 not null ,

* * unit_id integer not null ,

* * item_dt datetime year to fraction(3),

* * pack_number integer,

* * check_weight float not null ,

* * tare_weight float,

* * head_target float,

* * head_number integer,

* * po_number char(12),

* * productsource integer,

* * aqs_control smallint

* * * * default 0,

* * valid_pack smallint

* * * * default 0,

* * seal_check smallint

* * * * default 0,

* * metal_detected smallint

* * * * default 0,

* * underweight smallint

* * * * default 0,

* * overweight smallint

* * * * default 0,

* * print_check smallint

* * * * default 0

* ) in aqs *extent size 25000000 next size 409600 lock mode page;

alter table "sdev".packs_new add crcols;

alter table "sdev".packs_new add replcheck;

revoke all on "sdev".packs_new from "public" as "sdev";

create unique index "sdev".packs_er_idx on "sdev".packs_new (pack_id,

* * ifx_replcheck) using btree *in aqs;

create unique index "sdev".packs_idx on "sdev".packs_new (unit_id,

* * item_dt) using btree *in aqs;

alter table "sdev".packs_new add constraint primary key (unit_id,

* * item_dt) constraint "sdev".packs_pk *;

alter table "sdev".packs_new add constraint (foreign key (unit_id)

* * references "sdev".units *constraint "sdev".pack_new_units_fk);

[informix@s67 ~]$ dbschema -d aqs -t packs -ss

DBSCHEMA Schema Utility * * * INFORMIX-SQL Version 11.50.UC5X2

{ TABLE "sdev".packs row size = 102 number of columns = 18 index size=
79 }

create table "sdev".packs

* (

* * pack_id serial8 not null ,

* * unit_id integer not null ,

* * item_dt datetime year to fraction(3),

* * pack_number integer,

* * check_weight float not null ,

* * tare_weight float,

* * head_target float,

* * head_number integer,

* * po_number char(12),

* * productsource integer,

* * aqs_control smallint

* * * * default 0,

* * valid_pack smallint

* * * * default 0,

* * seal_check smallint

* * * * default 0,

* * metal_detected smallint

* * * * default 0,

* * underweight smallint

* * * * default 0,

* * overweight smallint

* * * * default 0,

* * print_check smallint

* * * * default 0

* ) extent size 40960 next size 40960 lock mode row;

alter table "sdev".packs add crcols;

alter table "sdev".packs add replcheck;

revoke all on "sdev".packs from "public" as "sdev";

create index "sdev".item_dt_idx on "sdev".packs (item_dt) using

* * btree *in data01;

create unique index "sdev".pack_id_idx on "sdev".packs (pack_id)

* * using btree *in data01;

create unique index "sdev".packs_er_idx on "sdev".packs (pack_id,

* * ifx_replcheck) using btree *in data01;

create index "sdev".po_idx on "sdev".packs (po_number) using btree

* * *in data01;

alter table "sdev".packs add constraint (foreign key (unit_id)

* * references "sdev".units *constraint "sdev".pack_units_fk);

From: informix-list-boun... (AT) iiug (DOT) org
[mailto:informix-list-boun... (AT) iiug (DOT) org] On Behalf Of Art Kagel
Sent: Thursday, April 22, 2010 5:25 AM
To: Laurie Gustin
Cc: informix-l... (AT) iiug (DOT) org
Subject: Re: CRCOLS and VERCOLS and REPLCHECK

Why choose, you can have all three:

create table has_it_all(one serial) with crcols with replcheck with

vercols;

Table created.

ER needs CRCOLs for normal processing and conflict resolution. *It can
use the replcheck columns to speed synchronizing servers. *Any and all
can be used by application programs to implement optimistic locking
protocols better and more cheaply.

Art

Art S. Kagel
Advanced DataTools (www.advancedatatools.com)
IIUG Board of Directors (a... (AT) iiug (DOT) org)

See you at the 2010 IIUG Informix Conference
April 25-28, 2010
Overland Park (Kansas City), KSwww.iiug.org/conf

Disclaimer: Please keep in mind that my own opinions are my own opinions
and do not reflect on my employer, Advanced DataTools, the IIUG, nor any
other organization with which I am associated either explicitly,
implicitly, or by inference. *Neither do those opinions reflect those of
other individuals affiliated with any entity with which I am affiliated
nor those of the entities themselves.

On Wed, Apr 21, 2010 at 12:18 PM, Laurie Gustin <lgus... (AT) utah (DOT) gov
wrote:

IDS 115FC6X3

I am setting up a system that will use both SDS servers and ER. *I
understand that CRCOLS and REPLCHECK columns are used for ER and
VERCOLS are mainly for SDS servers... but it doesnt appear that you can
add all 3 (or even 2) sets of these columns to a single table. *Can
anyone give me guidance on which set of columns would be best... *if ER
must have CRCOLS... then are there any options for using the other two?

Thanks

Laurie

Laurie Gustin
IT Programmer Analyst
Department of Public Safety
lgus... (AT) utah (DOT) gov
801-965-4410

_______________________________________________
Informix-list mailing list
Informix-l... (AT) iiug (DOT) orghttp://www.iiug.org/mailman/listinfo/informix-list

DISCLAIMER:
This email contains confidential information and may be legally privileged. If you are not the intended recipient or have received this email in error, please notify the sender immediately and destroy this email.
You may not use, disclose or copy this email or its attachments in any way.
Any opinions expressed in this email are those of the author and are not necessarily those of the Fonterra Co-operative Group.http://www.fonterra.com/

Reply With Quote
  #6  
Old   
James Brunskill
 
Posts: n/a

Default RE: CRCOLS and VERCOLS and REPLCHECK - 04-22-2010 , 11:47 PM



What details do you want?

I think the issue was that there were no rows in the destination table.
After I inserted some rows the segfault stopped. Not many of us are stupid enough to check a replicate which you know has no rows in it

I could setup another test case? Don't know if it is related to replcheck cols, or if it would still segfault without.

Cheers,

James

BTW: the cdr check replicate did complete successfully and found all the missing rows.

-----Original Message-----
From: informix-list-bounces (AT) iiug (DOT) org [mailto:informix-list-bounces (AT) iiug (DOT) org] On Behalf Of mpruet
Sent: Friday, April 23, 2010 4:25 PM
To: informix-list (AT) iiug (DOT) org
Subject: Re: CRCOLS and VERCOLS and REPLCHECK

On Apr 22, 5:53*pm, "James Brunskill" <James.Brunsk... (AT) fonterra (DOT) com>
wrote:
Quote:
Actually think I may have just found the problem.

Always happens about 30s after sending the email.

My primary key on the r1 server is different to s67...

Cdr check is running now. Will see if it completes successfully.

James
Well that's good news. Can you get the details about the original one
which was failing? While there may have been a bit of an issue, we
shouldn't have crashed. At most we should have complained.... ;-)


Thanks,

M.Pruet
Quote:
From: James Brunskill
Sent: Friday, April 23, 2010 10:49 AM
To: informix-l... (AT) iiug (DOT) org
Subject: RE: CRCOLS and VERCOLS and REPLCHECK

Hey All,

I was just experimenting with the replcheck cols to improve sync
performance, and I seem to get a segmentation fault when trying to do a
cdr check replicate.

Nothing relevant seems to show up in the online log on either server.

[informix@r1) ~]$ cdr check replicate --master g_s67 --repl=aqs_packs_67
g_r1;

Apr 23 2010 09:13:20 ------ * Table scan for aqs_packs_67 start
--------

Segmentation fault

------------------

We are running on RHEL 4 with informix 11.50.UC5 / (X2)

The X2 patch fixed an sever memory leak we had with ER transmits. It is
only installed on s67 as r1 doesn't send much er data so memory leak
doesn't really affect it.

R1 is and enterprise er server, and s67 is a leaf node WE edition.

[informix@r1 ~]$ onstat -

IBM Informix Dynamic Server Version 11.50.UC5 * * -- On-Line -- Up
17:48:00 -- 2295016 Kbytes

[sdev@s67 ~]$ onstat -

IBM Informix Dynamic Server Version 11.50.UC5X2 * -- On-Line -- Up 20
days 17:42:21 -- 505544 Kbytes

Has anyone else seen this? Could it be due to our X2 patch?

Should also note that packs_new on r1 was an empty table, just created
it to test. *I then copied some rows from s67 with a insert into select
* from *and tried again...

[informix@r1 ~]$ *cdr check replicate --master g_sirrp67
--repl=aqs_packs_67 g_rhea;

Apr 23 2010 10:36:24 ------ * Table scan for aqs_packs_67 start
--------

Error in cmpCol

* * * * SQL types do not match for pack_id(117) unit_id(103)

command failed -- Source and Target do not have the same data type (202)

ER/DB details:

[informix@r1) ~]$ cdr define repl -C ignore aqs_packs_67 \

* *"R aqs@g_r1:sdev.packs_new" "SELECT * FROM packs_new" \

* *"P aqs@g_s67:sdev.packs" "SELECT * FROM packs"

[informix@r1) ~]$ cdr modify repl --ignoredel y aqs_packs_67

[informix@r1) ~]$ cdr start repl aqs_packs_67

[informix@r1) ~]$ dbschema -d aqs -t packs_new -ss

DBSCHEMA Schema Utility * * * INFORMIX-SQL Version 11.50.UC5

{ TABLE "sdev".packs_new row size = 102 number of columns = 18 index
size = 51 }

create table "sdev".packs_new

* (

* * pack_id serial8 not null ,

* * unit_id integer not null ,

* * item_dt datetime year to fraction(3),

* * pack_number integer,

* * check_weight float not null ,

* * tare_weight float,

* * head_target float,

* * head_number integer,

* * po_number char(12),

* * productsource integer,

* * aqs_control smallint

* * * * default 0,

* * valid_pack smallint

* * * * default 0,

* * seal_check smallint

* * * * default 0,

* * metal_detected smallint

* * * * default 0,

* * underweight smallint

* * * * default 0,

* * overweight smallint

* * * * default 0,

* * print_check smallint

* * * * default 0

* ) in aqs *extent size 25000000 next size 409600 lock mode page;

alter table "sdev".packs_new add crcols;

alter table "sdev".packs_new add replcheck;

revoke all on "sdev".packs_new from "public" as "sdev";

create unique index "sdev".packs_er_idx on "sdev".packs_new (pack_id,

* * ifx_replcheck) using btree *in aqs;

create unique index "sdev".packs_idx on "sdev".packs_new (unit_id,

* * item_dt) using btree *in aqs;

alter table "sdev".packs_new add constraint primary key (unit_id,

* * item_dt) constraint "sdev".packs_pk *;

alter table "sdev".packs_new add constraint (foreign key (unit_id)

* * references "sdev".units *constraint "sdev".pack_new_units_fk);

[informix@s67 ~]$ dbschema -d aqs -t packs -ss

DBSCHEMA Schema Utility * * * INFORMIX-SQL Version 11.50.UC5X2

{ TABLE "sdev".packs row size = 102 number of columns = 18 index size =
79 }

create table "sdev".packs

* (

* * pack_id serial8 not null ,

* * unit_id integer not null ,

* * item_dt datetime year to fraction(3),

* * pack_number integer,

* * check_weight float not null ,

* * tare_weight float,

* * head_target float,

* * head_number integer,

* * po_number char(12),

* * productsource integer,

* * aqs_control smallint

* * * * default 0,

* * valid_pack smallint

* * * * default 0,

* * seal_check smallint

* * * * default 0,

* * metal_detected smallint

* * * * default 0,

* * underweight smallint

* * * * default 0,

* * overweight smallint

* * * * default 0,

* * print_check smallint

* * * * default 0

* ) extent size 40960 next size 40960 lock mode row;

alter table "sdev".packs add crcols;

alter table "sdev".packs add replcheck;

revoke all on "sdev".packs from "public" as "sdev";

create index "sdev".item_dt_idx on "sdev".packs (item_dt) using

* * btree *in data01;

create unique index "sdev".pack_id_idx on "sdev".packs (pack_id)

* * using btree *in data01;

create unique index "sdev".packs_er_idx on "sdev".packs (pack_id,

* * ifx_replcheck) using btree *in data01;

create index "sdev".po_idx on "sdev".packs (po_number) using btree

* * *in data01;

alter table "sdev".packs add constraint (foreign key (unit_id)

* * references "sdev".units *constraint "sdev".pack_units_fk);

From: informix-list-boun... (AT) iiug (DOT) org
[mailto:informix-list-boun... (AT) iiug (DOT) org] On Behalf Of Art Kagel
Sent: Thursday, April 22, 2010 5:25 AM
To: Laurie Gustin
Cc: informix-l... (AT) iiug (DOT) org
Subject: Re: CRCOLS and VERCOLS and REPLCHECK

Why choose, you can have all three:

create table has_it_all(one serial) with crcols with replcheck with

vercols;

Table created.

ER needs CRCOLs for normal processing and conflict resolution. *It can
use the replcheck columns to speed synchronizing servers. *Any and all
can be used by application programs to implement optimistic locking
protocols better and more cheaply.

Art

Art S. Kagel
Advanced DataTools (www.advancedatatools.com)
IIUG Board of Directors (a... (AT) iiug (DOT) org)

See you at the 2010 IIUG Informix Conference
April 25-28, 2010
Overland Park (Kansas City), KSwww.iiug.org/conf

Disclaimer: Please keep in mind that my own opinions are my own opinions
and do not reflect on my employer, Advanced DataTools, the IIUG, nor any
other organization with which I am associated either explicitly,
implicitly, or by inference. *Neither do those opinions reflect those of
other individuals affiliated with any entity with which I am affiliated
nor those of the entities themselves.

On Wed, Apr 21, 2010 at 12:18 PM, Laurie Gustin <lgus... (AT) utah (DOT) gov
wrote:

IDS 115FC6X3

I am setting up a system that will use both SDS servers and ER. *I
understand that CRCOLS and REPLCHECK columns are used for ER and
VERCOLS are mainly for SDS servers... but it doesnt appear that you can
add all 3 (or even 2) sets of these columns to a single table. *Can
anyone give me guidance on which set of columns would be best... *if ER
must have CRCOLS... then are there any options for using the other two?

Thanks

Laurie

Laurie Gustin
IT Programmer Analyst
Department of Public Safety
lgus... (AT) utah (DOT) gov
801-965-4410

_______________________________________________
Informix-list mailing list
Informix-l... (AT) iiug (DOT) orghttp://www.iiug.org/mailman/listinfo/informix-list

DISCLAIMER:
This email contains confidential information and may be legally privileged. If you are not the intended recipient or have received this email in error, please notify the sender immediately and destroy this email.
You may not use, disclose or copy this email or its attachments in any way.
Any opinions expressed in this email are those of the author and are not necessarily those of the Fonterra Co-operative Group.http://www.fonterra.com/
_______________________________________________
Informix-list mailing list
Informix-list (AT) iiug (DOT) org
http://www.iiug.org/mailman/listinfo/informix-list

Reply With Quote
Reply




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.3
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.