Bug 1414288 - DownloadImageCommandParameters fail to store to DB
Summary: DownloadImageCommandParameters fail to store to DB
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: ovirt-engine
Classification: oVirt
Component: General
Version: future
Hardware: Unspecified
OS: Unspecified
unspecified
high
Target Milestone: ovirt-4.1.0-beta
: 4.1.0.2
Assignee: Tal Nisan
QA Contact: Raz Tamir
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2017-01-18 09:10 UTC by Piotr Kliczewski
Modified: 2017-02-01 14:47 UTC (History)
7 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2017-02-01 14:47:57 UTC
oVirt Team: Storage
rule-engine: ovirt-4.1+


Attachments (Terms of Use)
logs (2.20 MB, application/zip)
2017-01-18 09:10 UTC, Piotr Kliczewski
no flags Details


Links
System ID Private Priority Status Summary Last Updated
oVirt gerrit 70738 0 ovirt-engine-4.1 MERGED core: Create default ctor for HttpLocationInfo 2017-01-18 13:11:07 UTC
oVirt gerrit 70746 0 ovirt-engine-4.1 MERGED core: Create default ctor for HttpLocationInfo 2017-01-18 13:43:41 UTC

Description Piotr Kliczewski 2017-01-18 09:10:21 UTC
Created attachment 1242090 [details]
logs

During recent test-repo_ovirt_experimental_master we saw:

2017-01-18 03:35:35,093-05 ERROR [org.ovirt.engine.core.bll.CommandEntityCleanupManager] (DefaultQuartzScheduler6) [36fb8916] deleteAgedOutCommandEntities failed with exception: org.apache.commons.lang.SerializationException: org.codehaus.jackson.map.JsonMappingException: No suitable constructor found for type [simple type, class org.ovirt.engine.core.common.businessentities.HttpLocationInfo]: can not instantiate from JSON object (need to add/enable type information?)
 at [Source: java.io.StringReader@107c3be1; line: 55, column: 5] (through reference chain: org.ovirt.engine.core.common.action.DownloadImageCommandParameters["httpLocationInfo"])
	at org.ovirt.engine.core.utils.serialization.json.JsonObjectDeserializer.readJsonString(JsonObjectDeserializer.java:101) [utils.jar:]
	at org.ovirt.engine.core.utils.serialization.json.JsonObjectDeserializer.deserialize(JsonObjectDeserializer.java:58) [utils.jar:]
	at org.ovirt.engine.core.dao.CommandEntityDaoImpl.deserializeParameters(CommandEntityDaoImpl.java:131) [dal.jar:]
	at org.ovirt.engine.core.dao.CommandEntityDaoImpl.lambda$static$2(CommandEntityDaoImpl.java:55) [dal.jar:]
	at org.springframework.jdbc.core.RowMapperResultSetExtractor.extractData(RowMapperResultSetExtractor.java:93) [spring-jdbc.jar:4.2.4.RELEASE]
	at org.springframework.jdbc.core.RowMapperResultSetExtractor.extractData(RowMapperResultSetExtractor.java:60) [spring-jdbc.jar:4.2.4.RELEASE]
	at org.springframework.jdbc.core.JdbcTemplate$1.doInPreparedStatement(JdbcTemplate.java:693) [spring-jdbc.jar:4.2.4.RELEASE]
	at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:629) [spring-jdbc.jar:4.2.4.RELEASE]
	at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:680) [spring-jdbc.jar:4.2.4.RELEASE]
	at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:712) [spring-jdbc.jar:4.2.4.RELEASE]
	at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:762) [spring-jdbc.jar:4.2.4.RELEASE]
	at org.ovirt.engine.core.dal.dbbroker.PostgresDbEngineDialect$PostgresSimpleJdbcCall.executeCallInternal(PostgresDbEngineDialect.java:152) [dal.jar:]
	at org.ovirt.engine.core.dal.dbbroker.PostgresDbEngineDialect$PostgresSimpleJdbcCall.doExecute(PostgresDbEngineDialect.java:118) [dal.jar:]
	at org.springframework.jdbc.core.simple.SimpleJdbcCall.execute(SimpleJdbcCall.java:198) [spring-jdbc.jar:4.2.4.RELEASE]
	at org.ovirt.engine.core.dal.dbbroker.SimpleJdbcCallsHandler.executeImpl(SimpleJdbcCallsHandler.java:135) [dal.jar:]
	at org.ovirt.engine.core.dal.dbbroker.SimpleJdbcCallsHandler.executeReadList(SimpleJdbcCallsHandler.java:105) [dal.jar:]
	at org.ovirt.engine.core.dao.DefaultReadDao.getAll(DefaultReadDao.java:77) [dal.jar:]
	at org.ovirt.engine.core.bll.tasks.CommandsCacheImpl.initializeCache(CommandsCacheImpl.java:41) [bll.jar:]
	at org.ovirt.engine.core.bll.tasks.CommandsCacheImpl.removeAllCommandsBeforeDate(CommandsCacheImpl.java:79) [bll.jar:]
	at org.ovirt.engine.core.bll.tasks.CommandsRepository.removeAllCommandsBeforeDate(CommandsRepository.java:259) [bll.jar:]
	at org.ovirt.engine.core.bll.tasks.CommandCoordinatorImpl.removeAllCommandsBeforeDate(CommandCoordinatorImpl.java:146) [bll.jar:]
	at org.ovirt.engine.core.bll.tasks.CommandCoordinatorUtil.removeAllCommandsBeforeDate(CommandCoordinatorUtil.java:337) [bll.jar:]
	at org.ovirt.engine.core.bll.CommandEntityCleanupManager.onTimer(CommandEntityCleanupManager.java:51) [bll.jar:]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.8.0_111]
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) [rt.jar:1.8.0_111]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.8.0_111]
	at java.lang.reflect.Method.invoke(Method.java:498) [rt.jar:1.8.0_111]
	at org.ovirt.engine.core.utils.timer.JobWrapper.invokeMethod(JobWrapper.java:77) [scheduler.jar:]
	at org.ovirt.engine.core.utils.timer.JobWrapper.execute(JobWrapper.java:51) [scheduler.jar:]
	at org.quartz.core.JobRunShell.run(JobRunShell.java:213) [quartz.jar:]
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [rt.jar:1.8.0_111]
	at java.util.concurrent.FutureTask.run(FutureTask.java:266) [rt.jar:1.8.0_111]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [rt.jar:1.8.0_111]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [rt.jar:1.8.0_111]
	at java.lang.Thread.run(Thread.java:745) [rt.jar:1.8.0_111]
Caused by: org.codehaus.jackson.map.JsonMappingException: No suitable constructor found for type [simple type, class org.ovirt.engine.core.common.businessentities.HttpLocationInfo]: can not instantiate from JSON object (need to add/enable type information?)
 at [Source: java.io.StringReader@107c3be1; line: 55, column: 5] (through reference chain: org.ovirt.engine.core.common.action.DownloadImageCommandParameters["httpLocationInfo"])
	at org.codehaus.jackson.map.JsonMappingException.from(JsonMappingException.java:163) [jackson-mapper-asl-1.9.13.jar:1.9.13]
	at org.codehaus.jackson.map.deser.BeanDeserializer.deserializeFromObjectUsingNonDefault(BeanDeserializer.java:746) [jackson-mapper-asl-1.9.13.jar:1.9.13]
	at org.codehaus.jackson.map.deser.BeanDeserializer.deserializeFromObject(BeanDeserializer.java:683) [jackson-mapper-asl-1.9.13.jar:1.9.13]
	at org.codehaus.jackson.map.deser.BeanDeserializer.deserialize(BeanDeserializer.java:580) [jackson-mapper-asl-1.9.13.jar:1.9.13]
	at org.codehaus.jackson.map.deser.SettableBeanProperty.deserialize(SettableBeanProperty.java:299) [jackson-mapper-asl-1.9.13.jar:1.9.13]
	at org.codehaus.jackson.map.deser.SettableBeanProperty$MethodProperty.deserializeAndSet(SettableBeanProperty.java:414) [jackson-mapper-asl-1.9.13.jar:1.9.13]
	at org.codehaus.jackson.map.deser.BeanDeserializer.deserializeFromObject(BeanDeserializer.java:697) [jackson-mapper-asl-1.9.13.jar:1.9.13]
	at org.codehaus.jackson.map.deser.BeanDeserializer.deserialize(BeanDeserializer.java:600) [jackson-mapper-asl-1.9.13.jar:1.9.13]
	at org.codehaus.jackson.map.jsontype.impl.AsPropertyTypeDeserializer.deserializeTypedFromObject(AsPropertyTypeDeserializer.java:92) [jackson-mapper-asl-1.9.13.jar:1.9.13]
	at org.codehaus.jackson.map.deser.BeanDeserializer.deserializeWithType(BeanDeserializer.java:664) [jackson-mapper-asl-1.9.13.jar:1.9.13]
	at org.codehaus.jackson.map.deser.StdDeserializerProvider$WrappedDeserializer.deserialize(StdDeserializerProvider.java:461) [jackson-mapper-asl-1.9.13.jar:1.9.13]
	at org.codehaus.jackson.map.ObjectMapper._readMapAndClose(ObjectMapper.java:2732) [jackson-mapper-asl-1.9.13.jar:1.9.13]
	at org.codehaus.jackson.map.ObjectMapper.readValue(ObjectMapper.java:1863) [jackson-mapper-asl-1.9.13.jar:1.9.13]
	at org.ovirt.engine.core.utils.serialization.json.JsonObjectDeserializer.readJsonString(JsonObjectDeserializer.java:99) [utils.jar:]
	... 34 more

Comment 1 Martin Perina 2017-01-18 10:03:43 UTC
Tal, could you please take a look?

Comment 2 Raz Tamir 2017-01-22 09:59:46 UTC
Tal,
What are the steps to reproduce?

Comment 3 Tal Nisan 2017-01-23 10:09:04 UTC
The issue was encountered in oVirt system tests, Piotr, any idea how we can reproduce it manually? Starting a download and restarting Engine would do?

Comment 4 Piotr Kliczewski 2017-01-23 10:38:25 UTC
Tal, To be honest I am not sure which use case failed. I would suggest to run system tests and look for the stack trace.

Comment 5 Raz Tamir 2017-01-23 15:45:35 UTC
According to comment #4 moving to Piotr (the reporter of the bug) to run system tests

Comment 8 Raz Tamir 2017-01-24 22:41:44 UTC
Verified on ovirt-engine-4.1.0.3-0.0.master.20170122091652.gitc6fc2c2.el7.centos
Executed all our tier 1 and tier 2 and ovirt system tests and no trace for the error mentioned in the description


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