RE: Log a warning in pg_createsubscriber for max_slot_wal_keep_size - Mailing list pgsql-hackers

From Hayato Kuroda (Fujitsu)
Subject RE: Log a warning in pg_createsubscriber for max_slot_wal_keep_size
Date
Msg-id OSCPR01MB14966947C373D0BFC7DABAA01F5132@OSCPR01MB14966.jpnprd01.prod.outlook.com
Whole thread Raw
In response to Re: Log a warning in pg_createsubscriber for max_slot_wal_keep_size  (vignesh C <vignesh21@gmail.com>)
List pgsql-hackers
Dear Shubham,

Thanks for updating the patch. Few comments.

```
+#include "common/int.h"            /* include for strtoi64 */
```

I could build the source code without the inclusion. Can you remove?

```
+    max_slot_wal_keep_size = strtoi64(PQgetvalue(res, 0, 6), NULL, 0);
+
+    /* use strtoi64 to convert the string result to a 64-bit integer */
+    if (max_slot_wal_keep_size == 0 && errno != 0)
+    {
+        /* handle conversion error */
+        pg_log_error("Failed to convert max_slot_wal_keep_size to int64");
+    }
```

I'm not sure the error handling is really needed. pg_dump also uses the function and it does
not have such handlings.

```
+    pg_log_debug("publisher: max_slot_wal_keep_size: %ld",
+                 max_slot_wal_keep_size);
```

IIUC, "%ld" does not always represent int64 format. Since it is a debug message, isn't it enough to
use INT64_FORMAT macro?

```
+# Configure 'max_slot_wal_keep_size = 1' on the publisher and
+# reload configuration
+$node_p->append_conf('postgresql.conf', 'max_slot_wal_keep_size = 1');
+$node_p->reload;
```

Can you use 'max_slot_wal_keep_size = 10MB' or something to test the handling is correct?

Best regards,
Hayato Kuroda
FUJITSU LIMITED


pgsql-hackers by date:

Previous
From: Shubham Khanna
Date:
Subject: Re: Log a warning in pg_createsubscriber for max_slot_wal_keep_size
Next
From: Robins Tharakan
Date:
Subject: Re: Several buildfarm animals fail tests because of shared memory error