pluginsGLPI / ocsinventoryng

Plugin ocsinventoryng for GLPI
GNU General Public License v2.0
68 stars 52 forks source link

Problem with negative ids and GLPI 10 RC3 #317

Closed jackburton79 closed 1 year ago

jackburton79 commented 2 years ago

I have a test installation of GLPI 10 (RC3 now) with the latest ocsinventory-ng plugin

This is an installation which started with glpi 0.82 and an old version of the glpi ocsinventory-ng plugin, upgraded on every new version.

GLPI 10 proposes the migration of tables to unsigned values.

I migrated all the columns, but there is a problem with some tables of this plugin:

group:/usr/local/share/glpitest # php bin/console glpi:migration:unsigned_keys Trovate 1 colonne di chiavi primarie/estere utilizzando numeri interi con segno. Vuoi continuare? [Yes/no]yes Impossibile eseguire la migrazione della colonna "glpi_networkportethernets.items_devicenetworkcards_id" poiché contiene valori negativi. 1/1 [============================] 100% Ci sono stati degli errori durante la migrazione.

Seems that glpi_networkportethernets.items_devicenetworkcards_id contains some negative values.

I opened an issue on glpi portal, but it seems that the problem might be caused by this plugin.

"Negatives values on this field are not legitimate. I guess the have been produced by some plugin. I found $inst_input['items_devicenetworkcards_id'] = $item_device->getID(); in ocsinventoryng, which can produce a -1 value if it is called on an $item_device object that was not initialized correctly."

Here's a reference to the GLPI issue: https://github.com/glpi-project/glpi/issues/10566

TTAK commented 2 years ago

Hello, We have the same issue too.

Do we know how are used these nework card id for in GLPI ?

Maybe we can just clamp them to 0 ?

tsmr commented 1 year ago

fixed