Skip to content
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

smi.GetNode returns Kind: NodeScalar instead of NodeColumn for a table's subtree #26

Open
metalgrid opened this issue Jul 12, 2021 · 2 comments

Comments

@metalgrid
Copy link

I'm parsing a MIB for a networking device and the table columns are reporting back as Kind: Scalar instead of Column.
I'm not sure if the MIB is bad, or I am misusing the library, so any input is greatly appreciated.

Here's some relevant information about my setup:
Go version: 1.16.3
gosmi version: 0.4.3

Here's a gist of how I'm getting the nodes:
https://gist.github.com/Metalgrid/3e9f95d2ae19009075db9a10de20ae5d

and the MIB files in question (it has a bunch of imports so I've included all of them)
mibs.zip

Just to clarify, everything works properly if I look at a standard table, e.g. ifXTable works properly, but the one that I'm interested in tmnxSubMgmtGpIfStatsTable returns all Scalar values.

P.S. Thank you for the amazing library! :)

@sleepinggenius2
Copy link
Owner

After a lot of scratching my head, I have finally concluded that the issue is with the MIB itself (or one of its dependencies). I believe that I've encountered this with Nokia MIBs myself. There is a type defined somewhere that is trying to refine an existing textual convention, which is invalid (see #16 for more context), and thus the MIB files are not loading fully. I don't remember at the moment why this fails silently and doesn't error, so I will have to look into that.

@metalgrid
Copy link
Author

Thanks for the confirmation. I suspected the MIB files as well, but wasn't sure if I'm not missing something because inspecting them with a recent version of SnmpB detects Columns properly, so I thought I'm missing some compatibility mode flag that needs to be enabled in gosmi.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants