Commit f350520
committed
osd/scrubber: replace deprecated fmt::localtime() with localtime_r()
Replace fmt::localtime() with localtime_r() to fix build failure with
fmt 11.2.0. The fmt::localtime() function was deprecated in favor of
std::localtime, causing build errors when treating warnings as errors:
```
[1/3] Building CXX object src/osd/CMakeFiles/osd.dir/scrubber/pg_scrubber.cc.o
/home/kefu/dev/ceph/src/osd/scrubber/pg_scrubber.cc: In member function ‘virtual void PgScrubber::update_scrub_stats(ceph::coarse_real_clock::time_point)’:
/home/kefu/dev/ceph/src/osd/scrubber/pg_scrubber.cc:2767:41: warning: ‘tm fmt::v11::localtime(time_t)’ is deprecated [-Wdeprecated-declarations]
2767 | auto printable_last = fmt::localtime(clock::to_time_t(m_last_stat_upd));
| ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/kefu/dev/ceph/src/fmt/include/fmt/ostream.h:23,
from /home/kefu/dev/ceph/src/msg/msg_types.h:26,
from /home/kefu/dev/ceph/src/common/options.h:12,
from /home/kefu/dev/ceph/src/common/config.h:25,
from /home/kefu/dev/ceph/src/common/config_proxy.h:7,
from /home/kefu/dev/ceph/src/osd/scrubber/./pg_scrubber.h:78,
from /home/kefu/dev/ceph/src/osd/scrubber/pg_scrubber.cc:4:
/home/kefu/dev/ceph/src/fmt/include/fmt/chrono.h:538:28: note: declared here
538 | FMT_DEPRECATED inline auto localtime(std::time_t time) -> std::tm {
| ^~~~~~~~~
```
Unlike other parts of the codebase, this implementation checks the return
value of localtime_r() to preserve the error-handling behavior of
fmt::localtime(), which throws on failure. Future changes may opt for
consistency with the broader codebase over behavioral compatibility.
Signed-off-by: Kefu Chai <[email protected]>1 parent 548e252 commit f350520
1 file changed
+7
-6
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2760 | 2760 | | |
2761 | 2761 | | |
2762 | 2762 | | |
2763 | | - | |
2764 | 2763 | | |
2765 | 2764 | | |
2766 | | - | |
2767 | | - | |
2768 | | - | |
2769 | | - | |
| 2765 | + | |
| 2766 | + | |
| 2767 | + | |
| 2768 | + | |
| 2769 | + | |
| 2770 | + | |
2770 | 2771 | | |
2771 | 2772 | | |
2772 | 2773 | | |
2773 | 2774 | | |
2774 | | - | |
| 2775 | + | |
2775 | 2776 | | |
2776 | 2777 | | |
2777 | 2778 | | |
| |||
0 commit comments