It essentially removes a check for concurrency.
At the time it was added it was considered safe, but never the less in 4.0 
(Bionic) there could be races left - just as much as there could be races not 
yet detected upstream.
I'd think this has a higher than usual regression risk.

OTOH it applies clean and I haven't found a revert or follow on fix so
far (a few months later).

Well, in detail it is replacing a broken locking (by a boolean) with
delegating the responsibility to callers which are already considered
safe.

I think it can be done, but depends on the SRU Teams opinion eventually.
To Drive an SRU I'd need steps to reproduce, do you have something to share 
that is better than "deploy a huge thing with terraform with those 20.000 
commands"?
I assume for your testing you might already have simplified it.

I'll add the empty SRU Template and ask you to fill as much as possible,
but as mentioned the steps to reproduce would be most important IMHO.

** Description changed:

- In the SUSE Manager/Uyuni[1] project CIs we make use of Terraform[2], a
- tool to automate infrastructure deployments, together with terraform-
- provider-libvirt[3], a Terraform provider (plugin) that allow
- interaction with libvirt.
+ [Impact]
+ 
+  * An explanation of the effects of the bug on users and
+ 
+  * justification for backporting the fix to the stable release.
+ 
+  * In addition, it is helpful, but not required, to include an
+    explanation of how the upload fixes this bug.
+ 
+ [Test Case]
+ 
+  * detailed instructions how to reproduce the bug
+ 
+  * these should allow someone who is not familiar with the affected
+    package to reproduce the bug and verify that the updated package fixes
+    the problem.
+ 
+ [Regression Potential]
+ 
+  * discussion of how regressions are most likely to manifest as a result
+ of this change.
+ 
+  * It is assumed that any SRU candidate patch is well-tested before
+    upload and has a low overall risk of regression, but it's important
+    to make the effort to think about what ''could'' happen in the
+    event of a regression.
+ 
+  * This both shows the SRU team that the risks have been considered,
+    and provides guidance to testers in regression-testing the SRU.
+ 
+ [Other Info]
+  
+  * Anything else you think is useful to include
+  * Anticipate questions from users, SRU, +1 maintenance, security teams and 
the Technical Board
+  * and address these questions in advance
+ 
+ ----
+ 
+ 
+ In the SUSE Manager/Uyuni[1] project CIs we make use of Terraform[2], a tool 
to automate infrastructure deployments, together with 
terraform-provider-libvirt[3], a Terraform provider (plugin) that allow 
interaction with libvirt.
  
  By default, this setup will issue several libvirt API calls concurrently
  in an hard-to-predict order, as demonstrated by logs that I am
  attaching.
  
  In the "bad log" example, the following line appears:
  
  error : virHashSearch:727 : Hash operation not allowed during iteration
  
- 
- According to analysis of a similar problem by Red Hat in an OpenStack 
scenario[4], this is has been fixed in upstream libvirt via commit 
4d7384eb9ddef2008cb0cc165eb808f74bc83d6b [5].
+ According to analysis of a similar problem by Red Hat in an OpenStack
+ scenario[4], this is has been fixed in upstream libvirt via commit
+ 4d7384eb9ddef2008cb0cc165eb808f74bc83d6b [5].
  
  I tested the patch and it applies cleanly to the 4.0.0 package shipping
  with Bionic and that successfully resolves this issue.
  
- 
  Please evaluate including this patch.
  
  Thanks in advance
- 
  
  [1] http://uyuni-project.org/
  [2] https://www.terraform.io/
  [3] https://github.com/dmacvicar/terraform-provider-libvirt
  [4] https://bugzilla.redhat.com/show_bug.cgi?id=1576464#c3
  [5] 
https://github.com/libvirt/libvirt/commit/4d7384eb9ddef2008cb0cc165eb808f74bc83d6b.patch
  
  ProblemType: Bug
  DistroRelease: Ubuntu 18.04
  Package: libvirt-daemon 4.0.0-1ubuntu8.3
  ProcVersionSignature: Ubuntu 4.15.0-33.36-generic 4.15.18
  Uname: Linux 4.15.0-33-generic x86_64
  NonfreeKernelModules: nvidia_modeset nvidia
  ApportVersion: 2.20.9-0ubuntu7.2
  Architecture: amd64
  CurrentDesktop: ubuntu:GNOME
  Date: Wed Aug 29 16:05:10 2018
  InstallationDate: Installed on 2014-06-12 (1539 days ago)
  InstallationMedia: Ubuntu 14.04 LTS "Trusty Tahr" - Release amd64 (20140417)
  SourcePackage: libvirt
  UpgradeStatus: Upgraded to bionic on 2018-05-02 (119 days ago)

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1789659

Title:
   libvirt-daemon error "virHashSearch:727 : Hash operation not allowed
  during iteration"

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/libvirt/+bug/1789659/+subscriptions

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to