MDS: Explicit subscription replay uses wrong state/version after implicit subscribe
commit ea0c7cce3fa4593f556016fa3506126c6d3f5c21 (HEAD -> develop, origin/develop, ticket-3397-1, ticket-3397) Author: Thien Minh Huynh thien.m.huynh@endava.com Date: Wed Apr 15 06:25:48 2026 +0200 mds: add test case for explicit replay [#3397] commit 6cbda59cf873e54cd7d67334e48dac562b187504 Author: Thien Minh Huynh thien.m.huynh@endava.com Date: Thu Apr 9 10:03:34 2026 +0700 mds: fix explicit replay callback metadata [#3397]
MDS: NEW_ACTIVE metadata is incorrect after MxN VDEST active-to-standby transition
commit 8ec9b8dbac32390ffb7b97833842007bc6aaef6f (HEAD -> develop, origin/develop, ticket-3396) Author: Thien Minh Huynh thien.m.huynh@endava.com Date: Thu Apr 9 11:30:52 2026 +0700 mds: fix MxN standby on service operation down [#3396] commit 544764998d9ec61060e8dd1f5a81f2e8bdb7c690 Author: Thien Minh Huynh thien.m.huynh@endava.com Date: Thu Apr 9 10:06:41 2026 +0700 mds: add test case for verify replacement active [#3396] commit c99a9e0a8a1bb4c89f5c8af3504558934093f9bc Author: Thien Minh Huynh thien.m.huynh@endava.com...
Thank you. I will update in the next version.
MDS: NEW_ACTIVE metadata is incorrect after MxN VDEST active-to-standby transition
There is a similar use case that client receive wrong version on MDS_DOWN event. Install server service ver 5 on a vdest then set role to active. Client subscribe server service. Client receive MDS_UP event with ver 5. Change role server service from active to standby then wait await-active timer expired. Client receives MDS_DOWN event with ver always 0.
MDS: NEW_ACTIVE payload is incorrect after MxN VDEST active-to-standby transition
MDS: Explicit subscription replay uses wrong state/version after implicit subscribe
IMM: OM agent cannot recovery when create agent fail
MDS: Explicit subscription replay uses wrong state/version after implicit subscribe
MDS: Explicit subscription replay uses wrong state/version after implicit subscribe
MDS: NEW_ACTIVE payload is incorrect after MxN VDEST active-to-standby transition
amf: Component failed instanttiation while immnd down
commit 8a0101f670badb5743af0ca9d49329ac8bbeb256 (HEAD -> develop, origin/develop) Author: tai.h.nguyen <tai.h.nguyen@endava.com> Date: Tue Apr 7 07:51:57 2026 +0000 amfnd: Reuse cached config when immnd is unavailable [#3395] A component can fail to instantiate while immnd is unavailable. The refresh path did not preserve the original IMM error and could not distinguish between cases where reusing the old config is allowed and upgrade handling where the legacy component failure must be kept. Preserve...
amfnd: Reuse cached config when immnd is unavailable [#3395]
log: memleak detected by valgrind
This is rare case. I cannot reproduce this issue.
amf: Component failed instanttiation while immnd down
imm: cannot set implementer after merge network
commit 05148767b54a95bfc5171c8a1b0ab42e9c70c8fb (HEAD -> develop, origin/develop, ticket-3390) Author: Thien Minh Huynh thien.m.huynh@endava.com Date: Wed Jan 7 08:41:10 2026 +0000 immnd: fix cannot set implementer returning SA_AIS_ERR_EXIST [#3390] Setting an implementer during cluster merge or split‑brain recovery could fail with SA_AIS_ERR_EXIST even though the coord accepted the new implementer and the operation should be retried. When this happens, visible symptoms include the imm agent timing...
immnd: fix cannot set implementer returning SA_AIS_ERR_EXIST [#3390]
commit 6b74478d0dfd4833cc6ab45b8e7360fa138546e0 (HEAD -> develop, origin/develop) Author: khuonglb khuong.b.le@endava.com Date: Mon Mar 16 16:27:12 2026 +0700 imm: old Simple API for XML interface is deprecated [#3387] xmlSAXUserParseFile() is deprecated. Replace it with a wrapper based on xmlCreateIOParserCtxt() to ensure safer and more controlled parsing.
imm: old Simple API for XML interface is deprecated
imm: old Simple API for XML interface is deprecated [#3387]
Current, We cannot config with autoconf 2.7 or later. Because OpenSAF does not support and adapt to use runstatedir
I think we can leave it once user can use the autoconf 2.7 or later to config it.
OM agent cannot recovery when create agent fail
NEWS-5.26.02
Announcement of the OpenSAF 5.26.02 release
ChangeLog-5.26.02
release: Update README, configure.ac for OpenSAF 5.27.01
release: Merge branch 'develop' into release
release: Update NEWS, README and ChangeLog for OpenSAF 5.26.02
osaf: etcd3.plugin does not work well with etcd 3.4
osaf: etcd3.plugin does not work well with etcd 3.4
pyosaf: import abstract base classes (ABCs) fails on python 3.10+
imm: immloadd raise coredump when validation abort in case of empty errorStrings
amfnd: mismatch message id during split-brian in roaming SC
ntf: fix errors reported by Valgrind in ntftest
imm: introduce new option for immcfg that allow overwrite when load from xml file
smf: Valgrind reported errors
amf: SU is not in healthy state
log: memleak detected by valgrind
amf: node did not reboot in split-brain prevention
imm: Valgrind reported errors
imm: PL sync failed after reconnected with SC
fmd: sc failed to failover in roamming mode
build: support config runstatedir when build opensaf package
osaf: tcp_server.py does not work from python 3.12 and later
imm: cannot set implementer after merge network
osaf: unable to identify the cause of Locked failed
imm: update readme for new introduce in ticket-2985
imm: old Simple API for XML interface is deprecated
OpenSAF: Lack of LICENSE and NOTICE files
imm: immloadd raise coredump when validation abort in case of empty errorStrings
commit 54e676c90f998d401bc403996d7bf197a2eb2730 (HEAD -> develop, origin/develop) Author: tai.h.nguyen tai.h.nguyen@endava.com Date: Mon Nov 3 03:30:27 2025 +0000 imm: fix coredump on validation abort when errorStrings is empty [#3380] Check null pointer before accessing errorString to avoid coredump.
imm: fix coredump on validation abort when errorStrings is empty [#3380]
SMF: Cannot view image in 2.2.1 OpenSAF SMFSv PR
NTF: The NTFSv PR document's diagram does not fit on the page
ntf: fix diagram in OpenSAF_NTFSv_PR.odt
smf: fix cannot view diagram in OpenSAF_SMFSv_PR.odt
imm: immloadd raise coredump when validation abort in case of empty errorStrings
imm: incorrect value when load empty value from xml file
commit 074cdef2349a019edadfba965961001975481bfb (HEAD -> develop, origin/develop, ticket-3392) Author: Thien Minh Huynh thien.m.huynh@endava.com Date: Thu Dec 18 02:45:17 2025 +0000 imm: correct handle null when load xml file [#3392] Only accept handle null when has an attribute xsi:nil="true" Not handle null in case <value></value>
imm: correct handle null when load xml file [#3392]
amf: dupplicate assignment in roaming SC split brain test
commit 4859bf6a95d336b97d921ea7e7f4c92ecaf85b89 (HEAD -> develop, origin/develop, ticket-3382) Author: Thang Duc Nguyen thang.d.nguyen@endava.com Date: Tue Dec 23 03:02:35 2025 +0100 amf: avoid mismatch in create/delete SUSI object [#3382] This is to correct the previous fix in this ticket. There are some cases that the mismatch can happen. - Create is queued -> delete direct -> create in queue executed. - Delete is queued -> create direct -> delete in queue executed. The fix is based on the mechanism,...
ntf: fix ntfd coredump
commit eb24877a84905aa5d72b9551764c271c8b3bd24e (HEAD -> develop, origin/develop) Author: khuonglb khuong.b.le@endava.com Date: Wed Oct 1 15:51:31 2025 +0700 ntfd: prevent coredump on null client during notification [#3359] ntfd could crash when a notification was processed after client was removed. Leaving a null client pointer and causing a null pointer dereference Check for a null client before handling notifications and return early.
ntfd: prevent coredump on null client during notification [#3359]
ntf: fix ntfd coredump
SMF: Cannot view image in 2.2.1 OpenSAF SMFSv PR
NTF: The NTFSv PR document's diagram does not fit on the page
build: support config runstatedir when build opensaf package
Missing README in dist package
commit 1cf2d0f5b85f5c474ebbd3f2d6ef8cc8c47aada9 (HEAD -> develop, origin/develop, ticket-3381) Author: Vu Luu Vu.Luu@endava.com Date: Tue Nov 4 05:27:26 2025 +0100 build: Include missing README files in OpenSAF package [#3381]
build: Include missing README files in OpenSAF package [#3381]
amf: dupplicate assignment in roaming SC split brain test
There are some side effects of the fix. It need to be updated.
support config runstatedir when build opensaf package
/var/run is deprecated in most modern Linux distributions
/var/run is deprecated in most modern Linux distributions
/var/run is deprecated in most modern Linux distributions
imm: incorrect value when load empty value from xml file
Hi Thang, Sorry, I want to correct this use case. <object class="Test"> <dn>test=2</dn> <attr> <name>limitTime</name> <value></value> </attr> </object> This is not considering a valid empty/nil use case. It violates with empty data if data type of string is empty. That what xsi:nil="true" introduced. Example: <attr> <name>limitTime</name> <type>SA_STRING_T</type> <category>SA_CONFIG</category> <flag>SA_WRITABLE</flag> <default-value>15</default-value> </attr> <attr> <name>limitTime</name> <value></value>...
Hi Thang, Sorry, I want to correct this use case. <object class=""> <dn>test=2</dn> <attr> <name>limitTime</name> <value></value> </attr> </object> This is not considering a valid empty/nil use case. It violates with empty data if data type of string is empty. That what xsi:nil="true" introduced. Best Regards, Thien
imm: incorrect value when load empty value from xml file
imm: incorrect value when load empty value from xml file
commit 5c7ff8b80e54cdf0ac1e203d9f0db1ccc6ab9269 (HEAD -> develop, origin/develop, ticket-3392) Author: Thien Minh Huynh thien.m.huynh@endava.com Date: Mon Nov 3 09:04:42 2025 +0000 imm: correct xml parser to SaImmAttrValuesT_2 [#3392] imm import does not handle parse empty tag. This commit just handles parsing empty tags to SaImmAttrValuesT_2.
Hi Thang, https://sourceforge.net/p/opensaf/mailman/message/59267063/ I have updated to handle use case that you mentioned. Best Regards, Thien
Hi Thang, The input from xml "<value xsi:nil="true">" is valid. The output of immlist test=1 is expected. limitTime SA_UINT32_T 15 (0xf)</value> The input from xml "<value></value>" is valid. But the output of immlist test=2 is not expected. limitTime SA_UINT32_T 0 (0x0)
Hi Thang, The input from xml "<value xsi:nil="true">" is valid. But the output of immlist test=1 is expected. limitTime SA_UINT32_T 15 (0xf)</value> The input from xml "<value></value>" is valid. But the output of immlist test=2 is not expected. limitTime SA_UINT32_T 0 (0x0)
Hi Thang, The input from xml "<value></value>" is valid. But the output of immlist test=1 is expected. limitTime SA_UINT32_T 15 (0xf) The input from xml "<value xsi:nil="true">" is valid. But the output of immlist test=2 is not expected. limitTime SA_UINT32_T 0 (0x0)</value>
Hi Thang, The output of immlist test=1 is expected behavior. limitTime SA_UINT32_T 15 (0xf) The output of immlist test=2 is not expected behavior. limitTime SA_UINT32_T 0 (0x0)
Hi Thien, I change a little of xml file to <?xml version="1.0"?> <imm:IMM-contents xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="SAI-AIS-IMM-XSD-A.02.13.xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:imm="http://www.saforum.org/IMMSchema"> <class name="Test"> <category>SA_CONFIG</category> <rdn> <name>test</name> <type>SA_STRING_T</type> <category>SA_CONFIG</category> <flag>SA_INITIALIZED</flag> </rdn> <attr> <name>limitTime</name> <type>SA_UINT32_T</type>...
imm: incorrect value when load empty value from xml file
imm: incorrect value when load empty value from xml file