Use PqMsg_* macros in more places.
Commit f4b54e1ed9, which introduced macros for protocol characters, missed updating a few places. It also did not introduce macros for messages sent from parallel workers to their leader processes. This commit adds a new section in protocol.h for those. Author: Aleksander Alekseev Discussion: https://postgr.es/m/CAJ7c6TNTd09AZq8tGaHS3LDyH_CCnpv0oOz2wN1dGe8zekxrdQ%40mail.gmail.com Backpatch-through: 17
This commit is contained in:
parent
f2a0d5808c
commit
a99cc6c6b4
@ -17,6 +17,7 @@
|
||||
|
||||
#include "access/printtup.h"
|
||||
#include "libpq/pqformat.h"
|
||||
#include "libpq/protocol.h"
|
||||
#include "tcop/pquery.h"
|
||||
#include "utils/lsyscache.h"
|
||||
#include "utils/memdebug.h"
|
||||
@ -170,7 +171,7 @@ SendRowDescriptionMessage(StringInfo buf, TupleDesc typeinfo,
|
||||
ListCell *tlist_item = list_head(targetlist);
|
||||
|
||||
/* tuple descriptor message type */
|
||||
pq_beginmessage_reuse(buf, 'T');
|
||||
pq_beginmessage_reuse(buf, PqMsg_RowDescription);
|
||||
/* # of attrs in tuples */
|
||||
pq_sendint16(buf, natts);
|
||||
|
||||
@ -322,7 +323,7 @@ printtup(TupleTableSlot *slot, DestReceiver *self)
|
||||
/*
|
||||
* Prepare a DataRow message (note buffer is in per-query context)
|
||||
*/
|
||||
pq_beginmessage_reuse(buf, 'D');
|
||||
pq_beginmessage_reuse(buf, PqMsg_DataRow);
|
||||
|
||||
pq_sendint16(buf, natts);
|
||||
|
||||
|
@ -21,6 +21,7 @@
|
||||
#include "foreign/fdwapi.h"
|
||||
#include "jit/jit.h"
|
||||
#include "libpq/pqformat.h"
|
||||
#include "libpq/protocol.h"
|
||||
#include "nodes/extensible.h"
|
||||
#include "nodes/makefuncs.h"
|
||||
#include "nodes/nodeFuncs.h"
|
||||
@ -5497,7 +5498,7 @@ serializeAnalyzeReceive(TupleTableSlot *slot, DestReceiver *self)
|
||||
* Note that we fill a StringInfo buffer the same as printtup() does, so
|
||||
* as to capture the costs of manipulating the strings accurately.
|
||||
*/
|
||||
pq_beginmessage_reuse(buf, 'D');
|
||||
pq_beginmessage_reuse(buf, PqMsg_DataRow);
|
||||
|
||||
pq_sendint16(buf, natts);
|
||||
|
||||
|
@ -695,7 +695,7 @@ UploadManifest(void)
|
||||
ib = CreateIncrementalBackupInfo(mcxt);
|
||||
|
||||
/* Send a CopyInResponse message */
|
||||
pq_beginmessage(&buf, 'G');
|
||||
pq_beginmessage(&buf, PqMsg_CopyInResponse);
|
||||
pq_sendbyte(&buf, 0);
|
||||
pq_sendint16(&buf, 0);
|
||||
pq_endmessage_reuse(&buf);
|
||||
|
@ -2651,8 +2651,7 @@ exec_describe_statement_message(const char *stmt_name)
|
||||
/*
|
||||
* First describe the parameters...
|
||||
*/
|
||||
pq_beginmessage_reuse(&row_description_buf, 't'); /* parameter description
|
||||
* message type */
|
||||
pq_beginmessage_reuse(&row_description_buf, PqMsg_ParameterDescription);
|
||||
pq_sendint16(&row_description_buf, psrc->num_params);
|
||||
|
||||
for (int i = 0; i < psrc->num_params; i++)
|
||||
|
@ -92,7 +92,7 @@ void
|
||||
pgstat_progress_parallel_incr_param(int index, int64 incr)
|
||||
{
|
||||
/*
|
||||
* Parallel workers notify a leader through a 'P' protocol message to
|
||||
* Parallel workers notify a leader through a PqMsg_Progress message to
|
||||
* update progress, passing the progress index and incremented value.
|
||||
* Leaders can just call pgstat_progress_incr_param directly.
|
||||
*/
|
||||
@ -102,7 +102,7 @@ pgstat_progress_parallel_incr_param(int index, int64 incr)
|
||||
|
||||
initStringInfo(&progress_message);
|
||||
|
||||
pq_beginmessage(&progress_message, 'P');
|
||||
pq_beginmessage(&progress_message, PqMsg_Progress);
|
||||
pq_sendint32(&progress_message, index);
|
||||
pq_sendint64(&progress_message, incr);
|
||||
pq_endmessage(&progress_message);
|
||||
|
@ -65,6 +65,10 @@
|
||||
#define PqMsg_CopyData 'd'
|
||||
|
||||
|
||||
/* These are the codes sent by parallel workers to leader processes. */
|
||||
#define PqMsg_Progress 'P'
|
||||
|
||||
|
||||
/* These are the authentication request codes sent by the backend. */
|
||||
|
||||
#define AUTH_REQ_OK 0 /* User is authenticated */
|
||||
|
Loading…
x
Reference in New Issue
Block a user