Missing data from index columns

Hi,
I have a table with multi-column index.
I can succesfully add, retreive and delete data from the table.

Anyway my issue is that when doing a walk (or a get bulk) on the table the columns part of the index came out empty.

This is the section of my MIB containing the table definition:

-- [...]
mtAlarmTable     OBJECT-TYPE
            SYNTAX  SEQUENCE OF     mtAlarmEntry
            MAX-ACCESS              not-accessible
            STATUS                  current
            DESCRIPTION             "mt alarm table"
            ::= { alarms 4 }

        mtAlarmEntry     OBJECT-TYPE
            SYNTAX              mtAlarmEntry
            MAX-ACCESS          not-accessible
            STATUS              current
            DESCRIPTION         "Row of mt alarm table"
            INDEX {
                        cIpAddress, 
                        cItemType, 
                        cInstanceNumber, 
                        cErrorCode
            }
            ::= { mtAlarmTable 1 }

        mtAlarmEntry ::= SEQUENCE {
            cIpAddress          IpAddress, 
            cItemType           ItemType,
            cInstanceNumber     Integer32,
            cErrorCode          ErrorCode,
            cErrorSeverity      X733SEVERITY,
            cErrorTimestamp     DateAndTime,
            cRowStatus          RowStatus
        }

        cIpAddress OBJECT-TYPE
            SYNTAX      IpAddress
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION "Ip Address of the object generating the error"
                ::= { mtAlarmEntry 1 }

        cItemType   OBJECT-TYPE
            SYNTAX      ItemType
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION "Item type of the object generating the alarm"
                ::= { mtAlarmEntry 2 }

        cInstanceNumber OBJECT-TYPE
            SYNTAX          Integer32 (1..65535)
            MAX-ACCESS      read-only
            STATUS          current
            DESCRIPTION     "Identification number of the object generating the alarm"
                ::= { mtAlarmEntry 3 }

        
        cErrorCode   OBJECT-TYPE
            SYNTAX      ErrorCode
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION "Error code of the alarm"
                ::= { mtAlarmEntry 4 }

        cErrorSeverity  OBJECT-TYPE
            SYNTAX      X733SEVERITY
            MAX-ACCESS  read-create
            STATUS      current
            DESCRIPTION "Error severity of the alarm"
                ::= { mtAlarmEntry 5 }

        cErrorTimestamp OBJECT-TYPE
            SYNTAX      DateAndTime
            MAX-ACCESS  read-create
            STATUS      current
            DESCRIPTION "Error timestamp of the alarm"
                ::= { mtAlarmEntry 6 }

        cRowStatus OBJECT-TYPE
            SYNTAX          RowStatus
            MAX-ACCESS      read-create
            STATUS          current
            DESCRIPTION     "Standard field to add rows to the table, currently supported only create-and-go"

                ::= { mtAlarmEntry 7 }

-- [...]

By SNMP standard recommendation, INDEX columns should be “not-accessible” as long as there is at least one non-index column in the table.

Having the INDEX columns read-only provides redundant information. In that case, the values is in the instance OID sub-index identifier as well as in the column value. Thus, the same information is transmitted twice which unnecessarily consumes bandwidth and carbon.

In your case, you probably forgot to assign the value to the column object?