[AGENT++] Dependent MIB Tables and MibTable implementation

Frank Fock fock at agentpp.com
Mon Nov 17 21:47:09 CET 2003


Your are right, the line should better read "remove_row(ind)"
instead "content.remove(&ind)" in order to make sure that all
dependend tables are properly informed when a commit on
a new table row fails.

Normally this does not happen, because a row creation would
fail in preparation and not when committed. The next update
release will include this improvement.

Best regards,
Frank

Jens Engel wrote:

>Modelling in SMI largely relies on dependent MIB tables.
>There are different types of dependent MIB Tables:
>- Augmentation Table
>- ...
>
>The short description of these modelling concepts are presented in:
>[1] David T. Perkins, "Inter-Table Indexing in SNMP MIBs", 14-june-1998.
>    http://www.snmpinfo.com/tables.pdf
>
>
>On the first view, the Agentpp::MibTable class seems to well suited
>to implement dependent tables because row creation and deletion can be
>observed
>by other Agentpp::MibTable objects or derived classes.
>
>But when you have a closer look at the implementation of the MibTable
>class,
>there is at least one "bug" when you want that a dependent MIB table is
>informed about row creation/deletion:
>
>  In MibTable::set_value() [else part]:
>  A new row is created automatically, when it does not exist yet.
>  Table observers (and derived classes) are informed of the row creation.
>
>  Then, when the value assignment to the columnar manged objects of this
>row fails,
>  the row is SILENTLY removed.
>  Table observers (and derived classes) cannot notice this.
>  NOTE: This may lead to inconsistencies in a dependent MIB tables.
>
>NOTE: A similar problem might exist in MibTable::remove_obsolete_rows().
>
>QUESTIONS:
>Is this a bug or an intended feature?
>If it is an intended feature: How should dependent MIB tables be
>implemented?
>
>
>Jens Engel, EG-FW/SSW, Marconi Communications GmbH.
>mailto:Jens.Engel at marconi.com
>
>
>_______________________________________________
>AGENTPP mailing list
>AGENTPP at agentpp.org
>http://agentpp.org/mailman/listinfo/agentpp
>
>  
>






More information about the AGENTPP mailing list