Subject: | Replication changes to reduce data load and consistency to replication objects |
Summary: |
Objective Build consistency in replication mechanism Add ability to define rules for specific tables to handle complex rules such as: INV_LIST table: Head-office to Branch, Stock is UPDATED INV_LIST table: Branch to Head office, stock movement is changed
Table changes to replication should be automatically picked up for NON CUSTOM tables Move all manual jobs to Link Processes Cleanup and Processes jobs and make the Process to Job relationship 1 to 1 to prevent processing delays
Rules: If a specific column needs to be excluded from replication, separate this column into a non replicated table or use a view to manage columns
Design considerations - CONTROL IN and CONTROL OUT tables are leftovers from the previous design. The values in this table can be dynamically built as database tables change. Remove the manual maintenance of this table.
- Remove CONTROL IN AND OUT data from flowing with replication. We assume that all databases in the replication plan are consistent
- Build a new table to hold data used by CONTROL tables in 1 above and build this data dynamically called LT_REPL_TableDefinitions
- Add fields to identify if the table is a CUSTOM table which requires special consideration like LBS_INV_LIST
- Add fields to define if we need INSERT/UPDATE/DELETE considerations
- Using this table, dynamically build triggers for replication separating units of work to ensure code is not repeated
- Move all SQL Jobs into the Processes table
- Improve the processes handling capability by making the Process code, Description, Script as read-only to prevent changing and causing data corruption
- Remove ability to ADD processes from form as this results in Direct SQL access for users
- Remove Schedule Job Name as users should not have to set this up
- Add a "Job Owner" as Replication jobs need to be processed with "LinkADMIN" (data affected by LINKADMIN user flows through replication) and some jobs need to be processed with "LinkReplication" user.
- Separate Jobs so we have one job per process. Job names will be identified by ProcessCode
- Automatically create jobs when a process is made active
- Delete a job when the process is made inactive
- Move JIWA SQL Job to processes
- Move JIWA process away from Replication design and place this in a separate bucket
- Tie replication triggers with the Replication configuration process
- By default, all jobs should be disabled. Users need to enable jobs to prevent unnecessary server load
- Build a custom Replication Trigger script for INV_LIST to handle Stock Movement Update when flowing from Branch to Head Office
- Cleanup and refactor Processes Build script
|
Audit Notes: | |
19 Dec 2017 | 03:35PM Comment 1 by Sanjay (Link Technologies) Case 8987 added to project 8.2 |
19 Dec 2017 | 03:55PM Comment 2 by Sanjay (Link Technologies) Assigned To: Development Followup Date: 19-12-2017 03:55 PM Time Taken: 40.00 |
| The following changes have been completed: - CONTROL IN and CONTROL OUT tables are leftovers from the previous design. The values in this table can be dynamically built as database tables change. Remove the manual maintenance of this table.
- Remove CONTROL IN AND OUT data from flowing with replication. We assume that all databases in the replication plan are consistent
- Build a new table to hold data used by CONTROL tables in 1 above and build this data dynamically called LT_REPL_TableDefinitions
- Add fields to identify if the table is a CUSTOM table which requires special consideration like LBS_INV_LIST
- Add fields to define if we need INSERT/UPDATE/DELETE considerations
- Using this table, dynamically build triggers for replication separating units of work to ensure code is not repeated
- Move all SQL Jobs into the Processes table
- Improve the processes handling capability by making the Process code, Description, Script as read-only to prevent changing and causing data corruption
- Remove ability to ADD processes from form as this results in Direct SQL access for users
- Remove Schedule Job Name as users should not have to set this up
- Add a "Job Owner" as Replication jobs need to be processed with "LinkADMIN" (data affected by LINKADMIN user flows through replication) and some jobs need to be processed with "LinkReplication" user.
- Separate Jobs so we have one job per process. Job names will be identified by ProcessCode
- Automatically create jobs when a process is made active
- Delete a job when the process is made inactive
- Move JIWA SQL Job to processes
- Move JIWA process away from Replication design and place this in a separate bucket
- Tie replication triggers with the Replication configuration process
- By default, all jobs should be disabled. Users need to enable jobs to prevent unnecessary server load
- Build a custom Replication Trigger script for INV_LIST to handle Stock Movement Update when flowing from Branch to Head Office
- Cleanup and refactor Processes Build script
|
|
20 Dec 2017 | 10:09AM Comment 3 by Sanjay (Link Technologies) Assigned To: Sanjay (Link Technologies) Followup Date: 20-12-2017 10:09 AM |
| SYSTEM Test - Added function to show if SQL Agent is stopped in Processes Menu - Status Column. |
|
21 Dec 2017 | 04:21PM Comment 4 by Sanjay (Link Technologies) Assigned To: Sanjay (Link Technologies) Followup Date: 21-12-2017 04:21 PM |
| Tests will be performed individually. |
|
09 Oct 2019 | 08:14AM Comment 5 by Sanjay (Link Technologies) Quality control status: Pass. QC Not required - This case was created before quality check was implemented in version 11 on 30/06/2019 |