[Engine-devel] value too long for type character varying(20) in function "insertvds_interface"

Dan Kenigsberg danken at redhat.com
Fri May 11 08:40:43 UTC 2012


On Fri, May 11, 2012 at 11:04:14AM +0300, Itamar Heim wrote:
> On 05/11/2012 03:52 AM, Itzik Brown wrote:
> >Hi,
> >
> >When running VDSM on host with Infiniband HCAs I get the following errors in /usr/share/jboss-as/standalone/log/server.log on the ovirt-engine host.
> >
> >WARN  [org.ovirt.engine.core.vdsbroker.VdsManager] (QuartzScheduler_Worker-17) ResourceManager::refreshVdsRunTimeInfo::Failed to refresh VDS , vds = 783eb0ac-9a91-11e1-a8e4-000c29de7759 : xena003, error = DataIntegrityViolationException: CallableStatementCallback; SQL [{call insertvds_interface(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)}]; ERROR: value too long for type character varying(20)
> >   Where: SQL statement "INSERT INTO vds_interface(addr, bond_name, bond_type, gateway, id, is_bond, bond_opts, mac_addr, name, network_name, speed, subnet, boot_protocol, type, VDS_ID, vlan_id, mtu, bridged)
> >         VALUES(v_addr, v_bond_name, v_bond_type, v_gateway, v_id, v_is_bond, v_bond_opts, v_mac_addr, v_name, v_network_name, v_speed, v_subnet, v_boot_protocol, v_type, v_vds_id, v_vlan_id, v_mtu, v_bridged)"
> >
> >More detailed log:
> >http://pastebin.com/AHD3di5i
> >
> >VDSM: From git repository commit 8a14b63fbbafbdb9ee7f85a9b702bff310f4f668
> >oVirt-engine: From git repository comit b24dddf094e08afa6a2032a487b37476318a872d
> >
> >Any suggestions?
> 
> in general, you would need to send a patch to upgrade the scheme to
> a value longer than 20 characters for a logical network name.
> 1. I think bridge name is linux is limited to 15 characters, so not
>    sure actually why 20 are allowed today. danken?

No idea why it's 20.. IIRC vdsm silently ignore the trailing chars past
the 15th.

> 2. if changing the db scheme of the engine, also need to remember to
>    upgrade the history db as well.
> 3. if different network implementation can support varying lengths,
>    need to add validations in engine ("CanDoAction") to check the
>    length per type of network implementation.



More information about the Engine-devel mailing list