Prebehlo vydanie OpenDDS 3.34.0 — voľná C++ implementácia špecifikácie Object Management Group Data Distribution Service pre reálne časové systémy. DDS sa využíva na budovanie distribuovaných systémov podľa modelu publikovania a predplácania, a samotný OpenDDS, okrem C++, poskytuje Java/JNI väzby a opiera sa o ACE/TAO. Verzia bola zverejnená 21. mája 2026, hotové archívy sú dostupné pre Windows, Linux a macOS.
Projekt sa distribuuje ako open source: OpenDDS je možné používať, upravovať a šíriť bez licenčných poplatkov pri zachovaní copyright upozornenia; osobitne sa zdôrazňuje, že OpenDDS je možné použiť aj na vývoj proprietárneho softvéru bez povinnosti zverejniť vlastný zdrojový kód.
Hlavné zmeny OpenDDS 3.34.0:
Rozšírené možnosti RtpsRelay. V RtpsRelay je teraz možné meniť dodatočné parametre počas behu prostredníctvom mechanizmu RtpsRelayControl. Tiež bola pridaná možnosť nastaviť zoznam oddielov, ktorých prístup bude konkrétnym inštanciám RtpsRelay zakázaný, prostredníctvom nového topic RelayDeniedPartitions. Na správu obdobia platnosti takéhoto zákazu sa objavila voľba -DeniedPartitionsTimeout.
Pridaný režim zostavovania na profilovanie. Do skriptu configure bol pridaný príznak —profiling, ktorý zapína typické parametre kompilácie na analýzu výkonu v GCC.
Objavili sa callbacky na správu ciest OpenDDS. Vývojári pridali obslužné rutiny, ktoré sa vyvolajú pri spustení a ukončení ciest OpenDDS. To umožňuje spravovať správanie ciest, napríklad zakotviť ich k konkrétnym jadrám CPU v Linuxe.
Optimalizovaná deserializácia IDL typov. Všetky IDL mapovania sa teraz snažia vyhnúť zbytočnému nulovaniu pamäte pre sekvencie primitívnych typov pri deserializácii vzorov. Pre IDL-to-C++11 je potrebné ďalšie explicitné povolenie cez @OpenDDS::no_init_before_deserialize.
Pridané riadenie počtu ciest EventDispatcher. Objavili sa parametre DCPSEventDispatcherThreads a dopravné nastavenie event_dispatcher_threads. Pri hodnote event_dispatcher_threads=0 bude doprava používať spoločný dispatcher udalostí namiesto vytvorenia vlastného miestneho dispatcher.
Pridané nastavenia TCP bufferov. Pre TCP dopravu sa objavili parametre send_buffer_size a rcv_buffer_size. Predvolene je veľkosť socket bufferov teraz ponechaná na uvážení platformy, ak tieto parametre nie sú nastavené na pozitívne hodnoty.
Aktualizované ACE/TAO. Aktualizovali sme závislosti: ACE 6/TAO 2 boli zvýšené z 6.5.23 na 6.5.24, a ACE 8/TAO 4 — z 8.0.5 na 8.0.6. Pri zostavovaní OpenDDS cez CMake sa predvolená verzia ACE/TAO teraz stala kombináciou ACE 8 / TAO 4.
Odstránená nepoužívaná možnosť RtpsRelay. Z RtpsRelay odstránili možnosť -LogParticipantStatistics, pretože sa už nepoužívala.
Opravy výkonu a sieťovej práce. Zvýšila sa veľkosť receive buffer pre netlink a významná časť obslužných a odpovedajúcich úloh bola prenesená z Reactor vlákien na príslušné EventDispatcher vlákna. To by malo uvoľniť Reactor vlákna pre sieťové čítanie.
Opravené chyby v ThreadStatusManager a transportoch. ThreadStatusManager teraz používa viac slotov so svojimi zámkami, čo znižuje konkurenciu medzi vláknami. Opravené de-referencovanie null ukazovateľa pri deserializácii DynamicData od odstraňovaného účastníka, ako aj chyby vyhľadávania transportnej inštancie a práce s lokálnymi adresami, ktoré mohli viesť k nesprávnym hodnotám locatorov v oznámeniach účastníkov a endpointov.
<<<<
Zdroj: linux.org.ru
