|
Changes in Quanta since the release of Quanta
v0.2 (dated June 2003)
Changes were made to the following source files
and header files.
Source files:
QUANTAdb_c.cxx
QUANTAinit.cxx
QUANTAmisc_debug.cxx
QUANTAmisc_fileList_c.cxx
QUANTAnet_iovec_c.cxx
QUANTAnet_parallelTcp_c.cxx
QUANTAnet_perfMonitor_c.cxx
QUANTAnet_rbudpBase_c.cxx
QUANTAnet_rbudpSender_c.cxx
QUANTAnet_rbudpReceiver_c.cxx
QUANTAnet_remoteParallelFileIO64_c.cxx
QUANTAnet_socketbase_c.cxx
QUANTAnet_tcp_c.cxx
QUANTAnet_tcpReflector_c.cxx
QUANTAnet_udp_c.cxx
QUANTAnet_udpReflector_c.cxx
perfmon.cxx
1. Changes
made to QUANTAdb_c :
- Added switch case statement to trigger handleBlockingFetch in QUANTAdb_server_c::newDatahandler process.
- Includes QUANTAconfig_win32.hxx when compiling on Windows.
- Changed includes to use brackets rather than quotes. The ANSI standard
states that "include.h" behavior is implementation-dependent. Only
is part of the standard.
- Changed QUANTAsleep() calls to QUANTAusleep().
2. Changes
made to QUANTAinit :
- Removed QUANTA.hxx include, instead includes QUANTAinit, QUANTAmisc_debug,
and string headers.
- Added variable QUANTA_VERSION picks up the VERSION defined in quanta_config.
- Added variables QUANTA_BUILD_DATE and QUANTA_BUILD_TIME which are
automatically determined
by the preprocessor and added to the version output information. This
will verify when QUANTA was compiled.
3. Changes made to QUANTAmisc_debug :
- Removed QUANTA.hxx include. Instead now includes QUANTAmisc_debug,
quanta_config, and QUANTAinit headers.
- changed #include "quanta_config.hxx" to #include "QUANTAconfig.hxx"
4. Changes made to QUANTAmisc_fileList_c :
- Compiles only if HAVE_FTW_H (as detected by configure). This avoids the platform-specific checks.
- A possible alternative may be using fts.h, which provides a similar file-tree walk capability.
5. Changes made to QUANTAnet_iovec_c :
- Added new class QUANTAnet_iovec_c
6. Changes made to QUANTAnet_parallelTcp_c :
- Removed QUANTA.hxx include, now includes QUANTAnet_parallelTcp_c and string headers.
- Changed #include <sys/errno.h> to #include <errno.h>.
The errno.h file includes the sys/errno.h header file.
7. Changes made to QUANTAnet_perfMonitor_c :
- Changed char* arguments to const char* where allowed, thus negating
the need for using const_casts when passing constant strings. This change
only affects functions which do not make any modifications to their
parameters.
- Replaced all winsock2.h includes with windows.h.
- Changed include guard __HAVE_WINSOCK_H to __HAVE_WINDOWS_H.
8. Changes made to QUANTAnet_rbudpBase_c :
- Added port parameter for RBUDP sender and receiver.
- Modified code to use connected UDP.
- Exposed port number in rbudp constructor.
- Made debug info optional.
9. Changes made to QUANTAnet_rbudpSender_c and QUANTAnet_rbudpReceiver_c:
- Add file I/O feature for RBUDP.
- Replaced variadic macro definition TRACE_DEBUG with inline void function
which uses va_arg() macro as 'CC' compilers on SGI doesn't support variadic
macro definition.
- Added port parameter for RBUDP sender and receiver.
- Modified code to use connected UDP.
- Exposed port number in rbudp constructor.
- Made debug info optional.
10. Changes made to QUANTAnet_remoteParallelIO64_c
:
- Removed #ifdefs which checks for system type (SGI or LInux) to include
the code for compilation.
11. Changes made to QUANTAnet_socketbase_c :
- Changed char* arguments to const char* where allowed, thus negating the need for using const_casts when passing constant strings. This
change only affects functions which do not make any modifications to their parameters.
12. Changes made to QUANTAnet_tcp_c.cxx :
- Implemented readv and writev functions using QUANTAnet_iovec_c
- Fixed possible conflict with the length argument of both accept()
and getsockname(). The code was doing platform-specific checks rather
than checking to see if HAVE_SOCKLEN_T was available. Systems will still
need to define functions properly. If socklen_t is defined by the system,
then that type should be used as the size argument in socket functions;
otherwise an integer will be passed.
- Removed extraneous const qualifiers on *::sendStats() arguments.
- Changed char* arguments to const char* where allowed, thus negating
the need for using const_casts when passing constant strings. This change
only affects functions which do not make any modifications to their
parameters.
- (QUANTAnet_tcpServer_c::checkForNewConnections) Removed method that
contained no argument. Added default argument of 0 to the other method.
- Added QUANTAnet_tcpServer_c::waitForNewConnection. This function will
block while waiting for a new client connection.
- Added QUANTAne_tcpServer_c::setSockOptions(). This function wil allow
the user to set the READ/WRITE buffer size. If not used, it is set to
default values.
13. Changes made to QUANTAnet_tcpReflector_c :
- (QUANTAnet_tcpReflectorClient_c::read) Fixed memory leak caused by
use of incorrect delete operator. Needed to use delete[].
- Removed extraneous const qualifiers on *::sendStats() arguments.
- Changed char* arguments to const char* where allowed, thus negating
the need for using const_casts when passing constant strings. This
change only affects functions which do not make any modifications to
their parameters.
14. Changes made to QUANTAnet_udp_c :
- Fixed possible conflict with the length argument of both accept() and
getsockname(). The code was doing platform-specific checks rather than
checking to see if HAVE_SOCKLEN_T was available. Systems will still need
to define functions properly. If socklen_t is defined by the system,
then that type should be used as the size argument in socket functions;
otherwise an integer will be passed.
- Implemented readv and writev function calls using QUANTAnet_iovec_c
- Changed char* arguments to const char* where allowed, thus negating
the need for using const_casts when passing constant strings. This
change only affects functions which do not make any modifications to
their parameters.
15. Changes made to QUANTAnet_udpReflector_c :
- Replaced all winsock2.h includes with windows.h.
- Changed include guard __HAVE_WINSOCK_H to __HAVE_WINDOWS_H.
15. Changes made to perfmon.cxx :
- Changed destructor to properly delete the list of connected clients. A
double-free warning was generated when deleting a reflector instance.
The list of clients is initialized in
(QUANTAnet_udpReflector_c::initClientList) using the array new operator.
Therefore, proper destruction requires corresponding use of the array
delete operator.
Header files:
QUANTAnet_tcp_c.hxx
QUANTAnet_udp_c.hxx
QUANTAconfig_win32.hxx QUANTAglobals.hxx
QUANTAinit.hxx QUANTAmisc_hashDict.hxx QUANTAnet_iovec_c.hxx QUANTAnet_socketbase_c.hxx
QUANTAnet_tcpReflector_c.hxx QUANTAnet_udpReflector_c.hxx gettimeofday.hxx
1. Changes made to QUANTAnet_tcp_c.hxx :
- Added declarations for readv and writev function calls.
2. Changes made to QUANTAnet_udp_c.hxx :
- Added declarations for readv and writev function calls.
3. Changes made to files: QUANTAconfig_win32.hxx, QUANTAglobals.hxx, QUANTAinit.hxx,
QUANTAmisc_hashDict.hxx, QUANTAnet_iovec_c.hxx,
QUANTAnet_socketbase_c.hxx, QUANTAnet_tcpReflector_c.hxx,
QUANTAnet_udpReflector_c.hxx, gettimeofday.hxx, QUANTAnet_udp_c.hxx :
- Replaced all winsock2.h includes with windows.h.
- Changed include guard __HAVE_WINSOCK_H to __HAVE_WINDOWS_H.
|