From 20af213cd1a177fa3b46733759b0a07a326d5c24 Mon Sep 17 00:00:00 2001 From: Marko Kreen Date: Fri, 25 Apr 2008 14:42:51 +0000 Subject: [PATCH] doc update --- doc/Makefile | 2 +- doc/TODO.txt | 2 ++ doc/skytools3.txt | 58 +++++++++++++++++++++++++++++++++++++---------- 3 files changed, 49 insertions(+), 13 deletions(-) diff --git a/doc/Makefile b/doc/Makefile index 0fa9930b..a16b89e2 100644 --- a/doc/Makefile +++ b/doc/Makefile @@ -11,7 +11,7 @@ EPYARGS = --no-private --url="http://pgfoundry.org/projects/skytools/" \ HTMLS = londiste.cmdline.html londiste.config.html README.html INSTALL.html \ londiste.ref.html TODO.html pgq-sql.html pgq-admin.html pgq-nodupes.html \ - $(SCRIPT_HTMLS) + $(SCRIPT_HTMLS) skytools3.html SCRIPT_TXTS = walmgr.txt cube_dispatcher.txt table_dispatcher.txt \ queue_mover.txt queue_splitter.txt bulk_loader.txt \ diff --git a/doc/TODO.txt b/doc/TODO.txt index 601fb7bb..0ddd2875 100644 --- a/doc/TODO.txt +++ b/doc/TODO.txt @@ -22,10 +22,12 @@ - resume - node-status - set-status + - rename-node - standard msg/error handling for all sql functions - compare/repair - check if table is in other sets? [NAK] - setconsumer/pgq - insert tick with original date (+evid?) + - dont trust node name in member_info, set_info is authoritative * drop support for 8.1 ?? diff --git a/doc/skytools3.txt b/doc/skytools3.txt index 6eacdf5e..13b92c09 100644 --- a/doc/skytools3.txt +++ b/doc/skytools3.txt @@ -1,19 +1,53 @@ -Keep old design from Skytools 2.x: ----------------------------------- +Skytools 3 - cascaded replication +================================= -* worker process connects to only 2 databases -* worker process pulls data, no pushing with LISTEN/NOTIFY -* relaxed attitude about tables - - can be added/removed any time. - - inital sync happens table-by-table, no attempt is made to keep - consistend picture between tables when syncing. +Keep old design from Skytools 2 +------------------------------- -New features in 3.0: --------------------- +* Worker process connects to only 2 databases, there is no + everybody-to-everybody communication going on. +* Worker process only pulls data from queue. + - No pushing with LISTEN/NOTIFY + - Administrative work happens in separate process + - Can go down anytime, without affecting anything else +* Relaxed attitude about tables + - Tables can be added/removed any time. + - Inital sync happens table-by-table, no attempt is made to keep + consistent picture between tables when syncing. -* Queue content are kept in sync between all nodes in node-set. -* parallel copy - during inital sync several tables can be +New features in Skytools 3 +-------------------------- + +* Cascading is implemented as generic layer on top of PgQ - *pgq_set*. + - Its goal is to keep identical copy of queue contents in several nodes. + - Not replication-specific - can be used for any queue. + +* Parallel copy - during inital sync several tables can be copied at the same time. + - In 2.1 the copy already happened in separate process, + making it parallel was just a matter of tuning launching/syncing logic. + +* Advanced admin operations: + - switchover + - failover + - change provider for node + - pause / resume node + - rename node + +Open Questions +-------------- + +* terminology + - 'set' vs 'cluster' vs ??? + - (root / branch / leaf) vs. (master / slave) vs. (provider / subscriber) + - add vs. attach
+ +* own trigger handling + - fullblown custom + - minimal custom + wait for 8.3 +* compatibility with v2.1.x (python scripts + modules): + - bundle old modules and scripts with different name + - rename new modules and scripts -- 2.39.5