Article

From:
To:
All
Subject:
ACE/TAO/CIAO x.4.8 released
Newsgroup:
borland.public.cppbuilder.thirdpartytools

ACE/TAO/CIAO x.4.8 released

It is not explicitly stated, but ACE/TAO/CIAO are supported for Borland 
Developer Studio 2006.

Johnny
****
Hi,
We are pleased to announce a new beta of ACE-5.4.8, TAO-1.4.8, and CIAO-0.4.8. We are currently working hard on the long-awaited x.5 release, which is slated to appear in early 2006. We therefore wanted to get this new beta out to fix several important bugs reported by our users, which we greatly appreciate as always. We've added a number of sub-setting improvements that reduce the static/dynamic footprint of ACE+TAO significantly (www.dre.vanderbilt.edu/Stats has all the details). We've also finally added support for Real-time CCM to CIAO and DAnCE.
This beta is contains the results of our major footprint reduction effort that started in the summer of 2004. Between August 1st 2004 and October 14th 2005 the footprint reduction for the ORB_Init application has been 20%. Dependent on the parts of TAO you use the reduction can even be more. This reduction is inclusive all the extensions that have been made to TAO the last year. Interested users should check out
http://www.dre.vanderbilt.edu/Stats/
for more details. Note that the footprint has increased slightly again due to emulated exceptions having been disabled in favour of native C++ exceptions in all stats builds. We have deprecated support for emulated exceptions since there are no sponsors for this configuration. If you require emulated exceptions please contact one of the companies listed in
http://www.cs.wustl.edu/~schmidt/commercial-support.html
for commercial support.
As usual the latest release is available at:
http://deuce.doc.wustl.edu/Download.html
The doxygen documentation for the beta is also available.
We encourage you to download the new beta, use it with your applications, and let us know if you encounter any problems. Please use the:
     $ACE_ROOT/PROBLEM-REPORT-FORM      $TAO_ROOT/PROBLEM-REPORT-FORM      $CIAO_ROOT/PROBLEM-REPORT-FORM
so that we have the version/platform/compiler/options you're using to report problems. We also request that you take a look at
$TAO_ROOT/docs/releasenotes
for the status of various ongoing projects at the DOC groups of WashU, UCI, and Vanderbilt to move ACE+TAO+CIAO forward. Overviews of our recent progress and upcoming plans are available at
$ACE_ROOT/NEWS $TAO_ROOT/NEWS $CIAO_ROOT/NEWS
The overall success rates for the test results gathered from all our daily builds is 97% for the ACE tests and 94% for the TAO tests. Please see
http://www.dre.vanderbilt.edu/scoreboard/
for a summary of these tests. Our goal is to get these tests close to 100% for the x.5 release.
The following is a list of key changes since the last beta. Please refer to the corresponding ChangeLog files for more details on the problem and the nature of fixes applied.
============== Changes to ACE ==============
.. Added support for an ACE "versioned" namespace. When enabled, ACE   library sources will be placed within a namespace of the user's   choice or a namespace of the form ACE_5_4_8 by default, where   "5_4_8" is the ACE major, minor and beta versions. The default may   be overridden by defining the ACE_VERSIONED_NAMESPACE_NAME   pre-processor symbol. Enable overall versioned namespace support by   adding "versioned_namespace=1" to your MPC default.features   file. This enables multiple versions of ACE to run in the same   process.
.. Added an optimization to CDR stream to ignores alignment when   marshalling data. Use this new ACE_LACKS_CDR_ALIGNMENT compile-time   option only when the ACE_DISABLE_SWAP_ON_READ macro is enabled.   This new option requires ACE CDR engine to do both marshalling and   de-marshalling, and when this option is enabled the encoded streams   are no longer compliant with the CORBA CDR specification.
.. Improved IPv6 support.
.. Improved 64bit portability.
.. TTY_IO overhaul   - Improved documentation.   - It is now possible to request infinite timeout in portable manner.     This can be achieved by setting negative value to readtimeoutmsec.   - Various bugs fixed and portability issues resolved.
.. Subset ACE for TAO and TAO services, which greatly reduces the size of   TAO.
.. Support for Intel C++ 9.0 on Windows and Linux.
.. Support for Microsoft Visual Studio 2005 (aka VC8) for Win32 as well   as the Windows CE platforms Pocket PC 2003 and Windows Mobile 5.   Solution/project files are generated with an appended "_vc8" for   Win32 and "_WinCE" for the CE platforms. See   ACE_wrappers/docs/CE-status.txt for more information.
.. Completed implementation of ACE_Dev_Poll_Reactor using the Linux epoll   facility; tested on Red Hat Enterprise Linux 4.
.. The in-memory size of an ACE_RB_Tree will be smaller due to rearranged   placement of pointers.
.. Developed Feature Oriented Customizer (FOCUS) tool to enable   specialization of middleware frameworks such as Reactor and Protocol   framework. FOCUS provides an XML based transformation engine, where   the transformations to specialize the components are captured in XML   file and a weaver specializes the code.
.. Added support for unrolling ACE_OS::memcpy() copy loop where   applicable to improve performance. Autoconf tests empirically   determine whether loop unrolling is at least 10% better than default   version.
============== Changes to TAO ==============
.. Added support for an TAO "versioned" namespace, which enables multiple   versions of TAO to run in the same process. When enabled, TAO   library sources will be placed within a namespace of the user's   choice or a namespace of the form TAO_1_4_8 by default, where   "1_4_8" is the TAO major, minor and beta versions. The default may   be overridden by defining the TAO_VERSIONED_NAMESPACE_NAME   pre-processor symbol. Enable overall versioned namespace support by   adding "versioned_namespace=1" to your MPC default.features file.   See the service configurator file in   orbsvcs/tests/Notify/XML_Persistence for an example.
.. Subset Anys and TypeCodes to a separate library. If you use   Any/TypeCode or one of the core TAO libs uses it you should link the   AnyTypeCode library with your application (POC is Johnny Willemsen   <✉remedy.nl>).
.. PICurrent is moved to the PI library, thereby helping reduce footprint   if PI is not used.
.. POACurrent has been moved back from PI_Server to PortableServer where   it belongs.
.. Added IPv6 support for IIOP.
.. When making AMI invocation and the send blocks we buffer the message   and send it out when the transport is available again, thereby   improving robustness.
.. Support the latest AMI mapping, the old mapping will be kept working   until 1.5.1 has been released. If you need the old mapping add the   define TAO_HAS_DEPRECATED_EXCEPTION_HOLDER to your config.h file   before you build TAO and the TAO_IDL compiler.
.. Added CodecFactory::create_codec_with_codesets to create a codec with   a specific codeset. See OMG issue 6050 for the background.
.. PortableInterceptor::IORInterceptor has been split into IORInterceptor   and IORInterceptor_3_0. If you use IORInterceptors read the ChangeLog   for the details, you may need have to update your code!
.. Smart Proxy reference counting and lifecycle management Fixes: Fixed   the problem that the smart proxy's destruction process didn't function   correctly. Fixed Bug 2245. This also fixed the crash of   _non_existent() function call.
.. Added new IIOP & SSLIOP option 'reuse_addr' to unset socket level   option SO_REUSEADDR. On *some* platforms this has the side-effect of   disallowing two servers from listening on different interfaces of the   same port. This option *should NEVER be normally used* and when used   the user should be careful of any platform specific side-effects.
.. Merging of many Notification Service changes/fixes from OCITAO to the   DOC version. These generally addressed stability issues such as   memory leaks, thread leaks, etc.
.. Added support for the new Custom Servant Dispatching (CSD)   feature. The CSD feature provides user applications with the ability   to implement and "plug-in" custom strategies to handle the dispatching   of requests to servants. This new feature is not currently tested for   VxWorks.
  A concrete CSD Strategy implementation has also been added to serve   as a "reference implementation". This is being called the CSD   Thread Pool Strategy (TP_Strategy). The TP_Strategy provides a   means to decouple the threads (ORB threads) that receive requests   from the underlying transport from the thread that will ultimately   dispatch the request to the target servant object. The TP_Strategy   implements a "request queue" as the integral part of the mechanism   that allows an ORB thread to "hand-off" a request to one of the   TP_Strategy object's worker threads. The TP_Strategy reference   implementation is provided as an example of how concrete CSD   Strategy could be implemented.
  Two approaches are supported for applying CSD strategy to an application.
  1) Explicitly calling CSD interfaces.      Here is an example application code showing how a TP_Strategy object      can be created and applied to a POA:
     PortableServer::POA_var poa = ...; // create the poa.
     // Create a new TP_Strategy object and save it into a "smart pointer"      // variable.      TAO::CSD::TP_Strategy_Handle csd_strategy= new TAO::CSD::TP_Strategy();
     // Set the number of threads before calling apply_to()      // i.e. csd_strategy->set_num_threads(2);
     // Set the servant serialization flag before calling apply_to().      csd_strategy->set_servant_serialization (false);
     // Tell the strategy to apply itself to the poa.      if (csd_strategy->apply_to(poa.in()) == false)      {        ACE_ERROR((LM_ERROR, "Failed to apply CSD strategy to the poa.\n"));        return -1;      }
  2) Service Configurator      The format of the CSD specific parameters for creating the TP_Strategy      service object is:        -CSDtp <poa_name>:<csd_thread_number>:[OFF]
     The last portion of the parameter is the servant serialization      flag. It's only needed when the servant serialization needs be      turned off, otherwise the servant serialization is always on. When      servant serialization is on (the default), the TP_Strategy will      serialize requests to any particular servant. Requests to      different servant objects can occur in parallel, but requests to      any particular servant will be dispatched serially (i.e., one at a      time).
     Here is an example of the svc.conf file.
     dynamic TAO_CSD_TP_Strategy_Factory Service_Object *        TAO_CSD_ThreadPool:_make_TAO_CSD_TP_Strategy_Factory()        "-CSDtpRootPOA:2"
     The CSD feature is not currently tested for VxWorks.
============================= Changes to TAO's IDL compiler =============================
.. Added default include paths $TAO_ROOT, $TAO_ROOT/tao,   $TAO_ROOT/orbsvcs, and $CIAO_ROOT/ciao to IDL compiler execution,   eliminating the need to add them explicitly to the command line.
.. Added immediate exits to IDL compiler when some name clash errors are   encountered, avoiding a crash if parsing is continued. Closes Bugzilla   #2281.
.. Fixed bug in IDL compiler when handling a native exception in an   operation declared in Messaging::ExceptionHolder.
.. Although not presently supported by CIAO, added error checking to the   IDL compiler's parsing of IDL home primary keys, which constrain the   basic valuetype syntax in several ways.
.. Many changes related to refactoring of Anys and Typecodes into a   separate library (POC is Johnny Willemsen <✉remedy.nl>).
.. Changed generated signatures of some valuetype member accessor/mutator   pairs to be consistent with IN parameter semantics.
.. Changed the behaviour of the _default() method (generated for IDL   unions that have an explicit or implicit default case label) to   clean up memory used by the freed member, if necessary.
.. Fixed the order of generated base class stub constructor calls when   the IDL interface has both concrete and abstract parents.
.. Fixed a bug in the handling of forward declared interfaces that have   both concrete and abstract parents.
.. Fixed the command line parsing to preserve the literal quotes if they   are used in an include path that has a space. Closes Bugzilla #2219.
.. Added spec-required generation of member-initializing constructor for   valuetypes. See C++ mapping (03-06-03) section 1.17.2. Closes Bugzilla   #2270.
.. When Any and TypeCode generation is suppressed when compiling IDL no   typecodes are generated anymore for user exceptions, they are not   needed for the operation of the ORB
======================= Changes to CIAO & DAnCE =======================
.. Added documentation on using Rational Purify with CIAO and DAnCE.
.. Added tests and documentation for the IDL3-to-IDL2 converter tool.
.. The deprecated RepositoryManager implementation, under   DAnCE/RepositoryManager, has been removed from this release. Please   use the Plan_Launcher and flattened deployment plans to deploy   component assemblies.
.. RepositoryManager:   - enhanced the implementation to use various optimization techniques   - added HTTP support   - added PackageConfiguration visitor to update the locations of the     implementation artefacts with relevant HTTP URLs   - refactored some of the code and added a number of helpers functions
.. The XSC based config handlers have been heavily optimized, resulting   in GREATLY reduced parsing overhead for large deployments.
.. The DAnCE toolchain now supports initializing attributes which have   enumerated types. Support for other complex types is planned for the   future. Please see examples/Hello/descriptors/   flattened_deploymentplan_without_ns.cdp for an example of how to   populate enumerated attributes.
.. Integrated Real-time QoS support to CIAO based on OMG's new Deployment   and Configuration (D&C) specification. Such effort allows   application developers to use real-time CORBA 1.0 features within   their CCM application through meta-programming (via XML metadata   through DAnCE toolchain). Particularly, we added support for   server-side RT policies, including extension for schema, container,   and NodeApplication.
.. Added functionality in XML parsing code to resolve schema in   $CIAO_ROOT/docs/schema instead of the local directory only. All   DeploymentPlans should use Deployment.xsd instead of   Modified_Deployment.xsd, which has been removed.
.. The obsolete Packaging and Deployment (P&D) tools have been completely   removed from this release. DAnCE and the standard Deployment and   Configuration (D&C) tools are now the only supported method of   deploying components.
.. The CIAO directory structure has changed in support of the previous   item. The following important directory moves have been made:
  * $CIAO_ROOT/DAnCE/ciao => $CIAO_ROOT/ciao   * $CIAO_ROOT/DAnCE/examples => $CIAO_ROOT/examples   * $CIAO_ROOT/DAnCE/Config_Handlers => $CIAO_ROOT/tools/Config_Handlers   * Various obsolete examples/tutorials/tests have been removed.
.. Error reporting during component deployment has been greatly improved.   While debugging using CIAO_DEBUG_LEVEL is still available, detailed   error messages are now generated and propagated to the Plan_Launcher   using exceptions.
.. generate_component_mpc.pl has been updated to generate MPC files   useful by the modern CIAO infrastructure. This script now also   automatically generates export files.
.. DAnCE has been enhanced to support deploying multiple assemblies with   the same set of ExecutionManager and NodeMangers.
.. Integrated Real-time QoS support to into the new DAnCE-based runtime   and deployment tools based on OMG Deployment and Configuration (D&C)   specification. The old run-time and deployment tools based on   original Packaging and Deployment section of the CCM specification   have been completely removed. This work includes extensions to D&C   schema, schema parsers, and container and NodeApplication.
=============================== Changes to CIAO's CIDL Compiler ===============================
.. Added capability to pass a base class event consumer to a subscribe()   operation generated for a derived event type.
.. Added support for .cdl file extension, which was belatedly   standardized by the OMG.
.. Fixed bug in CIDL code generation for some types of component and   home attributes.
.. The CIDL compiler front-end now supports constants, const expressions,   bounded strings, bounded sequences, and arrays.
.. The CIDL compiler front-end now supports automatic indentation of   function arguments (both "new line" and "same line" styles are   supported).
.. Added backend CIDL compiler support for constants, arrays, bounded   strings, bounded sequences, and attribute exceptions, corresponding   to front-end support added by Boris Kolpackov <✉kolpackov.net>.
.. Updated documentation to include instructions for building   the CIDL compiler using MakeProjectCreator (MPC).
.. Fixed a bug in the CIDL compiler's determination if an IDL type is of   fixed or variable size type, when it is declared in the scope of an   interface, valuetype or home.
.. Changes to generated servant code to support component   swapping.
============ Known Issues ============
.. LoadBalancing on Windows - the LoadManager is not using the correct   default reactor type on Windows. It tries to use the ACE_TP_Reactor,   which does not implement signal handling. It should use the   ACE_WFMO_Reactor.
.. Support for Microsoft Visual Studio 2005 (aka VC8) for Win32 in TAO   is proving problematic. The pre-release beta compiler works better   than the final release candidate. We are investigating this issue.
.. Emulated C++ exceptions are not being maintained anymore. We are   keeping the macros in the TAO code until x.5.1 is out, if nobody   sponsors maintenance at that moment the macros will be removed from   TAO at that point. See also   http://deuce.doc.wustl.edu/bugzilla/show_bug.cgi?id=2256
.. TAO is not currently compatible with ACE_USES_WCHAR being set. This   will be addressed in the x.4.9 beta. If you'd like to beta-test this   for us before that beta comes out please let us know.
.. Support for using CIAO with VxWorks as target is not yet finished. It   should be completed before the x.5 release.
.. The autoconf build method has improved but some problems remain, so   such builds should be treated as experimental. If you want the easiest   route, use the traditional build method until ACE 5.5.
================== Bugzilla Bug Fixes ==================
23 ACE bugs fixed: 1209, 1249, 1352, 1770, 1805, 1991, 2143, 2208, 2216, 2218, 2226, 2232, 2257, 2258, 2259, 2260, 2261, 2263, 2266, 2276, 2279, 2284, and 2290.
43 TAO bugs fixed:  786, 1271, 1812, 1813, 1896, 1917, 1957, 1997, 2043, 2074, 2090, 2175, 2201, 2209, 2210, 2211, 2219, 2221, 2222, 2225, 2227, 2233, 2234, 2235, 2244, 2245, 2247, 2248, 2262, 2264, 2267, 2269, 2270, 2271, 2281, 2285, 2287, 2294, 2304, 2311, 2316, 2318, and 2326.
1 CIAO Bug fixed: 2032. (many other CIAO bugs have been fixed - they just weren't in the   bugzilla database)
FYI: Phrase searches are enclosed in either single or double quotes
 
 
Originally created by
Tamarack Associates
Fri, 29 Mar 2024 10:39:00 UTC
Copyright © 2009-2024
HREF Tools Corp.