# Tag history provider errors - demo expired and generic error

**URL:** <https://forum.inductiveautomation.com/t/tag-history-provider-errors-demo-expired-and-generic-error/54443>\
**Category:** Ignition\
**Tags:** ignition81\
**Created:** [December 23, 2021, 7:45pm UTC](https://forum.inductiveautomation.com/t/tag-history-provider-errors-demo-expired-and-generic-error/54443 "2021-12-23T19:45:34Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Cory.grube](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/cory.grube/32/20476_2.png) [@Cory.grube](https://forum.inductiveautomation.com/u/Cory.grube)\
**Post date:** [December 23, 2021, 7:45pm UTC](https://forum.inductiveautomation.com/t/tag-history-provider-errors-demo-expired-and-generic-error/54443/1 "2021-12-23T19:45:34Z")

</div>

Ignition 8.1.10

Running into a weird issue on a new install. When I added a tag history splitter, suddenly my database connections show ‘Demo Expired’ in Config\>Tags\>History. The splitter itself shows a generic ‘Error’. I don’t see any errors in the logs.

 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/6/a/6afc1017e7aa16de0ef75e6b8b21527c24786420.png)

* * *

![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/e/b/eb3dcc848b3abb2524a6c8b36f73dffe59a5ae9d.png)

* * *

![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/e/a/ea1884f4b3de1dcb0ad5ffdd6256df8a92f624e3.png)

The database connections are all good, and the server itself is fully licensed, all the modules are installed, etc.

 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/2/9/29fefc338fe720c5c9072c46f68e77efba07b844.png)

 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/3/e/3ec8c29e201513b8ad27f94631abc16c85d65da2.png)

Confusingly, I have 4 other gateways with the same configuration to the same databases, but they don’t give errors. Only difference is that they have a slightly different set of modules - the working gateways are IO gateways, while the broken one is a front-end gateway for Vision. Both have Historian module/licensing.

I tried historizing a tag to see if it was just a labelling fluke [as discussed here](https://forum.inductiveautomation.com/t/demo-expired-on-historical-provider/43696), but historizing a system tag (CPU usage) and plotting it on an easy chart gave me the following error:

> **Trace**
>
> ```auto
> java.lang.Exception: Error running query:
> TagHistory(paths=[histprov:System:/tag:Gateway/Performance/CPU Usage], start=Thu Dec 23 14:02:00 EST 2021, end=Thu Dec 23 14:12:59 EST 2021, flags=0)@0ms
> On: Window 1.Root Container.Easy Chart
> at com.inductiveautomation.factorypmi.application.gateway.QueryManager$QueryExecutor.run(QueryManager.java:311)
> at java.base/java.lang.Thread.run(Unknown Source)
> Caused by: com.inductiveautomation.ignition.client.gateway_interface.GatewayException: Error executing tag history query. Please verify that the connection is available, and that tag history is being stored to it.
> at com.inductiveautomation.ignition.client.gateway_interface.GatewayInterface.newGatewayException(GatewayInterface.java:351)
> at com.inductiveautomation.ignition.client.gateway_interface.GatewayInterface.sendMessage(GatewayInterface.java:325)
> at com.inductiveautomation.ignition.client.gateway_interface.GatewayInterface.runTagHistoryQuery(GatewayInterface.java:780)
> at com.inductiveautomation.ignition.client.gateway_interface.GatewayInterface.runTagHistoryQuery(GatewayInterface.java:748)
> at com.inductiveautomation.factorypmi.application.gateway.GwiTagHistoryProvider.query(GwiTagHistoryProvider.java:16)
> at com.inductiveautomation.ignition.common.sqltags.history.cache.StandardCacheBucket.loadData(StandardCacheBucket.java:232)
> at com.inductiveautomation.ignition.common.sqltags.history.cache.StandardCacheBucket.getData(StandardCacheBucket.java:192)
> at com.inductiveautomation.ignition.common.sqltags.history.cache.SubCache$BucketHit.getData(SubCache.java:215)
> at com.inductiveautomation.ignition.common.sqltags.history.cache.SubCache.getData(SubCache.java:158)
> at com.inductiveautomation.ignition.common.sqltags.history.cache.TagHistoryCache.query(TagHistoryCache.java:273)
> at com.inductiveautomation.factorypmi.application.gateway.TagHistoryQuery.execute(TagHistoryQuery.java:34)
> at com.inductiveautomation.factorypmi.application.gateway.QueryManager$Query.execute(QueryManager.java:668)
> at com.inductiveautomation.factorypmi.application.gateway.QueryManager$QueryExecutor.run(QueryManager.java:308)
> ... 1 more
> Caused by: java.lang.Exception: Error executing tag history query. Please verify that the connection is available, and that tag history is being stored to it.
> at com.inductiveautomation.gateway.tags.history.query.DatasourceHistoryInterface.maybeLoadIds(DatasourceHistoryInterface.java:115)
> at com.inductiveautomation.gateway.tags.history.query.DatasourceHistoryInterface.getSystemId(DatasourceHistoryInterface.java:159)
> at com.inductiveautomation.gateway.tags.history.query.DatasourceQueryExecutor.initialize(DatasourceQueryExecutor.java:544)
> at com.inductiveautomation.ignition.gateway.sqltags.history.query.AggregateHistoryQueryExecutor.initialize(AggregateHistoryQueryExecutor.java:78)
> at com.inductiveautomation.ignition.gateway.sqltags.history.query.HistoryWriter.initLoader(HistoryWriter.java:141)
> at com.inductiveautomation.ignition.gateway.sqltags.history.query.HistoryWriter.execute(HistoryWriter.java:211)
> at com.inductiveautomation.ignition.gateway.sqltags.history.TagHistoryManagerImpl.queryHistory(TagHistoryManagerImpl.java:537)
> at com.inductiveautomation.ignition.gateway.tags.model.ProjectDefaultTagManagerFacade.queryHistory(ProjectDefaultTagManagerFacade.java:436)
> at com.inductiveautomation.ignition.gateway.servlets.gateway.functions.QueryTagHistory.invoke(QueryTagHistory.java:99)
> at com.inductiveautomation.ignition.gateway.servlets.Gateway.doPost(Gateway.java:432)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
> at com.inductiveautomation.ignition.gateway.bootstrap.MapServlet.service(MapServlet.java:86)
> at org.eclipse.jetty.servlet.ServletHolder$NotAsync.service(ServletHolder.java:1450)
> at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:799)
> at org.eclipse.jetty.servlet.ServletHandler$ChainEnd.doFilter(ServletHandler.java:1626)
> at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:548)
> at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
> at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:602)
> at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)
> at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:235)
> at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1624)
> at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233)
> at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1434)
> at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188)
> at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:501)
> at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1594)
> at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186)
> at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1349)
> at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
> at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)
> at com.inductiveautomation.catapult.handlers.RemoteHostNameLookupHandler.handle(RemoteHostNameLookupHandler.java:116)
> at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)
> at org.eclipse.jetty.rewrite.handler.RewriteHandler.handle(RewriteHandler.java:322)
> at org.eclipse.jetty.server.handler.HandlerList.handle(HandlerList.java:59)
> at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:146)
> at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)
> at org.eclipse.jetty.server.Server.handle(Server.java:516)
> at org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:388)
> at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:633)
> at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:380)
> at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:277)
> at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311)
> at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105)
> at org.eclipse.jetty.io.ChannelEndPoint$1.run(ChannelEndPoint.java:104)
> at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:338)
> at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:315)
> at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:173)
> at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:131)
> at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:386)
> at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:883)
> at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1034)
> at java.lang.Thread.run(null)
> 
> Ignition v8.1.10 (b2021090812)
> Java: Azul Systems, Inc. 11.0.11
> 
> ```

Has anyone seen this before/have any suggestions? As a jumping off point, restarting the tag historian module and the gateway had no impact. I also tried unactivating and activating my gateway - no change.

Thanks in advance!

---

<div class="post-metadata">

**Author:** ![nicholas.robinson](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/nicholas.robinson/32/22188_2.png) [@nicholas.robinson](https://forum.inductiveautomation.com/u/nicholas.robinson)\
**Post date:** [February 8, 2022, 9:37pm UTC](https://forum.inductiveautomation.com/t/tag-history-provider-errors-demo-expired-and-generic-error/54443/2 "2022-02-08T21:37:07Z")

</div>

@Cory.grube Did you ever find a solution?

I see the same issue.

Thanks,

Nick

---

<div class="post-metadata">

**Author:** ![Cory.grube](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/cory.grube/32/20476_2.png) [@Cory.grube](https://forum.inductiveautomation.com/u/Cory.grube)\
**Post date:** [February 8, 2022, 9:48pm UTC](https://forum.inductiveautomation.com/t/tag-history-provider-errors-demo-expired-and-generic-error/54443/3 "2022-02-08T21:48:57Z")

</div>

I meant to reach out to support but never got around to it unfortunately. I handed the project off to others for startup so I’m not sure how it shook out.

---

<div class="post-metadata">

**Author:** ![Cory.grube](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/cory.grube/32/20476_2.png) [@Cory.grube](https://forum.inductiveautomation.com/u/Cory.grube)\
**Post date:** [April 6, 2022, 4:30pm UTC](https://forum.inductiveautomation.com/t/tag-history-provider-errors-demo-expired-and-generic-error/54443/4 "2022-04-06T16:30:10Z")

</div>

Hey Nick, following up on this. The issue is that my gateway had the free Tag Historian **Query** license, not a **Standard** license. Basically read only vs read/write.

This is shown on the Status\>Systems\>Modules page - hovering over the license for the historian will show either edition: standard or edition: query. Assuming you have query, you’ll need to purchase the standard license to get read/write functionality.
