mirror of
https://github.com/postgres/postgres.git
synced 2025-05-11 05:41:32 +03:00
Dynamic array required within pg_stat_replication.
This commit is contained in:
parent
dcfe3f60c1
commit
cae4974e3d
@ -1322,7 +1322,7 @@ pg_stat_get_wal_senders(PG_FUNCTION_ARGS)
|
|||||||
Tuplestorestate *tupstore;
|
Tuplestorestate *tupstore;
|
||||||
MemoryContext per_query_ctx;
|
MemoryContext per_query_ctx;
|
||||||
MemoryContext oldcontext;
|
MemoryContext oldcontext;
|
||||||
int sync_priority[max_wal_senders];
|
int *sync_priority;
|
||||||
int priority = 0;
|
int priority = 0;
|
||||||
int sync_standby = -1;
|
int sync_standby = -1;
|
||||||
int i;
|
int i;
|
||||||
@ -1357,6 +1357,7 @@ pg_stat_get_wal_senders(PG_FUNCTION_ARGS)
|
|||||||
* lock acquisitions and to allow us to evaluate who is the current
|
* lock acquisitions and to allow us to evaluate who is the current
|
||||||
* sync standby. This code must match the code in SyncRepReleaseWaiters().
|
* sync standby. This code must match the code in SyncRepReleaseWaiters().
|
||||||
*/
|
*/
|
||||||
|
sync_priority = palloc(sizeof(int) * max_wal_senders);
|
||||||
LWLockAcquire(SyncRepLock, LW_SHARED);
|
LWLockAcquire(SyncRepLock, LW_SHARED);
|
||||||
for (i = 0; i < max_wal_senders; i++)
|
for (i = 0; i < max_wal_senders; i++)
|
||||||
{
|
{
|
||||||
@ -1456,6 +1457,7 @@ pg_stat_get_wal_senders(PG_FUNCTION_ARGS)
|
|||||||
|
|
||||||
tuplestore_putvalues(tupstore, tupdesc, values, nulls);
|
tuplestore_putvalues(tupstore, tupdesc, values, nulls);
|
||||||
}
|
}
|
||||||
|
pfree(sync_priority);
|
||||||
|
|
||||||
/* clean up and return the tuplestore */
|
/* clean up and return the tuplestore */
|
||||||
tuplestore_donestoring(tupstore);
|
tuplestore_donestoring(tupstore);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user