Informix Dynamic Server
Informix Dynamic Server Enterprise replication – Tables for monitoring changes in V10.00.xC9
This presentation provides tables that contain descriptions of existing SMI tables, sysmaster pseudo tables, and column names and meanings of individual column values. The following slides do not contain audio. You can pause the presentation at any time to delay the advancement of future slides.
Existing SMI tables
Existing SMI tables Existing sysmaster APIs for ER Table Number of Rows Purpose syscdrq 1 for each table/target Displays the information queued for given targets. syscdrtx 1 for each of the source nodes Displays information about applied transactions from the viewpoint of the datasync. syscdrs 1 for each server in the ER domain Displays the defined servers. syscdrprog 1 for each target/replicate combination Displays the stable progress table for each replicate which has been processed. By using this table, it is fairly easy to identify what has been ACKed from each of the target nodes. syscdrsend_txn 1 for each transaction in the Send Queue Display information about in memory transactions which are contained in the sendq such as commit LSN, stamp time, commit time.
Existing SMI tables
Existing SMI tables Existing sysmaster APIs for ER (continued) Table Number of Rows Purpose syscdrack_txn 1 for each ACK to be sent back to source Similar information for the ACK queue. syscdrctrl_txn 1 for each ACK to be sent back to source Similar information for the Control Queue. syscdrsync_txn 1 for each ACK to be sent back to source Similar information for syscdr Sync Queue. syscdrrecv_txn 1 for each ACK to be sent back to source Similar information for Receive Queue. syscdrsend_buf Number of Txn times number of rows in the Send Queue A breakdown of the buffers within the transactions in the Send Queue. This contains the replicate, number of bytes, and so on.
Existing SMI tables
Existing SMI tables Existing sysmaster APIs for ER (continued) Table Number of Rows Purpose syscdrack_buf 1 for each ACK to be sent back to source Similar information about the ACK queue. syscdrctrl_buf 1 for each ACK to be sent back to source Similar information about the Control Queue. syscdrsync_buf 1 for each transaction in the Send Queue Similar information about the syscdr Sync Queue. syscdrrecv_buf 1 for each ACK to be sent back to source Similar information about the Receive Queue. syscdrrecv_stats 1 for each source/replicate that data is received from A breakdown of data received from each source node. Contains the # of txn’s received from each source node, pending txn’s waiting to apply, and commit rate from that node.
Existing SMI tables
Existing SMI tables Existing sysmaster APIs for ER (continued) Table Number of Rows Purpose syscdrlatency 1 for each source / replicate combination Contains info. about each table receiving replicated data, including the source commit time/apply time of the last operation for that replicate. syscdr_rqm 1 for each of the RQM Queues Contains most of the information about each of the RQM Queue Header structures.
Existing SMI tables
Existing SMI tables Sysmaster APIs for ER - after ER is defined Table Number of Rows Purpose syscdrhost 1 for each entry in the SQLHOSTS Contains network information about each of the elements within SQLHOSTS which are part of an ER group. syscdrserver 1 for each configured node Describes each of the servers defined within the syscdr database along with key information about each of the nodes. syscdrerror variable Holds any global catalog errors, and errors printed in the online.log. syscdrreplset 1 for each replset/repl combination Contains a description of each replicate set within the syscdr database.
Existing SMI tables
Existing SMI tables Sysmaster APIs for ER - after ER is defined (continued) Table Number of Rows Purpose syscdrpart 1 for each define replicate/node Description of each of the participants of the defined replicates. syscdrqueued 1 for each target/replicate which had data currently queued Summary of the data queued from the syscdrtx table. syscdrtxproc 1 for each source node Global summary of what has been processed from each source node.
New SMI tables
New SMI tables New Sysmaster APIs for ER Table Number of Rows Purpose syscdr_state 0,1 Provides a means of checking the state of ER as a whole, and the three major components of ER (capture, apply, and network). syscdr_ddr 0,1 Provides a means of checking the snoopy portion of ER. In addition to normal log positions, this pseudo table also describes how many pages the capture has before running into a DDRBLOCK or log wrap condition. syscdr_nif 1 for each network connection Provides information about the various network connections with which each node has a connection. Additionally, it contains the stamp of the last message that was sent by that connection. syscdr_rcv 0,1 Contains global information about the apply, including failure counts, number of datasync threads, number of pending ACKs to be processed, and so on.
New SMI tables
New SMI tables New Sysmaster APIs for ER (continued) Table Number of Rows Purpose syscdr_atsdir 1 for each entry in the ATS directory This is very similar to “ls –l” output. It includes the name of the file and when the file was created. syscdr_risdir 1 for each entry in the RIS directory This is very similar to an “ls –l” output of the RIS directory. syscdr_ats 1 for each entry in the ATS directory This provides a means of viewing portions of the ATS file remotely. It includes some parsing of the header information to make it easier to filter the needed rows. syscdr_ris 1 for each entry in the RIS directory This is similar information as the syscdr_ats pseudo table, except it is for the RIS directory.
New SMI tables
New SMI tables New Sysmaster APIs for ER (continued) Table Number of Rows Purpose syscdr_rqmstamp 1 for each of the RQM Queues This displays the stamp of the next transaction to be inserted into the queue. By comparing this with the last sent stamp from syscdr_nif, it is easy to calculate the number of outstanding transactions which are to be sent to any target node. syscdr_rqmhandle 1 for each thread accessing any of the RQM Queues This is a cursor each thread uses to keep track of the current transaction/message that it is processing within any of the queues.
New SMI tables
New SMI tables Contents for: syscdr_state Column Type Comments er_state char(24) Indicates if ER is running or not. Normally the value returned is “Active”, “Shut Down”, or “Uninitialized”. er_capture_state char(24) Indicates if capture (DDR and Grouper) is running. If it is not running, but is supposed to be running, then “Down” is returned. If capture is not supposed to be running, then “Uninitialized” is returned. er_network_state char(64) Indicates if the network is running. er_apply_state char(24) Indicates if the apply (DataSync) is running.
New SMI tables
New SMI tables Contents for: syscdr_ddr Column Type Comments ddr_state char(24) Displays the current state of snoopy. If ddr is not running because the node is not a source node for any replication, then a value of “Uninitialized” is shown. ddr_snoopy_logunique integer The current log ID that you are snooping. ddr_snoopy_logpos integer The current log position that you are snooping. ddr_replay_loguniq integer The replay log ID that is needed to recover ER. ddr_replay_logpos integer The replay log position that is needed to recover ER. ddr_curr_loguniq integer The current log ID. ddr_curr_logpos integer The current log position. ddr_logsnoop_cached integer The number of log pages that snoopy was able to read from its cache. ddr_logsnoop_disk integer The number of times that snoopy had to read log pages from disk.
New SMI tables
New SMI tables Contents for: syscdr_ddr (continued) Column Type Comments ddr_logs_tossed integer # of log pages that were not stored in cache because the snoopy buffer cache was full. ddr_logs_ignored integer # of log records ignored because they were extensible log records that are unknown. ddr_dlog_requests integer # of times ER requested dynamic log creation rather than enter DDRBLOCK state. ddr_total_logspace integer Total # of log pages in the system. ddr_logpage2wrap integer # of log paces until snoopy runs into a log wrap. ddr_logpage2block integer # of log pages until snoopy runs into a DDRBLOCK state. ddr_logneeds integer # of log pages needed to remain behind a log wrap to avoid a DDRBLOCK state. ddr_logcatchup integer # of log pages needed to advance before going out of a DDRBLOCK state.
New SMI tables
New SMI tables Contents for: syscdr_nif Column Type Comments nif_connid integer The CDRID of the peer node. nif_connname char(24) The name (group name) of the peer node. nif_state char(24) see notes section for details… nif_connstate char(24) see notes section for details… nif_version integer The network protocol of this connection (ex. IDS 7, IDS 9.2,....) This is used to convert the message formats between dissimilar releases of the server. nif_msgsent integer Number of messages/transactions sent to the peer node. nif_bytessent integer Number of bytes sent to the peer node. nif_msgrcv integer Number of messages/transactions received from the peer node. nif_bytesrcv integer Number of bytes received from the peer node. nif_compress integer Compression level to be used for communications.
New SMI tables
New SMI tables Contents for: syscdr_nif (continued) Column Type Comments nif_sentblockcnt integer # of times that a flow block request is sent. nif_rcvblockcnt integer # of times ER received a flow block request from the peer node. nif_trgsend_stamp1 integer Stamp1 of last transaction sent to the peer node. nif_trgsend_stamp2 integer Stamp2 nif_acksend_stamp1 integer Stamp1 of last ACK sent to the peer node. nif_acksend_stamp2 integer Stamp2 nif_ctrlsend_stamp1 integer Stamp1 of last control message sent to peer node. nif_ctrlsend_stamp2 integer Stamp2 nif_syncsend_stamp1 integer Stamp1 of the last sync message sent to the peer server. nif_syncsend_stamp2 integer Stamp2
New SMI tables
New SMI tables Contents for: syscdr_nif (continued) Column Type Comments nif_starttime datetime Time that the connection was established. nif_lastsend datetime Time of last message sent to the peer node.
New SMI tables
New SMI tables Contents for: syscdr_rcv Column Type Comments rm_state char(100) Current state of the receive mgr and apply threads. rm_num_sleepers integer # of Data Sync threads currently sleeping. rm_num_dsthreads integer Current # of Data Sync threads. rm_min_dsthreads integer Minimum # of Data Sync threads. rm_max_dsthreads integer Maximum # of Data Sync threads. rm_ds_block integer If 1, the Datasync is currently blocked to avoid causing a DDRBLOCK state. rm_ds_parallel integer Parallel Rate – zero is the highest degree of parallelism. Three is the highest (serial apply). rm_ds_failrate float A computed weighted ratio used to determine when ER needs to change the degree of parallelism. rm_ds_numrun integer # of transactions run. rm_ds_num_locktout integer # of lock timeouts encountered.
New SMI tables
New SMI tables Contents for: syscdr_rcv Column Type Comments rm_ds_num_lockrb integer # of forced rollbacks due to switch to serial apply. rm_ds_num_deadlocks integer # of deadly embraces encountered. rm_ds_num_pcommits integer # of out-of-order commits. rm_ack_waiting integer # of ACKs waiting for a log flush to return to the primary. rm_totsleep integer Total # the datasync threads have gone to sleep. rm_sleeptime integer Total time that the datasync threads have slept. rm_workload integer Current workload. rm_optscale integer Factor determining how many DataSync threads allowed per CPUVP. rm_min_fthreads integer Minimum float threads (ACK threads). rm_max_fthreads integer Maximum floating threads (ACK threads).
New SMI tables
New SMI tables Contents for: syscdr_rcv Column Type Comments rm_ack_start char(64) Time ACK threads started. rm_ds_start char(64) Time the Datasync started. rm_pending_acks integer # of ACKs on the source not yet been processed. rm_blob_error_bufs integer # of blobs not successfully applied.
New SMI tables
New SMI tables Contents for: syscdr_atsdir Column Type Comments atsd_rid integer pseudo rowid atsd_file char(128) file name atsd_mode integer file mode atsd_size integer file size in bytes atsd_atime datetime last access time atsd_mtime datetime last modified time atsd_ctime datetime create time
New SMI tables
New SMI tables Contents for: syscdr_risdir Column Type Comments risd_rid integer pseudo rowid risd_file char(128) file name risd_mode integer file mode risd_size integer file size in bytes risd_atime datetime last access time risd_mtime datetime last modified time risd_ctime datetime create time
New SMI tables
New SMI tables Contents for: syscdr_ats Column Type Comments ats_rid integer pseudo rowid ats_file char(128) ATS file name ats_sourceid integer CDRID of source node ats_source char(128) source name ats_committime char(20) source commit time ats_targetid integer CDRID of target node ats_receivetime char(20) target receive time ats_risfile char(128) Corresponding RIS file name ats_line1 char(200) Ten lines corresponding to the transaction header. ats_line10 char(200)
New SMI tables
New SMI tables Contents for: syscdr_ris Column Type Comments ris_rid integer pseudo rowid ris_file char(128) RIS file name ris_sourceid integer CDRID of source node ris_source char(128) source name ris_committime char(20) Time the transaction committed on the source server. ris_targetid integer CDRID of target node ris_target char(128) Target server name ris_receivetime char(20) target receive time ris_atsfile char(128) Corresponding ATS file name ris_line1 char(200) Ten lines corresponding to the transaction header. ris_line10 char(200)
New SMI tables
New SMI tables Contents for: syscdr_rqmstamp Column Type Comments rqms_qidx integer Queue index corresponding to the Send, Receive, Sync, and Ack queues. 0 – Transaction Send Queue 1 – ACK Send Queue 2 – Control Send Queue 3 – CDR Metadata Sync Send Queue 4 – Transaction Receive Queue rqms_stamp1 integer stamp1 of the next transaction being put into the queue. rqms_stamp2 integer stamp2 of the next transaction being put into the queue. rqms_cstamp1 integer Communal stamp1 used to identify the next transaction read from the queue (Receive Queue). rqms_cstamp2 integer Communal stamp2 used to identify the next transaction read from the queue.
New SMI tables
New SMI tables Contents for: syscdr_rqmhandle Column Type Comments rqmh_qidx integer Queue associated with this handle. rqmh_thread char(18) Thread owning the handle. rqmh_stamp1 integer Stamp1 of last transaction this handle accessed. rqmh_stamp2 integer Stamp2 of the last transaction this handle accessed. rqmh_servid integer Part1 of txn key. rqmh_logid integer Part2 of txn key. rqmh_logpos integer Part3 of txn key. rqmh_seq integer Part4 of txn key.
Feedback
Feedback Your feedback is valuable You can help improve the quality of IBM Education Assistant content to better meet your needs by providing feedback. Did you find this module useful? Did it help you solve a problem or answer a question? Do you have suggestions for improvements? Click to send e-mail feedback: mailto:iea@us.ibm.com?subject=Feedback_about_1000xC9ERFeatures_ExternalTables_part2.ppt This module is also available in PDF format at: ../1000xC9ERFeatures_ExternalTables_part2.pdf
Trademarks