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

Commit4d2b581

Browse files
Fix bug
1 parentb7d5f98 commit4d2b581

File tree

1 file changed

+16
-5
lines changed

1 file changed

+16
-5
lines changed

‎pg_query_state.c

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -618,6 +618,11 @@ pg_query_state(PG_FUNCTION_ARGS)
618618
shm_mq_msg*msg= (shm_mq_msg*)lfirst(i);
619619
proc_state*p_state= (proc_state*)palloc(sizeof(proc_state));
620620

621+
if (msg->result_code!=QS_RETURNED)
622+
continue;
623+
624+
AssertState(msg->result_code==QS_RETURNED);
625+
621626
qs_stack=deserialize_stack(msg->stack,msg->stack_depth);
622627

623628
p_state->proc=msg->proc;
@@ -856,7 +861,12 @@ SendBgWorkerPids(void)
856861
msg->number=list_length(all_workers);
857862
i=0;
858863
foreach(iter,all_workers)
859-
msg->pids[i++]=lfirst_int(iter);
864+
{
865+
pid_tcurrent_pid=lfirst_int(iter);
866+
867+
AssertState(current_pid>0);
868+
msg->pids[i++]=current_pid;
869+
}
860870

861871
shm_mq_send(mqh,msg_len,msg, false);
862872
}
@@ -894,9 +904,10 @@ GetRemoteBackendWorkers(PGPROC *proc)
894904

895905
for (i=0;i<msg->number;i++)
896906
{
897-
pid_tpid=msg->pids[i];
898-
PGPROC*proc=BackendPidGetProc(pid);
899-
907+
pid_tpid=msg->pids[i];
908+
PGPROC*proc=BackendPidGetProc(pid);
909+
if (!proc|| !proc->pid)
910+
continue;
900911
result=lcons(proc,result);
901912
}
902913

@@ -971,7 +982,7 @@ GetRemoteBackendQueryStates(PGPROC *leader,
971982
foreach(iter,pworkers)
972983
{
973984
PGPROC*proc= (PGPROC*)lfirst(iter);
974-
985+
Assert (proc&&proc->pid);
975986
sig_result=SendProcSignal(proc->pid,
976987
QueryStatePollReason,
977988
proc->backendId);

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp