mirror of
https://github.com/postgres/postgres.git
synced 2025-11-09 06:21:09 +03:00
Pass correct count to WALRead().
Previously, some callers requested XLOG_BLCKSZ bytes unconditionally. While this did not cause a problem, because the extra bytes are ignored, it's confusing and makes it harder to add safety checks. Additionally, the comment about zero padding was incorrect. With this commit, all callers request the number of bytes they actually need. Author: Bharath Rupireddy Reviewed-by: Kyotaro Horiguchi Discussion: https://postgr.es/m/CALj2ACWBRFac2TingD3PE3w2EBHXUHY3=AEEZPJmqhpEOBGExg@mail.gmail.com
This commit is contained in:
@@ -1318,12 +1318,7 @@ summarizer_read_local_xlog_page(XLogReaderState *state,
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Even though we just determined how much of the page can be validly read
|
||||
* as 'count', read the whole page anyway. It's guaranteed to be
|
||||
* zero-padded up to the page boundary if it's incomplete.
|
||||
*/
|
||||
if (!WALRead(state, cur_page, targetPagePtr, XLOG_BLCKSZ,
|
||||
if (!WALRead(state, cur_page, targetPagePtr, count,
|
||||
private_data->tli, &errinfo))
|
||||
WALReadRaiseError(&errinfo);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user