Details
-
Type: Bug
-
Status: Closed
-
Priority: Major
-
Resolution: Fixed
-
Affects Version/s: Fuji
-
Fix Version/s: Fuji
-
Component/s: None
-
Labels:None
-
Environment:
QA 7 Environment
ops script#28
-
Sprint:Sprint 11
-
Epic Link:
Description
Nested exception while running campaign report.
Steps:
1. Run the campaign report script on monman server.
./campaign-report.sh -a 19
2. It gets executed with exception
Actual Result:
Keyword report doesn't have negative keywords.
Snippet of log:
2014-12-22 08:20:19 [pool-2-thread-1] INFO - Loading XML bean definitions from class path resource [org/springframework/jdbc/support/sql-error-codes.xml]
2014-12-22 08:20:20 [pool-2-thread-1] INFO - SQLErrorCodes loaded: [DB2, Derby, H2, HSQL, Informix, MS-SQL, MySQL, Oracle, PostgreSQL, Sybase]
2014-12-22 08:20:20 [pool-2-thread-1] ERROR - Exception running YJSearchEngineUserWorker
org.springframework.dao.DataIntegrityViolationException: PreparedStatementCallback; SQL [insert into YJKeywordReport (accountId,campaignId,campaignName,adGroupId,adGroupName,criterionUse,criterionId,criterionType,text,keywordMatchType,userStatus,approvalStatus,disapprovalReasonCodes,date,server ) values (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?) on duplicate key update userStatus = VALUES(userStatus)]; Column 'approvalStatus' cannot be null; nested exception is java.sql.BatchUpdateException: Column 'approvalStatus' cannot be null
at org.springframework.jdbc.support.SQLStateSQLExceptionTranslator.doTranslate(SQLStateSQLExceptionTranslator.java:100)
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:72)
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:80)
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:80)
at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:605)
at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:617)
at org.springframework.jdbc.core.JdbcTemplate.batchUpdate(JdbcTemplate.java:890)
at com.thesearchagency.opsreporting.yahoojapan.dao.impl.KeywordReportDAOImpl.insertorUpdateBatch(KeywordReportDAOImpl.java:92)
at com.thesearchagency.opsreporting.yahoojapan.reporting.YJSearchEngineUserWorker.loadReportData(YJSearchEngineUserWorker.java:115)
at com.thesearchagency.opsreporting.yahoojapan.reporting.YJSearchEngineUserWorker.call(YJSearchEngineUserWorker.java:79)
at com.thesearchagency.opsreporting.yahoojapan.reporting.YJSearchEngineUserWorker.call(YJSearchEngineUserWorker.java:27)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1146)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:701)
Caused by: java.sql.BatchUpdateException: Column 'approvalStatus' cannot be null
at com.mysql.jdbc.PreparedStatement.executeBatchSerially(PreparedStatement.java:1669)
at com.mysql.jdbc.PreparedStatement.executeBatch(PreparedStatement.java:1085)
at org.apache.commons.dbcp.DelegatingStatement.executeBatch(DelegatingStatement.java:297)
at org.apache.commons.dbcp.DelegatingStatement.executeBatch(DelegatingStatement.java:297)
at org.springframework.jdbc.core.JdbcTemplate$4.doInPreparedStatement(JdbcTemplate.java:905)
at org.springframework.jdbc.core.JdbcTemplate$4.doInPreparedStatement(JdbcTemplate.java:890)
at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:589)
... 14 more
Expected Result:
Keywords related report should have negative keywords.