Wed Sep 24 19:51:44 CEST 2014 Johnny Willemsen * TAO version 2.2.8 released. Fri Sep 12 20:11:42 UTC 2014 Phil Mesnier * orbsvcs/tests/ImplRepo/RestartIMR/run_test.pl: Make the test windows compatible. Fri Sep 12 15:08:32 UTC 2014 Phil Mesnier * orbsvcs/tests/ImplRepo/RestartIMR/server.cpp: Fix the includes. Fri Sep 12 14:10:47 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/Activator_Options.cpp: * orbsvcs/ImplRepo_Service/Locator_Options.cpp: Set the default debug level to be 0 rather than 1. Services should be quiet by default. * orbsvcs/ImplRepo_Service/ImR_Activator.idl: * orbsvcs/ImplRepo_Service/ImR_Activator_i.h: * orbsvcs/ImplRepo_Service/ImR_Activator_i.cpp: * orbsvcs/ImplRepo_Service/ImR_Locator_i.cpp: * orbsvcs/ImplRepo_Service/Locator_Repository.h: * orbsvcs/ImplRepo_Service/Locator_Repository.cpp: * orbsvcs/ImplRepo_Service/Shared_Backing_Store.h: Add an enhancement to allow a restarted IMR Locator verify that servers * orbsvcs/tests/ImplRepo/RestartIMR: * bin/tao_other_tests.lst: Add new test to verify the feature. * orbsvcs/tests/ImplRepo/servers_list/run_test.pl: Fix a typo. Thu Sep 11 10:50:18 UTC 2014 Johnny Willemsen * TAO_IDL/be/be_visitor_connector/executor_ami_exs.cpp: * TAO_IDL/fe/lex.yy.cpp: Fixed compile problems with gcc on window, thanks to Milo H. Fields for providing the patch, this fixes bugzilla 4183 Mon Sep 8 16:17:12 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/ImR_Activator_i.cpp: Logging improvments. * orbsvcs/ImplRepo_Service/Locator_Repository.cpp: Improve the performance when dealing with a new server registering the same address of an already registered server. Rather than expunging the existing server from the registry, treat it as a dead server. Also improved the comparison of server identities. It will still get tripped up by multiple POAs in a server that are logically unlinked. * orbsvcs/tests/ImplRepo/ReconnectServer/client.cpp: Cleaned up a confusing bit of boolean algebra. * orbsvcs/tests/ImplRepo/ReconnectServer/run_test.pl: Add a variation of the test to handle POAs that are logically linked without using serverID. * tao/Dynamic_TP/DTP_Task.cpp: Add a sanity check before attempting to cancel a NUL servant. * tao/Synch_Invocation.cpp: Reformat a debug log message. Mon Sep 8 15:30:49 UTC 2014 Johnny Willemsen * tao/Connection_Handler.h: Added missing include Fri Sep 5 14:47:26 UTC 2014 Phil Mesnier * tests/Objref_Sequence_Test/server.cpp: Restored the explicit reference counting behavior. Thu Sep 4 22:38:17 UTC 2014 Phil Mesnier * tests/Objref_Sequence_Test/server.cpp: On at least one build, the server was throwing a WrongPolicy exception when servant->_this() was used to activate a new object. Since there was only one POA, the root POA, I have no idea why an exception was raised. Using explicit activation avoids the problem. Thu Sep 4 16:42:08 UTC 2014 Johnny Willemsen * orbsvcs/Naming_Service/NT_Naming_Server.cpp: * orbsvcs/Notify_Service/NT_Notify_Server.cpp: Another attempt to fix the control handler function signature Thu Sep 4 09:01:40 UTC 2014 Johnny Willemsen * orbsvcs/Naming_Service/NT_Naming_Server.cpp: * orbsvcs/Notify_Service/NT_Notify_Server.cpp: Corrected control handler function signature Tue Sep 2 17:06:37 UTC 2014 Johnny Willemsen * tests/POA/Persistent_ID/client.cpp: Fixed valgrind reported memory leak * tests/POA/TIE/server.cpp: Fixed coverity errors Tue Sep 2 15:28:03 UTC 2014 Phil Mesnier * orbsvcs/tests/ImplRepo/servers_list/run_test.pl: Have the test use an iterator when listing servers to be a regression test for bug 2843. Fri Aug 29 20:26:57 UTC 2014 Phil Mesnier * tao/CDR.cpp: * tao/DynamicInterface/DII_Arguments_Converter_Impl.cpp: * tao/Messaging/AMI_Arguments_Converter_Impl.cpp: * tao/PortableServer/Upcall_Wrapper.cpp: Fixed a vulnerability. In cases where errno happened to be zero when demarshaling a malformed string (length > available buffer) does not result in an exception being raised, rather a null char * will be passed to the servant. Also ensured the errno is set to a known state as CDR does not set errno in all failure cases, but always returns the status of the goodbit, so a demashal fail with an errno of zero still needs to raise the appropriate MARSHAL exception. Fri Aug 29 14:13:57 UTC 2014 Johnny Willemsen * tests/POA/TIE/client.cpp: * tests/POA/TIE/run_test.pl: * tests/POA/TIE/server.cpp: Removed ACE_HAS_USING_KEYWORD that define has been removed a long time ago, pass -debug also to client and server, looks this test is broken, not part of our test suite Fri Aug 22 15:57:21 UTC 2014 Phil Mesnier * examples/AMH/Sink_Server/MT_AMH_Server.h: * examples/Event_Comm/Consumer_Input_Handler.h: * orbsvcs/tests/Security/MT_BiDir_SSL/Client_Task.h: * tests/MT_BiDir/Client_Task.h: * tests/Stack_Recursion/Server_Task.h: * tests/Two_Objects/Second_i.h: Correct the include guard macro. * orbsvcs/orbsvcs/FaultTolerance/FT_Service_Callbacks.cpp: * orbsvcs/orbsvcs/HTIOP/HTIOP_Profile.cpp: * tao/AnyTypeCode/Any_Impl.cpp: * tao/Strategies/DIOP_Profile.cpp: * tao/Strategies/SHMIOP_Profile.cpp: * tao/Strategies/UIOP_Profile.cpp: Make order of evaluation explicit. * tao/LF_Multi_Event.cpp: Fix logic error in final state detection. This code may be unused as a clear error has never resulted in a runtime issue. Fri Aug 22 06:41:21 UTC 2014 Johnny Willemsen * tests/IORTable_Locator/client.cpp: Fixed memory leak * tests/OBV/Any/AnyS_impl.cpp: Removed commented out code * tests/Portable_Interceptors/Bug_3079/Server_ORBInitializer.h: Layout change Thu Aug 21 20:26:50 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/Shared_Backing_Store.cpp: Fix coverity reported errors and some whitespace cleanup. Sun Aug 17 18:52:48 UTC 2014 Johnny Willemsen * orbsvcs/orbsvcs/ESF/ESF_Delayed_Command.cpp: Removed if statements, the regular and else clause had the exact same code, reported by Coverity * tests/Smart_Proxies/Benchmark/client.cpp: * tests/Smart_Proxies/Benchmark/server.cpp: * tests/Smart_Proxies/Collocation/Smart_Proxy_Impl.h: * tests/Smart_Proxies/Collocation/Smart_Proxy_Impl.cpp: * tests/Smart_Proxies/On_Demand/client.cpp: * tests/Smart_Proxies/On_Demand/server.cpp: * tests/Smart_Proxies/Policy/Smart_Proxy_Impl.cpp: * tests/Smart_Proxies/Policy/client.cpp: * tests/Smart_Proxies/Policy/server.cpp: * tests/Smart_Proxies/Smart_Proxy_Impl.h: * tests/Smart_Proxies/client.cpp: * tests/Smart_Proxies/server.cpp: Fixed Coverity and valgrind reported errors Thu Aug 7 20:01:02 UTC 2014 Phil Mesnier * orbsvcs/tests/ImplRepo/Bug_4152_Regression/run_test.pl: accept a "server already shutdown" as not an error as it happens due to process timing on some platforms. Wed Aug 6 19:59:20 UTC 2014 Phil Mesnier * tao/Dynamic_TP/DTP_Task.cpp: Refactor the open method to avoid a race. Tue Aug 5 20:58:52 UTC 2014 Phil Mesnier * tao/Dynamic_TP/DTP_Task.cpp: Fix for the case when a threadpool is shared between POAs, it is OK for DTP_Task::open to be called more than once. * tests/Dynamic_TP/POA_Loader/Dynamic_TP_POA_Test_Dynamic/server.cpp: Extend the test to assure the above is true. Tue Aug 5 16:47:38 UTC 2014 Phil Mesnier * utils/catior/catior.cpp: Add an index number to improve the usefulness when processing concatinated IOR sources. Mon Aug 4 22:11:34 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/ImR_Activator_i.h: * orbsvcs/ImplRepo_Service/ImR_Activator_i.cpp: add windows compatible dead server detection. Mon Aug 4 17:12:03 UTC 2014 Phil Mesnier * orbsvcs/tests/ImplRepo/double_start/run_test.pl: fix up the basic test so it works again. Fri Aug 1 21:01:55 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/AsyncAccessManager.cpp: * orbsvcs/ImplRepo_Service/ImR_Activator_i.h: * orbsvcs/ImplRepo_Service/ImR_Activator_i.cpp: * orbsvcs/ImplRepo_Service/ImR_Locator.idl: Address potential race conditions when server starts are requested via both the primary and backup ImRs. * orbsvcs/tests/ImplRepo/double_start/client.cpp: * orbsvcs/tests/ImplRepo/double_start/restart.sh: * orbsvcs/tests/ImplRepo/double_start/run_test.pl: * orbsvcs/tests/ImplRepo/double_start/server.cpp: Refactor the kill test so that it better matches the original complaint. Thu Jul 31 20:32:52 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/AsyncAccessManager.cpp: * orbsvcs/ImplRepo_Service/ImR_Locator.idl: A little more nuance to the solution for double started servers. Now rather than returning a stale IOR for the client to fail, a new state is added to the access manager to make it hold on to client requests if the liveness checker reports server death but there is still a nonzero PID. Once the server actually terminates and the death is reported, then the locator will trigger the start of a new server instance. Thu Jul 31 17:13:54 UTC 2014 Phil Mesnier * tests/DynAny_Test/test_dynany.cpp: Unfuzz. Thu Jul 31 15:17:19 UTC 2014 Phil Mesnier * orbsvcs/tests/ImplRepo/Bug_4152_Regression/client.cpp: Fix the test to accommodate the possibility that the ImR may return a reference to a dying server rather than start a duplicate. Wed Jul 30 16:47:24 UTC 2014 Phil Mesnier * orbsvcs/tests/ImplRepo/double_start/Test.idl: * orbsvcs/tests/ImplRepo/double_start/Test_i.h: * orbsvcs/tests/ImplRepo/double_start/Test_i.cpp: * orbsvcs/tests/ImplRepo/double_start/client.cpp: * orbsvcs/tests/ImplRepo/double_start/double_start.mpc: * orbsvcs/tests/ImplRepo/double_start/run_test.pl: * orbsvcs/tests/ImplRepo/double_start/server.cpp: * orbsvcs/tests/ImplRepo/double_start/Terminator.h: * orbsvcs/tests/ImplRepo/double_start/Terminator.cpp: Clean up the test to remove unused code, address a valgrind reported leak. Wed Jul 30 16:04:35 UTC 2014 Phil Mesnier * tao/DynamicAny/DynAny_i.cpp: Added support for an equality test of dynamic anys holding sequences of basic types. Thanks to for contributing this fix. * tests/DynAny_Test/test_dynany.cpp: Extension to the test to add coverage of the above fix. Wed Jul 30 13:14:34 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/Shared_Backing_Store.cpp: fix a VMS compile error. Mon Jul 28 20:39:57 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/AsyncAccessManager.cpp: * orbsvcs/ImplRepo_Service/AsyncListManager.h: * orbsvcs/ImplRepo_Service/AsyncListManager.cpp: Further enforcement of the principal of at most one server for non per-client mode servers. If a ping returns a status of DEAD but the locator holds a non-zero pid, then the server is treated the same as a transient, being considered ALIVE_MAYBE. Mon Jul 28 13:59:12 UTC 2014 Phil Mesnier * tests/POA/Persistent_ID/client.cpp: Fix the reporting of an expected exception so it is not recorded as an error. Fri Jul 25 21:04:25 UTC 2014 Phil Mesnier * orbsvcs/tests/ImplRepo/double_start/double_start.mpc: add a missed dependency. Thu Jul 24 21:42:52 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/ImR_Locator_i.h: * orbsvcs/ImplRepo_Service/ImR_Locator_i.cpp: * orbsvcs/ImplRepo_Service/Shared_Backing_Store.cpp: Address the scenario where a server IOR is picked up on a refresh from the persistent store to ensure the timeout policy is applied. Also cleaned up previous commit's temporary fix, it is the right thing to do. * orbsvcs/tests/ImplRepo/double_start/Test_i.cpp: * orbsvcs/tests/ImplRepo/double_start/client.cpp: * orbsvcs/tests/ImplRepo/double_start/double_start.mpc: * orbsvcs/tests/ImplRepo/double_start/run_test.pl: * orbsvcs/tests/ImplRepo/double_start/server.cpp: * bin/tao_other_tests.lst: Added a sub-test for the case where the target server is hung and the primary ImR locator is off line. Under some conditions this can lead to server duplication. Solution TBD. Thu Jul 24 16:28:19 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/ImR_Locator_i.cpp: Revert part of the change from Wed Jul 16 16:42:52 UTC 2014 that limited when servers were added to the liveness checker. That change broke some of the tests such as the Bug 4152 regression test. See the note attached to the #if 0 compile guard. Fri Jul 18 20:33:17 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/Shared_Backing_Store.cpp: Replace the error inducing exception report as the condition is not an error. Thu Jul 17 21:41:37 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/Server_Info.cpp: Fix a Solaris compiler warning. Thu Jul 17 21:25:23 UTC 2014 Phil Mesnier * orbsvcs/tests/ImplRepo/double_start/clt.conf: * orbsvcs/tests/ImplRepo/double_start/restart.sh: Fuzz fix. Thu Jul 17 19:14:51 UTC 2014 Phil Mesnier * orbsvcs/tests/ImplRepo/double_start/client.cpp: * orbsvcs/tests/ImplRepo/double_start/clt.conf: add the reply close retry option and update the client output. * orbsvcs/tests/ImplRepo/ping_interrupt/server.cpp: Make the test wchar compatible. Thu Jul 17 13:19:54 UTC 2014 Phil Mesnier * orbsvcs/orbsvcs/Naming/FaultTolerant/FT_Naming_Manager.h: * orbsvcs/orbsvcs/Naming/FaultTolerant/FT_Naming_Manager.cpp: Make the new global strategy option wchar compatible. Wed Jul 16 16:42:52 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/AsyncAccessManager.h: * orbsvcs/ImplRepo_Service/AsyncAccessManager.cpp: * orbsvcs/ImplRepo_Service/ImR_Locator.idl: * orbsvcs/ImplRepo_Service/ImR_Locator_i.h: * orbsvcs/ImplRepo_Service/ImR_Locator_i.cpp: * orbsvcs/ImplRepo_Service/Locator_Repository.h: * orbsvcs/ImplRepo_Service/Locator_Repository.cpp: * orbsvcs/ImplRepo_Service/Server_Info.cpp: * orbsvcs/ImplRepo_Service/Shared_Backing_Store.h: * orbsvcs/ImplRepo_Service/Shared_Backing_Store.cpp: * orbsvcs/ImplRepo_Service/UpdateableServerInfo.h: * orbsvcs/ImplRepo_Service/UpdateableServerInfo.cpp: This addresses certain situations when a primary and backup ImR are coupled for fault tolerance, and a client detects the failure of a server. The client may send a request to the backup ImR even though the primary is running. This causes the backup ImR to send a start request to the activator, but the started server will send liveness updates to the primary, leaving the backup and the client hung. Now the primary and backup ImR share liveness updates so the backup can know when the server is ready and send a new forwardable IOR back to the client. * orbsvcs/tests/ImplRepo/double_start: * bin/tao_other_tests.lst: This is a new test that replicates the above scenario with the added twist that a specialized "restart" script is the actual process started by the activator which monitors the server exit code and requests a restart if necessary. When combined with the above failure, leads to a duplicate server running. Thu Jul 10 14:21:49 UTC 2014 Phil Mesnier * tests/POA/Persistent_ID/client.cpp: * tests/POA/Persistent_ID/server.cpp: Fix the server to actually create an object on the persistent POA and extend the test to add call to raise an exception. This aids in testing the affect of the negative case on the server. Thu Jul 3 11:02:19 UTC 2014 Johnny Willemsen * TAO_IDL/be/be_visitor_union/cdr_op_cs.cpp: * examples/Logging/Logger.idl: * orbsvcs/orbsvcs/AV/AVStreams_i.cpp: * orbsvcs/tests/AVStreams/Asynch_Three_Stage/Connection_Manager.h: * orbsvcs/tests/AVStreams/Component_Switching/Connection_Manager.h: * tao/IIOP_Acceptor.h: * tao/RTScheduling/Request_Interceptor.cpp: * tao/SystemException.cpp: * tao/Valuetype/ValueBase.h: * tao/ZIOP/ZIOP_Service_Context_Handler.cpp: * tests/AMH_Oneway/server.cpp: * tests/Bug_2319_Regression/server.cpp: Fixed typos, triggered by a patch from Pau Garcia i Quiles Mon Jun 23 12:49:44 UTC 2014 Johnny Willemsen * NEWS: Updated for next release Mon Jun 23 09:43:57 CEST 2014 Johnny Willemsen * TAO version 2.2.7 released. Fri Jun 20 16:47:17 UTC 2014 Phil Mesnier * orbsvcs/IFR_Service/README: * orbsvcs/ImplRepo_Service/README: * orbsvcs/Naming_Service/README: * orbsvcs/Notify_Service/README: update executable names and other content to be current. * orbsvcs/Notify_Service/NT_Notify_Server.cpp: * orbsvcs/Notify_Service/NT_Notify_Service.h: * orbsvcs/Notify_Service/NT_Notify_Service.cpp: Added command line interface for populating the service command line arguments without the need to invoke regedit. Wed Jun 18 20:33:36 UTC 2014 Phil Mesnier * orbsvcs/Naming_Service/NT_Naming_Server.cpp: * orbsvcs/Naming_Service/NT_Naming_Service.h: * orbsvcs/Naming_Service/NT_Naming_Service.cpp: * orbsvcs/Naming_Service/README: Added command line interface for populating the service command line arguments without the need to invoke regedit. Tue Jun 17 16:10:49 UTC 2014 Phil Mesnier * orbsvcs/orbsvcs/Naming/FaultTolerant/FT_Naming_Manager.cpp: * orbsvcs/orbsvcs/Naming/FaultTolerant/nsgroup_svc.cpp: Update comments and parameter verification to allow setting a load balancing policy of RANDOM. * utils/nsgroup/nsgroup.cpp: * utils/nsgroup/run_test.pl: Update the test to demonstrate use of the RANDOM LB policy. Mon Jun 16 16:30:40 UTC 2014 Phil Mesnier * orbsvcs/tests/ImplRepo/servers_list/run_test_ft.pl: One more windows fix. A delay is required after killing primary locator to avoid comm failures. Fri Jun 13 21:19:05 UTC 2014 Phil Mesnier * orbsvcs/tests/ImplRepo/servers_list/run_test_ft.pl: Fix the test on windows. Note, a commandline with a leading space won't be spawned. Thu Jun 12 23:16:02 UTC 2014 Phil Mesnier * orbsvcs/orbsvcs/Naming/Storable_Naming_Context.cpp: Reintroduce synchronization in the new_context operation, since updates a shared object ID counter. Thu Jun 12 17:41:06 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/AsyncAccessManager.cpp: * orbsvcs/ImplRepo_Service/UpdateableServerInfo.h: * orbsvcs/ImplRepo_Service/UpdateableServerInfo.cpp: Fix for timely repo updates. This also avoids a potential crash at shutdown. Wed Jun 11 14:56:47 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/AsyncAccessManager.h: * orbsvcs/ImplRepo_Service/AsyncAccessManager.cpp: * orbsvcs/ImplRepo_Service/ImR_Locator_i.cpp: * orbsvcs/ImplRepo_Service/Locator_Options.h: * orbsvcs/ImplRepo_Service/Locator_Options.cpp: * orbsvcs/ImplRepo_Service/Locator_Repository.h: * orbsvcs/ImplRepo_Service/Server_Info.h: * orbsvcs/ImplRepo_Service/Server_Info.cpp: * orbsvcs/ImplRepo_Service/Shared_Backing_Store.h: * orbsvcs/ImplRepo_Service/Shared_Backing_Store.cpp: * orbsvcs/ImplRepo_Service/UpdateableServerInfo.h: * orbsvcs/ImplRepo_Service/UpdateableServerInfo.cpp: * orbsvcs/ImplRepo_Service/XML_Backing_Store.h: * orbsvcs/ImplRepo_Service/XML_Backing_Store.cpp: Ensure that active state updates are shared and acted on by both primary and backup IMR locators. This fixes the case where following a shutdown of the primary IMR locator, the backup is not aware of which servers have been activated. * orbsvcs/tests/ImplRepo/servers_list/run_test_ft.pl: * bin/tao_other_tests.lst: A new test for the behavior added to the ImR. Thu Jun 5 22:03:18 UTC 2014 Phil Mesnier * orbsvcs/orbsvcs/Naming/FaultTolerant/FT_Naming_Manager.h: * orbsvcs/orbsvcs/Naming/FaultTolerant/FT_Naming_Manager.cpp: * orbsvcs/orbsvcs/Naming/FaultTolerant/FT_Naming_Server.cpp: As a performance enhancement, allow the load balancing strategy to be set globally, overriding the per-object-group setting. No change to the default behavior which is per-group, but now pass -l round_robin or -l random to set the global strategy. * tao/IIOP_Profile.cpp: As another performance enhancement, avoid the preferred interface calls if no list of interfaces was provided. * tao/Storable_FlatFileStream.cpp: clean up debug output. Thu Jun 5 06:36:27 UTC 2014 Johnny Willemsen * tao/PortableServer/Root_POA.h: Fixed msvc14 warning Fri May 30 22:55:56 UTC 2014 Phil Mesnier * orbsvcs/orbsvcs/Naming/Storable_Naming_Context.h: * orbsvcs/orbsvcs/Naming/Storable_Naming_Context.cpp: * tao/Storable_FlatFileStream.cpp: Fix for the corner case of a race between redundant naming servers sharing a storable context file. Thu May 29 17:01:45 UTC 2014 Phil Mesnier * orbsvcs/FT_Naming_Service/README: minor cleanup. * orbsvcs/orbsvcs/FT_Naming_Serv.mpc: added FT_Random files. * orbsvcs/orbsvcs/Naming/Bindings_Iterator_T.h: * orbsvcs/orbsvcs/Naming/Bindings_Iterator_T.cpp: removed the redundant and confusing lock reference passed separately through the constructor and replaced it with an accessor method on the context being iterated. This also was necessary by the change to RW locking for scalability improvement. * orbsvcs/orbsvcs/Naming/FaultTolerant/FT_Naming_Manager.h: * orbsvcs/orbsvcs/Naming/FaultTolerant/FT_Naming_Manager.cpp: * orbsvcs/orbsvcs/Naming/FaultTolerant/FT_Persistent_Naming_Context.cpp: * orbsvcs/orbsvcs/Naming/FaultTolerant/FT_Random.h: * orbsvcs/orbsvcs/Naming/FaultTolerant/FT_Random.cpp: * orbsvcs/orbsvcs/Naming/FaultTolerant/FT_Storable_Naming_Context.cpp: Optimize the FT/LB performance by only taking a lock when necessary. The underling context object synchronizes access to the context map, and the Round Robin strategy object synchronizes access to the index. Added a Random strategy that does not need a lock. * orbsvcs/orbsvcs/Naming/Hash_Naming_Context.h: * orbsvcs/orbsvcs/Naming/Hash_Naming_Context.cpp: * orbsvcs/orbsvcs/Naming/Persistent_Naming_Context.cpp: * orbsvcs/orbsvcs/Naming/Storable_Naming_Context.h: * orbsvcs/orbsvcs/Naming/Storable_Naming_Context.cpp: * orbsvcs/orbsvcs/Naming/Transient_Naming_Context.cpp: Replaced the Recursive locking with RW. There was no need for recursive locking, even in the face of nested and possibly cyclic compound names. Given that most operations on the name service are read-only resolves, using RW locking allows for threadsafe concurrent access. In the case of Storable contexts, the backing file is now checked to see if a reload is necessary before grabbing a lock and loading from the file. * tao/Storable_File_Guard.h: * tao/Storable_File_Guard.cpp: Split the init method implementation into two parts that can be called separately. This allows for initialization of the related file object without holding a lock, then aquiring a lock only if loading from the file is necessary. Default behavior is unchanged. Mon May 19 20:25:18 UTC 2014 Phil Mesnier * tests/Dynamic_TP/POA_Loader/Dynamic_TP_POA_Test_Dynamic/run_test.pl: Modify the test to make it work on Android and other xplatforms. Wed May 14 20:04:21 UTC 2014 Phil Mesnier * tao/Dynamic_TP/DTP_Task.h: * tao/Dynamic_TP/DTP_Task.cpp: Fix another race condition that can cause the server to hang. * tests/Dynamic_TP/POA_Loader/Dynamic_TP_POA_Test_Dynamic/run_test.pl: * tests/Dynamic_TP/POA_Loader/Dynamic_TP_POA_Test_Static/run_test.pl: Always run all tests. Mon May 12 11:48:06 UTC 2014 Phil Mesnier * tests/HandleExhaustion/server.cpp: Fix compile error. Mon May 12 02:26:46 UTC 2014 Phil Mesnier * tests/HandleExhaustion/client.cpp: * tests/HandleExhaustion/server.cpp: The test doesn't run on windows, but it has to build there. Sat May 10 13:24:27 UTC 2014 Phil Mesnier * tests/HandleExhaustion/run_test.pl: * tests/HandleExhaustion/server.cpp: More output to investigate the cause of the failures. It looks like the problem is related to bug 3326, and so the solution may be to close enough fds to get under the reactor maximum. Fri May 9 20:38:01 UTC 2014 Phil Mesnier * tao/Dynamic_TP/DTP_Task.cpp: More race condition cleanup. Fri May 9 16:53:27 UTC 2014 Phil Mesnier * tao/Dynamic_TP/DTP_Task.h: * tao/Dynamic_TP/DTP_Task.cpp: Clean up a race condition that could allow too many threads to exit if they were started concurrently. Fri May 9 12:18:49 UTC 2014 Phil Mesnier * tests/HandleExhaustion/client.cpp: * tests/HandleExhaustion/server.cpp: try again with ACE wrapper for streams. Thu May 8 22:20:57 UTC 2014 Phil Mesnier * tests/HandleExhaustion/client.cpp: * tests/HandleExhaustion/run_test.pl: * tests/HandleExhaustion/server.cpp: This test seems to fail only on the scoreboard. Adding some output to hopefully gain insight into why it is failing. Tue May 6 09:15:57 UTC 2014 Johnny Willemsen * bin/tao_orb_tests.lst: 4097 doens't compile with CORBA/e micro enabled Mon Apr 28 14:23:34 UTC 2014 Phil Mesnier * tao/Dynamic_TP/DTP_Thread_Pool.h: * tao/Dynamic_TP/DTP_Thread_Pool.cpp: Use THR_DETACHED for creating pool threads so that as they die all resources are immediately released. Added a new waiter thread that is joinable and is used to ensure orb shutdown is still orderly, avoiding races with busy threads. Thu Apr 24 15:57:16 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/AsyncListManager.h: * orbsvcs/ImplRepo_Service/AsyncListManager.cpp: * orbsvcs/ImplRepo_Service/ImR_Locator_i.cpp: * orbsvcs/ImplRepo_Service/LiveCheck.cpp: Fix some bad list behavior. There were three issues involved. First, the list manager assumed the configuration of the server info repository was fixed over the duration of the information gathering process. When active pinging of servers was requested the IMR could take requests to add new servers which changed the repository. Second, if a new entry was added to the repo during an active list, an iterator was constructed. But the wrong POA was used to activate it, which raised a user exception, but that could not be marshaled because it wasn't defined in the IDL. Finally, the list manager makes use of reference counted listener objects to asynchronously keep track of ping results. These were tracked using an ACE_Unbounded_Set which uses the head node as a temporary container for a value to be removed. This makes for efficient end-of-list detection, but since my values are reference counting pointers, this means the managed objects linger. * orbsvcs/ImplRepo_Service/tao_imr_i.h: * orbsvcs/ImplRepo_Service/tao_imr_i.cpp: Add in the ability to deal with server info list iterators returned when the number of servers is greater than the maximum list size specified. Tue Apr 22 16:34:04 UTC 2014 Phil Mesnier * orbsvcs/tests/Notify/Bug_3646c_Regression/server.cpp: Fix Coverity warning by removing redundant debug output. * orbsvcs/orbsvcs/Property/CosPropertyService_i.cpp: * orbsvcs/tests/Property/client.cpp: * orbsvcs/tests/Property/server.cpp: Fix memory leaks reported by valgrind. Tue Apr 22 12:38:15 UTC 2014 Johnny Willemsen * tao/Pseudo_VarOut_T.cpp: Don't use explicit global scope, also not used in inline file Tue Apr 22 08:29:30 UTC 2014 Johnny Willemsen * NEWS: Make x.2.6 public * etc/tao_anytypecode.doxygen: * etc/tao_av.doxygen: * etc/tao_compression.doxygen: * etc/tao_cosevent.doxygen: * etc/tao_cosnaming.doxygen: * etc/tao_cosnotification.doxygen: * etc/tao_costime.doxygen: * etc/tao_costrader.doxygen: * etc/tao_dynamicany.doxygen: * etc/tao_dynamicinterface.doxygen: * etc/tao_esf.doxygen: * etc/tao_ifr.doxygen: * etc/tao_implrepo.doxygen: * etc/tao_iormanip.doxygen: * etc/tao_iortable.doxygen: * etc/tao_pi.doxygen: * etc/tao_pi_server.doxygen: * etc/tao_portablegroup.doxygen: * etc/tao_portableserver.doxygen: * etc/tao_rtcorba.doxygen: * etc/tao_rtevent.doxygen: * etc/tao_rtportableserver.doxygen: * etc/tao_security.doxygen: * etc/tao_smartproxies.doxygen: * etc/tao_ssliop.doxygen: * etc/tao_strategies.doxygen: * etc/tao_transportcurrent.doxygen: * etc/tao_ziop.doxygen: Handle pidl files as idl files Tue Apr 22 08:44:41 CEST 2014 Johnny Willemsen * TAO version 2.2.6 released. Wed Apr 16 15:24:27 UTC 2014 Phil Mesnier * orbsvcs/tests/Notify/Bug_3646c_Regression/server.cpp: Fix build on certain windows platforms. Wed Apr 16 14:05:11 UTC 2014 Phil Mesnier * orbsvcs/tests/Notify/Bug_3646c_Regression/server.cpp: * orbsvcs/tests/Trading/export_test.cpp: clean up more fuzz. Tue Apr 15 16:30:30 UTC 2014 Phil Mesnier * orbsvcs/orbsvcs/PortableGroup/UIPMC_Connector.cpp: * orbsvcs/orbsvcs/SSLIOP/SSLIOP_Factory.cpp: * orbsvcs/tests/Security/BiDirectional/server.cpp: fuzz fix. * orbsvcs/tests/Notify/Bug_3646c_Regression/run_test.pl: * orbsvcs/tests/Notify/Bug_3646c_Regression/server.cpp: more wchar scoreboard cleanup. Tue Apr 15 15:11:48 UTC 2014 Phil Mesnier * bin/tao_other_tests.lst: * orbsvcs/tests/Trading/export_test.cpp: * orbsvcs/tests/Trading/run_test.pl: more wchar scoreboard cleanup. Mon Apr 14 16:11:02 UTC 2014 Phil Mesnier * orbsvcs/orbsvcs/PortableGroup/UIPMC_Connector.cpp: Fix wchar + ipv6 compile error. * orbsvcs/orbsvcs/SSLIOP/SSLIOP_Acceptor.cpp: Fix wchar debug output * orbsvcs/orbsvcs/SSLIOP/SSLIOP_Factory.h: * orbsvcs/orbsvcs/SSLIOP/SSLIOP_Factory.cpp: Wchar parameter parsing requires the use of an intermediate string buffer. * orbsvcs/tests/Security/BiDirectional/client.cpp: * orbsvcs/tests/Security/BiDirectional/server.cpp: * orbsvcs/tests/Security/MT_SSLIOP/server.cpp: * orbsvcs/tests/Security/mixed_security_test/client.cpp: Fix wchar debug output. * tests/AMI/run_exclusive_rw.pl: Enhance debug output. Mon Apr 14 13:19:14 UTC 2014 Phil Mesnier * orbsvcs/tests/Trading/run_test.pl: The corresponding fix to the script to give the correct ready file name to the exporter. Fri Apr 11 21:38:18 UTC 2014 Phil Mesnier * orbsvcs/tests/Trading/TT_Info.cpp: Fix the skipping of unprocessed args so downstream functions can have a go. This may be related to the scoreboard failures but probably not. Thu Apr 10 12:52:30 UTC 2014 Johnny Willemsen * etc/tao.doxygen: Let doxygen handle pidl files as idl files Wed Apr 9 21:41:49 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/Locator_Repository.cpp: Fix a case where a null pointer was supposed to be returned but instead was dereferenced. * tests/MT_NoUpcall_Connect/client.cpp: Fix end-of-run access violation. The reference counted ORB Core requires that all stubs and other entities need to be cleaned up before the ORB is explicitly destroyed. Wed Apr 9 10:21:16 UTC 2014 Phil Mesnier * bin/tao_orb_tests.lst: Too many n's. Wed Apr 9 09:16:15 UTC 2014 Johnny Willemsen * tests/Bug_3853_Regression/Client_ORBInitializer.cpp: * tests/Bug_3853_Regression/Hello_i.h: * tests/Bug_3853_Regression/Hello_i.cpp: * tests/Bug_3853_Regression/client_interceptor.cpp: * tests/Bug_3853_Regression/run_test.pl: * tests/Bug_3853_Regression/server.cpp: Layout changes Tue Apr 8 17:55:52 UTC 2014 Johnny Willemsen * tests/DiffServ/client.cpp: * tests/DiffServ/server.cpp: Shutdown orb/poa to fix valgrind reported memory leaks Tue Apr 8 17:19:07 UTC 2014 Johnny Willemsen * tests/Bug_3953_Regression/client.cpp: * tests/Bug_3953_Regression/server.cpp: Shutdown the ORB to fix valgrind reported memory leaks * tests/Bug_3953_Regression/run_test.pl: Copy svc.conf file to the targets Mon Apr 7 22:24:44 UTC 2014 Phil Mesnier * tao/Dynamic_TP/DTP_Thread_Pool.h: * tao/Dynamic_TP/DTP_Thread_Pool.cpp: Added synchronization between the requester of new threads and the and the newly spawned threads. This deals with a situation where a heavily loaded machine takes a relatively long time to activate a new thread allowing the requesting thread to spin, repeatedly requesting more threads, perhaps 100s more. The loop in question is part of the new test added to the leader-follower wait strategy right before a client thread is forced to become client leader. Although there is a thread yield there, apparently that still isn't enough to ensure a new thread is created to become the leader first. I'm not entirely certain this patch will prevent all redundant thread activation requests, but I do believe it will significantly reduce the number. Mon Apr 7 18:55:17 UTC 2014 Phil Mesnier * tests/MT_NoUpcall_Connect/server.cpp: Scoreboard fix. Mon Apr 7 16:16:15 UTC 2014 Phil Mesnier * tao/LF_Connect_Strategy.h: * tao/LF_Connect_Strategy.cpp: * tao/Nested_Upcall_Guard.h: * tao/Wait_On_LF_No_Upcall.cpp: * tao/default_client.cpp: Fix to enable client threads waiting for a connect completion to enforce the same upcall deferral strategy as is used while waiting for a reply. To do this the nested upcall guard used by the LF_No_Upcall strategy is now shared with the connection LF wait strategy. Its use is controled by the reply wait configuration in the default client strategy factory. * tests/MT_NoUpcall_Connect: * bin/tao_orb_tests.lst: A new test case to verify the new behavior. Mon Apr 7 16:14:40 UTC 2014 Phil Mesnier * orbsvcs/tests/ImplRepo/oneway/run_test.pl: Improve the debugging output usefulness. Sun Apr 6 18:57:09 UTC 2014 Johnny Willemsen * tao/TAO_Internal.cpp: Fixed formatting of a debug statement consistent * tests/Bug_3896_Regression/client.cpp: * tests/Connect_Strategy_Test/client.cpp: Print a message in the client before calling shutdown on the server Sat Apr 5 19:30:37 UTC 2014 Phil Mesnier * tao/DynamicAny/DynAny_i.cpp: Use the long double intitalizer macro. Sat Apr 5 12:14:52 UTC 2014 Johnny Willemsen * tests/Bug_3826_Regression/run_test.pl: * tests/CodeSets/simple/run_test.pl: Copy svc.conf to targets * tests/CodeSets/simple/client.cpp: Shutdown the orb to fix valgrind reported leaks Fri Apr 4 16:13:34 UTC 2014 Phil Mesnier * tao/DynamicAny/DynAny_i.cpp: Type LongDouble was missing from the initializer. Fri Apr 4 15:33:08 UTC 2014 Phil Mesnier * tao/DynamicAny/DynAny_i.cpp: Type LongDouble was not being compared with the equality test. * tests/DynAny_Test/test_dynany.cpp: Enhanced to show the LongDouble equality test fix. Fri Apr 4 08:40:43 UTC 2014 Martin Corino * bin/tao_orb_tests.lst: Disabled a number of tests incompatible with AVD targets. * tests/Bug_3251_Regression/run_test.pl: * tests/Bug_3559_Regression/run_test.pl: * tests/Bug_3755_Ext_Regression/run_test.pl: * tests/Bug_3755_Regression/run_test.pl: * tests/Bug_3826_Regression/run_test.pl: * tests/Dynamic_TP/ORB_ThreadPool/run_test.pl: * tests/Dynamic_TP/POA_Loader/Dynamic_TP_POA_Test_Dynamic/run_test.pl: * tests/HandleExhaustion/run_test.pl: * tests/ORB_Local_Config/Bug_3049/run_test.pl: * tests/ORB_Local_Config/Service_Dependency/run_test.pl: * tests/Object_Loader/run_test.pl: * tests/Optimized_Connection/run_test.pl: * tests/RTCORBA/Banded_Connections/run_test.pl: * tests/RTCORBA/Bug_3382_Regression/run_test.pl: * tests/RTCORBA/Client_Propagated/run_test.pl: * tests/RTCORBA/Linear_Priority/run_test.pl: * tests/RTCORBA/Policy_Combinations/run_test.pl: * tests/RTCORBA/Priority_Inversion_With_Bands/run_test.pl: * tests/RTCORBA/Server_Declared/run_test.pl: * tests/RTCORBA/Thread_Pool/run_test.pl: Added missing support/instructions to be able to run these tests on non-local targets. Tue Mar 18 14:40:16 UTC 2014 Johnny Willemsen * TAO_IDL/be/be_visitor_component/context_svth.cpp: Make the members for a publishes protected so that a derived component can access them. Thanks to Sebastian Perk for reporting this Mon Mar 17 09:11:17 UTC 2014 Johnny Willemsen * tao/CSD_Framework/CSD_POA.cpp: Fixed possible crash when pointer would be zero * tao/SystemException.cpp: Added missing comma Tue Mar 11 14:55:24 UTC 2014 Johnny Willemsen * tao/Transport.h: * tao/Transport.inl: Added a mutext to the transport stats. These could be modified by multiple threads causing a datarace. If you are not using the transport stats at all, consider disabling them in your TAO configuration by setting TAO_HAS_TRANSPORT_CURRENT to 0 in your config.h file or by adding transport_current=0 to your default.features file Mon Mar 10 19:52:17 UTC 2014 Phil Mesnier * tao/TAO_Server_Request.cpp: Missed the constructor variants in the cpp file. Mon Mar 10 16:25:23 UTC 2014 Phil Mesnier * tao/CSD_ThreadPool/CSD_TP_Strategy.cpp: * tao/Dynamic_TP/DTP_POA_Strategy.cpp: * tao/PortableServer/Object_Adapter.cpp: * tao/PortableServer/Servant_Base.cpp: * tao/TAO_Server_Request.h: * tao/TAO_Server_Request.inl: Refining the previous commit. It turns out that simply moving the sync reply before the dispatch was problematic in the case where a location forward exception may come from a default servant, such as the case with the Implementation Repository. To accommodate both the need to send the reply before the dispatch in case of queuing and after in the case of IMR, I've integrated the logic into the server request object and added a new condition that is set to true only if the CSD_ThreadPool or Dynamic_TP_POA strategy is used. Fri Mar 7 20:28:55 UTC 2014 Phil Mesnier * tao/PortableServer/Object_Adapter.cpp: * tao/PortableServer/Servant_Base.cpp: Relocate the sending of a sync reply on sync_with_server to happen before the request has a chance to be queued by CSD. In non-queuing use cases the move has no practical effect, but when CSD is in use and a request happens to be queued, the oneway client ends up being blocked until the request is dequeued, which can lead to poor client performance. Fri Mar 7 13:45:06 UTC 2014 Johnny Willemsen * tao/Acceptor_Registry.h: * tao/Adapter_Registry.h: * tao/Cleanup_Func_Registry.h: * tao/Compression/zlib/ZlibCompressor_Factory.h: * tao/Condition.h: * tao/Connection_Handler.h: * tao/ObjectKey_Table.h: * tao/Transport.h: * tao/default_resource.h: Use ACE_UNIMPLEMENTED_FUNC instead of ACE_Copy_Disabled, the first maps to =delete with C++11 and results in a small footprint decrease Fri Mar 7 13:31:56 UTC 2014 Johnny Willemsen * tao/Transport.h: Use ACE_UNIMPLEMENTED_FUNC instead of ACE_Copy_Disabled, the first maps to =delete with C++11 and results in a small footprint decrease * tao/TransportCurrent/TC.idl: Doxygen improvements Fri Feb 28 07:59:54 UTC 2014 Johnny Willemsen * NEWS: Make x.2.5 public and prepare for next release Fri Feb 28 08:46:21 CET 2014 Johnny Willemsen * TAO version 2.2.5 released. Wed Feb 26 14:34:37 UTC 2014 Johnny Willemsen * orbsvcs/tests/Miop/McastHello/McastHello.cpp: * orbsvcs/tests/Miop/McastHello/client.cpp: Layout changes * orbsvcs/tests/Miop/McastHello/run_test.pl: Reduce the time we wait for a client, test looks to run fast, no need to wait more than 4 minutes on the client * tao/RTCORBA/RT_Current.cpp: Const change Mon Feb 24 18:01:39 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/LiveCheck.cpp: Improve the handling of a timeout exception to identify a connection failure vs a timeout due to busy server. Also, optimize the scheduling of pings so that if a sufficiently close time is already scheduled it won't schedule another one. This prevents needless calls to handle_timeout (). * orbsvcs/tests/ImplRepo/servers_list/run_test.pl: Improve the test's debug capability and means of killing intermediate servers. The latter was necessary because the tao_imr utility now lists "running maybe" service in the active server list. Mon Feb 24 18:14:28 UTC 2014 Johnny Willemsen * bin/tao_other_tests.lst: Don't run LoadBalancing/LoadMonitor/CPU on windows, we don't have support to retrieve the CPU load on this platform Mon Feb 24 14:45:47 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/Shared_Backing_Store.cpp: * orbsvcs/ImplRepo_Service/tao_imr_i.cpp: * orbsvcs/tests/ImplRepo/airplane_client_i.cpp: * orbsvcs/tests/ImplRepo/airplane_server_i.cpp: * orbsvcs/tests/ImplRepo/nestea_client_i.cpp: * orbsvcs/tests/ImplRepo/nestea_server_i.cpp: * tests/Bug_2809_Regression/server.cpp: Coverity fixes. Mon Feb 24 11:43:59 UTC 2014 Johnny Willemsen * tao/HTTP_Parser.cpp: Fixed potential memory leak Mon Feb 24 10:36:57 UTC 2014 Johnny Willemsen * orbsvcs/orbsvcs/LoadBalancing/LB_CPU_Load_Average_Monitor.cpp: New windows code triggers a warning but no time to sort out, so comment it out for the moment Mon Feb 24 09:45:05 UTC 2014 Johnny Willemsen * orbsvcs/tests/Event/lib/Driver.cpp: Return > 0 in case we have a failure Mon Feb 24 09:17:14 UTC 2014 Johnny Willemsen * orbsvcs/tests/Trading/run_test.pl: Shorten wait times, test really runs quickly, so the default start times should be enough Sun Feb 23 19:05:17 UTC 2014 Johnny Willemsen * tao/Strategies/OC_Endpoint_Selector_Loader.cpp: * tao/Strategies/advanced_resource.h: Layout changes * tests/Bug_3598a_Regression/ClientRequest_Interceptor.cpp: * tests/Bug_3598a_Regression/client.cpp: * tests/Bug_3598a_Regression/run_test.pl: * tests/Bug_3598a_Regression/server.cpp: Test always fails on windows, the error is from the server that doesn't link the strategies library, but does read in the svc.conf file. Reimplemented part of the client to cleanly shutdown the ORB so that we don't get valgrind reported leads Sun Feb 23 18:27:00 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/ImR_Activator_i.cpp: Another refactor fix to keep working on non-windows. Sun Feb 23 02:10:34 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/ImR_Activator_i.cpp: Missed part of the fix for windows support for kill. Fri Feb 21 19:08:58 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/ImR_Activator_i.cpp: make sure the kill command works on windows too. * orbsvcs/tests/ImplRepo/kill_slow_server/run_test.pl: clean up the test a bit more. Fri Feb 21 11:01:28 UTC 2014 Johnny Willemsen * orbsvcs/orbsvcs/LoadBalancing/LB_CPU_Load_Average_Monitor.cpp: Implement retrieval of cpu load avarage on windows * orbsvcs/orbsvcs/LoadBalancing/LB_CPU_Utilization_Monitor.cpp: Initialize pointer with 0 * orbsvcs/orbsvcs/LoadBalancing/LB_Pull_Handler.cpp: Can't print process/thread id within the _tao_print_exception argument * orbsvcs/tests/LoadBalancing/LoadMonitor/CPU/client.cpp: Return 1 instead of -1 on failure Fri Feb 21 07:58:22 UTC 2014 Johnny Willemsen * orbsvcs/tests/ImplRepo/run_test.pl: Check the return value of net start, if that fails, don't continue testing Fri Feb 21 00:50:20 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/LiveCheck.cpp: * orbsvcs/ImplRepo_Service/tao_imr_i.cpp: Retry a ping on a poll request even if it was previously timed out. A timed out server may still be alive in some sense, its status is set to "maybe" so it is now listed with a tao_imr list -a command, but with (maybe) following the server name. * orbsvcs/tests/ImplRepo/servers_list/run_test.pl: Make sure the activator informs the locator of server death so that the killed server's state is updated appropriately. Fri Feb 21 00:11:22 UTC 2014 Phil Mesnier * orbsvcs/tests/ImplRepo/kill_slow_server/run_test.pl: fix spurious error message on windows. Thu Feb 20 11:39:48 UTC 2014 Johnny Willemsen * tao/IIOP_Connection_Handler.cpp (handle_close): Removed assert, looks the reactor can call it in certain error conditions, now also visible on the scoreboard with the new C++BuilerXE builds. Thu Feb 20 07:52:24 UTC 2014 Johnny Willemsen * orbsvcs/ImplRepo_Service/Config_Backing_Store.cpp: Fixed C++BuilderXE warning Thu Feb 20 07:51:03 UTC 2014 Johnny Willemsen * tests/Compression/RLECompressorTest.cpp: Fixed C++BuilderXE warnings Thu Feb 20 07:47:10 UTC 2014 Johnny Willemsen * tao/IIOP_Connector.cpp: Put TList_Holder in a named namespace to resolve some invalid Intel C++ warnings Thu Feb 20 01:51:00 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/ImR_Activator_i.cpp: Catch exceptions when informing locator of child death. * orbsvcs/ImplRepo_Service/LiveCheck.h: * orbsvcs/ImplRepo_Service/LiveCheck.cpp: If a remove_server call is made during a handle_timeout, don't remove the entry right away, rather defer the removal until after the handle_timeout completes. Wed Feb 19 23:39:59 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/ImR_Locator_i.cpp: Be sure to use the correct server key to send a kill request to the activator. * orbsvcs/ImplRepo_Service/Locator_Repository.cpp: Don't try to process an empty server Id string. Wed Feb 19 20:26:32 UTC 2014 Johnny Willemsen * orbsvcs/orbsvcs/IFRService/IFR_Service_Utils_T.cpp: * orbsvcs/tests/Notify/Bug_3252_Regression/server.cpp: * tests/Bug_3574_Regression/test.cpp: Improved C++BuilderXE support Wed Feb 19 01:57:07 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/ImR_Locator_i.cpp: * orbsvcs/ImplRepo_Service/Locator_Repository.cpp: Be sure to check the JacORB server namespace in all instances when searching for an active server info entry. * orbsvcs/ImplRepo_Service/tao_imr_i.cpp: Only report a specific server as not found if the name comes back empty. Tue Feb 18 16:06:39 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/ImR_Locator_i.cpp: Throw a more-apt exception when the server requested to be killed is not running. Tue Feb 18 15:41:16 UTC 2014 Phil Mesnier * orbsvcs/orbsvcs/PortableGroup/PG_Object_Group_Storable.cpp: * tao/Storable_File_Guard.cpp: Added debug output during guard initialization to caputre errors that raise exceptions. Also be sure to release the mutex acquired before the throw. Thu Feb 13 23:54:35 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/ImR_Locator_i.cpp: Make sure servers added to the live checker use the proper ID. * orbsvcs/ImplRepo_Service/Locator_Repository.cpp: Allow multiple link commands to be used to add multiple combined POAs. Thu Feb 13 14:57:03 UTC 2014 Phil Mesnier * bin/tao_other_tests.lst: Add new test. * orbsvcs/ImplRepo_Service/Locator_Repository.cpp: Fix to find pid-identified servers after a shutdown reset the last known pid. * orbsvcs/tests/ImplRepo/kill_slow_server: Test to verify the above works. Wed Feb 12 20:08:40 UTC 2014 Phil Mesnier * orbsvcs/tests/ImplRepo/link_poas/Test_i.cpp: Scoreboard cleanup. Tue Feb 11 23:01:07 UTC 2014 Phil Mesnier * NEWS: Add a note about new ImR capabilities. * bin/tao_other_tests.lst: run a new test. * orbsvcs/tests/ImplRepo/Bug_4152_Regression/run_test.pl: fix a typo. * orbsvcs/tests/ImplRepo/link_poas: New test to verify the tao_imr link command operation. Mon Feb 10 23:42:54 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/ImR_Locator_i.cpp: Use the correct server key for removing from the repository. * orbsvcs/ImplRepo_Service/tao_imr_i.cpp: Do the right thing if a find comes back empty. Sun Feb 9 18:59:30 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/ImR_Locator_i.cpp: * orbsvcs/ImplRepo_Service/Locator_Repository.cpp: Ensure incoming names are consistently parsed. * orbsvcs/ImplRepo_Service/Locator_XMLHandler.cpp: * orbsvcs/ImplRepo_Service/Server_Info.cpp: Fix Coverity reported warnings. Sat Feb 8 02:59:31 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/Locator_Repository.cpp: Scoreboard cleanup. * orbsvcs/ImplRepo_Service/README: Update the commandline arguments descriptions. Fri Feb 7 19:15:28 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/Locator_Repository.cpp: * orbsvcs/ImplRepo_Service/Server_Info.cpp: * orbsvcs/ImplRepo_Service/Shared_Backing_Store.cpp: * orbsvcs/ImplRepo_Service/Shared_Backing_Store.h: Scoreboard cleanup. Fri Feb 7 16:02:04 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/Shared_Backing_Store.cpp: More refactor cleanup. Fri Feb 7 15:43:59 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/Config_Backing_Store.cpp: * orbsvcs/ImplRepo_Service/Locator_XMLHandler.cpp: More refactor cleanup. Fri Feb 7 01:56:49 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/AsyncAccessManager.cpp: * orbsvcs/ImplRepo_Service/ImR_Locator_i.cpp: More refactor cleanup. Thu Feb 6 23:11:57 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/AsyncAccessManager.cpp: * orbsvcs/ImplRepo_Service/AsyncListManager.cpp: * orbsvcs/ImplRepo_Service/Config_Backing_Store.cpp: * orbsvcs/ImplRepo_Service/ImR_Locator_i.cpp: * orbsvcs/ImplRepo_Service/Locator_Repository.h: * orbsvcs/ImplRepo_Service/Locator_Repository.cpp: * orbsvcs/ImplRepo_Service/Locator_XMLHandler.cpp: * orbsvcs/ImplRepo_Service/Server_Info.h: * orbsvcs/ImplRepo_Service/Server_Info.cpp: * orbsvcs/ImplRepo_Service/Shared_Backing_Store.cpp: * orbsvcs/ImplRepo_Service/UpdateableServerInfo.cpp: * orbsvcs/ImplRepo_Service/XML_Backing_Store.cpp: More refactoring of Server_Info interactions to ensure linked infos present the correct information for server access vs poa access. * orbsvcs/tests/ImplRepo/ReconnectServer/run_test.pl: enhance the debug output to help resolve runtime error. Thu Feb 6 14:52:09 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/Shared_Backing_Store.h: * orbsvcs/ImplRepo_Service/UpdateableServerInfo.h: * orbsvcs/ImplRepo_Service/XML_Backing_Store.h: Doxygen fixes Thu Feb 6 05:56:12 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/Locator_Repository.cpp: * orbsvcs/ImplRepo_Service/Server_Info.cpp: * orbsvcs/ImplRepo_Service/tao_imr_i.cpp: Fix up missing implementation for the link feature. Wed Feb 5 21:13:37 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/Activator_Info.h: * orbsvcs/ImplRepo_Service/Activator_Info.cpp: * orbsvcs/ImplRepo_Service/AsyncAccessManager.cpp: * orbsvcs/ImplRepo_Service/AsyncListManager.cpp: * orbsvcs/ImplRepo_Service/Config_Backing_Store.cpp: * orbsvcs/ImplRepo_Service/ImR_Locator_i.h: * orbsvcs/ImplRepo_Service/ImR_Locator_i.cpp: * orbsvcs/ImplRepo_Service/ImR_Utils.cpp: * orbsvcs/ImplRepo_Service/ImplRepo_Service.mpc: * orbsvcs/ImplRepo_Service/Locator_Repository.h: * orbsvcs/ImplRepo_Service/Locator_Repository.cpp: * orbsvcs/ImplRepo_Service/Locator_XMLHandler.h: * orbsvcs/ImplRepo_Service/Locator_XMLHandler.cpp: * orbsvcs/ImplRepo_Service/Server_Info.h: * orbsvcs/ImplRepo_Service/Server_Info.cpp: * orbsvcs/ImplRepo_Service/Shared_Backing_Store.h: * orbsvcs/ImplRepo_Service/Shared_Backing_Store.cpp: * orbsvcs/ImplRepo_Service/UpdateableServerInfo.h: * orbsvcs/ImplRepo_Service/UpdateableServerInfo.cpp: * orbsvcs/ImplRepo_Service/XML_Backing_Store.h: * orbsvcs/ImplRepo_Service/XML_Backing_Store.cpp: * orbsvcs/ImplRepo_Service/utils.h: Add peer list and alternate key values to the Server_Info struct. Together these enable the locator to know to start only one instance of a server even if it receives "concurrent" requests for two POAs. The POA name is not necessarily the key in the server repository as it is possible for servers to be distinguished by server ID and contain identically named POAs. It is up to system deployers to set the server ID correctly in this case. Heavily refactored the locator code that touches the Server_Info data to rely on helper functions for initialization and entry resolution. Refactored much of the persistence code for clarity. * tao/ImR_Client/ImplRepo.idl: Add an exception to the link command. * orbsvcs/ImplRepo_Service/ImR_Activator.idl: * orbsvcs/ImplRepo_Service/ImR_Activator_i.h: * orbsvcs/ImplRepo_Service/ImR_Activator_i.cpp: The locator now provides the last known pid for a server when a server kill is requested. This allows the kill command to work even if the activator is restarted after launching the wayward server. In this case the activator will synthesize a child death event to send to the locator. For this reason, it may still be possible that a server is still running even though the locator believes it is not. Wed Feb 5 20:37:24 UTC 2014 Phil Mesnier * TAO_IDL/be/be_visitor_valuetype/field_cdr_cs.cpp: Apply the same fix for forwarded interfaces as applied to forwarded valuetypes on Jan 23 2014. * orbsvcs/tests/ImplRepo/Bug_4152_Regression/run_test.pl: Fix a typo. Wed Feb 5 11:39:11 UTC 2014 Johnny Willemsen * tests/Compression/RLECompressorTest.cpp: Extended this unit test further. Thanks to Derek Dominish for these additions Mon Feb 3 18:14:32 UTC 2014 Johnny Willemsen * tao/Object.cpp: Fixed potential memory leak Thu Jan 30 14:37:59 UTC 2014 Phil Mesnier * tao/Connection_Handler.cpp (handle_input_internal): Make the resume handler stay suspended when the result is +1. This can happen when using SSLIOP and there is leftover data in the SSL read buffer. On at least Solaris, resuming the handler can cause the reactor to dispatch another thread on the socket leading to a race through SSL's decryption which ultimately fails. Thu Jan 23 19:02:29 UTC 2014 Phil Mesnier * TAO_IDL/be/be_visitor_argument/arglist.cpp: The initializer for forward defined valuetypes used as members of other values added a "const " to the type definition whereas the initializer for fully defined valuetypes did not. This syntax seems to have existed since support for object by value was first added to TAO. A bug in name scope resolution actually hid this bug, causing the compiler to treat forward defined valuetypes the same as regular valutypes and getting the proper code generated. When the scoping bug was fixed, forward defined valuetypes were distinguished and got the bad implementation. Thanks to Colin Shen for reporting this age-old bug. * TAO_IDL/be/be_visitor_valuetype/field_cdr_cs.cpp: The marshalling code for forwarded valuetypes was similarly whacky and uncompilable. * tests/IDL_Test/fwd.idl: Add a regression test for the above. * tao/Valuetype/Valuetype.mpc: * tests/IDL_Test/IDL_Test.mpc: * tests/IDL_Test/string_value.idl: Generate StringValueA.* so that IDL code that includes StringValue.pidl will be able to compile. Also added a test for this case too. Thanks again to Colin Shen for reporting this bug. Sat Jan 18 19:30:18 UTC 2014 Johnny Willemsen * TAO_IDL/be/be_visitor_operation/operation.cpp: Fixed coverity error Sat Jan 18 18:34:30 UTC 2014 Johnny Willemsen * tao/MCAST_Parser.cpp: Only log errors when TAO_debug_level > 0 Sat Jan 18 00:16:14 UTC 2014 Phil Mesnier * orbsvcs/DevGuideExamples/ImplRepo/run_test.pl: Fix the order of termination of activator & locator. * orbsvcs/ImplRepo_Service/LiveCheck.h: * orbsvcs/ImplRepo_Service/LiveCheck.cpp: Fix various valgrind reported errors including a memory leak related to per-client activations and invalid memory access. Fri Jan 17 16:12:31 UTC 2014 Johnny Willemsen * orbsvcs/orbsvcs/Log/Log_Constraint_Visitors.cpp: Added missing break statements, reported by Coverity Fri Jan 17 10:20:51 UTC 2014 Johnny Willemsen * tao/IIOP_Acceptor.cpp: * tao/Strategies/COIOP_Acceptor.cpp: * tao/Strategies/DIOP_Acceptor.cpp: * tao/Strategies/SCIOP_Acceptor.cpp: * tao/Strategies/UIOP_Acceptor.cpp: Initialize major/minor with 0 to not log random memory in case of a failure, fixes Coverity warnings Fri Jan 17 09:43:48 UTC 2014 Johnny Willemsen * tao/Object.cpp: Fixed potential memory leak Thu Jan 16 10:45:17 UTC 2014 Johnny Willemsen * tests/Collocation_Opportunities/Collocation_Opportunities.cpp: Small logging improvement Wed Jan 15 20:53:06 UTC 2014 Phil Mesnier * tao/ImR_Client/ImR_Client.cpp: Fix a memory leak. It was trivial, but made ImplRepo tests fail valgrind. Mon Jan 13 17:14:14 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/ImR_Locator.cpp: Fix a core dump at exit that occurs if initialization fails. Mon Jan 13 15:01:14 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/ImR_Activator_i.cpp: Handle exception caused when the activator has a problem unregistering during shutdown. Fri Jan 10 22:11:38 UTC 2014 Phil Mesnier * orbsvcs/ImplRepo_Service/Activator_Options.h: * orbsvcs/ImplRepo_Service/Activator_Options.cpp: * orbsvcs/ImplRepo_Service/AsyncAccessManager.cpp: * orbsvcs/ImplRepo_Service/ImR_Activator_i.h: * orbsvcs/ImplRepo_Service/ImR_Activator_i.cpp: * orbsvcs/ImplRepo_Service/ImR_Locator.idl: * orbsvcs/ImplRepo_Service/ImR_Locator_i.h: * orbsvcs/ImplRepo_Service/ImR_Locator_i.cpp: * orbsvcs/ImplRepo_Service/Locator_Options.h: * orbsvcs/ImplRepo_Service/Locator_Options.cpp: * orbsvcs/ImplRepo_Service/Locator_Repository.h: * orbsvcs/ImplRepo_Service/Locator_Repository.cpp: * orbsvcs/ImplRepo_Service/Server_Info.h: * orbsvcs/ImplRepo_Service/Server_Info.cpp: Fix for bug 4152. The Activator now uses new operations on the Locator to provide the PID of a new server instance when started and then again when the server process dies. The Locator notes the startup PID and compares the termination PID to ensure they match. If there is no match the termination signal is ignored. This way if the activator host is so busy that it can't report the child death and the locator decides that a new server instance needs to be started, the tardy death notice won't cause trouble. * orbsvcs/tests/ImplRepo/Bug_4152_Regression: Test for the same. Fri Jan 10 20:07:11 UTC 2014 Phil Mesnier * tao/IIOP_Endpoint.cpp: Fix to work around problem exposed by a configuration issue on windows 7. Even though there were apparently no IPv6 interfaces, the system still successfully resolved an IPv6 address using ::gethostbyname(). Since there were no usable interfaces, a subsequent attempt to use that address failed, crashing the application. This is not a universal problem, and the exact troubling configuration is yet to be determined. Fri Jan 10 18:09:02 UTC 2014 Phil Mesnier * tao/GIOP_Message_Base.cpp: The problem affecting Sun CC 5.12 also appears to affect at least some installations of Sun CC 5.11 as well. Thu Jan 9 12:33:08 UTC 2014 Johnny Willemsen * etc/tao.doxygen: * etc/tao_anytypecode.doxygen: * etc/tao_av.doxygen: * etc/tao_compression.doxygen: * etc/tao_cosevent.doxygen: * etc/tao_cosnaming.doxygen: * etc/tao_cosnotification.doxygen: * etc/tao_costime.doxygen: * etc/tao_costrader.doxygen: * etc/tao_dynamicany.doxygen: * etc/tao_dynamicinterface.doxygen: * etc/tao_esf.doxygen: * etc/tao_ifr.doxygen: * etc/tao_implrepo.doxygen: * etc/tao_iormanip.doxygen: * etc/tao_iortable.doxygen: * etc/tao_pi.doxygen: * etc/tao_pi_server.doxygen: * etc/tao_portablegroup.doxygen: * etc/tao_portableserver.doxygen: * etc/tao_rtcorba.doxygen: * etc/tao_rtevent.doxygen: * etc/tao_rtportableserver.doxygen: * etc/tao_security.doxygen: * etc/tao_smartproxies.doxygen: * etc/tao_ssliop.doxygen: * etc/tao_strategies.doxygen: * etc/tao_transportcurrent.doxygen: * etc/tao_ziop.doxygen: Upgraded to doxygen 1.8.6 Thu Jan 9 10:26:49 UTC 2014 Johnny Willemsen * NEWS: Prepare for next release Thu Jan 09 09:18:31 CET 2014 Johnny Willemsen * TAO version 2.2.4 released. Mon Jan 6 14:47:05 UTC 2014 Johnny Willemsen * tao/GIOP_Message_Base.cpp: Removed const qualifier as part of cast to silence OpenVMS warnings Mon Jan 6 09:44:58 UTC 2014 Martin Corino * tao/AnyTypeCode/Indirected_Type_TypeCode.cpp: * tests/Any/Indirected/test.idl: Fuzz fixes. Sat Jan 4 10:32:38 UTC 2014 Martin Corino * tao/AnyTypeCode/TypeCode_CDR_Extraction.cpp: Removed unnecessary typedefs causing compile warnings. Sat Jan 4 10:11:14 UTC 2014 Martin Corino * tests/Any/Indirected/client.cpp: Fixes for wchar build errors. Fri Jan 3 19:10:11 UTC 2014 Martin Corino * bin/tao_orb_tests.lst: Added Any/Indirected test. * tao/AnyTypeCode/AnyTypeCode.mpc: * tao/AnyTypeCode/Indirected_Type_TypeCode.h: * tao/AnyTypeCode/Indirected_Type_TypeCode.inl: * tao/AnyTypeCode/Indirected_Type_TypeCode.cpp: * tao/AnyTypeCode/Recursive_Type_TypeCode.h: * tao/AnyTypeCode/Recursive_Type_TypeCode.cpp: * tao/AnyTypeCode/TypeCode_CDR_Extraction.cpp: * tao/AnyTypeCode/Value_TypeCode.h: * tao/TypeCodeFactory/TypeCodeFactory_i.cpp: * tests/Any/Indirected: * tests/Any/Indirected/IndirectedTest.mpc: * tests/Any/Indirected/README: * tests/Any/Indirected/client.cpp: * tests/Any/Indirected/run_test.pl: * tests/Any/Indirected/test.idl: * tests/Any/Recursive/Test.idl: * tests/Any/Recursive/client.cpp: Refactored recursive typecode handling/creation when demarshaling such that the memory management problems due to circular referencing are now a thing of the past (replaced the circular referencing by an indirection). Also (re-)synchronizes the recursive typecode handlling in the AnyTypeCode library with the TypeCodeFactory. Declaration and implementation of statically defined typecodes (as generated by TAO_IDL) is not affected. * tao/TypeCodeFactory/Recursive_TypeCode.h: * tao/TypeCodeFactory/Recursive_TypeCode.inl: * tao/TypeCodeFactory/Recursive_TypeCode.cpp: Removed these files. Fri Jan 3 12:46:30 UTC 2014 Johnny Willemsen * TAO_IDL/fe/lex.yy.cpp: Include os_stdint.h as attempt to silense msvc warnings * tao/Object_T.cpp: Don't use explicit global scope Mon Dec 30 09:11:45 UTC 2013 Johnny Willemsen * tao/Pseudo_VarOut_T.inl: * tao/Range_Checking_T.h: Don't use explicit global scope Wed Dec 25 00:00:00 UTC 2013 Douglas C. Schmidt * Merry Christmas everyone! Fri Dec 20 13:37:48 UTC 2013 Phil Mesnier * tao/IORTable/Table_Adapter.cpp: Fix a cut & paste error. Thu Dec 19 16:02:35 UTC 2013 Phil Mesnier * tao/IORTable/Table_Adapter.cpp: My Dec. 6 fix to ensure resource clean up introduced a regression of bug 2683, this should restore harmony. Thu Dec 19 13:33:18 UTC 2013 Johnny Willemsen * MPC/config/corba_e_compact.mpb: * MPC/config/corba_e_micro.mpb: * MPC/config/minimum_corba.mpb: * MPC/config/taobaseidldefaults.mpb: Changed CORBA/e feature support, move the feature idl flags to taobaseidldefaults to not pull in the IDL Files custom rules Wed Dec 18 19:19:25 UTC 2013 Johnny Willemsen * orbsvcs/orbsvcs/LoadBalancing/LB_LoadMinimum.cpp: Fixed GCC 4.8.2 warning Wed Dec 18 14:20:04 UTC 2013 Johnny Willemsen * etc/tao.doxygen: * etc/tao_av.doxygen: * etc/tao_compression.doxygen: * etc/tao_cosevent.doxygen: * etc/tao_cosnaming.doxygen: * etc/tao_cosnotification.doxygen: * etc/tao_costime.doxygen: * etc/tao_costrader.doxygen: * etc/tao_dynamicany.doxygen: * etc/tao_dynamicinterface.doxygen: * etc/tao_esf.doxygen: * etc/tao_ifr.doxygen: * etc/tao_implrepo.doxygen: * etc/tao_iormanip.doxygen: * etc/tao_iortable.doxygen: * etc/tao_pi.doxygen: * etc/tao_pi_server.doxygen: * etc/tao_portablegroup.doxygen: * etc/tao_portableserver.doxygen: * etc/tao_rtcorba.doxygen: * etc/tao_rtevent.doxygen: * etc/tao_rtportableserver.doxygen: * etc/tao_security.doxygen: * etc/tao_smartproxies.doxygen: * etc/tao_ssliop.doxygen: * etc/tao_strategies.doxygen: * etc/tao_transportcurrent.doxygen: * etc/tao_ziop.doxygen: Upgraded to doxygen 1.8.5 Wed Dec 18 11:22:44 UTC 2013 Johnny Willemsen * etc/tao_anytypecode.doxygen: Upgraded to doxygen 1.8.5 Tue Dec 17 13:12:22 UTC 2013 Johnny Willemsen * tao/PortableInterceptor.h: Removed several old deprecated macros Fri Dec 13 14:59:29 UTC 2013 Phil Mesnier * NEWS: * docs/Options.html: Document new option. Also alphabetized the various factory options. * orbsvcs/tests/ImplRepo/oneway/defsync.conf: * tao/Client_Strategy_Factory.h: * tao/ORB_Core.cpp: * tao/Resource_Factory.h: * tao/default_client.h: * tao/default_client.cpp: * tao/default_resource.h: * tao/default_resource.cpp: Moved the new DefSyncScope option from the resource factory to the client strategy factory. It only affects client behavior so it makes more sense to be a client strategy option. Fri Dec 13 00:24:50 UTC 2013 Phil Mesnier * bin/tao_other_tests.lst: * orbsvcs/ImplRepo_Service/Forwarder.cpp: * orbsvcs/tests/ImplRepo/oneway/defsync.conf: Fix for bug 4149 and update the test to reflect this status. Thu Dec 12 20:38:46 UTC 2013 Phil Mesnier * orbsvcs/tests/ImplRepo/oneway/Test_i.cpp: fix for overaggressive file cleanup. Thu Dec 12 15:32:01 UTC 2013 Phil Mesnier * bin/tao_other_tests.lst: * orbsvcs/tests/ImplRepo/oneway: Added new test. * tao/Messaging/Messaging_Policy_i.cpp: Get the new configurable default sync scope if no policy is defined. * tao/ORB_Core.h: * tao/ORB_Core.inl: * tao/ORB_Core.cpp: * tao/Resource_Factory.h: * tao/default_resource.h: * tao/default_resource.cpp: Allow a default sync scope to be set using -ORBDefaultSyncScope on the resource strategy factory. If unset, the default is SYNC_WITH_TRANSPORT. This feature allows for global sync scope configuration without adding a dependency on the Messaging library and adding a block of code to set scope via a policy. The policy framework still works and will override this default as expected. Thu Dec 12 00:10:01 UTC 2013 Phil Mesnier * tao/Acceptor_Registry.cpp: * tao/IIOP_Acceptor.cpp: Discriminate between windows platforms that support a dual IP stack and those that don't. Since Windows Vista, the winsock IP stack is capable of concurrent support of IPv4 and IPv6. Tue Dec 10 21:16:34 UTC 2013 Phil Mesnier * orbsvcs/ImplRepo_Service/Forwarder.cpp: Fix a crash that occurs if the requested operation is a oneway. * orbsvcs/ImplRepo_Service/AsyncListManager.cpp: * orbsvcs/ImplRepo_Service/ImR_Locator_i.cpp: * orbsvcs/ImplRepo_Service/Locator_XMLHandler.cpp: * orbsvcs/ImplRepo_Service/tao_imr_i.cpp: * orbsvcs/orbsvcs/LoadBalancing/LB_LeastLoaded.cpp: Clean up scoreboard warnings and wchar compile failure. Sun Dec 8 18:30:10 UTC 2013 Johnny Willemsen * TAO_IDL/be/be_helper.cpp: * TAO_IDL/be/be_visitor_any_extracted_type_decl.cpp: * TAO_IDL/be/be_visitor_attribute/set_from_extracted.cpp: Fixed extraction of regular and bounded strings from an Any * tests/ORB_Local_Config/Bunch/Test.cpp: Clang fix Fri Dec 6 19:09:56 UTC 2013 Phil Mesnier * tao/ORB_Core.h: * tao/ORB_Core.inl: * tao/ORB_Core.cpp: Revert my change to var types for the iortable objects. Use the ORB_Core::fini to remove the async iortable object instead. Fri Dec 6 16:50:00 UTC 2013 Phil Mesnier * orbsvcs/ImplRepo_Service/Locator_Repository.cpp: * orbsvcs/ImplRepo_Service/Shared_Backing_Store.cpp: Make these resolve the same version of the IORTable service as the locator main to ensure proper cleanup. * tao/IORTable/Table_Adapter.cpp: Force cleanup of the implementation instance on cleanup. * tao/ORB_Core.h: * tao/ORB_Core.inl: * tao/ORB_Core.cpp: Covert the base reference to the IORTable instance to a var type so that references are released on ORB shutdown. Valgrind revealed that the IORTable implementation objects were being lost due to refcount never reaching 0. There are many Object_ptr members of the ORB Core that may need to be converted to vars for the same reason. * orbsvcs/tests/ImplRepo/kill_server/Test.idl: * orbsvcs/tests/ImplRepo/kill_server/Test_i.h: * orbsvcs/tests/ImplRepo/kill_server/Test_i.cpp: * orbsvcs/tests/ImplRepo/kill_server/client.cpp: * orbsvcs/tests/ImplRepo/kill_server/run_test.pl: Make the test capable of building on CORBA/e builds. Thu Dec 5 17:32:58 UTC 2013 Phil Mesnier * orbsvcs/ImplRepo_Service/ImR_Activator_i.cpp: Improve the performance of the kill command on windows. * orbsvcs/tests/ImplRepo/kill_server/run_test.pl: Make the test more windows friendly. Thu Dec 5 15:30:24 UTC 2013 Phil Mesnier * orbsvcs/ImplRepo_Service/tao_imr_i.cpp: Add a default signum for the kill command. * orbsvcs/tests/ImplRepo/kill_server/run_test.pl: Increase the time delay waiting for the server to actually be killed. I believe this is the cause of test failures on some nightly hosts. Thu Dec 5 10:11:56 UTC 2013 Johnny Willemsen * examples/Simple/bank/AccountManager_i.cpp: Deregister from the POA when it is not nil Wed Dec 4 17:13:02 UTC 2013 Phil Mesnier * bin/tao_other_tests.lst: Added new test. * orbsvcs/ImplRepo_Service/AsyncAccessManager.h: * orbsvcs/ImplRepo_Service/AsyncAccessManager.cpp: * orbsvcs/ImplRepo_Service/ImR_Activator.idl: * orbsvcs/ImplRepo_Service/ImR_Activator_i.h: * orbsvcs/ImplRepo_Service/ImR_Activator_i.cpp: * orbsvcs/ImplRepo_Service/ImR_Locator.idl: * orbsvcs/ImplRepo_Service/ImR_Locator_i.h: * orbsvcs/ImplRepo_Service/ImR_Locator_i.cpp: * orbsvcs/ImplRepo_Service/tao_imr_i.h: * orbsvcs/ImplRepo_Service/tao_imr_i.cpp: Adding two new features to the IMR client interface. First is a kill command that has the activator send a signal to a child process. Also a new link command that allows the ImR locator to recognize two or more POAs are part of the same process. The link command implementation is still under development. * orbsvcs/tests/ImplRepo/kill_server: New test case for the kill command. * tao/ImR_Client/ImplRepo.idl: New extension interface added to define new operations. Wed Nov 27 02:37:17 UTC 2013 Douglas C. Schmidt * VERSION: Updated the URL to point to Vandy not WUSTl. Mon Dec 2 10:12:02 UTC 2013 Johnny Willemsen * VERSION: * docs/implrepo/paper.html: Updated the URL to point to Vandy not WUSTl. * orbsvcs/orbsvcs/CosNaming.idl: Doxygen improvements Mon Nov 25 21:05:04 UTC 2013 Phil Mesnier * orbsvcs/orbsvcs/PortableGroup/Fragments_Cleanup_Strategy.cpp: Fix scoreboard warnings for some Windows compilers. Thu Nov 21 17:29:02 UTC 2013 Phil Mesnier * orbsvcs/ImplRepo_Service/AsyncAccessManager.cpp: Fix for ensuring that externally killed servers can be restarted through the ImR service. * orbsvcs/ImplRepo_Service/AsyncListManager.h: * orbsvcs/ImplRepo_Service/AsyncListManager.cpp: * orbsvcs/ImplRepo_Service/LiveCheck.h: * orbsvcs/ImplRepo_Service/LiveCheck.cpp: Fix for a potential memory leak when a list of active servers includes some that are in some troubled state. Since the participants are all reference counted, it isn't a true leak, rather unbounded allocation of objects for which the refcount may never reach 0. Also added more debugging output. Mon Nov 18 18:07:24 UTC 2013 Phil Mesnier * orbsvcs/orbsvcs/PortableGroup/PG_Group_List_Store.h: * orbsvcs/orbsvcs/PortableGroup/PG_Group_List_Store.cpp: * orbsvcs/orbsvcs/PortableGroup/PG_Object_Group_Storable.h: * orbsvcs/orbsvcs/PortableGroup/PG_Object_Group_Storable.cpp: The file lock used in these classes is a process level lock. This change adds a thread mutex to insure that only one thread in the process holds the file lock. Submitted on behalf of Rich Seibel Mon Nov 11 09:43:02 UTC 2013 Johnny Willemsen * NEWS: Prepare for next release * tao/Codeset/Codeset_Manager_i.cpp: Debug message change Mon Nov 11 09:17:34 CET 2013 Johnny Willemsen * TAO version 2.2.3 released. Fri Nov 8 17:05:35 UTC 2013 Phil Mesnier * interop-tests/CdrOutArg/orbix/README: Fix the Orbix version citation. Fri Nov 8 15:33:29 UTC 2013 Phil Mesnier * interop-tests/CdrOutArg/orbix/README: * interop-tests/CdrOutArg/orbix/Server_ORBInitializer.h: * interop-tests/CdrOutArg/orbix/Server_ORBInitializer.cxx: * interop-tests/CdrOutArg/orbix/cxx_demo.mk: * interop-tests/CdrOutArg/orbix/demo.mk: * interop-tests/CdrOutArg/orbix/makefile: * interop-tests/CdrOutArg/orbix/server.cxx: * interop-tests/CdrOutArg/orbix/server_interceptor.h: * interop-tests/CdrOutArg/orbix/server_interceptor.cxx: * interop-tests/CdrOutArg/orbix/test_i.h: * interop-tests/CdrOutArg/orbix/test_i.cxx: Companion test to be built using Orbix 6.3. *UNSUPPORTED* The DOC group can only support the TAO portion of the test. Thanks to Mike McKnerney for supplying this test. Wed Oct 30 03:25:41 UTC 2013 Phil Mesnier * orbsvcs/FT_Naming_Service/FT_Naming_Service.cpp: * orbsvcs/Naming_Service/Naming_Service.cpp: The real fuzz fix. Tue Oct 29 22:27:08 UTC 2013 Phil Mesnier * orbsvcs/FT_Naming_Service/FT_Naming_Service.cpp: * orbsvcs/Naming_Service/Naming_Service.cpp: Fuzz fix. Tue Oct 29 03:24:14 UTC 2013 Phil Mesnier * TAO_IDL/be/be_visitor_operation/operation.cpp: Fix the output format. * tao/Valuetype/AbstractBase_Invocation_Adapter.h: * tao/Valuetype/AbstractBase_Invocation_Adapter.cpp: Add missing parameter. Mon Oct 28 21:27:19 UTC 2013 Phil Mesnier * NEWS: * TAO_IDL/ast/ast_operation.cpp: * TAO_IDL/be/be_visitor_operation/ami_cs.cpp: * TAO_IDL/be/be_visitor_operation/operation.cpp: * TAO_IDL/include/ast_operation.h: Add explicit detection of IN or INOUT operation arguments. If there are none, then extend the Invocation Adatpter constructor call to set the new has_in_args flag to false. For backwards compatibility that flag is defaulted to true. * interop-tests/CdrOutArg: Added a new test to demonstrate the fix. There is no explicit regression test for this problem since every CORBA request invokes this code. * tao/GIOP_Message_Generator_Parser_12.cpp: * tao/Invocation_Adapter.h: * tao/Invocation_Adapter.inl: * tao/Invocation_Adapter.cpp: * tao/Messaging/Asynch_Invocation_Adapter.h: * tao/Messaging/Asynch_Invocation_Adapter.cpp: * tao/operation_details.h: * tao/operation_details.inl: Add a new flag, has_in_args, which is true if any of the operation aguments send data with the request. The CDR buffer taking the request is aligned after the header only if there is an IN argument. Mon Oct 28 16:33:43 UTC 2013 Phil Mesnier * orbsvcs/FT_Naming_Service/FT_Naming_Service.cpp: * orbsvcs/Naming_Service/Naming_Service.cpp: Report an error and exit if the service is unable to start the threads requested with the -n command line parameter. Mon Oct 14 07:50:48 UTC 2013 Johnny Willemsen * orbsvcs/examples/ImR/Combined_Service/test.cpp: No need to print filename Thu Oct 3 09:36:41 UTC 2013 Johnny Willemsen * NEWS: Prepared for next release Thu Oct 03 09:47:23 CEST 2013 Johnny Willemsen * TAO version 2.2.2 released. Tue Sep 17 09:46:34 UTC 2013 Johnny Willemsen * TAO-INSTALL.html: Improved TAO compile instructions Mon Sep 16 16:33:46 UTC 2013 Johnny Willemsen * TAO-INSTALL.html: ACE_ROOT and TAO_ROOT are mandatory, for example MPC can't run without TAO_ROOT * tests/Bug_2734_Regression/client.cpp: Zapped a lot of empty lines Wed Sep 11 07:50:52 UTC 2013 Johnny Willemsen * bin/tao_orb_tests.lst: * tao/RTCORBA/RT_ORB.cpp: * tests/Bug_3000_Regression/run_test.pl: * tests/Bug_3630_Regression/run_test.pl: * tests/Bug_3837_Regression/run_test.pl: * tests/CodeSets/simple/run_test.pl: * tests/OctetSeq/run_test.pl: * tests/OctetSeq/run_test1.pl: * tests/OctetSeq/run_test2.pl: * tests/TransportCurrent/Framework/run_test.pl: * tests/TransportCurrent/IIOP/run_test.pl: Improvements for the Android port commit f723a63d4ce65bcb102dbbf9a525467b01b7a14b Author: Johnny Willemsen Date: Mon Sep 9 20:41:48 2013 +0200 IDL_Test doesn't run on Android * TAO/bin/tao_orb_tests.lst: commit 777c5eeaab1045f07eb30bbd074bba83792b1344 Author: Johnny Willemsen Date: Mon Sep 9 20:41:01 2013 +0200 Copy conf files to target * TAO/tests/TransportCurrent/Framework/run_test.pl: * TAO/tests/TransportCurrent/IIOP/run_test.pl: commit 29b35e6080087514395a9a800693052ab728f0f2 Author: Johnny Willemsen Date: Mon Sep 9 15:36:42 2013 +0200 Disabled some tests for Android, can't run tao_idl on the device * TAO/bin/tao_orb_tests.lst: commit 12d94d292feccc61bcfc1472eb10ab64bb9dcdd3 Author: Johnny Willemsen Date: Mon Sep 9 15:31:40 2013 +0200 Copy svc conf files to target * TAO/tests/Bug_3837_Regression/run_test.pl: * TAO/tests/CodeSets/simple/run_test.pl: commit 6773f79cfaeac77d7e279d86b76c98eee6194531 Author: Johnny Willemsen Date: Mon Sep 9 15:18:36 2013 +0200 Copy svc conf files to target * TAO/tao/RTCORBA/RT_ORB.cpp: * TAO/tests/Bug_3000_Regression/run_test.pl: * TAO/tests/Bug_3630_Regression/run_test.pl: * TAO/tests/OctetSeq/run_test.pl: * TAO/tests/OctetSeq/run_test1.pl: * TAO/tests/OctetSeq/run_test2.pl: Sat Sep 7 17:32:04 UTC 2013 Johnny Willemsen * tests/Bug_2593_Regression/run_test.pl: Put svc conf file to target Thu Sep 5 18:42:06 UTC 2013 Phil Mesnier * orbsvcs/tests/Bug_2112_Regression/client.cpp: The previous fake IP address still isn't as invalid as it should be. Now using 10.123.123.123. Probably the right thing to do is run through the 10.* address space to ensure the test doesn't select a real IP address, since the whole point of the test is to ensure that a timeout occurs attempting to connect to an unavailable IP. Thu Sep 5 07:55:57 UTC 2013 Johnny Willemsen * tests/Bug_2174_Regression/run_test.pl: * tests/Bug_3000_Regression/run_test.pl: * tests/Bug_3531_Regression/run_test.pl: * tests/Bug_3853_Regression/run_test.pl: * tests/Bug_4010_Regression/run_test.pl: * tests/Exposed_Policies/run_test.pl: * tests/HandleExhaustion/run_test.pl: * tests/Hang_Shutdown/run_test.pl: * tests/Muxed_GIOP_Versions/run_test.pl: * tests/OBV/TC_Alignment/run_test.pl: * tests/Optimized_Connection/run_test.pl: * tests/Server_Connection_Purging/run_test.pl: * tests/TransportCurrent/Framework/run_test.pl: * tests/TransportCurrent/IIOP/run_test.pl: Fixes for the Android port commit f90a0bf55e83d6565d0641ea0ba2fe2209f5305a Author: Johnny Willemsen Date: Fri Aug 23 15:41:29 2013 +0200 Copy conf files to target * TAO/tests/Exposed_Policies/run_test.pl: commit 25b050b9725f79351a75f48cdf978ae236702a70 Author: Johnny Willemsen Date: Fri Aug 23 15:35:23 2013 +0200 Also with the second spawn of the server pass the filename it should use for the IOR * TAO/tests/Hang_Shutdown/run_test.pl: commit 6f0b01d790c1628e81e67c93c4db9f6f3ac37d71 Author: Johnny Willemsen Date: Fri Aug 23 15:14:44 2013 +0200 Removed printing of CommandLine, test framework can do that at a lower level and this method isn't supported on Android currently * TAO/tests/Bug_3000_Regression/run_test.pl: * TAO/tests/Bug_3531_Regression/run_test.pl: * TAO/tests/Bug_3853_Regression/run_test.pl: * TAO/tests/Bug_4010_Regression/run_test.pl: * TAO/tests/Muxed_GIOP_Versions/run_test.pl: * TAO/tests/OBV/TC_Alignment/run_test.pl: * TAO/tests/Server_Connection_Purging/run_test.pl: * TAO/tests/TransportCurrent/Framework/run_test.pl: * TAO/tests/TransportCurrent/IIOP/run_test.pl: commit d5ebcd70308dbb06f97b98764038e2fdb13899e0 Author: Johnny Willemsen Date: Fri Aug 23 15:13:08 2013 +0200 Improved these scripts so that they will better behave on Android * TAO/tests/Bug_2174_Regression/run_test.pl: * TAO/tests/HandleExhaustion/run_test.pl: * TAO/tests/Optimized_Connection/run_test.pl: Wed Sep 4 18:13:15 UTC 2013 Johnny Willemsen * tao/Strategies/Optimized_Connection_Endpoint_Selector.h: Fixed mismatched guard. Thanks to Yogesh Sharma for reporting the bug and supplying a patch. Closes [BUGID:4127]. Wed Sep 4 18:00:30 UTC 2013 Johnny Willemsen * tao/DiffServPolicy/DiffServ_Protocols_Hooks.h: Fixed mismatched guard. Thanks to Yogesh Sharma for reporting the bug and supplying a patch. Closes [BUGID:4126]. Wed Sep 4 12:44:02 UTC 2013 Phil Mesnier * examples/mfc/server.cpp: Explicit include fix. * orbsvcs/FTRT_Event_Service/Factory_Service/EventChannelFactory_i.cpp: Fix spurious scoreboard error for ACE_NLOGGING build. * orbsvcs/tests/Bug_2112_Regression/client.cpp: Use a new fake IP address as the old one is now a valid IP in the wild and started messing with the test. Tue Sep 3 15:52:23 UTC 2013 Phil Mesnier * utils/NamingViewer/NamingViewer.cpp: explicit includes. Tue Sep 3 13:17:47 UTC 2013 Phil Mesnier * orbsvcs/tests/unit/Notify/MC/MonitorControlExt/MonitorControlExt.cpp: * orbsvcs/tests/unit/Notify/MC/Statistic/Statistic.cpp: * orbsvcs/tests/unit/Notify/MC/Statistic_Registry/Statistic_Registry.cpp: Fix warnings reported as errors in the build with logging disabled. Mon Sep 2 15:01:46 UTC 2013 Phil Mesnier * orbsvcs/Naming_Service/NT_Naming_Server.cpp: * orbsvcs/Notify_Service/NT_Notify_Server.cpp: explicit includes. Sun Sep 1 00:28:39 UTC 2013 Phil Mesnier * TAO_IDL/be/be_interface.cpp: * TAO_IDL/driver/drv_args.cpp: Be explicit about including headers that used to be implicitly implicitly. Fri Aug 16 08:36:23 UTC 2013 Johnny Willemsen * ChangeLog: * ChangeLogs/ChangeLog-2013a: * NEWS: Prepared for next release Fri Aug 16 08:56:17 CEST 2013 Johnny Willemsen * TAO version 2.2.1 released. Local Variables: mode: change-log add-log-time-format: (lambda () (progn (setq tz (getenv "TZ")) (set-time-zone-rule "UTC") (setq time (format-time-string "%a %b %e %H:%M:%S %Z %Y" (current-time))) (set-time-zone-rule tz) time)) indent-tabs-mode: nil End: