From 2e3aef69293921c539de65a88a68c635e0b7705c Mon Sep 17 00:00:00 2001 From: Tony Murray Date: Mon, 20 Aug 2018 17:58:26 -0500 Subject: [PATCH] Workaround for storage bigint (#9049) Fix is to use mysqlnd driver instead of mysqli. --- includes/polling/storage.inc.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/includes/polling/storage.inc.php b/includes/polling/storage.inc.php index cffa3993b6..8fdf90f1f7 100644 --- a/includes/polling/storage.inc.php +++ b/includes/polling/storage.inc.php @@ -36,7 +36,8 @@ foreach (dbFetchRows('SELECT * FROM storage WHERE device_id = ?', array($device[ $tags = compact('mib', 'descr', 'rrd_name', 'rrd_def'); data_update($device, 'storage', $tags, $fields); - $update = dbUpdate(array('storage_used' => $storage['used'], 'storage_free' => $storage['free'], 'storage_size' => $storage['size'], 'storage_units' => $storage['units'], 'storage_perc' => $percent), 'storage', '`storage_id` = ?', array($storage['storage_id'])); + // NOTE: casting to string for mysqli bug (fixed by mysqlnd) + $update = dbUpdate(array('storage_used' => (string)$storage['used'], 'storage_free' => (string)$storage['free'], 'storage_size' => (string)$storage['size'], 'storage_units' => $storage['units'], 'storage_perc' => $percent), 'storage', '`storage_id` = ?', array($storage['storage_id'])); echo "\n"; }//end foreach