@@ -749,6 +749,7 @@ static void
749749show_archive_plain (const char * instance_name , uint32 xlog_seg_size ,
750750 parray * tli_list , bool show_name )
751751{
752+ char segno_tmp [20 ];
752753 parray * actual_tli_list = parray_new ();
753754#define SHOW_ARCHIVE_FIELDS_COUNT 10
754755 int i ;
@@ -807,16 +808,16 @@ show_archive_plain(const char *instance_name, uint32 xlog_seg_size,
807808 cur ++ ;
808809
809810 /* Min Segno */
810- snprintf ( row -> min_segno , lengthof ( row -> min_segno ), "%08X%08X" ,
811- ( uint32 ) tlinfo -> begin_segno / xlog_seg_size ,
812- ( uint32 ) tlinfo -> begin_segno % xlog_seg_size );
811+ GetXLogSegName ( segno_tmp , tlinfo -> begin_segno , xlog_seg_size );
812+ snprintf ( row -> min_segno , lengthof ( row -> min_segno ), "%s" , segno_tmp );
813+
813814 widths [cur ] = Max (widths [cur ], strlen (row -> min_segno ));
814815 cur ++ ;
815816
816817 /* Max Segno */
817- snprintf ( row -> max_segno , lengthof ( row -> max_segno ), "%08X%08X" ,
818- ( uint32 ) tlinfo -> end_segno / xlog_seg_size ,
819- ( uint32 ) tlinfo -> end_segno % xlog_seg_size );
818+ GetXLogSegName ( segno_tmp , tlinfo -> end_segno , xlog_seg_size );
819+ snprintf ( row -> max_segno , lengthof ( row -> max_segno ), "%s" , segno_tmp );
820+
820821 widths [cur ] = Max (widths [cur ], strlen (row -> max_segno ));
821822 cur ++ ;
822823
@@ -939,6 +940,7 @@ show_archive_json(const char *instance_name, uint32 xlog_seg_size,
939940 int i ,j ;
940941 PQExpBuffer buf = & show_buf ;
941942 parray * actual_tli_list = parray_new ();
943+ char segno_tmp [20 ];
942944
943945 if (!first_instance )
944946 appendPQExpBufferChar (buf , ',' );
@@ -985,14 +987,12 @@ show_archive_json(const char *instance_name, uint32 xlog_seg_size,
985987 (uint32 ) (tlinfo -> switchpoint >> 32 ), (uint32 ) tlinfo -> switchpoint );
986988 json_add_value (buf , "switchpoint" , tmp_buf , json_level , true);
987989
988- snprintf (tmp_buf , lengthof (tmp_buf ), "%08X%08X" ,
989- (uint32 ) tlinfo -> begin_segno / xlog_seg_size ,
990- (uint32 ) tlinfo -> begin_segno % xlog_seg_size );
990+ GetXLogSegName (segno_tmp , tlinfo -> begin_segno , xlog_seg_size );
991+ snprintf (tmp_buf , lengthof (tmp_buf ), "%s" , segno_tmp );
991992 json_add_value (buf , "min-segno" , tmp_buf , json_level , true);
992993
993- snprintf (tmp_buf , lengthof (tmp_buf ), "%08X%08X" ,
994- (uint32 ) tlinfo -> end_segno / xlog_seg_size ,
995- (uint32 ) tlinfo -> end_segno % xlog_seg_size );
994+ GetXLogSegName (segno_tmp , tlinfo -> end_segno , xlog_seg_size );
995+ snprintf (tmp_buf , lengthof (tmp_buf ), "%s" , segno_tmp );
996996 json_add_value (buf , "max-segno" , tmp_buf , json_level , true);
997997
998998 json_add_key (buf , "n-segments" , json_level );
@@ -1034,14 +1034,12 @@ show_archive_json(const char *instance_name, uint32 xlog_seg_size,
10341034
10351035 json_add (buf , JT_BEGIN_OBJECT , & json_level );
10361036
1037- snprintf (tmp_buf , lengthof (tmp_buf ), "%08X%08X" ,
1038- (uint32 ) lost_segments -> begin_segno / xlog_seg_size ,
1039- (uint32 ) lost_segments -> begin_segno % xlog_seg_size );
1037+ GetXLogSegName (segno_tmp , lost_segments -> begin_segno , xlog_seg_size );
1038+ snprintf (tmp_buf , lengthof (tmp_buf ), "%s" , segno_tmp );
10401039 json_add_value (buf , "begin-segno" , tmp_buf , json_level , true);
10411040
1042- snprintf (tmp_buf , lengthof (tmp_buf ), "%08X%08X" ,
1043- (uint32 ) lost_segments -> end_segno / xlog_seg_size ,
1044- (uint32 ) lost_segments -> end_segno % xlog_seg_size );
1041+ GetXLogSegName (segno_tmp , lost_segments -> end_segno , xlog_seg_size );
1042+ snprintf (tmp_buf , lengthof (tmp_buf ), "%s" , segno_tmp );
10451043 json_add_value (buf , "end-segno" , tmp_buf , json_level , true);
10461044 json_add (buf , JT_END_OBJECT , & json_level );
10471045 }
0 commit comments