The following commit introduced a breakage: https://github.com/mysql/mysql-server/commit/2e4dc3c88ea02b178d2139cfb1f92b00a4d394c0

--- a/storage/ndb/src/ndbapi/ndb_cluster_connection.cpp	2025-09-24 21:35:03.000000000 +0800
+++ b/storage/ndb/src/ndbapi/ndb_cluster_connection.cpp	2025-12-14 21:20:12.000000000 +0800
@@ -56,6 +56,8 @@
 
 #include <EventLogger.hpp>
 
+using namespace std;
+
 static int g_ndb_connection_count = 0;
 
 class NdbApiInternalLogHandler;
@@ -437,7 +439,7 @@
   }
 
   void append(const char *pCategory, Logger::LoggerLevel level,
-              const char *pMsg, const std::timespec *now) override {
+              const char *pMsg, const timespec *now) override {
     {
       if (m_userConsumer) {
         Guard g(m_consumer_mutex);
@@ -472,7 +474,7 @@
   }
   bool checkParams() override { return true; }
   void writeHeader(const char *, Logger::LoggerLevel,
-                   const std::timespec *) override {}
+                   const timespec *) override {}
   void writeMessage(const char *) override {}
   void writeFooter() override {}
   void setRepeatFrequency(unsigned val) override {

--- a/storage/ndb/include/logger/ConsoleLogHandler.hpp	2025-09-24 21:35:03.000000000 +0800
+++ b/storage/ndb/include/logger/ConsoleLogHandler.hpp	2025-12-14 21:25:55.000000000 +0800
@@ -31,6 +31,8 @@
 #include <NdbOut.hpp>
 #include "LogHandler.hpp"
 
+using namespace std;
+
 /**
  * Logs messages to the console/stdout.
  *
@@ -58,7 +60,7 @@
 
  protected:
   void writeHeader(const char *pCategory, Logger::LoggerLevel level,
-                   const std::timespec *now) override;
+                   const timespec *now) override;
   void writeMessage(const char *pMsg) override;
   void writeFooter() override;
   NdbOut &_out;

--- a/storage/ndb/include/logger/Logger.hpp	2025-09-24 21:35:03.000000000 +0800
+++ b/storage/ndb/include/logger/Logger.hpp	2025-12-14 20:57:33.000000000 +0800
@@ -34,6 +34,8 @@
 
 #define MAX_LOG_MESSAGE_SIZE 1024
 
+using namespace std;
+
 class LogHandler;
 class InternalLogListHandler;
 class BufferedLogHandler;
@@ -121,7 +123,7 @@
       @len max length of result buffer
 
   */
-  static void format_timestamp(const std::timespec *epoch, char *str,
+  static void format_timestamp(const timespec *epoch, char *str,
                                size_t len);
 
   // Timestamp - handy class for getting a timestamp string

--- a/storage/ndb/include/logger/LogHandler.hpp	2025-09-24 21:35:03.000000000 +0800
+++ b/storage/ndb/include/logger/LogHandler.hpp	2025-12-14 21:24:40.000000000 +0800
@@ -30,6 +30,8 @@
 
 #include "Logger.hpp"
 
+using namespace std;
+
 /**
  * This class is the base class for all log handlers. A log handler is
  * responsible for formatting and writing log messages to a specific output.
@@ -94,9 +96,9 @@
    * @param pMsg the log message.
    */
   virtual void append(const char *pCategory, Logger::LoggerLevel level,
-                      const char *pMsg, const std::timespec *now);
+                      const char *pMsg, const timespec *now);
   void append_impl(const char *pCategory, Logger::LoggerLevel level,
-                   const char *pMsg, const std::timespec *now);
+                   const char *pMsg, const timespec *now);
 
   /**
    * Returns a default formatted header. It currently has the
@@ -109,7 +111,7 @@
    */
   const char *getDefaultHeader(char *pStr, const char *pCategory,
                                Logger::LoggerLevel level,
-                               const std::timespec *now) const;
+                               const timespec *now) const;
 
   /**
    * Returns a default formatted footer. Currently only returns a newline.
@@ -197,7 +199,7 @@
    * @param level the log level.
    */
   virtual void writeHeader(const char *pCategory, Logger::LoggerLevel level,
-                           const std::timespec *now) = 0;
+                           const timespec *now) = 0;
 
   /**
    * Write the message to the log.
@@ -224,7 +226,7 @@
   // for handling repeated messages
   unsigned m_count_repeated_messages;
   unsigned m_max_repeat_frequency;
-  std::timespec m_last_log_time;
+  timespec m_last_log_time;
   char m_last_category[MAX_HEADER_LENGTH];
   char m_last_message[MAX_LOG_MESSAGE_SIZE];
   Logger::LoggerLevel m_last_level;

--- a/storage/ndb/include/portlib/NdbTimestamp.h	2025-09-24 21:35:03.000000000 +0800
+++ b/storage/ndb/include/portlib/NdbTimestamp.h	2025-12-14 21:22:53.000000000 +0800
@@ -30,6 +30,8 @@
 #include "ndb_types.h"
 #include "util/span.h"
 
+using namespace std;
+
 struct NdbTimestampComponents {
   Int16 year;
   Int8 mon;
@@ -51,16 +53,16 @@
 // Reset internal state after environment variable TZ has changed
 void NdbTimestamp_Reset();
 
-std::timespec NdbTimestamp_GetCurrentTime();
+timespec NdbTimestamp_GetCurrentTime();
 int NdbTimestamp_GetAsString(ndb::span<char> buf,
                              NdbTimestampStringFormat format,
-                             const std::timespec *t = nullptr,
+                             const timespec *t = nullptr,
                              const NdbTimestampComponents *tm = nullptr);
 int NdbTimestamp_SetDefaultStringFormat(NdbTimestampStringFormat format);
 int NdbTimestamp_GetDefaultStringFormatLength();
-int NdbTimestamp_GetUtcComponents(const std::timespec *t,
+int NdbTimestamp_GetUtcComponents(const timespec *t,
                                   NdbTimestampComponents *tm);
-int NdbTimestamp_GetLocalComponents(const std::timespec *t,
+int NdbTimestamp_GetLocalComponents(const timespec *t,
                                     NdbTimestampComponents *tm);
 
 #endif

--- a/storage/ndb/src/common/portlib/NdbTimestamp.cpp	2025-09-24 21:35:03.000000000 +0800
+++ b/storage/ndb/src/common/portlib/NdbTimestamp.cpp	2025-12-14 21:52:29.000000000 +0800
@@ -35,6 +35,8 @@
 #include "util/require.h"
 #include "util/span.h"
 
+using namespace std;
+
 #ifdef _WIN32
 static inline struct tm *gmtime_r(const time_t *pt, struct tm *ptm) {
   return gmtime_s(ptm, pt) == 0 ? ptm : nullptr;
@@ -166,13 +168,13 @@
 #endif
 }
 
-std::timespec NdbTimestamp_GetCurrentTime() {
-  std::timespec ts;
-  require(std::timespec_get(&ts, TIME_UTC) == TIME_UTC);
+timespec NdbTimestamp_GetCurrentTime() {
+  timespec ts;
+  require(timespec_get(&ts, TIME_UTC) == TIME_UTC);
   return ts;
 }
 
-int NdbTimestamp_GetUtcComponents(const std::timespec *t,
+int NdbTimestamp_GetUtcComponents(const timespec *t,
                                   NdbTimestampComponents *tm) {
   time_t sec = t->tv_sec;
   struct tm tmbuf;
@@ -188,7 +190,7 @@
   return 0;
 }
 
-int NdbTimestamp_GetLocalComponents(const std::timespec *t,
+int NdbTimestamp_GetLocalComponents(const timespec *t,
                                     NdbTimestampComponents *tm) {
   time_t sec = t->tv_sec;
   struct tm tmbuf;
@@ -342,9 +344,9 @@
 
 int NdbTimestamp_GetAsString(ndb::span<char> buf,
                              NdbTimestampStringFormat format,
-                             const std::timespec *pt,
+                             const timespec *pt,
                              const NdbTimestampComponents *ptm) {
-  std::timespec t;
+  timespec t;
   NdbTimestampComponents tm;
   int ok = 0;
   if (ptm != nullptr)
@@ -462,7 +464,7 @@
       "2026-01-01T13:30:00.012345+14:00"}}};
 
 static void test_UTC() {
-  std::timespec t = NdbTimestamp_GetCurrentTime();
+  timespec t = NdbTimestamp_GetCurrentTime();
   time_t ut = t.tv_sec;
 
   NdbTimestampComponents tc;
@@ -517,7 +519,7 @@
   printf("TZ=%s\n", tzenv);
   NdbTimestamp_Reset();
 
-  std::timespec t = NdbTimestamp_GetCurrentTime();
+  timespec t = NdbTimestamp_GetCurrentTime();
   time_t ut = t.tv_sec;
 
   NdbTimestampComponents tc;

--- a/storage/ndb/include/logger/BufferedLogHandler.hpp	2025-09-24 21:35:03.000000000 +0800
+++ b/storage/ndb/include/logger/BufferedLogHandler.hpp	2025-12-15 01:01:01.000000000 +0800
@@ -32,6 +32,8 @@
 #include <LogBuffer.hpp>
 #include "LogHandler.hpp"
 
+using namespace std;
+
 /**
  * 1) Creates a thread
  * 2) Logs messages to a LogBuffer object
@@ -72,7 +74,7 @@
 
   struct LogMessageFixedPart {
     Logger::LoggerLevel level;
-    std::timespec log_timestamp;
+    timespec log_timestamp;
     size_t varpart_length[2];  // 0: length of category, 1: length of message
   };
   static constexpr Uint32 MAX_VARPART_SIZE =
@@ -80,7 +82,7 @@
 
  protected:
   void writeHeader(const char *pCategory, Logger::LoggerLevel level,
-                   const std::timespec *now) override;
+                   const timespec *now) override;
   void writeMessage(const char *pMsg) override;
   void writeFooter() override;
 
--- a/storage/ndb/src/common/logger/BufferedLogHandler.cpp	2025-09-24 21:35:03.000000000 +0800
+++ b/storage/ndb/src/common/logger/BufferedLogHandler.cpp	2025-12-15 00:58:48.000000000 +0800
@@ -30,6 +30,8 @@
 
 #include <time.h>
 
+using namespace std;
+
 namespace {
 struct ThreadData {
   BufferedLogHandler *buf_loghandler;
@@ -106,7 +108,7 @@
 //
 void BufferedLogHandler::writeHeader(const char *pCategory,
                                      Logger::LoggerLevel level,
-                                     const std::timespec *now) {
+                                     const timespec *now) {
   /**
    * Add log level, timestamp, category length to m_log_fixedpart and
    * category to m_log_varpart.
@@ -179,7 +181,7 @@
     cstrbuf<LostMsgHandler::MAX_LOST_MESSAGE_SIZE> msg;
     require(msg.appendf(LostMsgHandler::LOST_MESSAGES_FMT, lost_count) != -1);
     assert(!msg.is_truncated());
-    std::timespec now = NdbTimestamp_GetCurrentTime();
+    timespec now = NdbTimestamp_GetCurrentTime();
     m_dest_loghandler->append(m_buffer_msg_category, Logger::LL_INFO,
                               msg.c_str(), &now);
   }

--- a/storage/ndb/src/common/logger/ConsoleLogHandler.cpp	2025-09-24 21:35:03.000000000 +0800
+++ b/storage/ndb/src/common/logger/ConsoleLogHandler.cpp	2025-12-15 01:03:40.000000000 +0800
@@ -27,6 +27,8 @@
 
 #include <time.h>
 
+using namespace std;
+
 ConsoleLogHandler::ConsoleLogHandler(NdbOut &out) : LogHandler(), _out(out) {}
 
 ConsoleLogHandler::~ConsoleLogHandler() {}
@@ -42,7 +44,7 @@
 //
 void ConsoleLogHandler::writeHeader(const char *pCategory,
                                     Logger::LoggerLevel level,
-                                    const std::timespec *now) {
+                                    const timespec *now) {
   char str[MAX_HEADER_LENGTH];
   _out << getDefaultHeader(str, pCategory, level, now);
 }

--- a/storage/ndb/src/common/logger/FileLogHandler.cpp	2025-09-24 21:35:03.000000000 +0800
+++ b/storage/ndb/src/common/logger/FileLogHandler.cpp	2025-12-15 01:06:24.000000000 +0800
@@ -30,6 +30,8 @@
 #include <FileLogHandler.hpp>
 #include <util/File.hpp>
 
+using namespace std;
+
 //
 // PUBLIC
 //
@@ -76,7 +78,7 @@
 
 void FileLogHandler::writeHeader(const char *pCategory,
                                  Logger::LoggerLevel level,
-                                 const std::timespec *now) {
+                                 const timespec *now) {
   char str[MAX_HEADER_LENGTH];
   m_pLogFile->writeChar(getDefaultHeader(str, pCategory, level, now));
 }

--- a/storage/ndb/include/logger/FileLogHandler.hpp	2025-09-24 21:35:03.000000000 +0800
+++ b/storage/ndb/include/logger/FileLogHandler.hpp	2025-12-15 01:07:23.000000000 +0800
@@ -30,6 +30,8 @@
 
 #include "LogHandler.hpp"
 
+using namespace std;
+
 class File_class;
 
 /**
@@ -82,7 +84,7 @@
 
  protected:
   void writeHeader(const char *pCategory, Logger::LoggerLevel level,
-                   const std::timespec *now) override;
+                   const timespec *now) override;
   void writeMessage(const char *pMsg) override;
   void writeFooter() override;
 
--- a/storage/ndb/src/common/logger/LogHandler.cpp	2025-09-24 21:35:03.000000000 +0800
+++ b/storage/ndb/src/common/logger/LogHandler.cpp	2025-12-15 01:10:24.000000000 +0800
@@ -30,6 +30,8 @@
 
 #include "util/cstrbuf.h"
 
+using namespace std;
+
 //
 // PUBLIC
 //
@@ -45,7 +47,7 @@
 LogHandler::~LogHandler() {}
 
 void LogHandler::append(const char *pCategory, Logger::LoggerLevel level,
-                        const char *pMsg, const std::timespec *now) {
+                        const char *pMsg, const timespec *now) {
   if (m_max_repeat_frequency == 0 || level != m_last_level ||
       strcmp(pCategory, m_last_category) || strcmp(pMsg, m_last_message)) {
     if (m_count_repeated_messages > 0)  // print that message
@@ -78,7 +80,7 @@
 }
 
 void LogHandler::append_impl(const char *pCategory, Logger::LoggerLevel level,
-                             const char *pMsg, const std::timespec *now) {
+                             const char *pMsg, const timespec *now) {
   writeHeader(pCategory, level, now);
   if (m_count_repeated_messages <= 1)
     writeMessage(pMsg);
@@ -93,7 +95,7 @@
 
 const char *LogHandler::getDefaultHeader(char *pStr, const char *pCategory,
                                          Logger::LoggerLevel level,
-                                         const std::timespec *now) const {
+                                         const timespec *now) const {
   char timestamp[64];
   Logger::format_timestamp(now, timestamp, sizeof(timestamp));
 
--- a/storage/ndb/src/common/logger/Logger.cpp	2025-09-24 21:35:03.000000000 +0800
+++ b/storage/ndb/src/common/logger/Logger.cpp	2025-12-15 01:12:39.000000000 +0800
@@ -45,6 +45,8 @@
 #include "portlib/NdbTimestamp.h"
 #include "util/require.h"
 
+using namespace std;
+
 const char *Logger::LoggerLevelNames[] = {"ON      ", "DEBUG   ", "INFO    ",
                                           "WARNING ", "ERROR   ", "CRITICAL",
                                           "ALERT   ", "ALL     "};
@@ -78,7 +80,7 @@
    * Here we pass the message to all bound in LogHandlers
    */
   void append(const char *pCategory, Logger::LoggerLevel level,
-              const char *pMsg, const std::timespec *now) override {
+              const char *pMsg, const timespec *now) override {
     Guard g(m_listMutex);
 
     LogHandler *pHandler = nullptr;
@@ -121,7 +123,7 @@
 
  protected:
   void writeHeader(const char * /*pCategory*/, Logger::LoggerLevel /*level*/,
-                   const std::timespec * /*now*/) override {}
+                   const timespec * /*now*/) override {}
   void writeMessage(const char * /*pMsg*/) override {}
   void writeFooter() override {}
 
@@ -386,7 +388,7 @@
   if (m_logLevels[LL_ON] && m_logLevels[logLevel]) {
     char buf[MAX_LOG_MESSAGE_SIZE];
     BaseString::vsnprintf(buf, sizeof(buf), pMsg, ap);
-    std::timespec now = NdbTimestamp_GetCurrentTime();
+    timespec now = NdbTimestamp_GetCurrentTime();
     m_logHandler->append(m_pCategory, logLevel, buf, &now);
   }
 }
@@ -397,11 +399,11 @@
 }
 
 Logger::Timestamp::Timestamp() {
-  std::timespec now = NdbTimestamp_GetCurrentTime();
+  timespec now = NdbTimestamp_GetCurrentTime();
   Logger::format_timestamp(&now, buff, TsLen);
 }
 
-void Logger::format_timestamp(const std::timespec *epoch, char *str,
+void Logger::format_timestamp(const timespec *epoch, char *str,
                               size_t len) {
   assert(len > 0);  // Assume buffer has size
 
@@ -437,7 +439,7 @@
   void log(LogLevel level, const char *category, const char *message) override {
     char timestamp[64];
     std::ofstream ofs(filename);
-    std::timespec now = NdbTimestamp_GetCurrentTime();
+    timespec now = NdbTimestamp_GetCurrentTime();
     Logger::format_timestamp(&now, timestamp, sizeof(timestamp));
     ofs << timestamp << " [" << category << "]"
         << " [" << level << "] " << message << std::endl;

--- a/storage/ndb/include/logger/SysLogHandler.hpp	2025-09-24 21:35:03.000000000 +0800
+++ b/storage/ndb/include/logger/SysLogHandler.hpp	2025-12-15 01:16:37.000000000 +0800
@@ -30,6 +30,8 @@
 
 #include "LogHandler.hpp"
 
+using namespace std;
+
 /**
  * Logs messages to syslog. The default identity is 'NDB'.
  * See 'man 3 syslog'.
@@ -88,7 +90,7 @@
 
  protected:
   void writeHeader(const char *pCategory, Logger::LoggerLevel level,
-                   const std::timespec *now) override;
+                   const timespec *now) override;
   void writeMessage(const char *pMsg) override;
   void writeFooter() override;
 
--- a/storage/ndb/src/common/logger/SysLogHandler.cpp	2025-09-24 21:35:03.000000000 +0800
+++ b/storage/ndb/src/common/logger/SysLogHandler.cpp	2025-12-15 01:15:29.000000000 +0800
@@ -31,6 +31,8 @@
 
 #include <syslog.h>
 
+using namespace std;
+
 //
 // PUBLIC
 //
@@ -67,7 +69,7 @@
 
 void SysLogHandler::writeHeader(const char *pCategory,
                                 Logger::LoggerLevel level,
-                                const std::timespec * /*now*/) {
+                                const timespec * /*now*/) {
   // Save category to be used by writeMessage...
   m_pCategory = pCategory;
   // Map LogLevel to syslog severity
