mirror of
https://github.com/postgres/postgres.git
synced 2025-07-15 19:21:59 +03:00
Rework macro pgstat_is_ioop_tracked_in_bytes()
As written, it was triggering a compilation warning for old versions of clang, as reported by buildfarm members ayu, batfish and demoiselle. Forcing a cast with "unsigned int" should fix the warning. While on it, the macro is moved to pgstat.h, closer to the declaration of IOOp, per suggestion from Tom Lane. Reported-by: Tom Lane Reviewed-by: Bertrand Drouvot, Tom Lane, Nazir Bilal Yavuz Discussion: https://postgr.es/m/1272824.1736961543@sss.pgh.pa.us
This commit is contained in:
@ -23,14 +23,6 @@
|
|||||||
static PgStat_PendingIO PendingIOStats;
|
static PgStat_PendingIO PendingIOStats;
|
||||||
static bool have_iostats = false;
|
static bool have_iostats = false;
|
||||||
|
|
||||||
/*
|
|
||||||
* Check if an IOOp is tracked in bytes. This relies on the ordering of IOOp
|
|
||||||
* defined in pgstat.h, so make sure to update this check when changing its
|
|
||||||
* elements.
|
|
||||||
*/
|
|
||||||
#define pgstat_is_ioop_tracked_in_bytes(io_op) \
|
|
||||||
((io_op) < IOOP_NUM_TYPES && (io_op) >= IOOP_EXTEND)
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Check that stats have not been counted for any combination of IOObject,
|
* Check that stats have not been counted for any combination of IOObject,
|
||||||
* IOContext, and IOOp which are not tracked for the passed-in BackendType. If
|
* IOContext, and IOOp which are not tracked for the passed-in BackendType. If
|
||||||
|
@ -314,6 +314,10 @@ typedef enum IOOp
|
|||||||
|
|
||||||
#define IOOP_NUM_TYPES (IOOP_WRITE + 1)
|
#define IOOP_NUM_TYPES (IOOP_WRITE + 1)
|
||||||
|
|
||||||
|
#define pgstat_is_ioop_tracked_in_bytes(io_op) \
|
||||||
|
(((unsigned int) (io_op)) < IOOP_NUM_TYPES && \
|
||||||
|
((unsigned int) (io_op)) >= IOOP_EXTEND)
|
||||||
|
|
||||||
typedef struct PgStat_BktypeIO
|
typedef struct PgStat_BktypeIO
|
||||||
{
|
{
|
||||||
uint64 bytes[IOOBJECT_NUM_TYPES][IOCONTEXT_NUM_TYPES][IOOP_NUM_TYPES];
|
uint64 bytes[IOOBJECT_NUM_TYPES][IOCONTEXT_NUM_TYPES][IOOP_NUM_TYPES];
|
||||||
|
Reference in New Issue
Block a user