123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173 |
- --
- --
- -- Licensed Materials - Property of IBM and/or HCL
- --
- -- IBM Informix Dynamic Server
- -- Copyright IBM Corporation 1996, 2011
- -- (c) Copyright HCL Technologies Ltd. 2017. All Rights Reserved.
- --
- -- Title: syscdrview.sql
- -- Setup sysmaster views for Enterprise Replication
- --
- -- N.B. all SQL commands should be in lower case only
- --
- database sysmaster;
- { add flag text values for ER states }
- insert into flags_text values ('cdrstate', 0, 'Catalog');
- insert into flags_text values ('cdrstate', 1, 'Definition failed');
- insert into flags_text values ('cdrstate', 2, 'Inactive');
- insert into flags_text values ('cdrstate', 4, 'Active');
- insert into flags_text values ('cdrstate', 8, 'Suspend');
- insert into flags_text values ('cdrstate', 16, 'Pending Delete');
- insert into flags_text values ('cdrstate', 32, 'Quiescent');
- insert into flags_text values ('cdr_rsncjob_state', 1, 'Being Defined');
- insert into flags_text values ('cdr_rsncjob_state', 2, 'Defined');
- insert into flags_text values ('cdr_rsncjob_state', 4, 'Definition failed');
- insert into flags_text values ('cdr_rsncjob_state', 8, 'Running');
- insert into flags_text values ('cdr_rsncjob_state', 16, 'Being Stopped');
- insert into flags_text values ('cdr_rsncjob_state', 32, 'Stopped');
- insert into flags_text values ('cdr_rsncjob_state', 64, 'Pending Completion');
- insert into flags_text values ('cdr_rsncjob_state', 128, 'Completed');
- insert into flags_text values ('cdr_rsncjob_state', 256, 'Pending Delete');
- insert into flags_text values ('cdr_rsncjob_state', 512, 'Being Aborted');
- insert into flags_text values ('cdr_rsncjob_state', 1024, 'Aborted');
- create view informix.syscdrhost (servid, name, url)
- as select
- h.servid, cdrgcdisp(h.name),
- cdrgcdisp(p.protocol) || ':' || cdrgcdisp(p.address)
- from syscdr:informix.hostdef_tab h, outer syscdr:informix.protodef_tab p
- where h.servid = p.servid;
- grant select on informix.syscdrhost to public as informix;
- create view informix.syscdrserver (
- servid, servername, connstate, connstatechange,
- servstate, ishub, isleaf, rootserverid, forwardnodeid,
- idletimeout, atsdir, risdir)
- as select
- m.servid, m.servname, m.cnnstate, m.cnnstatechg,
- f.txt, m.ishub, m.isleaf, m.rootserverid, m.forwardnodeid,
- a.idletimeout, cdrgcdisp(a.atsdir), cdrgcdisp(a.risdir)
- from informix.syscdrs m, informix.flags_text f, syscdr:informix.servdef_tab a
- where a.servid = m.servid and
- f.tabname = 'cdrstate' and
- f.flags = a.servstate;
- grant select on informix.syscdrserver to public as informix;
- create view informix.syscdrerror (
- errornum, errorserv, errorseqnum, errortime,
- sendserv, reviewed, errorstmnt)
- as select
- error_number, b.servname, remote_seqnum, timestamp,
- c.servname, errreviewed, error_desc
- from syscdr:informix.cdr_errors a, outer informix.syscdrs b, outer informix.syscdrs c
- where a.source_id = b.servid and a.ctrl_id = c.servid;
- grant select on informix.syscdrerror to public as informix;
- create view informix.syscdrreplset (replsetname, replname, replsetattr)
- as select cdrgcdisp(a.replsetname), cdrgcdisp(c.repname), a.replsetattr
- from syscdr:informix.replsetdef_tab a, OUTER( syscdr:informix.replsetpartdef b,
- syscdr:informix.repdef_tab c )
- where a.replsetid = b.replsetid and
- b.repid = c.repid;
- grant select on informix.syscdrreplset to public as informix;
- { Stored proced for returning 'Y' for true and 'N' for false }
- create procedure informix.bityesno ( bitset int, bitmask int) returning char;
- if (bitval(bitset, bitmask) <> 0) then return 'Y';
- else return 'N';
- end if;
- end procedure;
- grant execute on informix.bityesno to public as informix;
- { Stored proced for returning 'N', 'C', or 'I' according to whether the }
- { floating point flags specify Native, Canonical, or IEEE transport }
- create procedure informix.replfloattype ( flags int) returning char;
- if (bitval(flags, '0x2') <> 0) then return 'C';
- else
- if (bitval(flags, '0x40000000') <> 0) then return 'I';
- else return 'N';
- end if;
- end if;
- end procedure;
- grant execute on informix.replfloattype to public as informix;
- create procedure informix.bitrow (flags int) returning char;
- if (bitval(flags, '0x100') <> 0) then return 'T';
- else return 'R';
- end if;
- end procedure;
- grant execute on informix.bitrow to public as informix;
- { Stored proced for returning replicate name given replid }
- create procedure informix.replid2Name (replicateid int) returning char(256);
- define replicatename char(256);
- if (replicateid <> 0)
- then
- select cdrgcdisp(repname) into replicatename
- from syscdr:repdef_tab a
- where a.repid = replicateid;
- return replicatename;
- else
- return NULL;
- end if;
- end procedure;
- grant execute on informix.replid2Name to public as informix;
- create view informix.syscdrrepl (
- replname, replstate, replid,
- freqtype, freqmin, freqhour, freqday,
- scope, invokerowspool, invoketranspool,
- primresolution, secresolution, storedprocname,
- ismasterrepl, isshadowrepl, shadowparentrepl,
- floattype, istriggerfire, isfullrow, isgrid)
- as select cdrgcdisp(repname), f.txt, a.repid,
- freqtype, min, hour, day,
- bitrow(a.flags), bityesno(a.flags,'0x400'), bityesno(a.flags,'0x800'),
- cr_primary, cr_secondary, cdrgcdisp(cr_spname),
- bityesno(a.flags,'0x800000'), bityesno(a.flags,'0x2000000'),
- replid2Name(a.primaryrepid), replfloattype(a.flags),
- bityesno(a.flags,'0x1000'), bityesno(a.flags,'0x10000000'),
- bityesno(a.flags,'0x00100000')
- from syscdr:informix.repdef_tab a,
- outer syscdr:informix.freqdef b,
- flags_text f
- where a.repid = b.repid
- and f.tabname = 'cdrstate' and f.flags = a.repstate;
- grant select on informix.syscdrrepl to public as informix;
- create view informix.syscdrpart (
- replname, servername, partstate, partmode,
- usetabowner, dbsname, owner, tabname, pendingsync
- )
- as select
- cdrgcdisp(b.repname), c.servname, f.txt, a.partmode,
- bitval(a.flags, '0x04'),
- cdrgcdisp(a.db), cdrgcdisp(a.owner), cdrgcdisp(a.table),
- bitval(a.flags, '0x040')
- from syscdr:informix.partdef_tab a, syscdr:informix.repdef_tab b,
- syscdrs c, outer flags_text f
- where b.repid = a.repid and c.servid = a.servid
- and f.tabname = 'cdrstate' and f.flags = a.partstate;
- grant select on informix.syscdrpart to public as informix;
- create view informix.syscdrqueued (servername, name, bytesqueued)
- as select srvname, replname, SUM(bytesqued)
- from syscdrq group by srvname, replname;
- grant select on informix.syscdrqueued to public as informix;
- create view informix.syscdrtxproc (
- servername, txprocessed, txcommitted, txaborted,
- rowscommitted, rowsaborted, txbadcnt)
- as select
- srvname, txprocssd, txcmmtd, txabrtd,
- rowscmmtd, rowsabrtd, txbadcnt
- from informix.syscdrtx;
- grant select on informix.syscdrtxproc to public as informix;
- close database;
|