Commit Graph

389 Commits

Author SHA1 Message Date
bacf197a7b Change format identifier of SPI_processed to uint64.
Because commit 23a27b039d94ba359286694831eafe03cd970eef has extended the
type of SPI_processed from uint32 to uint64, pg_repack emit warning when
compiling with PostgreSQL 9.6 or later. To fix that, we cast it to uint64
and change format identifier from %d to %lu.
2017-02-02 23:42:44 +09:00
ff8cb96c74 Add white space to COUNT_COMPETING_LOCKS sql.
Pointed out by schmiddy.
2017-02-02 19:59:18 +09:00
34c6506f54 Introduce --dont-kill-backend option.
pg_repack needs to take an exclusive lock at the end of the
reorganization. If the lock cannot be taken after duration
--wait-timeout option specified and this option is true,
pg_repack gives up to repack a target table instead of
cancelling conflicting backend. False by default.
2017-01-24 14:47:00 +09:00
375f03c0c3 Change trigger name from a_repack_trigger to repack_trigger.
In AFTER trigger context, since triggered tuple is not changed by
any other triggers we can call it just repack_trigger.
2017-01-24 14:09:05 +09:00
d83ee3d6a0 Change trigger type to AFTER trigger.
During repacking table, if a transaction executes INSERT CONFLICT
ON UPDATE/DO NOTHING, because we define BEFORE trigger on target
table, the contents of operation log table becomes inconsistent
easliy. As a result, pg_reapck fails with a high probability.

To resolve this issue, this changes the trigger type from BEFORE
to AFTER. We define AFTER trigger that is the first of the AFTER
trigger to fire on the table.
2017-01-19 16:32:54 +09:00
e1056c003c Merge pull request #104 from MasahikoSawada/support_9_6
Add 9.6 to list as a supported Postgres version.
2017-01-17 08:54:33 -05:00
6cadd7d97d Add 9.6 to list as a supported Postgres version.
Since 9.5 is not listed yet in pg_repack_jp.rst added 9.5 as well.
2017-01-17 14:28:21 +09:00
116fa68097 set 'include_extensions' to true if tables have been specified 2016-10-24 16:54:32 +03:00
20beaf99f2 introduce new option 'include-extensions' which is aimed to prevent pg_repack from touching tables that belong to extensions 2016-10-24 16:11:12 +03:00
8711ae5b2a Merge branch 'master' of github.com:reorg/pg_repack 2016-08-05 13:26:18 -07:00
6e9ccbd8a0 Remember to list 9.5 as a supported Postgres version. 2016-08-05 13:25:08 -07:00
8db0f58daf Merge pull request #87 from postgrespro/vacuum_fix
Don't wait for concurrent vacuums
2016-08-05 13:12:06 -07:00
8e50927946 Comment about VACUUM. 2016-07-03 22:42:17 +03:00
3b0ef954cf Fix. 2016-07-03 21:19:45 +03:00
fe659b0e4a Version bump for 1.3.4 2016-05-07 09:44:26 -04:00
b8b18c0cc9 Prep release notes for release 1.3.4. 2016-05-07 09:43:28 -04:00
602bf2944a .gitignore for lib/exports.list 2016-05-07 09:25:30 -04:00
eb2e9c39fb Whitespace cleanup. 2016-05-07 09:24:05 -04:00
de060af137 Merge branch 'medallia-medallia_xlock_for_drop' 2016-05-07 09:20:23 -04:00
dcce8e43e9 grab exclusive lock before dropping table 2016-04-15 14:34:41 -07:00
0d84624b92 Merge pull request #74 from amitlan/update-release-notes
Add release notes for 1.3.2 and 1.3.3 releases.
2016-02-27 16:20:20 -05:00
abb6f002e7 Add release notes for 1.3.2 and 1.3.3 releases. 2016-02-26 10:54:01 +09:00
7238a15a9c Merge pull request #72 from j16sdiz/patch-1
Do not repack unlogged tables (close #71)
2016-02-16 16:54:05 -05:00
71f8833958 Do not repack unlogged tables (close #71) 2016-02-12 18:50:45 +08:00
1b5fd1ae70 Bump version to 1.3.3 2016-02-07 17:58:18 -05:00
766722f2fe Merge branch 'amitlan-reg-tests-relopt-quote-fix' 2016-01-24 17:56:20 -05:00
4002b4e18f Add a variant expected output for the 'repack' regression test
so that older versions of Postgres (pre-c7e27bec) will still
pass tests.

Also fix the 'tablespace' test the same way.
2016-01-24 17:54:48 -05:00
ab70a010a5 Fix regression test output.
Upstream changes now cause reloption values to be emitted with surrounding
quotes. That breaks, for example, the output of \d commands in one of the
tests.
2016-01-19 09:30:10 +09:00
e4033c273e Need to #include pg_am.h directly now to use BTREE_AM_OID.
Due to upstream changes to the index AM API definitions.
2016-01-18 20:55:57 +09:00
668e44e256 Merge pull request #61 from bwtakacy/jp-doc
Add doc in Japanese
2015-12-14 15:33:32 -05:00
b0be609adf Add doc in Japanese 2015-12-07 12:32:13 +09:00
2b3a026372 Merge pull request #56 from amitlan/issue-55-fix
Make repack_drop() processing robust against deadlocks.
2015-12-02 23:58:48 -05:00
cbe027289a Consider schemaname too when doing LOCK TABLE in repack_drop().
This was an oversight in a previous commit to fix the deadlock reported
in Github issue #55.
2015-12-03 13:32:03 +09:00
87dca1c85c Merge pull request #59 from bwtakacy/change_exit_code
Change exit code for --help and --version.
2015-11-30 10:14:46 -05:00
70eac9ee06 Change exit code for --help and --version.
Previously, it is 1 but the reason is not clear.
It seems to be a historical one because pg_reorg
has the same exit codes.
2015-11-26 21:51:09 +09:00
94232991b9 Expand a comment in repack_drop().
Previous text did not sufficiently explain why taking a lock on the
target table would be necessary.
2015-11-09 15:23:45 +09:00
5317f527f4 Make repack_drop() processing robust against deadlocks.
Concurrent activity on the target table can cause deadlocks when
repack_drop() is doing its job, ie, dropping the temporary objects
created. It is highly likely to occur when pg_repack is interrupted
midway through its processing.
2015-11-06 17:10:13 +09:00
20a679b7fb Merge branch 'decibel-Fix-repack_apply-count-bug' 2015-10-14 09:39:55 -04:00
5476a416fc Merge branch 'Fix-repack_apply-count-bug' of https://github.com/decibel/pg_repack into decibel-Fix-repack_apply-count-bug 2015-10-14 09:39:46 -04:00
f564292e6e Merge branch 'bwtakacy-remove_build_warn' 2015-10-14 09:37:34 -04:00
b53b1832bc Merge branch 'remove_build_warn' of https://github.com/bwtakacy/pg_repack into bwtakacy-remove_build_warn 2015-10-14 09:34:09 -04:00
f258925f23 .gitignore tweak 2015-10-14 09:11:50 -04:00
0e24283856 repack_apply(): Use default if count is negative
Per documentation, a negative value for count should result in using DEFAULT_PEEK_COUNT.
2015-10-11 16:39:35 -05:00
c3960cd118 Include a new header file to build with PostgreSQL 9.5
By commit 7b1c2a0f2066672b24f6257ec9b8d78a1754f494 in PostgreSQL,
builtins.h is splitted to a new header file ruleutils.h.
The usage of pg_get_indexdef_string in lib/repack.c is affected.
2015-10-09 13:15:30 +09:00
f255a4175d Bump version to 1.3.2 2015-08-13 22:15:30 -04:00
facbcf90dd Wrong precedence for these chained less-than / greater-thans. 2015-07-24 07:27:30 -04:00
949c0ad150 Avoid symbol conflict causing segfault when pg_statsinfo is installed.
Control symbol visibility for functions exported in the pg_repack
shared library, to avoid symbol conflicts with other libraries,
particularly those which may be loaded via shared_preload_libraries
and use conflicting function definitions of our common pgut code,
such as pg_statsinfo.

Verified this fix on my Debian x86_64 machine with PostgreSQL 9.4 and
pg_statsinfo 3.0.2. Would be nice to test this fix on a few other
platforms such as OS X, though I had some difficulty getting
pg_statsinfo to build on OS X. Hopefully closes Issue #43, thanks
to bwtakacy for the report and demonstration of the commited fix in
pg_reorg.
2015-05-31 18:59:05 -04:00
70cc5769c9 Remember to free repacked_indexes. 2015-05-29 21:18:45 -04:00
a8409dd624 Merge branch 'amitlan-master' 2015-05-27 21:38:26 -04:00
ffb1980ce4 Remove remaining pgut_strdup() uses in favor of num_buff,
so no more of those tiny leaks.
2015-05-27 21:33:34 -04:00