Storage_perc_warn returns to default value 60 after autodiscovery

Helllo,

After fix #17104 on storage_perc_warn at 25.2.0 if you change the value to a device, it returns to 60 after autodiscovery.

The problem still exists in 25.3.0

librenms@librenms:~$ ./validate.php

Component Version
LibreNMS 25.3.0 (2025-03-17T01:10:07+02:00)
DB Schema 2025_03_11_031114_drop_ospfv3ifinstid (321)
PHP 8.3.14
Python 3.8.10
Database MariaDB 10.3.39-MariaDB-0ubuntu0.20.04.2
RRDTool 1.7.2
SNMP 5.8
===========================================

[OK] Composer Version: 2.8.6
[OK] Dependencies up-to-date.
[OK] Database connection successful
[OK] Database connection successful
[OK] Database Schema is current
[OK] SQL Server meets minimum requirements
[OK] lower_case_table_names is enabled
[OK] MySQL engine is optimal
[OK] Database and column collations are correct
[OK] Database schema correct
[OK] MySQL and PHP time match
[OK] Active pollers found
[OK] Dispatcher Service is enabled
[OK] Locks are functional
[OK] Python wrapper cron entry is not present
[OK] Redis is unavailable
[OK] rrdtool version ok
[OK] Connected to rrdcached
librenms@librenms:~$

Can you show your discoveyydebug output?

After further investigation problem exists only on huawei switches…

Here is the storage section of the discoverydebug

Load disco module storage

SNMP[‘/usr/bin/snmpbulkwalk’ ‘-M’ ‘/opt/librenms/mibs:/opt/librenms/mibs/huawei’ ‘-m’ ‘SNMPv2-TC:SNMPv2-MIB:IF-MIB:IP-MIB:TCP-MIB:UDP-MIB:NET-SNMP-VACM-MIB’ ‘-v2c’ ‘-c’ ‘COMMUNITY’ ‘-OQXUt’ ‘-Pu’ ‘-Ob’ ‘-t’ ‘2’ ‘udp:HOSTNAME:161’ ‘HUAWEI-FLASH-MAN-MIB::hwStorageTable’]

HUAWEI-FLASH-MAN-MIB::hwStorageType.1 = flash
HUAWEI-FLASH-MAN-MIB::hwStorageSpace.1 = 259764
HUAWEI-FLASH-MAN-MIB::hwStorageSpaceFree.1 = 60104
HUAWEI-FLASH-MAN-MIB::hwStorageName.1 = flash:
HUAWEI-FLASH-MAN-MIB::hwStorageDescr.1 =

Using flash from $pre_cache[1][HUAWEI-FLASH-MAN-MIB::hwStorageType] for HUAWEI-FLASH-MAN-MIB::hwStorageType

Using flash: from $pre_cache[1][HUAWEI-FLASH-MAN-MIB::hwStorageName] for HUAWEI-FLASH-MAN-MIB::hwStorageName
Using 259764 from $pre_cache[1][HUAWEI-FLASH-MAN-MIB::hwStorageSpace] for HUAWEI-FLASH-MAN-MIB::hwStorageSpace

Using 60104 from $pre_cache[1][HUAWEI-FLASH-MAN-MIB::hwStorageSpaceFree] for HUAWEI-FLASH-MAN-MIB::hwStorageSpaceFree

SQL[select * from storage where storage.device_id = ? and storage.device_id is not null [272] 1.37ms]

SQL[update storage set storage_perc_warn = ? where storage_id = ? [60,892] 0.66ms]

Updated data:

array (
‘storage_perc_warn’ => 60,
)

flash: (flash): 77% 194.98 MiB / 253.68 MiB

Runtime for discovery module ‘storage’: 0.0430 seconds with 115544 bytes

SNMP: [1/0.04s] MySQL: [2/0.02s] RRD: [0/0.00s]

Unload disco module storage

Does this help?

Nope… still autodiscovery reverts the value to 60.
It’s the first time that i run script github-apply. do i need to run something more to commit the change? script ran successfully.

Component Version
LibreNMS 25.3.0 (2025-03-17T01:10:07+02:00)
DB Schema 2025_03_11_031114_drop_ospfv3ifinstid (321)
PHP 8.3.14
Python 3.8.10
Database MariaDB 10.3.39-MariaDB-0ubuntu0.20.04.2
RRDTool 1.7.2
SNMP 5.8
===========================================

[OK] Composer Version: 2.8.6
[OK] Dependencies up-to-date.
[OK] Database connection successful
[OK] Database connection successful
[OK] Database Schema is current
[OK] SQL Server meets minimum requirements
[OK] lower_case_table_names is enabled
[OK] MySQL engine is optimal
[OK] Database and column collations are correct
[OK] Database schema correct
[OK] MySQL and PHP time match
[OK] Active pollers found
[OK] Dispatcher Service is enabled
[OK] Locks are functional
[OK] Python wrapper cron entry is not present
[OK] Redis is unavailable
[OK] rrdtool version ok
[OK] Connected to rrdcached
[WARN] Your local git contains modified files, this could prevent automatic updates.
[FIX]:
You can fix this with ./scripts/github-remove
Modified Files:
LibreNMS/Modules/Storage.php
app/Providers/AppServiceProvider.php

Load disco module storage

SNMP[‘/usr/bin/snmpbulkwalk’ ‘-M’ ‘/opt/librenms/mibs:/opt/librenms/mibs/huawei’ ‘-m’ ‘SNMPv2-TC:SNMPv2-MIB:IF-MIB:IP-MIB:TCP-MIB:UDP-MIB:NET-SNMP-VACM-MIB’ ‘-v2c’ ‘-c’ ‘COMMUNITY’ ‘-OQXUt’ ‘-Pu’ ‘-Ob’ ‘-t’ ‘2’ ‘udp:HOSTNAME:161’ ‘HUAWEI-FLASH-MAN-MIB::hwStorageTable’]

HUAWEI-FLASH-MAN-MIB::hwStorageType.1 = flash
HUAWEI-FLASH-MAN-MIB::hwStorageSpace.1 = 259764
HUAWEI-FLASH-MAN-MIB::hwStorageSpaceFree.1 = 59064
HUAWEI-FLASH-MAN-MIB::hwStorageName.1 = flash:
HUAWEI-FLASH-MAN-MIB::hwStorageDescr.1 =

Using flash from $pre_cache[1][HUAWEI-FLASH-MAN-MIB::hwStorageType] for HUAWEI-FLASH-MAN-MIB::hwStorageType

Using flash: from $pre_cache[1][HUAWEI-FLASH-MAN-MIB::hwStorageName] for HUAWEI-FLASH-MAN-MIB::hwStorageName

Using 259764 from $pre_cache[1][HUAWEI-FLASH-MAN-MIB::hwStorageSpace] for HUAWEI-FLASH-MAN-MIB::hwStorageSpace

Using 59064 from $pre_cache[1][HUAWEI-FLASH-MAN-MIB::hwStorageSpaceFree] for HUAWEI-FLASH-MAN-MIB::hwStorageSpaceFree

SQL[select * from storage where storage.device_id = ? and storage.device_id is not null [272] 0.67ms]

SQL[update storage set storage_perc_warn = ? where storage_id = ? [60,892] 0.49ms]

Updated data:

array (
‘storage_perc_warn’ => 60,
)

flash: (flash): 77% 196 MiB / 253.68 MiB

Runtime for discovery module ‘storage’: 0.0470 seconds with 118464 bytes

SNMP: [1/0.04s] MySQL: [2/0.01s] RRD: [0/0.00s]

Unload disco module storage