Bug 1881307 - Can't update cluster's MAC pool if the cluster contain template with vNIC
Summary: Can't update cluster's MAC pool if the cluster contain template with vNIC
Alias: None
Product: ovirt-engine
Classification: oVirt
Component: BLL.Network
Hardware: x86_64
OS: Linux
high vote
Target Milestone: ovirt-4.4.3
: ---
Assignee: Dominik Holler
QA Contact: Guy
Depends On:
TreeView+ depends on / blocked
Reported: 2020-09-22 07:13 UTC by Michael Burman
Modified: 2020-11-11 06:48 UTC (History)
1 user (show)

Fixed In Version: ovirt-engine-ovirt-engine-
Doc Type: Bug Fix
Doc Text:
Cause: Changing the Mac Pool of a cluster fails to check the vNICs of templates. Consequence: Changing the Mac Pool of a cluster fails, if the cluster has templates with vNICs. Fix: Changing the Mac Pool of a cluster succeeds to check the vNICs of templates. Result: Changing the Mac Pool of a cluster succeeds, even if the cluster has templates with vNICs.
Clone Of:
Last Closed: 2020-11-11 06:42:09 UTC
oVirt Team: Network
pm-rhel: ovirt-4.4+
dholler: devel_ack+
mburman: testing_ack+

Attachments (Terms of Use)

System ID Private Priority Status Summary Last Updated
oVirt gerrit 111393 0 master MERGED core: network_sp.sql: GetMacsByClusterId handles NULL 2020-11-11 07:15:33 UTC

Description Michael Burman 2020-09-22 07:13:00 UTC
Description of problem:
Can't update cluster's MAC pool if the cluster contain template with vNIC

We get a null pointer exception when trying to update a cluster with another MAc pool range and if the cluster contain temlate with vNIC or vNICs.

2020-09-22 10:10:32,597+03 ERROR [org.ovirt.engine.core.bll.UpdateClusterCommand] (default task-44) [f1816eec-abdb-495b-840b-9098e6f3a35d] Error during ValidateFailure.: j
ava.lang.NullPointerException: element cannot be mapped to a null key
        at java.base/java.util.Objects.requireNonNull(Objects.java:246)
        at java.base/java.util.stream.Collectors.lambda$groupingBy$53(Collectors.java:1127)
        at java.base/java.util.stream.ReduceOps$3ReducingSink.accept(ReduceOps.java:169)
        at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1655)
        at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)
        at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
        at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:913)
        at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
        at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:578)

Version-Release number of selected component (if applicable):

How reproducible:

Steps to Reproduce:
1. Have a cluster with VM and template with vNIC
2. Create new MAC pool range
3. Try to edit the cluster and assign it with new MAC pool range

Actual results:
null pointer exception in engine log

Expected results:
Must work

Additional info:
Most probably related to this patch https://gerrit.ovirt.org/#/c/98357/
The patch changed the data model, which might have introduced this bug.

Comment 2 Guy 2020-10-04 10:40:01 UTC
Verified In Version: ovirt-engine-ovirt-engine-

Comment 3 Sandro Bonazzola 2020-11-11 06:42:09 UTC
This bugzilla is included in oVirt 4.4.3 release, published on November 10th 2020.

Since the problem described in this bug report should be resolved in oVirt 4.4.3 release, it has been closed with a resolution of CURRENT RELEASE.

If the solution does not work for you, please open a new bug report.

Note You need to log in before you can comment on or make changes to this bug.