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

Commitf5db56f

Browse files
committed
Revert fix missing call to table_finish_bulk_insert during COPY
This reverts commits4de6024 andb2d6980. Further thought isrequired to make this work properly.
1 parentb2d6980 commitf5db56f

File tree

1 file changed

+7
-12
lines changed

1 file changed

+7
-12
lines changed

‎src/backend/commands/copy.c

Lines changed: 7 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2518,8 +2518,7 @@ CopyMultiInsertBufferFlush(CopyMultiInsertInfo *miinfo,
25182518
* The buffer must be flushed before cleanup.
25192519
*/
25202520
staticinlinevoid
2521-
CopyMultiInsertBufferCleanup(CopyMultiInsertInfo*miinfo,
2522-
CopyMultiInsertBuffer*buffer)
2521+
CopyMultiInsertBufferCleanup(CopyMultiInsertBuffer*buffer)
25232522
{
25242523
inti;
25252524

@@ -2535,9 +2534,6 @@ CopyMultiInsertBufferCleanup(CopyMultiInsertInfo *miinfo,
25352534
for (i=0;i<MAX_BUFFERED_TUPLES&&buffer->slots[i]!=NULL;i++)
25362535
ExecDropSingleTupleTableSlot(buffer->slots[i]);
25372536

2538-
table_finish_bulk_insert(buffer->resultRelInfo->ri_RelationDesc,
2539-
miinfo->ti_options);
2540-
25412537
pfree(buffer);
25422538
}
25432539

@@ -2589,7 +2585,7 @@ CopyMultiInsertInfoFlush(CopyMultiInsertInfo *miinfo, ResultRelInfo *curr_rri)
25892585
buffer= (CopyMultiInsertBuffer*)linitial(miinfo->multiInsertBuffers);
25902586
}
25912587

2592-
CopyMultiInsertBufferCleanup(miinfo,buffer);
2588+
CopyMultiInsertBufferCleanup(buffer);
25932589
miinfo->multiInsertBuffers=list_delete_first(miinfo->multiInsertBuffers);
25942590
}
25952591
}
@@ -2603,7 +2599,7 @@ CopyMultiInsertInfoCleanup(CopyMultiInsertInfo *miinfo)
26032599
ListCell*lc;
26042600

26052601
foreach(lc,miinfo->multiInsertBuffers)
2606-
CopyMultiInsertBufferCleanup(miinfo,lfirst(lc));
2602+
CopyMultiInsertBufferCleanup(lfirst(lc));
26072603

26082604
list_free(miinfo->multiInsertBuffers);
26092605
}
@@ -3325,6 +3321,9 @@ CopyFrom(CopyState cstate)
33253321
{
33263322
if (!CopyMultiInsertInfoIsEmpty(&multiInsertInfo))
33273323
CopyMultiInsertInfoFlush(&multiInsertInfo,NULL);
3324+
3325+
/* Tear down the multi-insert buffer data */
3326+
CopyMultiInsertInfoCleanup(&multiInsertInfo);
33283327
}
33293328

33303329
/* Done, clean up */
@@ -3367,11 +3366,7 @@ CopyFrom(CopyState cstate)
33673366

33683367
FreeExecutorState(estate);
33693368

3370-
if (insertMethod!=CIM_SINGLE)
3371-
{
3372-
/* Tear down the multi-insert buffer data */
3373-
CopyMultiInsertInfoCleanup(&multiInsertInfo);
3374-
}
3369+
table_finish_bulk_insert(cstate->rel,ti_options);
33753370

33763371
returnprocessed;
33773372
}

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp