Error when trying pio train

41 views
Skip to first unread message

Kim Trang Le

unread,
Dec 18, 2015, 2:42:49 AM12/18/15
to predictionio-dev
Dear all,
I have got this error when calling pio train

[INFO] [Engine] Datasource params: (,DataSourceParams(361,20151216000000,20151220000000,yyyyMMddHHmmss))
[INFO] [Engine] Extracting preparator params...
[INFO] [Engine] Preparator params: (,Empty)
[INFO] [Engine] Extracting serving params...
[INFO] [Engine] Serving params: (,Empty)
Exception in thread "main" java.sql.SQLException: No suitable driver found for jdbc:mysql://192.168.1.73/pio
at java.sql.DriverManager.getConnection(DriverManager.java:596)
at java.sql.DriverManager.getConnection(DriverManager.java:215)
at org.apache.commons.dbcp.DriverManagerConnectionFactory.createConnection(DriverManagerConnectionFactory.java:75)
at org.apache.commons.dbcp.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:582)
at org.apache.commons.pool.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:1148)
at org.apache.commons.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:106)
at scalikejdbc.CommonsConnectionPool.borrow(CommonsConnectionPool.scala:43)
at scalikejdbc.DB$.autoCommit(DB.scala:214)
at io.prediction.data.storage.jdbc.JDBCEngineInstances.<init>(JDBCEngineInstances.scala:29)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
at io.prediction.data.storage.Storage$.getDataObject(Storage.scala:303)
at io.prediction.data.storage.Storage$.getDataObjectFromRepo(Storage.scala:263)
at io.prediction.data.storage.Storage$.getMetaDataEngineInstances(Storage.scala:364)
at io.prediction.workflow.CreateWorkflow$.main(CreateWorkflow.scala:244)
at io.prediction.workflow.CreateWorkflow.main(CreateWorkflow.scala)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.apache.spark.deploy.SparkSubmit$.org$apache$spark$deploy$SparkSubmit$$runMain(SparkSubmit.scala:672)
at org.apache.spark.deploy.SparkSubmit$.doRunMain$1(SparkSubmit.scala:180)
at org.apache.spark.deploy.SparkSubmit$.submit(SparkSubmit.scala:205)
at org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:120)
at org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala)



Can anyone help me with it? Thank you very much.

Seongduk Cheon

unread,
Dec 18, 2015, 3:17:23 AM12/18/15
to Kim Trang Le, predictionio-dev
Hi Kim

If you use RDBM as a storage server, you need to add JDBC driver library with any pio commands.
 
For example,

pio import  -- --driver-class-path /path/to/mysql-connector-java.jar
pio train  -- --driver-class-path /path/to/mysql-connector-java.jar
pio deploy  -- --driver-class-path /path/to/mysql-connector-java.jar

Could you try it? Actually These arguments after "--" are to spark-submit arguments.

For more detail is here

Best Regards

Seongduk

Pat Ferrel

unread,
Dec 18, 2015, 3:38:10 PM12/18/15
to Seongduk Cheon, Kim Trang Le, predictionio-dev
This is fixed in the next version of pio, v0.9.6, which will be out early 2016.

We also hope to fix the install script to download the proper driver.

Thanks Seongduk

Kim Trang Le

unread,
Dec 21, 2015, 9:49:59 PM12/21/15
to Pat Ferrel, Seongduk Cheon, predictionio-dev
Dear Seongduk and Pat,
thank you for your reply.
Reply all
Reply to author
Forward
0 new messages