# Issue creating a new JDBC driver

**URL:** <https://forum.inductiveautomation.com/t/issue-creating-a-new-jdbc-driver/20840>\
**Category:** Ignition\
**Created:** [November 14, 2018, 9:19am UTC](https://forum.inductiveautomation.com/t/issue-creating-a-new-jdbc-driver/20840 "2018-11-14T09:19:42Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![jose.granero](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/jose.granero/32/11190_2.png) [@jose.granero](https://forum.inductiveautomation.com/u/jose.granero)\
**Post date:** [November 14, 2018, 9:19am UTC](https://forum.inductiveautomation.com/t/issue-creating-a-new-jdbc-driver/20840/1 "2018-11-14T09:19:42Z")

</div>

I’m trying to create a new JDBC Driver but I always get the same error (see attached image), and don’t know if it is due to an error I’m making or to something else. The text shown in the log is as follows:

 ![](https://us1.discourse-cdn.com/inductiveautomation/original/2X/c/cc0f7db836f3672cd10badc313f41dc308ca0987.jpg)

```auto
at simpleorm.sessionjdbc.SSessionJdbcHelper.flushExecuteUpdate(SSessionJdbcHelper.java:434)
at simpleorm.sessionjdbc.SSessionJdbcHelper.flush(SSessionJdbcHelper.java:400)
at simpleorm.sessionjdbc.SSessionJdbc.flush(SSessionJdbc.java:459)
at simpleorm.sessionjdbc.SSessionJdbc.flush(SSessionJdbc.java:443)
at simpleorm.sessionjdbc.SSessionJdbc.commitAndDetachDataSet(SSessionJdbc.java:382)
at com.inductiveautomation.ignition.gateway.web.components.AbstractRecordEditPanel.commitRecords(AbstractRecordEditPanel.java:203)
at com.inductiveautomation.ignition.gateway.web.components.AbstractRecordEditPanel.onSubmit(AbstractRecordEditPanel.java:155)
at com.inductiveautomation.ignition.gateway.web.pages.config.databases.JdbcDriverEditPage.onSubmit(JdbcDriverEditPage.java:77)
at com.inductiveautomation.ignition.gateway.web.components.AbstractRecordEditPanel.onSubmit(AbstractRecordEditPanel.java:122)
at com.inductiveautomation.ignition.gateway.web.components.RecordEditForm$1.onSubmitInternal(RecordEditForm.java:92)
at com.inductiveautomation.ignition.gateway.web.components.CsrfPreventingForm.onSubmit(CsrfPreventingForm.java:66)
at org.apache.wicket.markup.html.form.Form$9.component(Form.java:1248)
at org.apache.wicket.markup.html.form.Form$9.component(Form.java:1242)
at org.apache.wicket.util.visit.Visits.visitPostOrderHelper(Visits.java:274)
at org.apache.wicket.util.visit.Visits.visitPostOrder(Visits.java:245)
at org.apache.wicket.markup.html.form.Form.delegateSubmit(Form.java:1241)
at org.apache.wicket.markup.html.form.Form.process(Form.java:923)
at org.apache.wicket.markup.html.form.Form.onFormSubmitted(Form.java:769)
at org.apache.wicket.markup.html.form.Form.onFormSubmitted(Form.java:702)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.wicket.RequestListenerInterface.internalInvoke(RequestListenerInterface.java:258)
at org.apache.wicket.RequestListenerInterface.invoke(RequestListenerInterface.java:216)
at org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.invokeListener(ListenerInterfaceRequestHandler.java:240)
at org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.respond(ListenerInterfaceRequestHandler.java:226)
at org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:814)
at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
at org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:253)
at org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:210)
at org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:281)
at org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:188)
at org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:245)
at com.inductiveautomation.ignition.gateway.bootstrap.SRFilter.doFilter(SRFilter.java:80)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1668)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:581)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:226)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1160)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:511)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1092)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
at org.eclipse.jetty.server.handler.HandlerList.handle(HandlerList.java:52)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:134)
at org.eclipse.jetty.server.Server.handle(Server.java:518)
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:308)
at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:244)
at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:273)
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:95)
at org.eclipse.jetty.io.SelectChannelEndPoint$2.run(SelectChannelEndPoint.java:93)
at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceAndRun(ExecuteProduceConsume.java:246)
at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:156)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:654)
at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:572)
at java.lang.Thread.run(Unknown Source)
Caused by: org.sqlite.SQLiteException: [SQLITE_CONSTRAINT_PRIMARYKEY] A PRIMARY KEY constraint failed (UNIQUE constraint failed: JDBCDRIVERS.JDBCDRIVERS_ID)
at org.sqlite.core.DB.newSQLException(DB.java:909)
at org.sqlite.core.DB.newSQLException(DB.java:921)
at org.sqlite.core.DB.execute(DB.java:825)
at org.sqlite.core.DB.executeUpdate(DB.java:863)
at org.sqlite.jdbc3.JDBC3PreparedStatement.executeUpdate(JDBC3PreparedStatement.java:99)
at com.inductiveautomation.ignition.gateway.localdb.DelegatingDataSource$DelegatingConnection$DelegatingPreparedStatement.executeUpdate(DelegatingDataSource.java:585)
at simpleorm.sessionjdbc.SSessionJdbcHelper.flushExecuteUpdate(SSessionJdbcHelper.java:432)
... 57 common frames omitted

```

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [November 14, 2018, 1:40pm UTC](https://forum.inductiveautomation.com/t/issue-creating-a-new-jdbc-driver/20840/2 "2018-11-14T13:40:54Z")

</div>

Well, it says the primary key is a duplicate. That looks like a bug.

---

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [November 14, 2018, 2:51pm UTC](https://forum.inductiveautomation.com/t/issue-creating-a-new-jdbc-driver/20840/3 "2018-11-14T14:51:55Z")

</div>

The fix for this is landing in 7.9.10.

---

<div class="post-metadata">

**Author:** ![jose.granero](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/jose.granero/32/11190_2.png) [@jose.granero](https://forum.inductiveautomation.com/u/jose.granero)\
**Post date:** [November 14, 2018, 4:31pm UTC](https://forum.inductiveautomation.com/t/issue-creating-a-new-jdbc-driver/20840/4 "2018-11-14T16:31:13Z")

</div>

Thank you ----------

---

<div class="post-metadata">

**Author:** ![jose.granero](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/jose.granero/32/11190_2.png) [@jose.granero](https://forum.inductiveautomation.com/u/jose.granero)\
**Post date:** [November 16, 2018, 11:58am UTC](https://forum.inductiveautomation.com/t/issue-creating-a-new-jdbc-driver/20840/5 "2018-11-16T11:58:39Z")

</div>

Isn’t there a workaround?, we need to solve this issue as soon as possible, we have recently sold a project , to one of our major pharma customers, whose main scope is precisely related to exploiting the data stored in an SQL database for which we need to create a new driver before connecting to it.

---

<div class="post-metadata">

**Author:** ![paul-griffith](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/paul-griffith/32/37249_2.png) [@paul-griffith](https://forum.inductiveautomation.com/u/paul-griffith)\
**Post date:** [November 16, 2018, 4:09pm UTC](https://forum.inductiveautomation.com/t/issue-creating-a-new-jdbc-driver/20840/6 "2018-11-16T16:09:04Z")

</div>

The only workaround involves manually editing the internal database to add a “blank” record, then populating it after the fact. Support can help you with this process - I would suggest sending an email or giving them a call; anything involving the internal database is a “risky” process that can cause problems.
