Hi everyone,
I confirm that the field "guestos_kernel_version" crash the REST API. When I
change manually the value for a test VM, no more error. I try to update the kernel but the
new one "2.6.37.6-24-default" causes a crash again. Not exactly the same error
in the log but I think It fires an exception when parsin this value :
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
[rt.jar:1.8.0_71]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
[rt.jar:1.8.0_71]
at java.lang.Thread.run(Thread.java:745) [rt.jar:1.8.0_71]
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.GeneratedMethodAccessor299.invoke(Unknown Source) [:1.8.0_71]
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[rt.jar:1.8.0_71]
at java.lang.reflect.Method.invoke(Method.java:497) [rt.jar:1.8.0_71]
at
org.ovirt.engine.api.restapi.types.MappingLocator$MethodInvokerMapper.map(MappingLocator.java:150)
[restapi-types.jar:]
... 82 more
Caused by: java.lang.ArrayIndexOutOfBoundsException
Réponse ou transfert de la part de Styve JAUMOTTE
-----Message d'origine-----
De : Alexander Wels [mailto:awels@redhat.com]
Envoyé : jeudi 18 février 2016 21:05
À : jaumotte, styve
Cc : users(a)ovirt.org
Objet : Re: [ovirt-users] REST API - Problem when trying to retrieve vms list
On Thursday, February 18, 2016 07:53:08 PM jaumotte, styve wrote:
Thanks for your quick reply, I found what is the origin of my error
... all the machines which cause problems are old OpenSUSE 11 with
default kernel version "2.6.37.1-1.2-default". It seems that "1.2"
part can't be parsed correctly.
I don't know if it is a bug from API or a problem of the kernel
version I'm using.
I am pretty sure its a bug in the API, it shouldn't bomb like that. It should do
something more sensible in the case of a kernel version it can't parse properly.
Réponse ou transfert de la part de Styve JAUMOTTE -----Message
d'origine----- De : Alexander Wels [mailto:awels@redhat.com] Envoyé :
jeudi 18 février 2016 17:23 À : users(a)ovirt.org Cc : jaumotte, styve
Objet : Re: [ovirt-users] REST API - Problem when trying to retrieve
vms list On Thursday, February 18, 2016 03:58:03 PM jaumotte, styve
wrote:
> Hi everybody,
>
> Since fews days I can't get vms list from rest api. I always have
> the same return when I try
https://myengine.mydomain/api/vms :
>
> <fault>
> <reason>Operation Failed</reason>
> </fault>
>
> I suspect that for new vm, some properties are malformed, but I
> can't identify them. If I ask
>
https://myengine.mydomain/api/vms?search=dev , vms including dev in
> their name are return. If I ask
>
https://myengine.mydomain/api/vms?search=xtypo , Operation Failed returns !
>
> I look at the log on the engine, but I don't find any answers.
>
> If someone have any ideas ... thank you !!
Looking at the exception and the code it appears you have something
strange in guestos_kernel_version in vm_dynamic for that VM. In
particular the revision part of that string. Its giving an index out
of bounds, and the array it is looking at is split from that string on
'-' so I am guessing the string in the database ends with - instead of
-nn where nn is some number.
Now I don't know how that string is populated, but it must broken somehow.
> Here the log :
>
> 2016-02-18 16:43:03,591 ERROR
> [org.ovirt.engine.api.restapi.resource.validation.MappingExceptionMa
> pp er] (default task-23) [] Mapping exception while processing "GET"
> request for path "/vms" 2016-02-18 16:43:03,591 ERROR
> [org.ovirt.engine.api.restapi.resource.validation.MappingExceptionMa
> pp
> er]
> (default task-23) [] Exception:
> org.ovirt.engine.api.restapi.utils.MappingException:
> java.lang.reflect.InvocationTargetException at
> org.ovirt.engine.api.restapi.types.MappingLocator$MethodInvokerMapper.
> map(M
> appingLocator.java:155) [restapi-types.jar:] at
> org.ovirt.engine.api.restapi.resource.AbstractBackendResource.map(Ab
> st
> ractB
> ackendResource.java:65) [restapi-jaxrs.jar:] at
> org.ovirt.engine.api.restapi.resource.AbstractBackendResource.map(Ab
> st
> ractB
> ackendResource.java:61) [restapi-jaxrs.jar:] at
> org.ovirt.engine.api.restapi.resource.BackendVmsResource.mapCollecti
> on
> (Back
> endVmsResource.java:570) [restapi-jaxrs.jar:] at
> org.ovirt.engine.api.restapi.resource.BackendVmsResource.list(Backen
> dV
> msRes
> ource.java:94) [restapi-jaxrs.jar:] at
> sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> [rt.jar:1.8.0_71] at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl
> .j
> ava:6
> 2) [rt.jar:1.8.0_71] at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcce
> ss
> orImp
> l.java:43) [rt.jar:1.8.0_71] at
> java.lang.reflect.Method.invoke(Method.java:497) [rt.jar:1.8.0_71]
> at
> org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl
> .j
> ava:1
> 37) [resteasy-jaxrs-3.0.10.Final.jar:] at
> org.jboss.resteasy.core.ResourceMethodInvoker.invokeOnTarget(Resourc
> eM
> ethod
> Invoker.java:296) [resteasy-jaxrs-3.0.10.Final.jar:] at
> org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodI
> nvoker
> .
> java:250) [resteasy-jaxrs-3.0.10.Final.jar:] at
> org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodI
> nvoker
> .
> java:237) [resteasy-jaxrs-3.0.10.Final.jar:] at
> org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDisp
> atcher
> .
> java:356) [resteasy-jaxrs-3.0.10.Final.jar:] at
> org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDisp
> atcher
> .
> java:179) [resteasy-jaxrs-3.0.10.Final.jar:] at
> org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher
> .s
> ervic
> e(ServletContainerDispatcher.java:220)
> [resteasy-jaxrs-3.0.10.Final.jar:] at
> org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.serv
> ic
> e(Htt
> pServletDispatcher.java:56) [resteasy-jaxrs-3.0.10.Final.jar:] at
> org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.serv
> ic
> e(Htt
> pServletDispatcher.java:51) [resteasy-jaxrs-3.0.10.Final.jar:] at
> javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
> [jboss-servlet-api_3.1_spec-1.0.0.Final.jar:1.0.0.Final] at
> io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHan
> dl
> er.ja
> va:86) [undertow-servlet-1.1.8.Final.jar:1.1.8.Final] at
> io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(
> Fi
> lterH
> andler.java:130) [undertow-servlet-1.1.8.Final.jar:1.1.8.Final] at
> org.ovirt.engine.api.common.invocation.CurrentFilter.doFilter(Curren
> tF
> ilter
> .java:66) [interface-common-jaxrs.jar:] at
> org.ovirt.engine.api.common.invocation.CurrentFilter.doFilter(Curren
> tF
> ilter
> .java:48) [interface-common-jaxrs.jar:] at
> io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:6
> 0) [undertow-servlet-1.1.8.Final.jar:1.1.8.Final] at
> io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(
> Fi
> lterH
> andler.java:132) [undertow-servlet-1.1.8.Final.jar:1.1.8.Final] at
> org.ovirt.engine.core.aaa.filters.RestApiSessionMgmtFilter.doFilter(
> Re
> stApi
> SessionMgmtFilter.java:81) [aaa.jar:] at
> io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:6
> 0) [undertow-servlet-1.1.8.Final.jar:1.1.8.Final] at
> io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(
> Fi
> lterH
> andler.java:132) [undertow-servlet-1.1.8.Final.jar:1.1.8.Final] at
> org.ovirt.engine.core.aaa.filters.EnforceAuthFilter.doFilter(Enforce
> Au
> thFil
> ter.java:39) [aaa.jar:] at
> io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:6
> 0) [undertow-servlet-1.1.8.Final.jar:1.1.8.Final] at
> io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(
> Fi
> lterH
> andler.java:132) [undertow-servlet-1.1.8.Final.jar:1.1.8.Final] at
> org.ovirt.engine.core.aaa.filters.LoginFilter.doFilter(LoginFilter.j
> av
> a:75)
> [aaa.jar:] at
> io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:6
> 0) [undertow-servlet-1.1.8.Final.jar:1.1.8.Final] at
> io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(
> Fi
> lterH
> andler.java:132) [undertow-servlet-1.1.8.Final.jar:1.1.8.Final] at
> org.ovirt.engine.core.aaa.filters.NegotiationFilter.doFilter(Negotia
> ti
> onFil
> ter.java:113) [aaa.jar:] at
> io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:6
> 0) [undertow-servlet-1.1.8.Final.jar:1.1.8.Final] at
> io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(
> Fi
> lterH
> andler.java:132) [undertow-servlet-1.1.8.Final.jar:1.1.8.Final] at
> org.ovirt.engine.core.aaa.filters.BasicAuthenticationFilter.doFilter
> (B
> asicA
> uthenticationFilter.java:90) [aaa.jar:] at
> io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:6
> 0) [undertow-servlet-1.1.8.Final.jar:1.1.8.Final] at
> io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(
> Fi
> lterH
> andler.java:132) [undertow-servlet-1.1.8.Final.jar:1.1.8.Final] at
> org.ovirt.engine.core.aaa.filters.SessionValidationFilter.doFilter(S
> es
> sionV
> alidationFilter.java:77) [aaa.jar:] at
> io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:6
> 0) [undertow-servlet-1.1.8.Final.jar:1.1.8.Final] at
> io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(
> Fi
> lterH
> andler.java:132) [undertow-servlet-1.1.8.Final.jar:1.1.8.Final] at
> org.ovirt.engine.core.aaa.filters.EngineSessionTokenAuthenticationFi
> lt
> er.do
> Filter(EngineSessionTokenAuthenticationFilter.java:31) [aaa.jar:] at
> io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:6
> 0) [undertow-servlet-1.1.8.Final.jar:1.1.8.Final] at
> io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(
> Fi
> lterH
> andler.java:132) [undertow-servlet-1.1.8.Final.jar:1.1.8.Final] at
> org.ovirt.engine.core.aaa.filters.RestApiSessionValidationFilter.doF
> il
> ter(R
> estApiSessionValidationFilter.java:35) [aaa.jar:] at
> io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:6
> 0) [undertow-servlet-1.1.8.Final.jar:1.1.8.Final] at
> io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(
> Fi
> lterH
> andler.java:132) [undertow-servlet-1.1.8.Final.jar:1.1.8.Final] at
> org.ovirt.engine.api.common.security.CSRFProtectionFilter.doFilter(C
> SR
> FProt
> ectionFilter.java:111) [interface-common-jaxrs.jar:] at
> org.ovirt.engine.api.common.security.CSRFProtectionFilter.doFilter(C
> SR
> FProt
> ectionFilter.java:102) [interface-common-jaxrs.jar:] at
> io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:6
> 0) [undertow-servlet-1.1.8.Final.jar:1.1.8.Final] at
> io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(
> Fi
> lterH
> andler.java:132) [undertow-servlet-1.1.8.Final.jar:1.1.8.Final] at
> org.ovirt.engine.api.common.security.CORSSupportFilter.doFilter(CORS
> Su
> pport
> Filter.java:183) [interface-common-jaxrs.jar:] at
> io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:6
> 0) [undertow-servlet-1.1.8.Final.jar:1.1.8.Final] at
> io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(
> Fi
> lterH
> andler.java:132) [undertow-servlet-1.1.8.Final.jar:1.1.8.Final] at
> io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandl
> er
> .java
>
> :85) [undertow-servlet-1.1.8.Final.jar:1.1.8.Final] at
>
> io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.han
> dl
> eRequ
> est(ServletSecurityRoleHandler.java:62)
> [undertow-servlet-1.1.8.Final.jar:1.1.8.Final] at
> io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest
> (S
> ervle
> tDispatchingHandler.java:36)
> [undertow-servlet-1.1.8.Final.jar:1.1.8.Final]
> at
> org.wildfly.extension.undertow.security.SecurityContextAssociationHa
> nd
> ler.h
> andleRequest(SecurityContextAssociationHandler.java:78) at
> io.undertow.server.handlers.PredicateHandler.handleRequest(Predicate
> Ha
> ndler
> .java:43) [undertow-core-1.1.8.Final.jar:1.1.8.Final] at
> io.undertow.servlet.handlers.security.SSLInformationAssociationHandl
> er
> .hand
> leRequest(SSLInformationAssociationHandler.java:131)
> [undertow-servlet-1.1.8.Final.jar:1.1.8.Final] at
> io.undertow.servlet.handlers.security.ServletAuthenticationCallHandl
> er
> .hand
> leRequest(ServletAuthenticationCallHandler.java:57)
> [undertow-servlet-1.1.8.Final.jar:1.1.8.Final] at
> io.undertow.server.handlers.PredicateHandler.handleRequest(Predicate
> Ha
> ndler
> .java:43) [undertow-core-1.1.8.Final.jar:1.1.8.Final] at
> io.undertow.security.handlers.AuthenticationConstraintHandler.handle
> Re
> quest
> (AuthenticationConstraintHandler.java:51)
> [undertow-core-1.1.8.Final.jar:1.1.8.Final] at
> io.undertow.security.handlers.AbstractConfidentialityHandler.handleR
> eq
> uest(
> AbstractConfidentialityHandler.java:46)
> [undertow-core-1.1.8.Final.jar:1.1.8.Final] at
> io.undertow.servlet.handlers.security.ServletConfidentialityConstrai
> nt
> Handl
> er.handleRequest(ServletConfidentialityConstraintHandler.java:64)
> [undertow-servlet-1.1.8.Final.jar:1.1.8.Final] at
> io.undertow.servlet.handlers.security.ServletSecurityConstraintHandl
> er
> .hand
> leRequest(ServletSecurityConstraintHandler.java:56)
> [undertow-servlet-1.1.8.Final.jar:1.1.8.Final] at
> io.undertow.security.handlers.AuthenticationMechanismsHandler.handle
> Re
> quest
> (AuthenticationMechanismsHandler.java:58)
> [undertow-core-1.1.8.Final.jar:1.1.8.Final] at
> io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHand
> le
> r.han
> dleRequest(CachedAuthenticatedSessionHandler.java:70)
> [undertow-servlet-1.1.8.Final.jar:1.1.8.Final] at
> io.undertow.security.handlers.SecurityInitialHandler.handleRequest(S
> ec
> urity
> InitialHandler.java:76) [undertow-core-1.1.8.Final.jar:1.1.8.Final]
> at
> io.undertow.server.handlers.PredicateHandler.handleRequest(Predicate
> Ha
> ndler
> .java:43) [undertow-core-1.1.8.Final.jar:1.1.8.Final] at
> org.wildfly.extension.undertow.security.jacc.JACCContextIdHandler.ha
> nd
> leReq
> uest(JACCContextIdHandler.java:61) at
> io.undertow.server.handlers.PredicateHandler.handleRequest(Predicate
> Ha
> ndler
> .java:43) [undertow-core-1.1.8.Final.jar:1.1.8.Final] at
> io.undertow.server.handlers.PredicateHandler.handleRequest(Predicate
> Ha
> ndler
> .java:43) [undertow-core-1.1.8.Final.jar:1.1.8.Final] at
> io.undertow.servlet.handlers.ServletInitialHandler.handleFirstReques
> t(
> Servl
> etInitialHandler.java:261)
> [undertow-servlet-1.1.8.Final.jar:1.1.8.Final] at
> io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(S
> er
> vletI
> nitialHandler.java:248)
> [undertow-servlet-1.1.8.Final.jar:1.1.8.Final]
> at
> io.undertow.servlet.handlers.ServletInitialHandler.access$000(Servle
> tI
> nitia
> lHandler.java:77) [undertow-servlet-1.1.8.Final.jar:1.1.8.Final] at
> io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(S
> er
> vletI
> nitialHandler.java:167)
> [undertow-servlet-1.1.8.Final.jar:1.1.8.Final]
> at
> io.undertow.server.Connectors.executeRootHandler(Connectors.java:199
> ) [undertow-core-1.1.8.Final.jar:1.1.8.Final] at
> io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:
> 76
> 1) [undertow-core-1.1.8.Final.jar:1.1.8.Final] at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor
> .j
> ava:1
> 142) [rt.jar:1.8.0_71] at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecuto
> r.java
> :
> 617) [rt.jar:1.8.0_71] at java.lang.Thread.run(Thread.java:745)
> [rt.jar:1.8.0_71] Caused by:
> java.lang.reflect.InvocationTargetException
>
> at sun.reflect.GeneratedMethodAccessor299.invoke(Unknown
>
> Source) [:1.8.0_71] at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcce
> ss
> orImp
> l.java:43) [rt.jar:1.8.0_71] at
> java.lang.reflect.Method.invoke(Method.java:497) [rt.jar:1.8.0_71]
> at org.ovirt.engine.api.restapi.types.MappingLocator$MethodInvokerMapper.
> map(M
> appingLocator.java:150) [restapi-types.jar:] ... 83 more Caused by:
> java.lang.ArrayIndexOutOfBoundsException: 1
>
> at
>
> org.ovirt.engine.api.restapi.types.VersionMapper.fromKernelVersionSt
> ri
> ng(Ve
> rsionMapper.java:52) [restapi-types.jar:] at
> org.ovirt.engine.api.restapi.types.VmMapper.map(VmMapper.java:446)
> [restapi-types.jar:] at
> org.ovirt.engine.api.restapi.types.VmMapper.map(VmMapper.java:330)
> [restapi-types.jar:] ... 87 more
>
> _______________________________________________
> Users mailing list
> Users(a)ovirt.org
>
http://lists.ovirt.org/mailman/listinfo/users