With HA_Support branch, GTM-proxy successfully register itself to the GTM, but datanode fails.
Format of the registration message is as follows:
if (gtmpqPutMsgStart('C', true, conn) ||
gtmpqPutInt(MSG_NODE_REGISTER, sizeof (GTM_MessageType), conn) ||
gtmpqPutnchar((char *)&type, sizeof(GTM_PGXCNodeType), conn) ||
gtmpqPutnchar((char *)&nodenum, sizeof(GTM_PGXCNodeId), conn) ||
gtmpqPutInt(strlen(host), sizeof (GTM_StrLen), conn) ||
gtmpqPutnchar(host, strlen(host), conn) ||
gtmpqPutnchar((char *)&port, sizeof(GTM_PGXCNodePort), conn) ||
gtmpqPutnchar((char *)&proxynum, sizeof(GTM_PGXCNodeId), conn) ||
gtmpqPutInt(strlen(datafolder), sizeof (GTM_StrLen), conn) ||
gtmpqPutnchar(datafolder, strlen(datafolder), conn) ||
gtmpqPutInt(status, sizeof(GTM_PGXCNodeStatus), conn))
goto send_failed;