New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
dataset
pending failures
#9901
Comments
@EskoDijk I think we need to change/increase the Adding
With this it works for me:
|
@abtink thanks for spinning out this issue and looking into it! I confirm that adding an active timestamp with a higher value works. If the active timestamp is lower than, or equal to, the current active timestamp value then the expected behavior is that when the pending dataset is applied, it does not lead to an update of the active dataset. So the current spec allows creating pending datasets that effectively "do nothing" once applied. (Section 8.4.3.4). I may be wrong here but this is a quick guess of what happens based on my log output. |
Another thing worth noting: it's possible to construct a pending dataset without the Pending Timestamp. Notably when copying an active dataset and modifying some items, that can happen - as we did in our test CLI commands in this issue. By default there is no Pending Timestamp and it has to be set explicitly. Missing Pending Timestamp has the property that the pending dataset will be applied on the node/Leader that created it, but it won't propagate to other nodes in the mesh. I'm not sure if the spec allows such a Pending Dataset without the Pending Timestamp. We could let the command Background:
|
Yes. The @EskoDijk , do you know about Supported in |
No, I havent' used the dataset-updater until now - thanks for the hint. For the topic of |
I agree this seems to like a bug (sort of a bad one). Will investigate it later. |
@EskoDijk I dig a bit more in the code. I see there are a bunch of validation checks done in
This includes active and pending timestamp (based on dataset type), channel checks, etc. This all seems fine to me. And I believe the The Thoughts? |
@abtink Good that checks are done at the Leader when taking in a new pending dataset. I'm also okay with having the CLI commands be more flexibile and allow (for testing) to use non-compliant datasets. What I'd like to do linked to this issue is to create a CLI documentation PR that adds some warnings about this - that the dataset CLI is not the intended way to update datasets, and that Thread devices in production MUST NOT autonomously update datasets (only a Commissioner can do this). Still, for the That said, I don't fully understand current code for |
Added PR #10026 for the CLI documentation issue mentioned in my last comment. Still pending for this issue, are the 2 problems mentioned in the last 2 paragraphs of my last comment. |
…ing datasets (#10026) Based on discussion in #9901 , this clarifies in the documentation that the CLI `dataset` commands can only be used in specific situations (like testing), and that these commands allow setting invalid (combinations of) parameters also. It points to the Commissioner as the correct way of doing dataset updates in production. It also adds "Overview" sections that were missing in two README files.
This is follow up from #9871 (comment). Filing as its own issue so can be discussed.
Copying the comment:
The text was updated successfully, but these errors were encountered: