On Thu, Oct 26, 2023 at 06:15:35PM +0200, Tomáš Golembiovský wrote:
> I have opended a pull request [1] on GitHub with the fix. Since the patch is
> simple and the test for that passes there is low risk. I have attached the
> relevant portion (without the test) to the email. What you need to do is take
> the attached patch, apply it on your host and restart vdsm:
> 
>     $ cd /usr/lib...
Whops sorry, this should be:

    $ cd /usr/lib/python3.9/site-packages/vdsm

>     $ patch -p3 < /tmp/progress-fix.patch
>     $ systemctl restart vdsmd
> 
> Then you try the import as usual. To revert the patch or if you fail to apply
> it properly for some reason, or generally in case of any doubt, reinstall the
> vdsm package with dnf and restart vdsm:
> 
>     $ dnf reinstall vdsm
>     $ systemctl restart vdsmd
> 
> If the import fails please post again any errors from vdsm.log and the import
> log file. It could be the patch is not good enough or perhaps there is yet
> another problem blocking you.
> 
> 
> On Thu, Oct 26, 2023 at 03:28:10PM -0000, Michaal R via Users wrote:
> > Also, I would like to help with the error trying to import Windows VMs when 
> > you set the OS appropriately (ie... matching the OS type at import to the 
> > OS of the VM, then getting the time zone error). If there's anything I can 
> > do or provide, please let me know.
> 
> This is more problematic as it likely involves fixing ovirt-engine. That
> in turn requires recompiling it and rebuilding the packages. That's
> much more involved and someting I cannot help with.
> 
>     Tomas
> 
> [1] https://github.com/oVirt/vdsm/pull/402
> [2] https://patch-diff.githubusercontent.com/raw/oVirt/vdsm/pull/402.diff

> diff --git a/lib/vdsm/v2v.py b/lib/vdsm/v2v.py
> index 2df126a368..a05d38313e 100644
> --- a/lib/vdsm/v2v.py
> +++ b/lib/vdsm/v2v.py
> @@ -933,7 +933,7 @@ def _abort(self):
>  
>  class OutputParser(object):
>      COPY_DISK_RE = re.compile(br'.*(Copying disk (\d+)/(\d+)).*')
> -    DISK_PROGRESS_RE = re.compile(br'\s+\((\d+).*')
> +    DISK_PROGRESS_RE = re.compile(br'\s+\((\d+).*|.+ (\d+)% \[[*-]+\]')
>  
>      def parse(self, stream):
>          for line in stream:
> @@ -970,8 +970,9 @@ def _parse_progress(self, chunk):
>          m = self.DISK_PROGRESS_RE.match(chunk)
>          if m is None:
>              return None
> +        value = [x for x in m.groups() if x is not None][0]
>          try:
> -            return int(m.group(1))
> +            return int(value)
>          except ValueError:
>              raise OutputParserError('error parsing progress regex: %r'
>                                      % m.groups)
_______________________________________________
Users mailing list -- users@ovirt.org
To unsubscribe send an email to users-le...@ovirt.org
Privacy Statement: https://www.ovirt.org/privacy-policy.html
oVirt Code of Conduct: 
https://www.ovirt.org/community/about/community-guidelines/
List Archives: 
https://lists.ovirt.org/archives/list/users@ovirt.org/message/QRDAENKTKM2Z6ZI5EZU5N42GKHTMTNNT/

Reply via email to