Re: Add PGDLLIMPORT to enable_hashagg
On 2018-02-21 11:41:31 -0800, Brian Cloutier wrote: > On Wed, Feb 21, 2018 at 10:14 AM, Andres Freundwrote: > > > Could you take the relevant commit, backport it to the > > relevant branches, resolve conflicts, make possibly appropriate > > adaptions, and post? > > > > The original commit touched some new variables and therefore didn't apply > cleanly. Attached are equivalent patches for REL_10_STABLE and > REL9_6_STABLE. Pushed. - Andres
Re: Add PGDLLIMPORT to enable_hashagg
On Wed, Feb 21, 2018 at 10:14 AM, Andres Freundwrote: > Could you take the relevant commit, backport it to the > relevant branches, resolve conflicts, make possibly appropriate > adaptions, and post? > The original commit touched some new variables and therefore didn't apply cleanly. Attached are equivalent patches for REL_10_STABLE and REL9_6_STABLE. From 3e2c0a444a0e07792408841a629d83797ff5883a Mon Sep 17 00:00:00 2001 From: Robert Haas Date: Fri, 9 Feb 2018 15:54:45 -0500 Subject: [PATCH] Mark assorted GUC variables as PGDLLIMPORT. This makes life easier for extension authors. --- src/include/miscadmin.h | 2 +- src/include/optimizer/cost.h | 30 +++--- src/include/optimizer/paths.h | 8 src/include/utils/guc.h | 2 +- 4 files changed, 21 insertions(+), 21 deletions(-) diff --git a/src/include/miscadmin.h b/src/include/miscadmin.h index 6eacd2a..e76b4b9 100644 --- a/src/include/miscadmin.h +++ b/src/include/miscadmin.h @@ -158,7 +158,7 @@ extern PGDLLIMPORT int NBuffers; extern PGDLLIMPORT int MaxBackends; extern PGDLLIMPORT int MaxConnections; extern PGDLLIMPORT int max_worker_processes; -extern int max_parallel_workers; +extern PGDLLIMPORT int max_parallel_workers; extern PGDLLIMPORT int MyProcPid; extern PGDLLIMPORT pg_time_t MyStartTime; diff --git a/src/include/optimizer/cost.h b/src/include/optimizer/cost.h index 63feba0..7925e4c 100644 --- a/src/include/optimizer/cost.h +++ b/src/include/optimizer/cost.h @@ -53,21 +53,21 @@ extern PGDLLIMPORT double cpu_operator_cost; extern PGDLLIMPORT double parallel_tuple_cost; extern PGDLLIMPORT double parallel_setup_cost; extern PGDLLIMPORT int effective_cache_size; -extern Cost disable_cost; -extern int max_parallel_workers_per_gather; -extern bool enable_seqscan; -extern bool enable_indexscan; -extern bool enable_indexonlyscan; -extern bool enable_bitmapscan; -extern bool enable_tidscan; -extern bool enable_sort; -extern bool enable_hashagg; -extern bool enable_nestloop; -extern bool enable_material; -extern bool enable_mergejoin; -extern bool enable_hashjoin; -extern bool enable_gathermerge; -extern int constraint_exclusion; +extern PGDLLIMPORT Cost disable_cost; +extern PGDLLIMPORT int max_parallel_workers_per_gather; +extern PGDLLIMPORT bool enable_seqscan; +extern PGDLLIMPORT bool enable_indexscan; +extern PGDLLIMPORT bool enable_indexonlyscan; +extern PGDLLIMPORT bool enable_bitmapscan; +extern PGDLLIMPORT bool enable_tidscan; +extern PGDLLIMPORT bool enable_sort; +extern PGDLLIMPORT bool enable_hashagg; +extern PGDLLIMPORT bool enable_nestloop; +extern PGDLLIMPORT bool enable_material; +extern PGDLLIMPORT bool enable_mergejoin; +extern PGDLLIMPORT bool enable_hashjoin; +extern PGDLLIMPORT bool enable_gathermerge; +extern PGDLLIMPORT int constraint_exclusion; extern double clamp_row_est(double nrows); extern double index_pages_fetched(double tuples_fetched, BlockNumber pages, diff --git a/src/include/optimizer/paths.h b/src/include/optimizer/paths.h index 4e06b2e..f22fe0a 100644 --- a/src/include/optimizer/paths.h +++ b/src/include/optimizer/paths.h @@ -20,10 +20,10 @@ /* * allpaths.c */ -extern bool enable_geqo; -extern int geqo_threshold; -extern int min_parallel_table_scan_size; -extern int min_parallel_index_scan_size; +extern PGDLLIMPORT bool enable_geqo; +extern PGDLLIMPORT int geqo_threshold; +extern PGDLLIMPORT int min_parallel_table_scan_size; +extern PGDLLIMPORT int min_parallel_index_scan_size; /* Hook for plugins to get control in set_rel_pathlist() */ typedef void (*set_rel_pathlist_hook_type) (PlannerInfo *root, diff --git a/src/include/utils/guc.h b/src/include/utils/guc.h index b89e8e8..6bcc904 100644 --- a/src/include/utils/guc.h +++ b/src/include/utils/guc.h @@ -262,7 +262,7 @@ extern char *HbaFileName; extern char *IdentFileName; extern char *external_pid_file; -extern char *application_name; +extern PGDLLIMPORT char *application_name; extern int tcp_keepalives_idle; extern int tcp_keepalives_interval; -- 2.7.4 From 4d7e9c6dd32d68e2b9d87325f5dbbedbef6ce886 Mon Sep 17 00:00:00 2001 From: Robert Haas Date: Fri, 9 Feb 2018 15:54:45 -0500 Subject: [PATCH] Mark assorted GUC variables as PGDLLIMPORT. This makes life easier for extension authors. --- src/include/optimizer/cost.h | 28 ++-- src/include/optimizer/paths.h | 6 +++--- src/include/utils/guc.h | 2 +- 3 files changed, 18 insertions(+), 18 deletions(-) diff --git a/src/include/optimizer/cost.h b/src/include/optimizer/cost.h index 2a4df2f..214e868 100644 --- a/src/include/optimizer/cost.h +++ b/src/include/optimizer/cost.h @@ -53,20 +53,20 @@ extern PGDLLIMPORT double cpu_operator_cost; extern PGDLLIMPORT double parallel_tuple_cost; extern PGDLLIMPORT double parallel_setup_cost; extern PGDLLIMPORT int effective_cache_size; -extern Cost disable_cost; -extern int
Re: Add PGDLLIMPORT to enable_hashagg
On Fri, Feb 9, 2018 at 1:01 PM, Robert Haaswrote: > > Committed. Thanks for committing this! We forgot to ask though, could you please backport this patch to 10 and maybe even 9.6? As-is I don't think these variables will be available until PG 11.
Re: Add PGDLLIMPORT to enable_hashagg
On Wed, Feb 7, 2018 at 6:32 AM, Metin Dosluwrote: > i. The list of Pascal (max_worker_processes was already with > PGDLLIMPORT, so I also added to max_parallel_workers) > ii. Some others in cost.h to make the file more readable. Committed. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company
Re: Add PGDLLIMPORT to enable_hashagg
Thank you Metin ! Regards PAscal -- Sent from: http://www.postgresql-archive.org/PostgreSQL-hackers-f1928748.html
Re: Add PGDLLIMPORT to enable_hashagg
Hey all, I'm attaching the updated patch, it includes i. The list of Pascal (max_worker_processes was already with PGDLLIMPORT, so I also added to max_parallel_workers) ii. Some others in cost.h to make the file more readable. Best, Metin On Tue, Feb 6, 2018 at 10:40 PM, Peter Geogheganwrote: > On Tue, Feb 6, 2018 at 12:39 PM, Robert Haas wrote: >> Yeah, let's get them all into one list and I'll commit the whole thing >> together. > > +1 > > -- > Peter Geoghegan > add_pgdllimport-v2.patch Description: Binary data
Re: Add PGDLLIMPORT to enable_hashagg
On Tue, Feb 6, 2018 at 12:39 PM, Robert Haaswrote: > Yeah, let's get them all into one list and I'll commit the whole thing > together. +1 -- Peter Geoghegan
Re: Add PGDLLIMPORT to enable_hashagg
On Tue, Feb 6, 2018 at 3:34 PM, legrand legrandwrote: > Hello, > I know an other extension that would need the same for: > > src/include/optimizer/paths.h > geqo_threshold > enable_geqo > min_parallel_index_scan_size > min_parallel_table_scan_size > > src/include/optimizer/cost.h > max_parallel_workers_per_gather > enable_hashjoin > enable_mergejoin > enable_nestloop > enable_indexonlyscan > enable_tidscan > enable_bitmapscan > enable_indexscan > enable_seqscan > disable_cost > > src/include/utils/guc.h > application_name > > src/include/miscadmin.h > max_worker_processes > > see https://github.com/ossc-db/pg_hint_plan/issues/8 Yeah, let's get them all into one list and I'll commit the whole thing together. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company
Re: Add PGDLLIMPORT to enable_hashagg
Hello, I know an other extension that would need the same for: src/include/optimizer/paths.h geqo_threshold enable_geqo min_parallel_index_scan_size min_parallel_table_scan_size src/include/optimizer/cost.h max_parallel_workers_per_gather enable_hashjoin enable_mergejoin enable_nestloop enable_indexonlyscan enable_tidscan enable_bitmapscan enable_indexscan enable_seqscan disable_cost src/include/utils/guc.h application_name src/include/miscadmin.h max_worker_processes see https://github.com/ossc-db/pg_hint_plan/issues/8 Regards PAscal -- Sent from: http://www.postgresql-archive.org/PostgreSQL-hackers-f1928748.html
Re: Add PGDLLIMPORT to enable_hashagg
On Mon, Feb 5, 2018 at 6:17 AM, Metin Doslu <me...@citusdata.com> wrote: > There was already a discussion and commit for adding PGDLLIMPORT to some > variables which enables extensions to use them on Windows builds. For > reference, the previous thread:"Add PGDLLIMPORT lines to some variables". > > I would like to add PGDLLIMPORT to enable_hashagg for the same reason. I'm > adding a very simple patch. Please let me know if I'm missing anything given > that this is my first patch submission. Seems weird to do it just for enable_hashagg and not for all of the surrounding Booleans. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company
Add PGDLLIMPORT to enable_hashagg
Hey all, There was already a discussion and commit for adding PGDLLIMPORT to some variables which enables extensions to use them on Windows builds. For reference, the previous thread:"Add PGDLLIMPORT lines to some variables". I would like to add PGDLLIMPORT to enable_hashagg for the same reason. I'm adding a very simple patch. Please let me know if I'm missing anything given that this is my first patch submission. Best, Metin add_pgdllimport-v1.patch Description: Binary data