martinko [Tue, 24 Jul 2012 23:05:55 +0000 (01:05 +0200)]
doc/scriptmgr.txt: manual update
catch up with the previous commit
martinko [Tue, 24 Jul 2012 12:04:52 +0000 (14:04 +0200)]
scripts/scriptmgr.py: added option for specifying service type
-t SVC, --type=SVC apply command to all jobs of this service type
martinko [Tue, 24 Jul 2012 08:50:10 +0000 (10:50 +0200)]
Merge branch 'master' of skype-git:/git/dba/skytools-3
Marko Kreen [Thu, 19 Jul 2012 11:26:34 +0000 (14:26 +0300)]
source.cfg: add new files
Marko Kreen [Thu, 19 Jul 2012 11:15:45 +0000 (14:15 +0300)]
Add manpages for new scripts.
Also clean up minor issues in common text fragments.
Marko Kreen [Thu, 19 Jul 2012 08:41:08 +0000 (11:41 +0300)]
v3.1
Marko Kreen [Thu, 19 Jul 2012 08:30:02 +0000 (11:30 +0300)]
Bump schema versions.
Everything is 3.1.0.0 now.
Marko Kreen [Thu, 19 Jul 2012 08:27:52 +0000 (11:27 +0300)]
sql/pgq: Don't tag batch_id_seq as dumpable, pg_dump is broken.
This means it's value will be lost during dump+restore.
Marko Kreen [Wed, 18 Jul 2012 10:06:59 +0000 (13:06 +0300)]
pgq_coop: correct expected output for extension install
Marko Kreen [Wed, 18 Jul 2012 09:33:08 +0000 (12:33 +0300)]
tests/merge/addcol-data2.sql: missing file
Marko Kreen [Wed, 18 Jul 2012 09:31:42 +0000 (12:31 +0300)]
find_sql_functions: grep sql function signatures.
Dumb parser, but works on skytools modules.
Marko Kreen [Wed, 18 Jul 2012 09:27:51 +0000 (12:27 +0300)]
tests/simplecons - simple_consumer & simple_local_consumer tests
Marko Kreen [Tue, 17 Jul 2012 14:49:14 +0000 (17:49 +0300)]
pgq.LocalConsumer: fix exception message
Marko Kreen [Tue, 17 Jul 2012 12:35:58 +0000 (15:35 +0300)]
simple_consumer: sync with simple_local_consumer changes
Marko Kreen [Tue, 17 Jul 2012 12:30:04 +0000 (15:30 +0300)]
simple_local_consumer: function caller based on LocalConsumer
Consumer that runs a SQL for each event.
Marko Kreen [Tue, 17 Jul 2012 12:29:24 +0000 (15:29 +0300)]
pgq.Consumer: 'table_filter' - filter for ev_extra1
Marko Kreen [Fri, 13 Jul 2012 15:47:55 +0000 (18:47 +0300)]
londiste.create_partitions(): support triggers
Marko Kreen [Fri, 13 Jul 2012 10:46:30 +0000 (13:46 +0300)]
londiste: --find-copy-node switch for add-table
This will find node where tables are available for copy
by walking upwards to root.
Marko Kreen [Fri, 13 Jul 2012 09:24:20 +0000 (12:24 +0300)]
News update
Marko Kreen [Thu, 12 Jul 2012 14:00:34 +0000 (17:00 +0300)]
CascadedWorker: don't move watermark on source further than incoming batch.
This can happen on merge-leaf-on-branch, where incomong queue
can be behind the combined-queue on branch.
Marko Kreen [Thu, 12 Jul 2012 13:10:00 +0000 (16:10 +0300)]
londiste execute: fix downstream apply
- Downgrade "already applied" message from WARN to INFO
Unnecessary to warn about expected situation.
- ExecAttr: urldecoding fixes
This path was not tested properly.
- Test execute-through-combined-queue
Marko Kreen [Wed, 11 Jul 2012 15:42:58 +0000 (18:42 +0300)]
Convert DB modules to extensions
Keep installing old module files under contrib/ still.
Marko Kreen [Mon, 9 Jul 2012 11:46:48 +0000 (14:46 +0300)]
pgq.LocalConsumer: consumer that tracks processed ticks in local file
Marko Kreen [Mon, 9 Jul 2012 11:56:30 +0000 (14:56 +0300)]
testlib.sh: few improvements
title2, title3, run_qadmin, cat_file
Marko Kreen [Mon, 9 Jul 2012 09:49:25 +0000 (12:49 +0300)]
pgq.maint_operations: include londiste.periodic_maintenance
Marko Kreen [Mon, 9 Jul 2012 09:47:02 +0000 (12:47 +0300)]
londiste.periodic_maintenance: cleanup for applied_execute
Marko Kreen [Mon, 9 Jul 2012 09:39:07 +0000 (12:39 +0300)]
londiste.applied_execute: drop queue_name from pkey
Reason - we want execute work also when parallel queues
from partitioned databases are merged together into
single queue. Thus we need to be able to detect if same
changes have been applied through different queue.
Marko Kreen [Mon, 9 Jul 2012 09:36:36 +0000 (12:36 +0300)]
londiste execute: fix filter
Marko Kreen [Fri, 6 Jul 2012 11:23:32 +0000 (14:23 +0300)]
londiste replay: skip provider checks if copy_node is used
Because the table does not need to exist on current provider then.
Perhaps it would be safer to go and check this new node,
but copy can wait for good state on its own too.
Marko Kreen [Thu, 5 Jul 2012 15:47:47 +0000 (18:47 +0300)]
londiste execute: support meta attributes in sql
THis allows use of EXECUTE in sitations where table
can be missing on few nodes.
Currenly, this needed to to be solved with temp update functions
that detect local situation or avoiding Londiste completely.
Both which are non-optimal solutions.
Marko Kreen [Thu, 5 Jul 2012 15:25:32 +0000 (18:25 +0300)]
skytools.exists_view(): new function
Marko Kreen [Thu, 5 Jul 2012 11:11:29 +0000 (14:11 +0300)]
londiste: Wait commands for londiste
add-table --wait-sync
Don't return until all pending tables are synced
wait-sync
Wait until all pending tables are synced.
wait-root
Wait until root's next tick has appeared locally.
wait-provider
Wait until provider's next tick has appeared locally.
Marko Kreen [Thu, 5 Jul 2012 11:09:32 +0000 (14:09 +0300)]
drop-node: move find_root before local drop
also put them into separate try/except blocks.
This should increase success rate, hopefully.
Suggested-By: Eero Oja
Marko Kreen [Tue, 3 Jul 2012 08:54:39 +0000 (11:54 +0300)]
sql_tokenizer: allow idents starting with underscore
Marko Kreen [Mon, 18 Jun 2012 14:26:02 +0000 (17:26 +0300)]
fileutil: write_atomic() for win32
win32 does not support atomic rename
Marko Kreen [Fri, 15 Jun 2012 13:53:34 +0000 (16:53 +0300)]
pgq.maint_rotate_tables: check txid sanity, fail if bad
Marko Kreen [Fri, 15 Jun 2012 13:50:35 +0000 (16:50 +0300)]
BaseScript: write pidfile atomically to avoid corrupt pidfiles.
Marko Kreen [Fri, 15 Jun 2012 13:36:32 +0000 (16:36 +0300)]
Move signal_pidfile to 'fileutil' module
Marko Kreen [Fri, 15 Jun 2012 13:32:06 +0000 (16:32 +0300)]
skytools.fileutil: new module, contains write_atomic()
Marko Kreen [Tue, 5 Jun 2012 12:43:33 +0000 (15:43 +0300)]
pgq_node.drop_node: mention node name in info message
Marko Kreen [Tue, 5 Jun 2012 10:25:17 +0000 (13:25 +0300)]
CascadedConsumer: re-initialize provider connection when location changes
This will avoid situation when connection is recreated with old connect string.
Marko Kreen [Tue, 5 Jun 2012 10:17:06 +0000 (13:17 +0300)]
handlers: improve documentation
Add docstrings to part, londiste, qtable, qsplitter, vtable handlers.
Marko Kreen [Tue, 5 Jun 2012 09:59:44 +0000 (12:59 +0300)]
londiste.handler: make encoding= param available to part & londiste handlers
- Move EncodingValidator from dispatch.py to handler.py
- Use it in TableHandler (londiste default)
- Thus it is inherited by 'part' handler too
Marko Kreen [Tue, 5 Jun 2012 08:23:33 +0000 (11:23 +0300)]
handlers.part: clarify COPY expression with braces
Marko Kreen [Mon, 4 Jun 2012 13:55:00 +0000 (16:55 +0300)]
Merge remote branch 'tarvi/master'
Tarvi Pillessaar [Mon, 4 Jun 2012 10:28:59 +0000 (13:28 +0300)]
update walmgr doc
Marko Kreen [Thu, 31 May 2012 17:05:14 +0000 (20:05 +0300)]
debian: build modules for all installed server-dev versions
Currently pg_buildext is designed for building official
Debian packages *only*, which makes is unusable for
users building for custom Postgres versions.
Fix:
- include pg_buildext (from 130~bpo60+1)
- patch it to print all installed versions
- include pgxs_debian_control.mk fragment
- use custom pg_buildext everywhere
I think this is bug in pg_buildext as official packages
can simply be built in deps-only environment.
Marko Kreen [Wed, 30 May 2012 13:14:01 +0000 (16:14 +0300)]
v3.0.3
Marko Kreen [Wed, 30 May 2012 12:46:31 +0000 (15:46 +0300)]
londiste add-table --expect-sync: don't check table existance on provider
Marko Kreen [Wed, 30 May 2012 08:16:24 +0000 (11:16 +0300)]
pgq_node.version(): 3.0.0.18
Marko Kreen [Wed, 30 May 2012 08:15:51 +0000 (11:15 +0300)]
pgq_node.drop_node(): forgot to remove raturn when planning fallthru
Marko Kreen [Tue, 29 May 2012 12:33:22 +0000 (15:33 +0300)]
londiste3.txt: describe --copy-node
Marko Kreen [Tue, 29 May 2012 12:31:49 +0000 (15:31 +0300)]
handlers.dispatch: try both new and old create_partition
Marko Kreen [Tue, 29 May 2012 10:39:37 +0000 (13:39 +0300)]
londiste.version(): 3.0.0.16
Marko Kreen [Tue, 29 May 2012 10:39:37 +0000 (13:39 +0300)]
pgq_node.version(): 3.0.0.17
Marko Kreen [Tue, 29 May 2012 10:32:40 +0000 (13:32 +0300)]
CascadedWorker: merge-leaf-to-branch needs to publish wm info
Somehow the functionality got lost.
Seems the area is in need of some cleanups to
make code more clear.
Marko Kreen [Mon, 28 May 2012 12:22:03 +0000 (15:22 +0300)]
handlers/dispatch: fix keep_all/keep_latest doc
Marko Kreen [Mon, 28 May 2012 10:54:48 +0000 (13:54 +0300)]
debian: add build-deps, force debian/control rebuild
debian/control:
Add build-dep of any of server-dev packages.
For some reason, server-dev-all does not depend on any
debian/rules:
Rebuild it via stamp file, otherwise its easily ignored
and modules package is left out from build.
Marko Kreen [Fri, 25 May 2012 14:16:38 +0000 (17:16 +0300)]
Merge remote branch 'intgit/master'
Marko Kreen [Fri, 25 May 2012 13:32:26 +0000 (16:32 +0300)]
sql/londiste: fix locale problem in londiste_merge test
We want fixed sort order here to get quick overview of combinations.
Use 'name' type to get non-locale sorting.
Reported-By: Cédric Villemain
Marko Kreen [Fri, 25 May 2012 13:31:53 +0000 (16:31 +0300)]
londiste.create_partitions: improved rule support
Marko Kreen [Fri, 25 May 2012 10:58:46 +0000 (13:58 +0300)]
public.create_partition: drop rule logic from here
No point maintaing it in two places.
Let the code stay as-is.
Marko Kreen [Fri, 25 May 2012 09:30:54 +0000 (12:30 +0300)]
signal_pidfile: support sig=0 on win32
To avoid pywin32 dependency for such basic functionality,
use kernel32.dll via ctypes directly.
Marko Kreen [Fri, 25 May 2012 09:27:28 +0000 (12:27 +0300)]
skytools.UsageError: remove noise word
Marko Kreen [Fri, 25 May 2012 08:53:36 +0000 (11:53 +0300)]
CascadeAdmin: add node name prefix messages from db
Marko Kreen [Fri, 25 May 2012 08:52:27 +0000 (11:52 +0300)]
pgq_node.drop_node: drop queue data even if node_info is empty
Marko Kreen [Thu, 24 May 2012 15:31:22 +0000 (18:31 +0300)]
londiste.version(): 3.0.0.15
Marko Kreen [Thu, 24 May 2012 15:31:22 +0000 (18:31 +0300)]
pgq_node.version(): 3.0.0.16
Marko Kreen [Thu, 24 May 2012 15:30:12 +0000 (18:30 +0300)]
create_partition: move under londiste schema
It is now generic enough so no custom modifications
are not needed anymore. So make it always-available.
Marko Kreen [Thu, 24 May 2012 15:17:40 +0000 (18:17 +0300)]
create_partition: special-case for public grant
Marko Kreen [Thu, 24 May 2012 15:11:42 +0000 (18:11 +0300)]
create_partition: also load rules from master table
Marko Kreen [Thu, 24 May 2012 14:43:03 +0000 (17:43 +0300)]
skytools.dbstruct: better rule name redirection
Old code did not handle WHERE, nor repeated
table references in rule.
Tarvi Pillessaar [Wed, 23 May 2012 13:09:45 +0000 (16:09 +0300)]
dbservice.get_record_list: do not use parse_pgarray on python lists
Marko Kreen [Tue, 22 May 2012 10:34:34 +0000 (13:34 +0300)]
skytools.scripting: catch EINTR from sleep()
Marko Kreen [Tue, 22 May 2012 09:58:54 +0000 (12:58 +0300)]
skytools.scripting: detect missing signals
Don't hook signals that are not supported by OS.
Needed for win32.
Marko Kreen [Mon, 21 May 2012 10:41:20 +0000 (13:41 +0300)]
pgq_node: refresh regtest
Marko Kreen [Mon, 21 May 2012 10:40:19 +0000 (13:40 +0300)]
pgq_node.unregister_location: do automatic unsubscribe
There may be obsolete subscriptions around, do unsubscribe
automatically, instead complaining.
Marko Kreen [Wed, 9 May 2012 13:25:46 +0000 (16:25 +0300)]
londiste remove-table: drop sequence too
Marko Kreen [Mon, 21 May 2012 07:41:16 +0000 (10:41 +0300)]
londiste.setup: UsageError requires module prefix
Marko Kreen [Mon, 21 May 2012 07:38:48 +0000 (10:38 +0300)]
handlers.part: fix typo
Marko Kreen [Thu, 17 May 2012 15:03:29 +0000 (18:03 +0300)]
londiste copy: copy table from another node
add-table: --copy-node=NODENAME, store it into table_attrs
copy: take node name from table_attrs
Marko Kreen [Thu, 17 May 2012 12:47:00 +0000 (15:47 +0300)]
skytools_upgrade: fix special cases
Marko Kreen [Wed, 16 May 2012 12:13:59 +0000 (15:13 +0300)]
londiste.find_table_oid: drop old version - 9.1+ panics when argument name changes
Marko Kreen [Wed, 16 May 2012 12:07:54 +0000 (15:07 +0300)]
sql/logtriga: compile on 9.1+
Marko Kreen [Tue, 15 May 2012 15:41:16 +0000 (18:41 +0300)]
handlers.dispatch: add comment about differences from part_func
If create_partitions() does not exist, the table is created
manually. But there are differences from how table is created.
Add comment about it, we might want to fix it someday.
Marko Kreen [Tue, 15 May 2012 11:20:47 +0000 (14:20 +0300)]
skytools_upgrade: show old version before upgrade
Marko Kreen [Tue, 15 May 2012 11:16:40 +0000 (14:16 +0300)]
pgq_node.create_node: create branch nodes with disable_insert set
This is the proper approach to avoid any unexpected events
in the queue. The flag is ignored if connection is in 'replica'
role, thus cascaded queueing continues to work.
Marko Kreen [Tue, 15 May 2012 09:49:23 +0000 (12:49 +0300)]
pgq.insert_event(): remove unused variable.
Marko Kreen [Tue, 15 May 2012 09:46:49 +0000 (12:46 +0300)]
pgq.insert_event: ignore disable_insert if in 'replica' role
Otherwise we cannot use insert_event on branch nodes.
We could allow it in 'local' role too, but another kind-of-valid
behaviour is to skip insert completely in 'local' role.
So until a valid use-case appers, don't ignore the flag
in 'local' role.
Marko Kreen [Tue, 15 May 2012 09:37:14 +0000 (12:37 +0300)]
Add more contributors
Tarvi Pillessaar [Fri, 11 May 2012 07:58:10 +0000 (10:58 +0300)]
Merge branch 'master' of internal-git:/git/dba/skytools-3
martinko [Fri, 11 May 2012 06:30:33 +0000 (08:30 +0200)]
Merge branch 'master' of skype-git:/git/dba/skytools-3
Marko Kreen [Thu, 10 May 2012 07:55:47 +0000 (10:55 +0300)]
v3.0.2
Marko Kreen [Thu, 10 May 2012 18:29:43 +0000 (21:29 +0300)]
Refresh debian packaging
Marko Kreen [Thu, 10 May 2012 18:01:40 +0000 (21:01 +0300)]
AUTHORS: Add contributors to 3.x branch
Marko Kreen [Thu, 10 May 2012 17:50:25 +0000 (20:50 +0300)]
Sync AUTHORS list from 2.1 branch
Sergey Burladyan [Thu, 10 May 2012 17:55:43 +0000 (20:55 +0300)]
walmgr: fix backup from slave
Current version improperly remove needed WAL files when creating backup from slave.
The minimum WAL file is file with REDO record, not with latest checkpoint itself.
Marko Kreen [Thu, 10 May 2012 16:19:31 +0000 (19:19 +0300)]
londiste.version(): 3.0.0.14
Marko Kreen [Thu, 10 May 2012 16:19:31 +0000 (19:19 +0300)]
pgq_node.version(): 3.0.0.15
Marko Kreen [Thu, 10 May 2012 16:19:31 +0000 (19:19 +0300)]
pgq.version(): 3.0.0.15