From 20beaf99f276ad5f161ab0ef099e693677fe9400 Mon Sep 17 00:00:00 2001 From: Dmitry Ivanov Date: Mon, 24 Oct 2016 16:11:12 +0300 Subject: [PATCH 01/12] introduce new option 'include-extensions' which is aimed to prevent pg_repack from touching tables that belong to extensions --- bin/pg_repack.c | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/bin/pg_repack.c b/bin/pg_repack.c index 8ccb1ae..279d5e8 100644 --- a/bin/pg_repack.c +++ b/bin/pg_repack.c @@ -109,7 +109,7 @@ const char *PROGRAM_VERSION = "unknown"; */ #define SQL_XID_SNAPSHOT_80300 \ "SELECT repack.array_accum(l.virtualtransaction) " \ - " FROM pg_locks AS l" \ + " FROM pg_locks AS l" \ " LEFT JOIN pg_stat_activity AS a " \ " ON l.pid = a.procpid " \ " LEFT JOIN pg_database AS d " \ @@ -169,7 +169,7 @@ typedef struct repack_index { Oid target_oid; /* target: OID */ const char *create_index; /* CREATE INDEX */ - index_status_t status; /* Track parallel build statuses. */ + index_status_t status; /* Track parallel build statuses. */ int worker_idx; /* which worker conn is handling */ } repack_index; @@ -244,6 +244,7 @@ static int wait_timeout = 60; /* in seconds */ static int jobs = 0; /* number of concurrent worker conns. */ static bool dryrun = false; static unsigned int temp_obj_num = 0; /* temporary objects counter */ +static bool include_extensions = false; /* repack tables of extensions */ /* buffer should have at least 11 bytes */ static char * @@ -269,6 +270,7 @@ static pgut_option options[] = { 'i', 'T', "wait-timeout", &wait_timeout }, { 'B', 'Z', "no-analyze", &analyze }, { 'i', 'j', "jobs", &jobs }, + { 'b', 'C', "include-extensions", &include_extensions }, { 0 }, }; @@ -651,6 +653,16 @@ repack_one_database(const char *orderby, char *errbuf, size_t errsize) { appendStringInfoString(&sql, "pkid IS NOT NULL"); } + + /* Exclude tables which belong to extensions */ + if (!include_extensions) + { + appendStringInfoString(&sql, " AND t.relid NOT IN" + " (SELECT objid FROM pg_depend" + " WHERE refclassid = 'pg_extension'::regclass" + " AND classid = 'pg_class'::regclass)"); + } + /* Ensure the regression tests get a consistent ordering of tables */ appendStringInfoString(&sql, " ORDER BY t.relname, t.schemaname"); @@ -2064,4 +2076,5 @@ pgut_help(bool details) printf(" -x, --only-indexes move only indexes of the specified table\n"); printf(" -T, --wait-timeout=SECS timeout to cancel other backends on conflict\n"); printf(" -Z, --no-analyze don't analyze at end\n"); + printf(" -C, --include-extensions repack tables which belong to extensions\n"); } From 116fa68097b268a64e2564fdd36528ca557d2aca Mon Sep 17 00:00:00 2001 From: Dmitry Ivanov Date: Mon, 24 Oct 2016 16:54:32 +0300 Subject: [PATCH 02/12] set 'include_extensions' to true if tables have been specified --- bin/pg_repack.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/bin/pg_repack.c b/bin/pg_repack.c index 279d5e8..ca75429 100644 --- a/bin/pg_repack.c +++ b/bin/pg_repack.c @@ -625,6 +625,12 @@ repack_one_database(const char *orderby, char *errbuf, size_t errsize) params[iparam++] = tablespace; if (num_tables) { + /* + * Tables have been explicitly specified, + * no need to hide tables of extensions + */ + include_extensions = true; + appendStringInfoString(&sql, "("); for (cell = table_list.head; cell; cell = cell->next) { From 462c37c57e48c1d4c6e03b00a0499abefd3750f8 Mon Sep 17 00:00:00 2001 From: Masahiko Sawada Date: Thu, 23 Mar 2017 10:37:04 +0900 Subject: [PATCH 03/12] Update pg_repack_jp.rst Since v1.3.3, when Japanese doc has been introduced, this file had not been maintained. --- doc/pg_repack_jp.rst | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/doc/pg_repack_jp.rst b/doc/pg_repack_jp.rst index 87b79e6..66ad291 100644 --- a/doc/pg_repack_jp.rst +++ b/doc/pg_repack_jp.rst @@ -208,6 +208,7 @@ pg_repackもしくはpg_reorgの古いバージョンからのアップグレー -T, --wait-timeout=SECS timeout to cancel other backends on conflict -D, --no-kill-backend don't kill other backends when timed out -Z, --no-analyze don't analyze at end + -k, --no-superuser-check skip superuser checks in client Connection options: -d, --dbname=DBNAME database to connect @@ -247,6 +248,7 @@ OPTIONには以下のものが指定できます。 -T, --wait-timeout=SECS ロック競合している他のトランザクションをキャンセルするまで待機する時間を指定します -D, --no-kill-backend タイムアウト時に他のバックエンドをキャンセルしません -Z, --no-analyze 再編成後にANALYZEを行いません + -k, --no-superuser-check 接続ユーザがスーパーユーザかどうかのチェックを行いません 接続オプション: -d, --dbname=DBNAME 接続する対象のデータベースを指定します @@ -377,6 +379,13 @@ OPTIONには以下のものが指定できます。 ``-Z``, ``--no-analyze`` 再編成終了後にANALYZEを行うことを無効にします。デフォルトでは再編成完了後に統計情報を更新するためANALYZEを実行します。 +.. ``-k``, ``--no-superuser-check`` + Skip the superuser checks in the client. This setting is useful for using + pg_repack on platforms that support running it as non-superusers. + +``-k``, ``--no-superuser-check`` + 接続ユーザがスーパーユーザかどうかのチェックを行いません。これは、非スーパーユーザのみが利用できる環境でpg_repackを使用するときに有用です。 + .. Connection Options ^^^^^^^^^^^^^^^^^^ Options to connect to servers. You cannot use ``--all`` and ``--dbname`` or @@ -846,6 +855,39 @@ ACCESS EXCLUSIVEロックを取得します。その他のステップでは、A リリースノート --------------- +.. * pg_repack 1.3.4 +.. * grab exclusive lock before dropping original table (#81) +.. * do not attempt to repack unlogged table (#71) + +* pg_repack 1.3.4 + + * 元テーブルを削除する前に排他ロックを取得するようにしました(#81) + * Unlogged Tableを再編成対象から外すようにしました (#71) + +.. * pg_repack 1.3.3 +.. * Added support for PostgreSQL 9.5 +.. * Fixed possible deadlock when pg_repack command is interrupted (issue #55) +.. * Fixed exit code for when pg_repack is invoked with ``--help`` and +.. ``--version`` +.. * Added Japanese language user manual + +* pg_repack 1.3.3 + + * PostgreSQL 9.5をサポートしました + * pg_repackが中断されたときにデッドロックが発生する可能性を修正しました (issue #55) + * ``--help`` または ``--version`` オプションを指定した実行したときの終了コードを修正しました + * 日本語のユーザマニュアルを追加しました + +.. * pg_repack 1.3.2 +.. * Fixed to clean up temporary objects when pg_repack command is interrupted. +.. * Fixed possible crash when pg_repack shared library is loaded a alongside +.. pg_statsinfo (issue #43) + +* pg_repack 1.3.2 + + * pg_repackが中断されたときに一時オブジェクトを削除するようにしました + * pg_statsinfoと同時にロードされている時にクラッシュする可能性を修正しました + .. * pg_repack 1.3.1 .. * Added support for PostgreSQL 9.4. From 1ecec8ce95fae6f6ade04cbbc33ebf9ce38affec Mon Sep 17 00:00:00 2001 From: Dmitry Ivanov Date: Thu, 23 Mar 2017 15:24:41 +0300 Subject: [PATCH 04/12] change option to '--exclude-extension' --- bin/pg_repack.c | 37 +++++++++++++++++++++++-------------- 1 file changed, 23 insertions(+), 14 deletions(-) diff --git a/bin/pg_repack.c b/bin/pg_repack.c index 308fc36..a996a0d 100644 --- a/bin/pg_repack.c +++ b/bin/pg_repack.c @@ -251,7 +251,7 @@ static bool dryrun = false; static unsigned int temp_obj_num = 0; /* temporary objects counter */ static bool no_kill_backend = false; /* abandon when timed-out */ static bool no_superuser_check = false; -static bool include_extensions = false; /* repack tables of extensions */ +static SimpleStringList exclude_extension_list = {NULL, NULL}; /* don't repack tables of these extensions */ /* buffer should have at least 11 bytes */ static char * @@ -279,7 +279,7 @@ static pgut_option options[] = { 'i', 'j', "jobs", &jobs }, { 'b', 'D', "no-kill-backend", &no_kill_backend }, { 'b', 'k', "no-superuser-check", &no_superuser_check }, - { 'b', 'C', "include-extensions", &include_extensions }, + { 'l', 'C', "exclude-extension", &exclude_extension_list }, { 0 }, }; @@ -607,12 +607,14 @@ repack_one_database(const char *orderby, char *errbuf, size_t errsize) size_t num_tables; size_t num_schemas; size_t num_params; + size_t num_excluded_extensions; num_tables = simple_string_list_size(table_list); num_schemas = simple_string_list_size(schema_list); + num_excluded_extensions = simple_string_list_size(exclude_extension_list); /* 1st param is the user-specified tablespace */ - num_params = num_tables + num_schemas + 1; + num_params = num_excluded_extensions + num_tables + num_schemas + 1; params = pgut_malloc(num_params * sizeof(char *)); initStringInfo(&sql); @@ -637,12 +639,6 @@ repack_one_database(const char *orderby, char *errbuf, size_t errsize) params[iparam++] = tablespace; if (num_tables) { - /* - * Tables have been explicitly specified, - * no need to hide tables of extensions - */ - include_extensions = true; - appendStringInfoString(&sql, "("); for (cell = table_list.head; cell; cell = cell->next) { @@ -673,12 +669,25 @@ repack_one_database(const char *orderby, char *errbuf, size_t errsize) } /* Exclude tables which belong to extensions */ - if (!include_extensions) + if (exclude_extension_list.head) { appendStringInfoString(&sql, " AND t.relid NOT IN" - " (SELECT objid FROM pg_depend" - " WHERE refclassid = 'pg_extension'::regclass" - " AND classid = 'pg_class'::regclass)"); + " (SELECT d.objid::regclass" + " FROM pg_depend d JOIN pg_extension e" + " ON d.refobjid = e.oid" + " WHERE d.classid = 'pg_class'::regclass AND ("); + + /* List all excluded extensions */ + for (cell = exclude_extension_list.head; cell; cell = cell->next) + { + appendStringInfo(&sql, "e.extname = $%d", iparam + 1); + params[iparam++] = cell->val; + + appendStringInfoString(&sql, cell->next ? " OR " : ")"); + } + + /* Close subquery */ + appendStringInfoString(&sql, ")"); } /* Ensure the regression tests get a consistent ordering of tables */ @@ -2118,5 +2127,5 @@ pgut_help(bool details) printf(" -D, --no-kill-backend don't kill other backends when timed out\n"); printf(" -Z, --no-analyze don't analyze at end\n"); printf(" -k, --no-superuser-check skip superuser checks in client\n"); - printf(" -C, --include-extensions repack tables which belong to extensions\n"); + printf(" -C, --exclude-extension don't repack tables which belong to specific extension\n"); } From e1f41aa6d805ed0a7018c6c09f89f61c22907dca Mon Sep 17 00:00:00 2001 From: Dmitry Ivanov Date: Thu, 23 Mar 2017 16:05:59 +0300 Subject: [PATCH 05/12] add new option checks for -C --- bin/pg_repack.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/bin/pg_repack.c b/bin/pg_repack.c index a996a0d..fc7b039 100644 --- a/bin/pg_repack.c +++ b/bin/pg_repack.c @@ -311,9 +311,15 @@ main(int argc, char *argv[]) else if (r_index.head && only_indexes) ereport(ERROR, (errcode(EINVAL), errmsg("cannot specify --index (-i) and --only-indexes (-x)"))); + else if (r_index.head && exclude_extension_list.head) + ereport(ERROR, (errcode(EINVAL), + errmsg("cannot specify --index (-i) and --exclude-extension (-C)"))); else if (only_indexes && !table_list.head) ereport(ERROR, (errcode(EINVAL), errmsg("cannot repack all indexes of database, specify the table(s) via --table (-t)"))); + else if (only_indexes && exclude_extension_list.head) + ereport(ERROR, (errcode(EINVAL), + errmsg("cannot specify --only-indexes (-x) and --exclude-extension (-C)"))); else if (alldb) ereport(ERROR, (errcode(EINVAL), errmsg("cannot repack specific index(es) in all databases"))); @@ -343,6 +349,11 @@ main(int argc, char *argv[]) (errcode(EINVAL), errmsg("cannot repack specific table(s) in schema, use schema.table notation instead"))); + if (exclude_extension_list.head && table_list.head) + ereport(ERROR, + (errcode(EINVAL), + errmsg("cannot specify --table (-t) and --exclude-extension (-C)"))); + if (noorder) orderby = ""; From c62488ae1363d2a545e49f386864353c41ac13d9 Mon Sep 17 00:00:00 2001 From: Dmitry Ivanov Date: Thu, 23 Mar 2017 16:26:46 +0300 Subject: [PATCH 06/12] add regression tests for --exclude-extension (-C) --- regress/expected/repack.out | 20 ++++++++++++++++++++ regress/sql/repack.sql | 16 ++++++++++++++++ 2 files changed, 36 insertions(+) diff --git a/regress/expected/repack.out b/regress/expected/repack.out index 17e3666..4539043 100644 --- a/regress/expected/repack.out +++ b/regress/expected/repack.out @@ -403,3 +403,23 @@ ERROR: pg_repack failed with error: ERROR: permission denied for schema repack LINE 1: select repack.version(), repack.version_sql() ^ DROP ROLE IF EXISTS nosuper; +-- +-- exclude extension check +-- +CREATE SCHEMA exclude_extension_schema; +CREATE TABLE exclude_extension_schema.tbl(val integer primary key); +-- => ERROR +\! pg_repack --dbname=contrib_regression --table=dummy_table --exclude-extension=dummy_extension +ERROR: cannot specify --table (-t) and --exclude-extension (-C) +-- => ERROR +\! pg_repack --dbname=contrib_regression --table=dummy_table --exclude-extension=dummy_extension -x +ERROR: cannot specify --only-indexes (-x) and --exclude-extension (-C) +-- => ERROR +\! pg_repack --dbname=contrib_regression --index=dummy_index --exclude-extension=dummy_extension +ERROR: cannot specify --index (-i) and --exclude-extension (-C) +-- => OK +\! pg_repack --dbname=contrib_regression --schema=exclude_extension_schema --exclude-extension=dummy_extension +INFO: repacking table "exclude_extension_schema.tbl" +-- => OK +\! pg_repack --dbname=contrib_regression --schema=exclude_extension_schema --exclude-extension=dummy_extension --exclude-extension=dummy_extension +INFO: repacking table "exclude_extension_schema.tbl" diff --git a/regress/sql/repack.sql b/regress/sql/repack.sql index e613d63..d7baa7d 100644 --- a/regress/sql/repack.sql +++ b/regress/sql/repack.sql @@ -245,3 +245,19 @@ CREATE ROLE nosuper WITH LOGIN; -- => ERROR \! pg_repack --dbname=contrib_regression --table=tbl_cluster --username=nosuper --no-superuser-check DROP ROLE IF EXISTS nosuper; + +-- +-- exclude extension check +-- +CREATE SCHEMA exclude_extension_schema; +CREATE TABLE exclude_extension_schema.tbl(val integer primary key); +-- => ERROR +\! pg_repack --dbname=contrib_regression --table=dummy_table --exclude-extension=dummy_extension +-- => ERROR +\! pg_repack --dbname=contrib_regression --table=dummy_table --exclude-extension=dummy_extension -x +-- => ERROR +\! pg_repack --dbname=contrib_regression --index=dummy_index --exclude-extension=dummy_extension +-- => OK +\! pg_repack --dbname=contrib_regression --schema=exclude_extension_schema --exclude-extension=dummy_extension +-- => OK +\! pg_repack --dbname=contrib_regression --schema=exclude_extension_schema --exclude-extension=dummy_extension --exclude-extension=dummy_extension From 34194227861842b1a7007b4909869ca49ed207e6 Mon Sep 17 00:00:00 2001 From: Dmitry Ivanov Date: Thu, 23 Mar 2017 16:36:54 +0300 Subject: [PATCH 07/12] update docs --- doc/pg_repack.rst | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/doc/pg_repack.rst b/doc/pg_repack.rst index 2205cbb..872629a 100644 --- a/doc/pg_repack.rst +++ b/doc/pg_repack.rst @@ -130,6 +130,7 @@ Options: -D, --no-kill-backend don't kill other backends when timed out -Z, --no-analyze don't analyze at end -k, --no-superuser-check skip superuser checks in client + -C, --exclude-extension don't repack tables which belong to specific extension Connection options: -d, --dbname=DBNAME database to connect @@ -222,6 +223,9 @@ Reorg Options Skip the superuser checks in the client. This setting is useful for using pg_repack on platforms that support running it as non-superusers. +``-C``, ``--exclude-extension`` + Skip tables that belong to the specified extension(s). Some extensions + may heavily depend on such tables at planning time etc. Connection Options ^^^^^^^^^^^^^^^^^^ From 3c717c3509690ae0c724daa8688ec68a69ca5be8 Mon Sep 17 00:00:00 2001 From: Daniele Varrazzo Date: Thu, 23 Mar 2017 17:32:59 +0000 Subject: [PATCH 08/12] Bump to development line 1.4 --- META.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/META.json b/META.json index e6427b4..3c8decd 100644 --- a/META.json +++ b/META.json @@ -2,19 +2,19 @@ "name": "pg_repack", "abstract": "PostgreSQL module for data reorganization", "description": "Reorganize tables in PostgreSQL databases with minimal locks", - "version": "1.3.4", + "version": "1.4-dev0", "maintainer": [ "Josh Kupershmidt ", "Daniele Varrazzo ", "Beena Emerson " ], "tags": [ "bloat", "maintenance", "vacuum", "cluster" ], - "release_status": "stable", + "release_status": "testing", "license": "bsd", "provides": { "pg_repack": { "file": "lib/pg_repack.sql", - "version": "1.3.4", + "version": "1.4-dev0", "abstract": "Reorganize tables in PostgreSQL databases with minimal locks" } }, From 9bef0d4fa72a948fec88b76a5ce6ae4c05fc09dc Mon Sep 17 00:00:00 2001 From: Daniele Varrazzo Date: Thu, 23 Mar 2017 17:42:39 +0000 Subject: [PATCH 09/12] Added new features to release 1.4 --- doc/pg_repack.rst | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/doc/pg_repack.rst b/doc/pg_repack.rst index 2205cbb..daff1e0 100644 --- a/doc/pg_repack.rst +++ b/doc/pg_repack.rst @@ -468,10 +468,18 @@ Creating indexes concurrently comes with a few caveats, please see `the document Releases -------- +* pg_repack 1.4 + + * added support for PostgreSQL 9.6 + * use ``AFTER`` trigger to solve concurrency problems with ``INSERT + CONFLICT`` (issue #106) + * added ``--no-kill-backend`` option (issue #108) + * added ``--no-superuser-check`` option (issue #114) + * pg_repack 1.3.4 - * grab exclusive lock before dropping original table (#81) - * do not attempt to repack unlogged tables (#71) + * grab exclusive lock before dropping original table (issue #81) + * do not attempt to repack unlogged tables (issue #71) * pg_repack 1.3.3 From 81cca1836b6f867e009f81f211625c9de21c7acc Mon Sep 17 00:00:00 2001 From: Daniele Varrazzo Date: Thu, 23 Mar 2017 18:06:45 +0000 Subject: [PATCH 10/12] Fixed docs reST formatting MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit In Japanese too! ツ --- doc/pg_repack.rst | 22 ++++++++++------------ doc/pg_repack_jp.rst | 5 +++-- 2 files changed, 13 insertions(+), 14 deletions(-) diff --git a/doc/pg_repack.rst b/doc/pg_repack.rst index daff1e0..4adafe9 100644 --- a/doc/pg_repack.rst +++ b/doc/pg_repack.rst @@ -382,21 +382,19 @@ WARNING: the table "tbl" already has a trigger called repack_trigger You can remove all the temporary objects by dropping and re-creating the extension: see the installation_ section for the details. -ERROR: Another pg_repack command may be running on the table. Please try again - later. - - There is a chance of deadlock when two concurrent pg_repack commands are run - on the same table. So, try to run the command after some time. +ERROR: Another pg_repack command may be running on the table. Please try again later. + There is a chance of deadlock when two concurrent pg_repack commands are + run on the same table. So, try to run the command after some time. WARNING: Cannot create index "schema"."index_xxxxx", already exists -DETAIL: An invalid index may have been left behind by a previous pg_repack on -the table which was interrupted. Please use DROP INDEX "schema"."index_xxxxx" -to remove this index and try again. + DETAIL: An invalid index may have been left behind by a previous pg_repack + on the table which was interrupted. Please use DROP INDEX + "schema"."index_xxxxx" to remove this index and try again. - A temporary index apparently created by pg_repack has been left behind, and - we do not want to risk dropping this index ourselves. If the index was in - fact created by an old pg_repack job which didn't get cleaned up, you - should just use DROP INDEX and try the repack command again. + A temporary index apparently created by pg_repack has been left behind, and + we do not want to risk dropping this index ourselves. If the index was in + fact created by an old pg_repack job which didn't get cleaned up, you + should just use DROP INDEX and try the repack command again. Restrictions diff --git a/doc/pg_repack_jp.rst b/doc/pg_repack_jp.rst index 66ad291..14b1a4d 100644 --- a/doc/pg_repack_jp.rst +++ b/doc/pg_repack_jp.rst @@ -363,14 +363,15 @@ OPTIONには以下のものが指定できます。 The default is 60 seconds. ``-T SECS``, ``--wait-timeout=SECS`` - pg_repackは再編成の完了直前に排他ロックを利用します。このオプションは、このロック取得時に何秒間pg_repackが取得を待機するかを指定します。指定した時間経ってもロックが取得できないかつ、`no-kill-backend`オプションが指定されていない場合、pg_repackは競合するクエリを強制的にキャンセルさせます。PostgreSQL 8.4以上のバージョンを利用している場合、指定した時間の2倍以上経ってもロックが取得できない場合、pg_repackは競合するクエリを実行しているPostgreSQLバックエンドプロセスをpg_terminate_backend()関数により強制的に停止させます。このオプションのデフォルトは60秒です。 + pg_repackは再編成の完了直前に排他ロックを利用します。このオプションは、このロック取得時に何秒間pg_repackが取得を待機するかを指定します。指定した時間経ってもロックが取得できないかつ、``no-kill-backend``\オプションが指定されていない場合、pg_repackは競合するクエリを強制的にキャンセルさせます。PostgreSQL 8.4以上のバージョンを利用している場合、指定した時間の2倍以上経ってもロックが取得できない場合、pg_repackは競合するクエリを実行しているPostgreSQLバックエンドプロセスをpg_terminate_backend()関数により強制的に停止させます。このオプションのデフォルトは60秒です。 .. ``-D``, ``--no-kill-backend`` Skip to repack table if the lock cannot be taken for duration specified ``--wait-timeout``, instead of cancelling conflicting queries. The default is false. + ``-D``, ``--no-kill-backend`` - ``--wait-timeout``オプションで指定された時間が経過してもロックが取得できない場合、競合するクエリをキャンセルする代わりに対象テーブルの再編成をスキップします。 + ``--wait-timeout``\オプションで指定された時間が経過してもロックが取得できない場合、競合するクエリをキャンセルする代わりに対象テーブルの再編成をスキップします。 .. ``-Z``, ``--no-analyze`` Disable ANALYZE after a full-table reorganization. If not specified, run From fe519cf01724c8a8a4ffdaa419f15d78b0b692f8 Mon Sep 17 00:00:00 2001 From: Daniele Varrazzo Date: Thu, 23 Mar 2017 18:47:39 +0000 Subject: [PATCH 11/12] Dropped further libs not needed for build --- bin/Makefile | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/bin/Makefile b/bin/Makefile index 48a6506..9732439 100644 --- a/bin/Makefile +++ b/bin/Makefile @@ -33,6 +33,4 @@ include $(PGXS) # remove dependency on libxml2, libxslt, and libpam. # XXX: find a better way to make sure we are linking with libraries # from pg_config which we actually need. -LIBS := $(filter-out -lxml2, $(LIBS)) -LIBS := $(filter-out -lxslt, $(LIBS)) -LIBS := $(filter-out -lpam, $(LIBS)) +LIBS := $(filter-out -ledit -lgssapi_krb5 -lpam -lselinux -lxml2 -lxslt, $(LIBS)) From bf550706fc7d43ca77a514d9e92c074bcc5470b5 Mon Sep 17 00:00:00 2001 From: Masahiko Sawada Date: Fri, 24 Mar 2017 17:43:21 +0900 Subject: [PATCH 12/12] Add --exclude-extension option to new features. --- doc/pg_repack.rst | 1 + 1 file changed, 1 insertion(+) diff --git a/doc/pg_repack.rst b/doc/pg_repack.rst index 0c6eeaf..388a261 100644 --- a/doc/pg_repack.rst +++ b/doc/pg_repack.rst @@ -477,6 +477,7 @@ Releases CONFLICT`` (issue #106) * added ``--no-kill-backend`` option (issue #108) * added ``--no-superuser-check`` option (issue #114) + * added ``--exclude-extension`` option (#97) * pg_repack 1.3.4