#At file:///home/msvensson/mysql/6.4/ based on
revid:msvensson@stripped
3160 Magnus Svensson 2008-12-05 [merge]
Merge
modified:
storage/ndb/include/logger/ConsoleLogHandler.hpp
storage/ndb/include/logger/FileLogHandler.hpp
storage/ndb/include/logger/LogHandler.hpp
storage/ndb/include/logger/SysLogHandler.hpp
storage/ndb/include/util/File.hpp
storage/ndb/src/common/logger/ConsoleLogHandler.cpp
storage/ndb/src/common/logger/FileLogHandler.cpp
storage/ndb/src/common/logger/Logger.cpp
storage/ndb/src/common/logger/SysLogHandler.cpp
storage/ndb/src/common/util/File.cpp
=== modified file 'storage/ndb/include/logger/ConsoleLogHandler.hpp'
--- a/storage/ndb/include/logger/ConsoleLogHandler.hpp 2006-12-23 19:20:40 +0000
+++ b/storage/ndb/include/logger/ConsoleLogHandler.hpp 2008-12-05 10:18:59 +0000
@@ -39,6 +39,8 @@ public:
virtual bool open();
virtual bool close();
+ virtual bool is_open();
+
virtual bool setParam(const BaseString ¶m, const BaseString &value);
protected:
=== modified file 'storage/ndb/include/logger/FileLogHandler.hpp'
--- a/storage/ndb/include/logger/FileLogHandler.hpp 2008-10-05 07:12:28 +0000
+++ b/storage/ndb/include/logger/FileLogHandler.hpp 2008-12-05 10:18:59 +0000
@@ -71,6 +71,8 @@ public:
virtual bool open();
virtual bool close();
+ virtual bool is_open();
+
virtual bool setParam(const BaseString ¶m, const BaseString &value);
virtual bool checkParams();
=== modified file 'storage/ndb/include/logger/LogHandler.hpp'
--- a/storage/ndb/include/logger/LogHandler.hpp 2008-10-05 07:12:28 +0000
+++ b/storage/ndb/include/logger/LogHandler.hpp 2008-12-05 10:18:59 +0000
@@ -64,7 +64,14 @@ public:
* @return true if successful.
*/
virtual bool close() = 0;
-
+
+ /**
+ * Check if LogHandler is open
+ *
+ * @return true if open.
+ */
+ virtual bool is_open() = 0;
+
/**
* Append a log message to the output stream/file whatever.
* append() will call writeHeader(), writeMessage() and writeFooter() for
=== modified file 'storage/ndb/include/logger/SysLogHandler.hpp'
--- a/storage/ndb/include/logger/SysLogHandler.hpp 2006-12-23 19:20:40 +0000
+++ b/storage/ndb/include/logger/SysLogHandler.hpp 2008-12-05 10:18:59 +0000
@@ -73,6 +73,8 @@ public:
virtual bool open();
virtual bool close();
+ virtual bool is_open();
+
virtual bool setParam(const BaseString ¶m, const BaseString &value);
bool setFacility(const BaseString &facility);
@@ -93,6 +95,7 @@ private:
/** Syslog identity for all log entries. */
const char* m_pIdentity;
int m_facility;
+ bool m_open;
};
#endif
=== modified file 'storage/ndb/include/util/File.hpp'
--- a/storage/ndb/include/util/File.hpp 2006-12-31 00:32:21 +0000
+++ b/storage/ndb/include/util/File.hpp 2008-12-05 10:18:59 +0000
@@ -109,6 +109,13 @@ public:
bool open(const char* aFileName, const char* mode);
/**
+ * Check if the file is open
+ *
+ * @return true if file is open, false if closed
+ */
+ bool is_open();
+
+ /**
* Removes the file.
*
* @return true if successful.
=== modified file 'storage/ndb/src/common/logger/ConsoleLogHandler.cpp'
--- a/storage/ndb/src/common/logger/ConsoleLogHandler.cpp 2006-12-23 19:20:40 +0000
+++ b/storage/ndb/src/common/logger/ConsoleLogHandler.cpp 2008-12-05 10:18:59 +0000
@@ -38,6 +38,12 @@ ConsoleLogHandler::close()
return true;
}
+bool
+ConsoleLogHandler::is_open()
+{
+ return true;
+}
+
//
// PROTECTED
//
=== modified file 'storage/ndb/src/common/logger/FileLogHandler.cpp'
--- a/storage/ndb/src/common/logger/FileLogHandler.cpp 2008-11-07 11:00:38 +0000
+++ b/storage/ndb/src/common/logger/FileLogHandler.cpp 2008-12-05 10:18:59 +0000
@@ -74,6 +74,12 @@ FileLogHandler::open()
}
bool
+FileLogHandler::is_open()
+{
+ return m_pLogFile->is_open();
+}
+
+bool
FileLogHandler::close()
{
bool rc = true;
=== modified file 'storage/ndb/src/common/logger/Logger.cpp'
--- a/storage/ndb/src/common/logger/Logger.cpp 2008-11-06 17:17:12 +0000
+++ b/storage/ndb/src/common/logger/Logger.cpp 2008-12-05 10:18:59 +0000
@@ -165,17 +165,17 @@ Logger::addHandler(LogHandler* pHandler)
Guard g(m_mutex);
assert(pHandler != NULL);
- bool rc = pHandler->open();
- if (rc)
- {
- m_pHandlerList->add(pHandler);
- }
- else
+ if (!pHandler->is_open() &&
+ !pHandler->open())
{
+ // Failed to open
delete pHandler;
- }
+ return false;
+ }
- return rc;
+ m_pHandlerList->add(pHandler);
+
+ return true;
}
bool
=== modified file 'storage/ndb/src/common/logger/SysLogHandler.cpp'
--- a/storage/ndb/src/common/logger/SysLogHandler.cpp 2006-12-23 19:20:40 +0000
+++ b/storage/ndb/src/common/logger/SysLogHandler.cpp 2008-12-05 10:18:59 +0000
@@ -24,14 +24,16 @@
SysLogHandler::SysLogHandler() :
m_severity(LOG_INFO),
m_pIdentity("NDB"),
- m_facility(LOG_USER)
+ m_facility(LOG_USER),
+ m_open(false)
{
}
SysLogHandler::SysLogHandler(const char* pIdentity, int facility) :
m_severity(LOG_INFO),
m_pIdentity(pIdentity),
- m_facility(facility)
+ m_facility(facility),
+ m_open(false)
{
}
@@ -45,7 +47,7 @@ SysLogHandler::open()
{
::setlogmask(LOG_UPTO(LOG_DEBUG)); // Log from EMERGENCY down to DEBUG
::openlog(m_pIdentity, LOG_PID|LOG_CONS|LOG_ODELAY, m_facility); // PID, CONSOLE delay
openlog
-
+ m_open= true;
return true;
}
@@ -53,10 +55,16 @@ bool
SysLogHandler::close()
{
::closelog();
-
+ m_open= false;
return true;
}
+bool
+SysLogHandler::is_open()
+{
+ return m_open;
+}
+
void
SysLogHandler::writeHeader(const char* pCategory, Logger::LoggerLevel level)
{
=== modified file 'storage/ndb/src/common/util/File.cpp'
--- a/storage/ndb/src/common/util/File.cpp 2007-10-31 21:24:32 +0000
+++ b/storage/ndb/src/common/util/File.cpp 2008-12-05 10:18:59 +0000
@@ -89,6 +89,7 @@ File_class::open()
bool
File_class::open(const char* aFileName, const char* mode)
{
+ assert(m_file == NULL); // Not already open
if(m_fileName != aFileName){
/**
* Only copy if it's not the same string
@@ -104,6 +105,13 @@ File_class::open(const char* aFileName,
return rc;
}
+
+bool
+File_class::is_open()
+{
+ return (m_file != NULL);
+}
+
File_class::~File_class()
{
close();
| Thread |
|---|
| • bzr commit into mysql-5.1 branch (msvensson:3160) | Magnus Svensson | 5 Dec |