File tree Expand file tree Collapse file tree 1 file changed +22
-1
lines changed Expand file tree Collapse file tree 1 file changed +22
-1
lines changed Original file line number Diff line number Diff line change @@ -553,6 +553,27 @@ Oid get_mtm_node_func_oid(void)
553
553
return func_oid ;
554
554
}
555
555
556
+ bool mtm_check_help_byNodeId (int node_id )
557
+ {
558
+ bool st = true;
559
+
560
+ if (!MTM_nodes -> node [node_id - 1 ].need_help ) return false;
561
+ LWLockAcquire ((LWLockId )& MTM_nodes -> locks [0 ], LW_EXCLUSIVE );
562
+
563
+ if (is_mtm_node_available (node_id ))
564
+ {
565
+ if (!MTM_nodes -> nodes [node_id - 1 ].avail )
566
+ {
567
+ MTM_nodes -> nodes [node_id - 1 ].avail = true;
568
+ MTM_nodes -> nodes [node_id - 1 ].need_help = false;
569
+ MTM_nodes -> need_help -- ;
570
+ }
571
+ st = false;
572
+ }
573
+ LWLockRelease ((LWLockId )& MTM_nodes -> locks [0 ]);
574
+ return st ;
575
+ }
576
+
556
577
bool mtm_check_if_node_need_help (char * nodename )
557
578
{
558
579
char * name ;
@@ -577,7 +598,7 @@ bool mtm_check_if_node_need_help(char *nodename)
577
598
{
578
599
LWLockRelease ((LWLockId )& MTM_nodes -> locks [0 ]);
579
600
LWLockAcquire ((LWLockId )& MTM_nodes -> locks [0 ], LW_EXCLUSIVE );
580
- if (!MTM_nodes -> nodes [i ]) - > avail )
601
+ if (!MTM_nodes -> nodes [i ]. avail )
581
602
{
582
603
MTM_nodes -> nodes [i ].avail = true;
583
604
MTM_nodes -> nodes [i ].need_help = false;
You can’t perform that action at this time.
0 commit comments