Details
-
Type: Bug
-
Status: Closed
-
Priority: Minor
-
Resolution: Fixed
-
Affects Version/s: Newport
-
Fix Version/s: Newport
-
Component/s: Content Editor
-
Labels:None
-
Environment:
QA Environment 3
Reseller UI – 89
SAPI – 561
Core – P13
BidMgr – P18
-
Sprint:Sprint 5
Description
While redeploying the order with invalid keywords, it throws exception - MySQLSyntaxErrorException
Steps:
1.Create a merchant and deploy order with BA having special characters.
E.g. Deployed order with BA "Car stereos" with added keywords
"Bombs,test","Bombs" and "sidewalk café"
Merchant UUID:c9a009ac-480a-4539-86f5-9e0820e68919
2. Check the listener log - order gets deployed successfully.It throws exception for invalid keyword and notification sends to techops
Snippet of listener Log: (AML_Invalid_Keywords.txt)
014-03-05 10:13:25.315 (2) [pool-30-thread-2]: Google Request Errors for accountID 368(KeywordChangeRequest)
Keyword: Bombs,test in Arizona
Type: Exact
Status: Active
id=145136, code=0: CriterionError(reason: KEYWORD_HAS_INVALID_CHARS)(isExemptable: false), trigger=Bombs,test in Arizona, field=operations[4].operand.criterion.text
3. Edit Account - update order (Quote name) and redeploy.
Actual Result :
Order gets deployed successfully with invalid keyword exception. But other than this listener log throws exception related to "MySQLSyntaxErrorException"
Snippet of log:
{Detailed log attached}014-03-05 12:23:35.336 (2) [P26T1]: Exception [SQL Exception running content editor, quitting]:com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') and gce_keywordPendingChange.type in ('update', 'delete') and gce_keyword.sear' at line 1
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)
at com.mysql.jdbc.Util.getInstance(Util.java:386)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1054)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4120)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4052)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2503)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2664)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2815)
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2155)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2458)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2375)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2359)
at com.thesearchagency.searchengines.google.contenteditor.dao.criterion.keyword.KeywordDAO.deleteUnregisteredKeywords(KeywordDAO.java:430)
at com.thesearchagency.searchengines.google.contenteditor.GoogleContentEditorHelper.replaceKeywords(GoogleContentEditorHelper.java:683)
at com.thesearchagency.searchengines.google.contenteditor.GoogleContentEditorHelper.replace(GoogleContentEditorHelper.java:292)
at com.thesearchagency.searchengines.google.contenteditor.GoogleContentEditor$SearchEngineUserWorker.handlePreRunActions(GoogleContentEditor.java:1068)
at com.thesearchagency.searchengines.google.contenteditor.GoogleContentEditor$SearchEngineUserWorker.run(GoogleContentEditor.java:976)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
2014-03-05 12:23:35.337 (3) [P26T1]: ... SEUser 368 finished