Hi,

The valid range of the timeout value in wait for lsn command is int64, which 
can overflow
later in WaitForLSN():


```
postgres=# wait for lsn '99/99999999' with (mode 'primary_flush', timeout 
'10000000000000000ms');
ERROR:  timed out while waiting for target LSN 99/99999999 to be flushed; 
current primary_flush LSN 0/017CA348
Time: 0.584 ms
```


To fix it, change the valid range to int32, just like deadlock_timeout and many 
other GUCs.


Thoughts?


--
Regards,
ChangAo Chen

Attachment: v1-0001-Fix-timeout-value-overflow-in-wait-for-lsn.patch
Description: Binary data

Reply via email to