There is a bug in function bmcDataSetComparison according to IEEE 1588 - 2008 std.
If all parameters are same but offsetScaledLogVariance the winner should be the one with lower offsetScaledLogVariance.
In branch "GrandMaster are not identical"
and subbranch "offsetScaledLogVariance are not identical"
should be comparison of offsetScaledLogVariance and not comparison of clockClass which are previously known to be same.
It returns zero and PTPd fails and reinitialize.