# Easy Chart error (Comparison method violates its general contract)

**URL:** <https://forum.inductiveautomation.com/t/easy-chart-error-comparison-method-violates-its-general-contract/14825>\
**Category:** Ignition\
**Created:** [July 18, 2017, 9:02pm UTC](https://forum.inductiveautomation.com/t/easy-chart-error-comparison-method-violates-its-general-contract/14825 "2017-07-18T21:02:59Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![MoisesZV](https://avatars.discourse-cdn.com/v4/letter/m/e68b1a/32.png) [@MoisesZV](https://forum.inductiveautomation.com/u/MoisesZV)\
**Post date:** [July 18, 2017, 9:02pm UTC](https://forum.inductiveautomation.com/t/easy-chart-error-comparison-method-violates-its-general-contract/14825/1 "2017-07-18T21:02:59Z")

</div>

Ignition v7.9.3  
Java v8 update 131  
Windows 10 64 bits  
8 gb ram  
Postgresql

I recently created a new project for test purpose. I put about 40 tags on an Easy chart in real time, a few hours later I get an error.

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

```auto
java.lang.Exception: Error running query:
TagHistory(paths=[prov:default:/tag:_Sim3_/Ramp/Ramp0, prov:default:/tag:_Sim3_/Ramp/Ramp1, prov:default:/tag:_Sim3_/Ramp/Ramp2, prov:default:/tag:_Sim3_/Ramp/Ramp3, prov:default:/tag:_Sim3_/Ramp/Ramp4, prov:default:/tag:_Sim3_/Ramp/Ramp5, prov:default:/tag:_Sim3_/Ramp/Ramp6, prov:default:/tag:_Sim3_/Ramp/Ramp7, prov:default:/tag:_Sim3_/Ramp/Ramp8, prov:default:/tag:_Sim3_/Ramp/Ramp9, prov:default:/tag:_Sim3_/Realistic/Realistic0, prov:default:/tag:_Sim3_/Realistic/Realistic1, prov:default:/tag:_Sim3_/Realistic/Realistic2, prov:default:/tag:_Sim3_/Realistic/Realistic3, prov:default:/tag:_Sim3_/Realistic/Realistic4, prov:default:/tag:_Sim3_/Realistic/Realistic5, prov:default:/tag:_Sim3_/Realistic/Realistic6, prov:default:/tag:_Sim3_/Realistic/Realistic7, prov:default:/tag:_Sim3_/Realistic/Realistic8, prov:default:/tag:_Sim3_/Realistic/Realistic9], start=Tue Jul 18 15:53:18 CLT 2017, end=Tue Jul 18 15:58:18 CLT 2017, flags=0)@1000ms
On: Pantalla 3.Root Container.Easy Chart
	at com.inductiveautomation.factorypmi.application.gateway.QueryManager$QueryExecutor.run(QueryManager.java:317)
	at java.lang.Thread.run(Unknown Source)
Caused by: com.inductiveautomation.ignition.client.gateway_interface.GatewayException: Unexpected error running tag history query.
	at com.inductiveautomation.factorypmi.application.gateway.TagHistoryQuery.execute(TagHistoryQuery.java:41)
	at com.inductiveautomation.factorypmi.application.gateway.QueryManager$Query.execute(QueryManager.java:690)
	at com.inductiveautomation.factorypmi.application.gateway.QueryManager$Query.access$500(QueryManager.java:663)
	at com.inductiveautomation.factorypmi.application.gateway.QueryManager$QueryExecutor.run(QueryManager.java:314)
	... 1 more
Caused by: java.lang.IllegalArgumentException: Comparison method violates its general contract!
	at java.util.TimSort.mergeHi(Unknown Source)
	at java.util.TimSort.mergeAt(Unknown Source)
	at java.util.TimSort.mergeCollapse(Unknown Source)
	at java.util.TimSort.sort(Unknown Source)
	at java.util.Arrays.sort(Unknown Source)
	at java.util.List.sort(Unknown Source)
	at java.util.Collections.sort(Unknown Source)
	at com.inductiveautomation.ignition.common.sqltags.history.cache.TagHistoryCache.maybeSortBuckets(TagHistoryCache.java:312)
	at com.inductiveautomation.ignition.common.sqltags.history.cache.TagHistoryCache.createRoomFor(TagHistoryCache.java:154)
	at com.inductiveautomation.ignition.common.sqltags.history.cache.TagHistoryCache.registerBucket(TagHistoryCache.java:275)
	at com.inductiveautomation.ignition.common.sqltags.history.cache.SubCache.registerBucketData(SubCache.java:63)
	at com.inductiveautomation.ignition.common.sqltags.history.cache.StandardCacheBucket.getData(StandardCacheBucket.java:212)
	at com.inductiveautomation.ignition.common.sqltags.history.cache.SubCache$BucketHit.getData(SubCache.java:224)
	at com.inductiveautomation.ignition.common.sqltags.history.cache.SubCache.getData(SubCache.java:160)
	at com.inductiveautomation.ignition.common.sqltags.history.cache.TagHistoryCache.query(TagHistoryCache.java:254)
	at com.inductiveautomation.factorypmi.application.gateway.TagHistoryQuery.execute(TagHistoryQuery.java:35)
	... 4 more

Ignition v7.9.3 (b2017060210)
Java: Oracle Corporation 1.8.0_131

```

---

<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:** [July 18, 2017, 9:06pm UTC](https://forum.inductiveautomation.com/t/easy-chart-error-comparison-method-violates-its-general-contract/14825/2 "2017-07-18T21:06:57Z")

</div>

This is a known issue that’s been fixed in 7.9.4 - it’s a pretty hard to replicate issue with the tag history cache.

---

<div class="post-metadata">

**Author:** ![CJVR](https://avatars.discourse-cdn.com/v4/letter/c/0ea827/32.png) [@CJVR](https://forum.inductiveautomation.com/u/CJVR)\
**Post date:** [July 18, 2017, 11:45pm UTC](https://forum.inductiveautomation.com/t/easy-chart-error-comparison-method-violates-its-general-contract/14825/3 "2017-07-18T23:45:24Z")

</div>

I have had this problem for over a year. When do you think 7.9.4 will be released?

---

<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:** [July 18, 2017, 11:54pm UTC](https://forum.inductiveautomation.com/t/easy-chart-error-comparison-method-violates-its-general-contract/14825/4 "2017-07-18T23:54:05Z")

</div>

Should be within the next few weeks, though I can’t give a much better estimate than that.

---

<div class="post-metadata">

**Author:** ![CJVR](https://avatars.discourse-cdn.com/v4/letter/c/0ea827/32.png) [@CJVR](https://forum.inductiveautomation.com/u/CJVR)\
**Post date:** [July 19, 2017, 12:42am UTC](https://forum.inductiveautomation.com/t/easy-chart-error-comparison-method-violates-its-general-contract/14825/5 "2017-07-19T00:42:42Z")

</div>

Thanks. I eagerly await the fix and would love to know the root cause.

---

<div class="post-metadata">

**Author:** ![MoisesZV](https://avatars.discourse-cdn.com/v4/letter/m/e68b1a/32.png) [@MoisesZV](https://forum.inductiveautomation.com/u/MoisesZV)\
**Post date:** [July 19, 2017, 1:55pm UTC](https://forum.inductiveautomation.com/t/easy-chart-error-comparison-method-violates-its-general-contract/14825/6 "2017-07-19T13:55:15Z")

</div>

I donwloaded Ignition-7.9.4-beta1 and the error doesn’t show anymore trough all night long.
