summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTomas Vondra2018-10-12 12:23:29 +0000
committerTomas Vondra2018-10-12 12:31:41 +0000
commitcf2518f48d2d1daf0807a774177b21f9549ec8a7 (patch)
tree28685cd5b3409f5ae1b9e1e0001dabc8cb8853c3
parent332250d176df9fcf27c0fa9be312dab1e1f49d42 (diff)
Use sufficiently large buffer in SharedQueueWrite
The sq_key alone may be up to 64 bytes, so we need more than that. We could use dynamic memory instead, but 128 bytes should be enough both for the sq_key and the other pieces.
-rw-r--r--src/backend/pgxc/squeue/squeue.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/backend/pgxc/squeue/squeue.c b/src/backend/pgxc/squeue/squeue.c
index 2f782b92e8..e87a77e149 100644
--- a/src/backend/pgxc/squeue/squeue.c
+++ b/src/backend/pgxc/squeue/squeue.c
@@ -902,15 +902,15 @@ SharedQueueWrite(SharedQueue squeue, int consumerIdx,
if (*tuplestore == NULL)
{
int ptrno;
- char storename[64];
+ char storename[128];
#ifdef SQUEUE_STAT
elog(DEBUG1, "Start buffering %s node %d, %d tuples in queue, %ld writes and %ld reads so far",
squeue->sq_key, cstate->cs_node, cstate->cs_ntuples, cstate->stat_writes, cstate->stat_reads);
#endif
*tuplestore = tuplestore_begin_datarow(false, work_mem, tmpcxt);
- /* We need is to be able to remember/restore the read position */
- snprintf(storename, 64, "%s node %d", squeue->sq_key, cstate->cs_node);
+ /* We need to be able to remember/restore the read position. */
+ snprintf(storename, 128, "%s node %d", squeue->sq_key, cstate->cs_node);
tuplestore_collect_stat(*tuplestore, storename);
/*
* Allocate a second read pointer to read from the store. We know