Closed juliogonzalez closed 8 years ago
Thanks for catching this bug!
It looks like create_foreignscan_path
and make_foreignscan
were changed in this commit.
The create_foreignscan_path
change was:
extern ForeignPath *create_foreignscan_path(PlannerInfo *root, RelOptInfo *rel,
double rows, Cost startup_cost, Cost total_cost,
List *pathkeys,
Relids required_outer,
+ Path *fdw_outerpath,
List *fdw_private);
I think that I should just be able to set fdw_outerpath
to NULL
here until tds_fdw supports join pushdowns.
The make_foreignscan
change was:
extern ForeignScan *make_foreignscan(List *qptlist, List *qpqual,
Index scanrelid, List *fdw_exprs, List *fdw_private,
- List *fdw_scan_tlist, List *fdw_recheck_quals);
+ List *fdw_scan_tlist, List *fdw_recheck_quals,
+ Plan *outer_plan);
For this, I think that I should be able to set outer_plan
to NULL
here.
GetForeignPlan
also changed in the commit referenced above:
typedef ForeignScan *(*GetForeignPlan_function) (PlannerInfo *root,
RelOptInfo *baserel,
Oid foreigntableid,
ForeignPath *best_path,
List *tlist,
- List *scan_clauses);
+ List *scan_clauses,
+ Plan *outer_plan
So I need to change the definition of tdsGetForeignPlan
here and here.
I pushed a commit, but I forgot to wrap some of the changes in #ifdefs, so I need to fix it: https://github.com/GeoffMontee/tds_fdw/commit/080980020c9f949e9028db1591633bdf031a4e10
The latest commit fixes the issue in 9.5 for me, and still compiles on 9.4: https://github.com/GeoffMontee/tds_fdw/commit/cd84f7bee384b830092ce087a016b2d6ff0c3bb3
Yes, cd84f7b compiles and passes all acceptance tests for all versions (9.1 to 9.5): https://jenkins-juliogonzalez.rhcloud.com/job/tds_fdw-build/35/
I think the issue can be closed. Great work!
Awesome! It's really cool to see the automated tests run on Jenkins.
This fix will be in 1.0.7.
When will 1.0.7 be released? 9.5.0 is out tomorrow, so...
Hi @devrimgunduz,
I actually just changed the version strings to 1.0.7. The release should happen tonight.
Thanks! I'll keep my eye on it.
@devrimgunduz,
Here it is: https://github.com/GeoffMontee/tds_fdw/releases/tag/v1.0.7
Broken for both Ubuntu 12.04 and CentOS 6.7 with PostgreSQL official packages (http://apt.postgresql.org and http://yum.postgresql.org/). See https://jenkins-juliogonzalez.rhcloud.com/job/tds_fdw-build-ng/118/ for reference.
It seems this is due to a change happened between PostgreSQL 9.5 alpha2 (installed at the current CI and building) and 9.5 rc1 (installed at the ng CI).