-
Notifications
You must be signed in to change notification settings - Fork 0
/
NEWS
2212 lines (1631 loc) · 90.5 KB
/
NEWS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
USER VISIBLE CHANGES BETWEEN TAO-2.1.8 and TAO-2.2.0
====================================================
. High performance implementation Repository [#4104] - The Implementation
Repository Locator has been reimplemented using AMI/AMH to avoid the
problem of nested upcalls under heavy load.
USER VISIBLE CHANGES BETWEEN TAO-2.1.7 and TAO-2.1.8
====================================================
. Fault Tolerant Implementation Repository [#4091] - The Implementation
Repository Locator now supports a dual-redundant fault tolerant
configuration which provides replication and seamless failover between
the primary and backup locator servers.
. Implementation Repository interoperable with JacORB servers [#4101] -
The Implementation Repository can now be used to manage JacORB
3.3 or later application servers.
. Fault Tolerant Naming Service [#4092 & #4095] - A new Fault Tolerant
Naming Service (tao_ft_naming), provides dual-redundant fault tolerant
servers which utilize replication and seamless failover between the
primary and backup server. The Fault Tolerant Naming Service can be
used to provide load balancing capabilities (only the round-robin load
balancing strategy is currently supported) through the use object groups.
This feature is supported by a separate utility for managing the object
groups (tao_nsgroup) as well as a programatic interface via IDL.
. Configurable Persistence Mechanism [#4092] - Extracted persistence
mechanism used for storable naming context into Storable_* classes so
that it can be reused. Simplified use of storable read/write so that
it behaves more like C++ streams to read/write binary and CDR data.
Added support for creating a backup mechanism to accomodate
potentially corrupted files. Providing configurable hooks so
applications can decide if files are obsolete and need to be written
to the persistence store.
. ORB Dynamic Thread Pool [#4093] - Added a new ORB thread pool strategy
to dynamically adjust the number of threads which the ORB uses to
service received calls based on several configuration parameters.
These parameters include initial threads, minimum pool threads,
maximum pool threads, request queue depth, thread stack size, and
thread idle time.
. POA Dynamic Thread Pool [#4094] - A new Dynamic Thread Pool and
Queuing strategy was created for POA usage. It leverages the
existing Custom Servant Dispatching framework for invocation and
activation. The strategy also dynamically adjusts the number of
threads using configuration parameters similar to the ORB Dynamic
Thread Pool. The Dynamic Thread Pool POA Strategy supports
applications in associating a single thread pool with either
1) a single POA in a dedicated configuration, or 2) multiple
POAs in a shared configuration. The strategy controls a request
queue used to accept calls directed to an associated servant and
a pool of threads that wait to service calls coming in on a
particular queue.
. Multiple Invocation Retry [#4096] - Extended TAO to support multiple
retry in the presence of COMM_FAILURE, TRANSIENT, OBJECT_NOT_EXIST,
and INV_OBJREF exceptions. In addition, retries can occur if it has
been detected that a connection has closed while waiting for a reply
(currently not available under FreeBSD, OpenVMS, AIX, and Solaris). This
feature can be used to support fault tolerant services (specifically
the Fault Tolerant Naming and Implementation Repository services
described earlier). The invocation retry support allows
configuration on how many times to try to connect to each server and
the delay between tries.
. Added MIOP configuration options -ORBSendThrottling and -ORBEagerDequeueing,
along with #define overrides for their default settings. See the descriptions
in the MIOP section of doc/Options.html for their use.
USER VISIBLE CHANGES BETWEEN TAO-2.1.6 and TAO-2.1.7
====================================================
. Integrated several patches to simplify Debian/Ubuntu
packaging
. Fixed IDL compiler bug related to internal reinitialization
when processing multiple IDL files in a single execution.
USER VISIBLE CHANGES BETWEEN TAO-2.1.5 and TAO-2.1.6
====================================================
. We only try to load the ObjRefTemplate library at POA
creation instead of trying to load it at each servant
activation
USER VISIBLE CHANGES BETWEEN TAO-2.1.4 and TAO-2.1.5
====================================================
. None
USER VISIBLE CHANGES BETWEEN TAO-2.1.3 and TAO-2.1.4
====================================================
. CORBA::string_dup() and CORBA::string_free() have been enhanced to use
non-allocated and shared static null strings. This allows for optimized
default null string initialization in CORBA string members and a
reduction in redundant dynamic memory management required for such.
This enhancement can be removed via the config.h by including
#define TAO_NO_SHARED_NULL_CORBA_STRING
NOTE that it is a (CORBA spec) requirement that all CORBA::strings are
deleted via the CORBA::string_free() and allocated via the
CORBA::string_dup() or CORBA::string_alloc() calls; you must not use
the c++ keywords new and delete[] directly. Previously it was possiable
to ignore this requirement, however if you do so now, this enhancement
for null strings will catch you out, as deleting these null
CORBA::strings will cause corrupt heap and/or segfaults.
. Add support for -ORBPreferredInterfaces option to UIPMC. The form follows
the same pattern as IIOP for IPv4 i.e. a local interface IP address should
be specified as the mapping. e.g. -ORBPreferredInterfaces 225.*=192.168.0.2.
For IPv6 the preferred interface should (neccessarily) be set as an interface
name (e.g. 'eth0' for linux, or 'Loopback Pseudo-Interface' on windows) or an
interface index number on windows. e.g. -ORBPreferredInterfaces FF01:*=eth0.
Also add support an -ORBListenOnAll 0|1 UIPMCFactory option that can
be specified in the svc.conf to make the acceptor listen on all multicast
enabled interfaces on platforms that this is not the default. This has been
observed to be required for the UIPMCAcceptor to open on the most recent
Linux distribs.
NOTE that there is an obvious elephant in the room in testing this option,
we can't rely on any build/test machine having more than one (or any?)
interfaces so the test (TAO/orbsvcs/tests/Miop/McastPreferredInterfaces),
such as it is, is relying on side effects which may not hold for all platforms.
Additionally the IPv6 behaviour isn't even consistent across platforms and
the build machines can't be relied upon to have a 'proper' (non-zero conf
link local) IPv6 configuration. Basically, if you want some confidence this is
actually working I'd advise testing this option before you use it, running it
on a machine with multiple interfaces with the debug level turned up.
. Enhanced the MIOP implementation; this protocol now supports MIOP message
fragmentation which is controlled via the new MIOP_Strategy_Factory.
For details see the MIOP_Strategy_Factory section in the docs/Options.html
document included with this distribution.
USER VISIBLE CHANGES BETWEEN TAO-2.1.2 and TAO-2.1.3
====================================================
. Added OpenSSL configuration options SSLCipherList and
SSLServerCipherOrder to SSLIOP_Factory. Allows SSL/TLS BEAST
exploit to be mitigated.
USER VISIBLE CHANGES BETWEEN TAO-2.1.1 and TAO-2.1.2
====================================================
. Changed behavior of Receive-Wait client wait strategy with
ORBConnectionHandlerCleanup after oneway calls to register with
the reactor after the call to clean up after connection closure.
. Added an extension of the CosNotifyFilter::FilterFactory to
allow removal of filters created by the factory. The extension
also has accessors for existing filters and ids.
USER VISIBLE CHANGES BETWEEN TAO-2.1.0 and TAO-2.1.1
====================================================
. Correct ZIOP compression arbitration on the server reply
path. The server now responds with one of the clients
exposed compressors that the server also supports
according to the ZIOP specification.
. Enhanced the plugable transports such that the
send_message() api now provides an optional TAO_ServerRequest
object pointer to provide access to any client side
policies that are broadcast with each request. This enabled
the ZIOP compression correction to be coded.
USER VISIBLE CHANGES BETWEEN TAO-2.0.8 and TAO-2.1.0
====================================================
. Added new rle compressor and enabled ZIOP by default
. Implimented DynValue, DynValueBox and DynValueCommon and their
creation/use by TAO_DynAnyFactory::
create_dyn_any (), create_dyn_any_from_type_code (),
create_dyn_any_without_truncation (), create_multiple_dyn_anys ()
and create_multiple_anys ().
. Correct the interaction of CORBA::ValueTypes and CORBA::Anys.
The insertion into an Any of a ValueType base pointer
used to set the Anys typecode to the fully derived valuetype.
This allowed the any to be marshaled correctly sending the
derived typecode and value over the wire. However it also
stopped the user from extracting the valuetype from the any
as the typecode for, or the actual pointer type being used for,
the extraction couldn't match the any's internal two different
types. The any's typecode is now simply set to match the base
pointer which allows for the correct insertion/extraction from
the any, whilst the marshalling code for anys containing
valuetypes now sends the fully derived typecode of the fully
derived data it is marshalling instead of the anys embedded
(possiably base valuetype) typecode.
USER VISIBLE CHANGES BETWEEN TAO-2.0.7 and TAO-2.0.8
====================================================
. Added support for MPC's new feature that creates dependency files for IDL
files when generating '-type gnuace' projects. Turned off by default, it
can be enabled in a features file or on the command line with
'-features ace_idl_dependencies=1'.
. Fixed IDL compiler bug where a generated component servant method that
is called by the middleware to initialize a component's attributes
was not including attributes of supported interfaces.
USER VISIBLE CHANGES BETWEEN TAO-2.0.6 and TAO-2.0.7
====================================================
. Added Time_Policy_Manager, a TIME_POLICY strategy manager configurable
through the service configurator framework.
This allows the dynamic configuration of the TIME_POLICY strategy used for
ORB timers and countdowns. TAO includes two default TIME_POLICY strategies as
statically linked service objects; TAO_System_Time_Policy_Strategy and
TAO_HR_Time_Policy_Strategy (the first being used as default strategy).
The docs/Options.html file describes the configuration options in detail.
Two new tests have been added exemplifying these new options; tests/Time_Policy
and tests/Time_Policy_Custom.
Furthermore two new compile time option macros have been added related to
TIME_POLICY strategies:
- TAO_USE_HR_TIME_POLICY_STRATEGY if defined will force the use of the new
TAO_HR_Time_Policy_Strategy as default time strategy instead of
TAO_System_Time_Policy_Strategy;
- TAO_HAS_TIME_POLICY if explicitly defined as 0 ('#define TAO_HAS_TIME_POLICY 0')
will build TAO without the new TIME_POLICY strategy support.
USER VISIBLE CHANGES BETWEEN TAO-2.0.5 and TAO-2.0.6
====================================================
. Added new define TAO_DEFAULT_COLLOCATION_STRATEGY (default = thru_poa)
which is used as -ORBCollocationStrategy isn't specified.
. Added new -ORBCollocationStrategy best. TAO tries to perform the best
possible collocation, first direct if possible, then through_poa if possible
else no collocation.
. Enhanced the RW -ORBWaitStrategy and the EXCLUSIVE -ORBTransportMuxStrategy
to also work with AMI requests.
. mt_noupcall has been improved and generically speaking the handling of client
leader threads in LF has been improved and fixed of potential deadlock
situations
. The TAO skeletons got refactored to reduced footprint, a footprint saving
for the skeletons between 10 and 60% has been achieved. For the full
distribution including CIAO, DAnCE, OpenDDS, and DDS4CCM using RTI DDS this
resulted in a reduction of 650,000 lines of code. Also the S.inl files are
not generated anymore
USER VISIBLE CHANGES BETWEEN TAO-2.0.4 and TAO-2.0.5
====================================================
. Updated several TAO tests for automatic testing on Android
USER VISIBLE CHANGES BETWEEN TAO-2.0.3 and TAO-2.0.4
====================================================
. Added new IFR_Client_skel library that is now used by the IFR_Service
. Moved TAO_IDL generation of argument traits from the stub and
skeleton .cpp files to the corresponding .h files.
USER VISIBLE CHANGES BETWEEN TAO-2.0.2 and TAO-2.0.3
====================================================
. Improved support for mt_noupcall but this is still not optimal due to a 2ms
wait delay
. Addressed several Coverity reported issues
USER VISIBLE CHANGES BETWEEN TAO-2.0.1 and TAO-2.0.2
====================================================
. Remove support for already deprecated -ORBConnectionCachingStrategy
. Removed -ORBObjectKeyTableLock and -ORBPOALock, very risk options and this
way the regular invocation path can be optimized much more
. Improved support for mt_noupcall wait strategy. Upcall detection has been
improved and the transport is polled each 2ms to see if we can do the
upcall.
. Improved performance of the Parallel Connect Strategy in TAO.
. tao_catior does a better job with JacORB generated IORs.
. tao_cosnaming can now be multithreaded.
USER VISIBLE CHANGES BETWEEN TAO-2.0.0 and TAO-2.0.1
====================================================
. Fixed IDL compiler bug that caused illegal references to items
in the scope of a template module to be overlooked.
USER VISIBLE CHANGES BETWEEN TAO-1.8.3 and TAO-2.0.0
====================================================
. Improved support for abstract
USER VISIBLE CHANGES BETWEEN TAO-1.8.2 and TAO-1.8.3
====================================================
. TAO IDL compiler now generates attribute members for generated CCM
executor implementation classes, as well as full implementations for
the associated set/get operations.
. Add TAO IDL compiler command line option -iC, which overrides the
default include path (current directory or $TAO_ROOT/tao) for
*C.h files included in generated *A.h files.
. Removed autoconf support for TAO, it is really not tested, unstable, and
unmaintainable at this moment
. The TAO IDL compiler now gives the following error when anonymous
types are used: 'anonymous types are deprecated by OMG spec'.
One can changes this error into a warning. There's also a possibility
to silence the TAO IDL compiler about this message. One of the following
defines can be added to your config.h file in order to change the behavior
of the TAO IDL compiler:
* IDL_ANON_ERROR: The TAO IDL generates an error when it encounters
an anonymous type (default behavior).
* IDL_ANON_WARNING: The TAO IDL generates a warning when it encounters
an anonymous type.
* ANON_TYPE_SILENT: The TAO IDL doesn't generate a warning nor an error
when it encounters an anonymous type.
. Renamed ALL ORB services executables. This because of
the fact that the TAO ORB services should be recognizable
between the ORB services of other CORBA vendors. There are
systems where ORB services of several CORBA vendors are
installed (mainly via the installed packages). The following
rename actions have been taken place:
* 'LifeCycle_Service' to 'tao_coslifecycle'
* 'Dump_Schedule' to 'tao_dump_schedule'
* 'NT_Notify_Service' to 'tao_nt_cosnotification'
* 'Notify_Service' to 'tao_cosnotification'
* 'FT_ReplicationManager' to 'tao_ft_replicationmanager'
* 'IFR_Service' to 'tao_ifr_service'
* 'TAO_Service' to 'tao_service'
* 'Fault_Detector' to 'tao_fault_detector'
* 'Scheduling_Service' to 'tao_cosscheduling'
* 'Basic_Logging_Service' to 'tao_tls_basic'
* 'Notify_Logging_Service' to 'tao_tls_notify'
* 'Event_Logging_Service' to 'tao_tls_event'
* 'RTEvent_Logging_Service' to 'tao_tls_rtevent'
* 'Naming_Service' to 'tao_cosnaming'
* 'NT_Naming_Service' to 'tao_nt_cosnaming'
* 'CosEvent_Service' to 'tao_cosevent'
* 'Event_Service' to 'tao_rtevent'
* 'LoadManager' to 'tao_loadmanager'
* 'LoadMonitor' to 'tao_loadmonitor'
* 'Trading_Service' to 'tao_costrading'
* 'Time_Service_Server' to 'tao_costime_server'
* 'Time_Service_Clerk' to 'tao_costime_clerk'
* 'ImplRepo_Service' to 'tao_imr_locator'
* 'ImR_Activator' to 'tao_imr_activator'
* 'Fault_Notifier' to 'tao_fault_notifier'
* 'Concurrency_Service' to 'tao_cosconcurrency'
. Fixed several bugs related to recursive typecodes
USER VISIBLE CHANGES BETWEEN TAO-1.8.1 and TAO-1.8.2
====================================================
. Extended logging related to the POA active object map
USER VISIBLE CHANGES BETWEEN TAO-1.8.0 and TAO-1.8.1
====================================================
. IDL compiler
- Added code generation for an empty implementation of
the reply handler interface generated as part of an
AMI4CCM connector, triggered by the same option, -Gex,
that generates a similar implementation for a
component executor.
- Added flags that can be defined in config.h to output
an error or warning if an anonymous IDL construct is
seen by the IDL compiler. Also added IDL compiler
options to do the same (or override a global flag)
for individual IDL files.
USER VISIBLE CHANGES BETWEEN TAO-1.7.9 and TAO-1.8.0
====================================================
. Added minimal exploratory support for alternate IDL->C++
mapping: IDL string->std::string and IDL sequence->std:vectors.
We are talking with sponsors to see if we can raise funds
to make a full new IDL to C++ mapping proposal that uses
all new C++0x features
. Fixed bugzilla #3853.
. Improved the speed of tao_idl when processing
large input files with many module re-openings.
. Removed MCPP support from TAO_IDL.
. Extended support for CIAO DDS4CCM and AMI4CCM in TAO_IDL
USER VISIBLE CHANGES BETWEEN TAO-1.7.8 and TAO-1.7.9
====================================================
. TAO's default makefiles (traditional ACE/GNU, not autoconf/automake)
now support installation with "make install".
Please see the ACE-INSTALL.html file for instructions.
. Refactored several parts of TAO_IDL
USER VISIBLE CHANGES BETWEEN TAO-1.7.7 and TAO-1.7.8
====================================================
. Added -ORBHandleLoggingStrategyEvents option. Given
that ORB is run in user application this option allows
to easily add log file rotation.
. Added a new option -ORBIgnoreDefaultSvcConfFile.
This allows TAO to ignore only svc.conf file while
processing normally other user provided configuration
files or directives.
USER VISIBLE CHANGES BETWEEN TAO-1.7.6 and TAO-1.7.7
====================================================
. Add IDL3+ support to TAO_IDL
. Cleanup in TAO_IDL. Part of this cleanup closes
(Bugzilla 2200).
USER VISIBLE CHANGES BETWEEN TAO-1.7.5 and TAO-1.7.6
====================================================
. Added support for iPhone/iPod Touch/iPad. The following
environment variables are needed:
IPHONE_TARGET, should be set to either SIMULATOR or
HARDWARE. Set to HARDWARE if you want to deploy
on the iPhone/iPod Touch/iPad device.
IPHONE_VERSION, should be set to 3.1.2 or 3.2. One can
set the version to any future or past versions, but
only 3.1.2 and 3.2 have been tried.
Note that one has to compile ACE/TAO statically as
it is believed that the iPhone OS does not support
dynamic loading of external libraries. The usual
procedure of cross compiling ACE/TAO applies
(such as setting HOST_ROOT environment variable).
. Added support for IDL template modules in the IDL
compiler front end. This is partly tested, some
parts do work, some not yet
. Fixed bug in optional ostream operator generation
for IDL arrays.
. Added member validation feature to LoadBalancer.
. Add support for valuetype repository id and value
on both input and output streams.
. Added support for Embarcadero C++ Builder 2010
. Added method TAO_Leader_Follower::set_new_leader_generator().
. Fixed missing request id in logging of LocateRequest/LocateReply &
CancelRequest.
. Fixed problems with ORB shutdown in combination with active
requests.
USER VISIBLE CHANGES BETWEEN TAO-1.7.4 and TAO-1.7.5
====================================================
. Converted a lot of TAO tests to use the new test framework
. Fix problem in the IDL compiler where set/get methods for
attributes in a local interface derived from a non local interface
where not regenerated as pure virtual
. Fixed some bugs concerning spaces within roots, to allow TAO_IDL
to be used by user projects that are installed on windows paths
such as "c:\Project Files\..." or "c:\Documents and Settings\.."
etc.
. The IDL3+ keywords porttype/port/mirrorport are now fully
implemented and tested
. Fixed bug in code generation for components, where a derived
component or home with more than one generation of ancestors
was missing inherited operations in its operation table
. Merged in changes from OCI's distribution which originate from
OCI request ticket [RT 13596, RT 13704].
- Added queue-overflow statistics to the Notification Service MC.
- Modified Notification Service MC to work in static builds.
- Corrected an error that caused Notification Service MC statistics
to fail when -AllocateTaskPerProxy is used.
- QueueDepth have been changed to measure the number of entries
rather than attempting unsuccessfully to estimate the amount of
memory used by the queue.
- Added TAO_EXPLICIT_NEGOTIATE_CODESETS macro to improve the ease
of including optional codeset support to Notify_Service in static
builds.
- Added new MPC features (notify_monitor_control and
negotiate_codesets).
- fixed ACE_Logging_Stragey service loading issue in static builds.
USER VISIBLE CHANGES BETWEEN TAO-1.7.3 and TAO-1.7.4
====================================================
. Initial support for IDL3+ in the TAO_IDL compiler front end.
IDL3+ is an extension to IDL3 driven by the DDS4CCM draft
standard. IDL3+ adds a porttype which is a logical grouping
of CCM ports and a concept of templates (like C++)
. Changed behaviour of -Glem and -Glfa
. Ported a large set of TAO tests to the new test framework
. Added a capability to throw BAD_PARAM exception in case
there is an attempt to access sequence elements above
sequence length. By default this capability is turned on
in debug builds with defining TAO_CHECKED_SEQUENCE_INDEXING.
BAD_PARAM exception is also thrown in case a new sequence
length for bounded sequence is greater than the bound
defined in IDL.
USER VISIBLE CHANGES BETWEEN TAO-1.7.2 and TAO-1.7.3
====================================================
. Merged in changes from OCI's distribution which
originate from OCI request ticket [RT 12994]. Added
following ORB options.
-ORBForwardOnceOnObjectNotExist [0|1]
-ORBForwardOnceOnCommFailure [0|1]
-ORBForwardOnceOnTransient [0|1]
-ORBForwardOnceOnInvObjref [0|1]
The -ORBForwardOnceOnObjectNotExist ORB option is added
to avoid side effect from
-ORBForwardInvocationOnObjectNotExist that could cause
the request fall into forward loop in some use cases
(e.g. client sends request while servant is deactivated).
The other options are added for the same purpose to avoid
possible forward loop upon specified exceptions.
. Corrected TAO_IDL dds code generation to count WChar size for wstring
marshal size.
USER VISIBLE CHANGES BETWEEN TAO-1.7.1 and TAO-1.7.2
====================================================
. Extended IDL compiler to take over all code generation from
the CIAO CIDL compiler, which has been eliminated.
See $TAO_ROOT/docs/compiler.html for details.
. Added code generation for export header files. See
$TAO_ROOT/docs/compiler.html for details.
USER VISIBLE CHANGES BETWEEN TAO-1.7.0 and TAO-1.7.1
====================================================
. Improved Unicode compatibility.
. Improved service configuration processing.
USER VISIBLE CHANGES BETWEEN TAO-1.6.9 and TAO-1.7.0
====================================================
. Merged in changes from OCI's distribution which originate from
OCI request ticket [RT 12912]. In their totality, the changes
added new features for IMR to support the capability of client
automatically reconnects servers within same port range upon
server restart. The ServerId is added to ServerInfo in IMR to
help identify server process. The -UnregisterIfAddressReused
option is added to IMR to enable the address reuse checking
upon server registering. The servers that address is reused
are unregistered from IMR. The -ORBForwardInvocationOnObjectNotExist
option is added to forward request to next available profile
upon receiving OBJECT_NOT_EXIST exception reply.
. The -ORBRunThreads of the notification service has been renamed
to -RunThreads and the notification service can now be loaded
as dll.
. Updated ZIOP to match the OMG Beta 2 specification
. Added a new utility, tao_logWalker, see utils/logWalker for details.
This tool analises a collection of log files containing output of
TAO running with -ORBDebuglevel 10, and generates a report showing
process, thread and invocation summaries.
. Fixed bug in Notification Service that the filter constraint expressions
are ignored when event type domain_name or type_name is specified
(see bug 3688).
. The MCPP version optionally used by TAO_IDL has been updated to 2.7.2.
Efforts have been taken to port this to as many platforms as possible,
however, since it is not currently the default configuration it may
not work across all platforms.
USER VISIBLE CHANGES BETWEEN TAO-1.6.8 and TAO-1.6.9
====================================================
. Reply Dispatchers are refactored. No deadlock occurs when an
(a)synchronous CORBA call is made during dispatching a reply.
. Fixed IDL compiler bug that in some cases caused code generation for
inherited operations to be skipped.
. The Transport Cache Size maximum is now a hard maximum.
. Fixed several bugs related to the purging of transports when the cache
is almost full.
. New TAO-specific feature of Notification service improves management
of proxies when peer goes away without disconnecting from proxy. See
orbsvcs/Notify_Service/README for details in the svc.conf section.
. Improved Notification topology persistence, now persists filters.
. Updated ZIOP to match the beta 1 OMG specification.
USER VISIBLE CHANGES BETWEEN TAO-1.6.7 and TAO-1.6.8
====================================================
. Fixed race condition when multiple threads make a connection to the
same server (bugzilla 3543)
. Updated several tests to the new test framework
. Fixed several memory leaks and make sure the TAO singletons are
destructed when the TAO DLL gets unloaded
. Improved WinCE unicode support and extended the number of tests that
can be run with WinCE
. Fixed some race conditions in the transport cache. There are several
known issues resolved in the transport cache when it starts purging.
. Fixed memory leak in string and object reference sequences.
. Bugs fixed: 3078, 3499, 3524, 3543, 3549, 3557, 3559.
USER VISIBLE CHANGES BETWEEN TAO-1.6.6 and TAO-1.6.7
====================================================
. Added a fix for bug 2415. Added -DefaultConsumerAdminFilterOp and
-DefaultSupplierAdminFilterOp TAO_CosNotify_Service options for setting
the default filter operators.
. The full TAO distribution compiles with unicode enabled. Work is ongoing
to make the TAO runtime results comparable with the ascii builds.
. Added two new ORB parameters, -ORBIPHopLimit and -ORBIPMulticastLoop. The
first one controls number of hops an IPv4/IPv6 packet can outlive. The
second one is related to MIOP only and it takes boolean value which
directs whether to loop multicast packets to the originating host or not.
. Added the "TAO" and "TAO/orbsvcs" OCI Development Guide Examples under the
directories /DevGuideExamples and /orbsvcs/DevGuideExamples. NOTE this is
an ongoing port of the original version x.5.x examples and some are not yet
100% compatiable with the current version of TAO.
. Split CosLifeCycle library into separate client stub and server
skeleton libraries. Fixes bugzilla issue #2409.
. Split CosTime library into separate client stub, server skeleton,
and server implementation libraries. Fixes bugzilla issue #3433.
. Avoid core dumps when evaluating TCL and ETCL expressions containing
divisions by zero. Partial fix for bugzilla issue #3429.
USER VISIBLE CHANGES BETWEEN TAO-1.6.5 and TAO-1.6.6
====================================================
. Added a new text based monitor to the Notify_Service to keep track of
consumers that were removed due to a timeout.
. Repaired the -ORBMuxedConnectionMax <limit> option on the resource factory.
This service configurator option defines an upper limit to the number of
connections an orb will open to the same endpoint.
. Repaired a problem that caused the ORB to open too many connections to
an endpoint.
. Added a -Timeout option to the Notify_Service to allow the user to apply a
relative round-trip timeout to the ORB. This option requires that the
'corba_messaging' MPC feature be enabled during building of the
Notify_Service, which it is by default.
. Added ZIOP support to TAO. ZIOP adds the ability to compress the
application data on the wire. This is a join effort of Remedy IT, Telefonica,
and IONA. We are working on getting this standardized through the OMG.
Until this has been formally standardized we don't guarantee
interoperability with other ORBs and between different versions of
TAO that support ZIOP, this is done after this has been accepted
by the OMG. If you want to experiment with ZIOP you need to add
TAO_HAS_ZIOP 1 as define to your config.h file. See TAO/tests/ZIOP
for an example how to use it. All policies are not checked on all
places so it can happen that the ORB sends uncompressed data when
it could have compressed it. This is because of limitations in the
policy mechanism in the ORB which will take a few weeks to rework.
Also note that ZIOP doesn't work together with RTCORBA
. Added a -m option to the ImplRepo (ImR, Implementation Repository) Activator,
which specifies the maximum number of environment variables which will be
passed to the child process. The default (and previous behavior) is 512.
USER VISIBLE CHANGES BETWEEN TAO-1.6.4 and TAO-1.6.5
====================================================
. Updated TAO to comply with the IDL to C++ mapping v1.2. As a result
CORBA::LocalObject is now refcounted by default
. Added a new ORB parameter, -ORBAcceptErrorDelay, that controls the amount
of time to wait before attempting to accept new connections when a
possibly transient error occurs during accepting a new connection.
. Fixed a bug which could lead to an ACE_ASSERT at runtime when a TAO
is used from a thread that is not spawned using ACE
. Added new Monitoring lib that can be used to retrieve values from
the new Monitoring framework in ACE. This is disabled by default
because it is not 100% finished yet, with the next release it
will be enabled by default
. Extended the -ORBLaneListenEndpoints commandline option to support
*, for details see docs/Options.html
. VxWorks 6.x kernel mode with shared library support
USER VISIBLE CHANGES BETWEEN TAO-1.6.3 and TAO-1.6.4
====================================================
. Service Context Handling has been made pluggable
. Improved CORBA/e support and as result the footprint decreased when
CORBA/e has been enabled
. Added the ability to remove consumer and supplier proxies and consumer and
supplier admins through the Notify Monitor and Control interface.
. Changed Interface Repository's IOR output file from being
world writable to using ACE_DEFAULT_FILE_PERMS.
. Add support for a location forward with a nil object reference.
USER VISIBLE CHANGES BETWEEN TAO-1.6.2 and TAO-1.6.3
====================================================
. Fixed send side logic (both synchronous and asynchronous) to honor
timeouts. An RTT enabled two-way invocation could earlier hang
indefinately if tcp buffers were flooded.
. Bug fix for cases where the IDL compiler would abort but with an
exit value of 0.
. Bug fix in IDL compiler's handling of typedef'd constants having
a bitwise integer expression as the value.
. Bug fix that ensures valuetypes and their corresponding supported
interfaces have parallel inheritance hierarchies.
. Fix for possible out-of-order destruction of Unknown_IDL_Type's
static local lock object (bugzilla 3214).
. Added list() iterator functionality for the Naming Service when
using the -u persistence option.
. Various bug fixes to the IFR service and compiler.
. New option (-T) to IFR compiler that permits duplicate typedefs with
warning. Although not encouraged, this allows IDL that used to pass
through the IFR compiler to still pass through rather than having to
be changed.
. Fix crashing of _validate_connection on an invalid object reference
. Add support for TAO on VxWorks 5.5.1
. _get_implementation has been removed from CORBA::Object, it was
deprecated in CORBA 2.2
. Improved CORBA/e support
. Fixed SSLIOP memory leaks
USER VISIBLE CHANGES BETWEEN TAO-1.6.1 and TAO-1.6.2
====================================================
. Added support for handling Location Forward exceptions caught when using
AMI with DSI. These exceptions may also be raised from within DSI servants
using AMH.
. Added -RTORBDynamicThreadRunTime which controls the lifetime of dynamic
RTCORBA threads
. Changed the PI code so that send_request is also called at the moment
we don't have a transport (bugzilla 2133)
. Fixed memory leak that occured for each thread that was making CORBA
invocations
. Updated several tests to work correctly on VxWorks
. Removed support for pluggable messaging. As a result the code in the
core of TAO is much cleaner and we are about 5 to 10% faster
. Improved CORBA/e support
. Added gperf's exit code to the error message output if it exits
unsuccessfully when spawned by the IDL compiler to generate an
interface's operation table
. Fixed bug in Interface Repository's handling of base valuetypes
and base components (Bugzilla 3155)
. Fixed code generation bug that occurs when there is both a C++
keyword clash in the IDL and AMI 'implied IDL' code generation
. Fixed IDL compiler bug wherein some cases of illegal use of a
forward declared struct or union wasn't caught
. Improved support for VxWorks 6.4 kernel and rtp mode
USER VISIBLE CHANGES BETWEEN TAO-1.6 and TAO-1.6.1
====================================================
. Made TAO more compliant to CORBA/e micro
. Fixed invalid code generation by the IDL compiler when the options -Sa -St
and -GA are combined
USER VISIBLE CHANGES BETWEEN TAO-1.5.10 and TAO-1.6
=====================================================
. Added a new interface that allows monitoring of activities within the
Notification Service. Completely configurable through the Service
Configurator, the monitoring capabilities are only in effect when chosen
by the user. When the monitoring capabilities are enabled, an outside
user can connect to a service that allows querying statistics gathered by
the Notification Service.
. Moved the BufferingConstraintPolicy to the Messaging lib
. Made it possible to disable not needed IOR parsers to reduce footprint
. Reworked several files to get a smaller footprint with CORBA/e and
Minimum CORBA. This could lead to a reduction of more then 20% then
with previous releases
. Removed the Domain library, it was not used at all and only
contained generated files without implementation
USER VISIBLE CHANGES BETWEEN TAO-1.5.9 and TAO-1.5.10
=====================================================
. Added support for forward declared IDL structs and unions to the
Interface Repository loader
. A new securty option is available using the Access_Decision interface
defined by the CORBA Security Level 2 specification. This enables the
implementation of servers using mixed security levels, allowing some
objects to grant unrestricted access while others require secure
connections. See orbsvcs/tests/Security/mixed_security_test for
details on using this feature.
. Removed GIOP_Messaging_Lite support for all protocols
. Fixed a hanging issue in persistent Notify Service during disconnection.
. Added IPv6 support to DIOP
. Added -Gos option to the IDL compiler to generate ostream
operators for IDL declarations
USER VISIBLE CHANGES BETWEEN TAO-1.5.8 and TAO-1.5.9
====================================================
. When using AMI collocated in case of exceptions they are deliverd
to the reply handler instead of passed back to the caller
. Added support for IPv6 multicast addresses when federating RTEvent
channels.
. Fixed a bug in the IDL compiler's handling of octet constants where
the rhs consists of integer literals and infix operators (Bugzilla 2944).
. TAO_IDL enhancements for built in sequence support in TAO DDS.
. Provide support for TAO DDS zero-copy read native types.
. TAO_IDL fix for lock-up and incorrect error message generation for
missing definitions within local modules. This fix also stops the
erronious look-up in a parent scoped module (with the same name as
a locally scoped module) that should have been hidden by the local
scope definition.
. The TAO_IORManip library now has a filter class that allows users to
create new object references based on existing multi-profile object
references by filtering out profiles using user defined criteria. The
use of -ORBUseSharedProfile 0 is required for this to function.
. A problem in TAO_Profile::create_tagged_profile was fixed. This problem
triggered only when MIOP in multi-threaded application was used.
. Added IPv6 support in MIOP so that IPv6 multicast addresses can be used in
addition to those IPv4 class D addresses. DSCP support is implemented in
MIOP as well. However, since MIOP only allows one way communication then it
makes sense to use DSCP on the client side only.
USER VISIBLE CHANGES BETWEEN TAO-1.5.7 and TAO-1.5.8
====================================================
. Fixed bug in IDL compiler related to abstract interfaces
. Fixed several issues in the AMI support
. Added new -ORBAMICollocation 0 which disables AMI collocated calls
. Improved a lot of test scripts to work with a cross host test
environment where client and server are run on different hosts.
This is used for automated testing with VxWorks
. Fixed handled of a forward request when doing a locate
request call
. Added an option, -a, to the Event_Service to use the thread-per-consumer
dispatching strategy instead of the default dispatching strategy.
. Improved wide character compilation support.
. Fixed IDL compiler to run on both OpenVMS Alpha and OpenVMS IA64.
. Fixed memory leaks in the ImpleRepo_Service.
. Fixed a bug in the IDL compiler relating to include paths.
. Fixed Trader Service issues related to CORBA::Long and CORBA::ULong.
USER VISIBLE CHANGES BETWEEN TAO-1.5.6 and TAO-1.5.7
====================================================
. Removed ACE_THROW_RETURN.
. Fixed a memory crash problem when using ETCL IN operator with
Notify Service filter.
. Remove exception specifications from ORB mediated operations (C++
mapping requirement)
. New diffserv library to specify diffserv priorities
independent of RTCORBA
. Addressed Coverity errors in core TAO libraries, TAO_IDL compiler,
stubs and skeletons generated by TAO_IDL and the TAO Notification
Service.
. Extended current DynamicInterface to allow DII+AMI+DSI+AMH.
(Thanks to OMC <www.omesc.com> for the sponsorship.)
. Fixed bug in IDL compiler code generation for a comma-separated list of
sequence typedefs.
. TAO no longer sets the unexpected exception handler.
USER VISIBLE CHANGES BETWEEN TAO-1.5.5 and TAO-1.5.6
====================================================
. Removed all exception environment macros except ACE_THROW_RETURN
and ACE_THROW_SPEC
USER VISIBLE CHANGES BETWEEN TAO-1.5.4 and TAO-1.5.5
====================================================
. Added an IDL compiler option to generate an explicit instantiation
and export of template base classes generated for IDL sequences,
sometimes necessary as a workaround for a Visual Studio compiler bug
(Bugzilla 2703).
. Beefed up error checking in the IDL compiler when processing
#pragma version directives.
. Modified IDL compiler's handling of a syntax error to eliminate
the chance of a crash (Bugzilla 2688).
. Fixed a bug in code generation for a valuetype when it inherits
an anonymous sequence member from a valuetype in another IDL file.
. Extended tests in tests/IDL_Test to cover generated code for
tie classes.