All,
I am getting below exception for JDBC to JDBC example and hitting below error. 
I have verified the table and it exist in DB. I have attached the property 
file. Please help on this.

2016-12-19 11:07:32,186 INFO  storage.DiskStorage (DiskStorage.java:<init>(53)) 
- using 
/opt/data/data04/yarn/local/usercache/bj9306/appcache/application_1482167280022_0009/container_e15_1482167280
022_0009_01_000006/tmp as the basepath for spooling.
2016-12-19 11:07:32,190 INFO  server.Server (Server.java:registered(110)) - 
Server started listening at /0.0.0.0:41067
2016-12-19 11:07:33,240 INFO  engine.StreamingContainer 
(StreamingContainer.java:processHeartbeatResponse(812)) - Deploy request: 
[OperatorDeployInfo[id=1,name=JdbcInput,type=INPUT,checkpoint={ffff
ffffffffffff, 0, 
0},inputs=[],outputs=[OperatorDeployInfo.OutputDeployInfo[portName=outputPort,streamId=POJO's,bufferServer=<null>]]],
 OperatorDeployInfo[id=2,name=JdbcOutput,type=GENERIC,checkpoin
t={ffffffffffffffff, 0, 
0},inputs=[OperatorDeployInfo.InputDeployInfo[portName=input,streamId=POJO's,sourceNodeId=1,sourcePortName=outputPort,locality=CONTAINER_LOCAL,partitionMask=0,partitionKeys=
<null>]],outputs=[]]]
2016-12-19 11:07:34,266 ERROR engine.StreamingContainer 
(StreamingContainer.java:run(1431)) - Abandoning deployment of operator 
OperatorDeployInfo[id=2,name=JdbcOutput,type=GENERIC,checkpoint={ffff
ffffffffffff, 0, 
0},inputs=[OperatorDeployInfo.InputDeployInfo[portName=input,streamId=POJO's,sourceNodeId=1,sourcePortName=outputPort,locality=CONTAINER_LOCAL,partitionMask=0,partitionKeys=<null>]
],outputs=[]] due to setup failure.
java.lang.RuntimeException: java.sql.SQLSyntaxErrorException: ORA-00942: table 
or view does not exist

        at 
com.datatorrent.lib.db.jdbc.JdbcTransactionalStore.getCommittedWindowIdHelper(JdbcTransactionalStore.java:240)
        at 
com.datatorrent.lib.db.jdbc.JdbcTransactionalStore.getCommittedWindowId(JdbcTransactionalStore.java:196)
        at 
com.datatorrent.lib.db.AbstractTransactionableStoreOutputOperator.setup(AbstractTransactionableStoreOutputOperator.java:97)
        at 
com.datatorrent.lib.db.jdbc.AbstractJdbcTransactionableOutputOperator.setup(AbstractJdbcTransactionableOutputOperator.java:95)
        at 
com.datatorrent.lib.db.jdbc.JdbcPOJOInsertOutputOperator.setup(JdbcPOJOInsertOutputOperator.java:59)
        at 
com.datatorrent.lib.db.jdbc.JdbcPOJOInsertOutputOperator.setup(JdbcPOJOInsertOutputOperator.java:47)
        at com.datatorrent.stram.engine.Node.setup(Node.java:187)
        at 
com.datatorrent.stram.engine.StreamingContainer.setupNode(StreamingContainer.java:1309)
        at 
com.datatorrent.stram.engine.StreamingContainer.access$100(StreamingContainer.java:130)
        at 
com.datatorrent.stram.engine.StreamingContainer$2.run(StreamingContainer.java:1388)
Caused by: java.sql.SQLSyntaxErrorException: ORA-00942: table or view does not 
exist

        at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:447)
        at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:396)
        at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:951)
        at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:513)
        at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:227)
        at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:531)
        at 
oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:208)
        at 
oracle.jdbc.driver.T4CPreparedStatement.executeForDescribe(T4CPreparedStatement.java:886)
        at 
oracle.jdbc.driver.OracleStatement.executeMaybeDescribe(OracleStatement.java:1175)
        at 
oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1296)
        at 
oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3613)
        at 
oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:3657)
        at 
oracle.jdbc.driver.OraclePreparedStatementWrapper.executeQuery(OraclePreparedStatementWrapper.java:1495)
        at 
com.datatorrent.lib.db.jdbc.JdbcTransactionalStore.getCommittedWindowIdHelper(JdbcTransactionalStore.java:229)
        ... 9 more
2016-12-19 11:07:34,266 ERROR engine.StreamingContainer 
(StreamingContainer.java:run(1431)) - Abandoning deployment of operator 
OperatorDeployInfo[id=1,name=JdbcInput,type=INPUT,checkpoint={fffffff
fffffffff, 0, 
0},inputs=[],outputs=[OperatorDeployInfo.OutputDeployInfo[portName=outputPort,streamId=POJO's,bufferServer=<null>]]]
 due to setup failure.
java.lang.RuntimeException: java.sql.SQLSyntaxErrorException: ORA-00933: SQL 
command not properly ended

        at 
com.datatorrent.lib.db.jdbc.JdbcPOJOInputOperator.setup(JdbcPOJOInputOperator.java:145)
        at 
com.datatorrent.lib.db.jdbc.JdbcPOJOInputOperator.setup(JdbcPOJOInputOperator.java:67)
        at com.datatorrent.stram.engine.Node.setup(Node.java:187)
        at 
com.datatorrent.stram.engine.StreamingContainer.setupNode(StreamingContainer.java:1309)
        at 
com.datatorrent.stram.engine.StreamingContainer.access$100(StreamingContainer.java:130)
        at 
com.datatorrent.stram.engine.StreamingContainer$2.run(StreamingContainer.java:1388)
Caused by: java.sql.SQLSyntaxErrorException: ORA-00933: SQL command not 
properly ended

        at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:447)
        at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:396)
        at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:951)
        at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:513)
        at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:227)
        at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:531)
        at 
oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:208)
        at 
oracle.jdbc.driver.T4CPreparedStatement.executeForDescribe(T4CPreparedStatement.java:886)
        at 
oracle.jdbc.driver.OracleStatement.executeMaybeDescribe(OracleStatement.java:1175)
        at 
oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1296)
        at 
oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3613)
        at 
oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:3657)
        at 
oracle.jdbc.driver.OraclePreparedStatementWrapper.executeQuery(OraclePreparedStatementWrapper.java:1495)
        at 
com.datatorrent.lib.db.jdbc.JdbcPOJOInputOperator.populateColumnDataTypes(JdbcPOJOInputOperator.java:158)
        at 
com.datatorrent.lib.db.jdbc.JdbcPOJOInputOperator.setup(JdbcPOJOInputOperator.java:142)
        ... 5 more
2016-12-19 11:07:34,275 INFO  engine.WindowGenerator 
(WindowGenerator.java:activate(178)) - Catching up from 1482174389500 to 
1482174454275
2016-12-19 11:07:36,297 INFO  engine.StreamingContainer 
(StreamingContainer.java:processHeartbeatResponse(799)) - Undeploy request: [1, 
2]
2016-12-19 11:07:36,298 INFO  engine.StreamingContainer 
(StreamingContainer.java:undeploy(561)) - Undeploy complete.
End of LogType:dt.log
--More--
<?xml version="1.0"?>
<configuration>
  <!-- <property> <name>dt.application.{appName}.operator.{opName}.prop.{propName}</name> 
    <value>some-default-value (if value is not specified, it is required from 
    the user or custom config when launching)</value> </property> -->
  <!-- memory assigned to app master <property> <name>dt.attr.MASTER_MEMORY_MB</name> 
    <value>1024</value> </property> -->
JdbcToJdbcApp
  <!-- JDBC driver in use -->
  <property>
    <name>dt.application.JdbcToJdbcApp.operator.JdbcInput.prop.store.databaseDriver</name>
    <value>oracle.jdbc.driver.OracleDriver</value>
  </property>

  <!-- URL to connect to the DB master -->
  <property>
    <name>dt.application.JdbcToJdbcApp.operator.JdbcInput.prop.store.databaseUrl</name>
    <value>jdbc:oracle:thin:@//host:port/db</value>
  </property>
  
  <property>
    <name>dt.application.JdbcToJdbcApp.operator.JdbcInput.prop.store.userName</name>
    <value>username</value>
  </property>
  <property>
    <name>dt.application.JdbcToJdbcApp.operator.JdbcInput.prop.store.password</name>
    <value>password</value>
  </property>

  <!-- # rows that the operator can retrieve in a window -->
  <property>
    <name>dt.application.JdbcToJdbcApp.operator.JdbcInput.prop.fetchSize</name>
    <value>120</value>
  </property>

  <!-- POJO class -->
  <property>
    <name>dt.application.JdbcToJdbcApp.operator.JdbcInput.port.outputPort.attr.TUPLE_CLASS</name>
    <value>com.att.dti.jdbc2jdbc.PojoEvent</value>
  </property>

  <!-- Query to fetch data -->
  <property>
    <name>dt.application.JdbcToJdbcApp.operator.JdbcInput.prop.query</name>
    <value>select * from test_event_table</value>
  </property>

  <!-- Input Table name -->
  <property>
    <name>dt.application.JdbcToJdbcApp.operator.JdbcInput.prop.tablename</name>
    <value>test_event_table</value>
  </property>

  <!-- JDBC driver in use -->
  <property>
    <name>dt.application.JdbcToJdbcApp.operator.JdbcOutput.prop.store.databaseDriver</name>
    <value>oracle.jdbc.driver.OracleDriver</value>
  </property>

  <!-- URL to connect to the DB master -->
  <property>
    <name>dt.application.JdbcToJdbcApp.operator.JdbcOutput.prop.store.databaseUrl</name>
    <value>jdbc:oracle:thin:@//host:port/db</value>
  </property>
  
  <property>
    <name>dt.application.JdbcToJdbcApp.operator.JdbcOutput.prop.store.userName</name>
    <value>username</value>
  </property>
  <property>
    <name>dt.application.JdbcToJdbcApp.operator.JdbcOutput.prop.store.password</name>
    <value>password</value>
  </property>

  <!-- # rows that the operator can retrieve in a window -->
  <property>
    <name>dt.application.JdbcToJdbcApp.operator.JdbcOutput.prop.batchSize</name>
    <value>5</value>
  </property>

  <!-- Output Table name -->
  <property>
    <name>dt.application.JdbcToJdbcApp.operator.JdbcOutput.prop.tablename</name>
    <value>test_output_event_table</value>
  </property>
  
  <!-- POJO class -->
  <property>
    <name>dt.application.JdbcToJdbcApp.operator.JdbcOutput.port.input.attr.TUPLE_CLASS</name>
    <value>com.att.dti.jdbc2jdbc.PojoEvent</value>
  </property>

</configuration>

Reply via email to