Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commite0e7b8f

Browse files
committed
Remove parallel-safety check from GetExistingLocalJoinPath.
Commita104a01 has this check becauseI added it to the submitted patch before commit, but that was entirelywrongheaded, as explained to me by Ashutosh Bapat, who also wrote thispatch.
1 parent63f39b9 commite0e7b8f

File tree

2 files changed

+8
-10
lines changed

2 files changed

+8
-10
lines changed

‎doc/src/sgml/fdwhandler.sgml

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -349,11 +349,10 @@ GetExistingLocalJoinPath(RelOptInfo *joinrel)
349349
The function returns copy of a local join path, which can be converted
350350
into an alternative local join plan, which may be useful when
351351
implementing a <literal>RecheckForeignScan</> method. The function
352-
searches for a parallel-safe, unparameterized path in the
353-
<literal>pathlist</> of given <literal>joinrel</>. If it does not find
354-
such a path, it returns NULL, in which case a foreign data wrapper may
355-
build the local path by itself or may choose not to create access paths
356-
for that join.
352+
searches for an unparameterized path in the <literal>pathlist</> of given
353+
<literal>joinrel</>. If it does not find such a path, it returns NULL, in
354+
which case a foreign data wrapper may build the local path by itself or
355+
may choose not to create access paths for that join.
357356
</para>
358357

359358
</sect2>

‎src/backend/foreign/foreign.c

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -801,9 +801,8 @@ get_foreign_server_oid(const char *servername, bool missing_ok)
801801
*
802802
* Since the plan created using this path will presumably only be used to
803803
* execute EPQ checks, efficiency of the path is not a concern. But since the
804-
* list passed is expected to be from RelOptInfo, it's anyway sorted by total
805-
* cost and hence we are likely to choose the most efficient path, which is
806-
* all for the best.
804+
* path list in RelOptInfo is anyway sorted by total cost we are likely to
805+
* choose the most efficient path, which is all for the best.
807806
*/
808807
externPath*
809808
GetExistingLocalJoinPath(RelOptInfo*joinrel)
@@ -817,8 +816,8 @@ GetExistingLocalJoinPath(RelOptInfo *joinrel)
817816
Path*path= (Path*)lfirst(lc);
818817
JoinPath*joinpath=NULL;
819818

820-
/* Skip parameterisedor non-parallel-safepaths. */
821-
if (path->param_info!=NULL|| !path->parallel_safe)
819+
/* Skip parameterised paths. */
820+
if (path->param_info!=NULL)
822821
continue;
823822

824823
switch (path->pathtype)

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp