Please Note This forum exists for community support for the Mango product family and the Radix IoT Platform. Although Radix IoT employees participate in this forum from time to time, there is no guarantee of a response to anything posted here, nor can Radix IoT, LLC guarantee the accuracy of any information expressed or conveyed. Specific project questions from customers with active support contracts are asked to send requests to support@radixiot.com.

Radix IoT Website Mango 3 Documentation Website Mango 4 Documentation Website

Character N is neither a decimal digit number, decimal point, nor "e" notation exponential mark


  • Hello everyone,
    Mango has been giving the error below in ma.log for a long time. We have 56,000 data points in Mango v4.beta12. How can we determine what caused this error? Is there a method where we can get the xid or xids causing the error?

    ERROR 2021-08-11T00:00:00,574 (com.serotonin.m2m2.util.timeout.TimeoutTask.run:61) - Uncaught Task Exception
    java.lang.NumberFormatException: Character N is neither a decimal digit number, decimal point, nor "e" notation exponential mark.
    	at java.math.BigDecimal.<init>(BigDecimal.java:518) ~[?:?]
    	at java.math.BigDecimal.<init>(BigDecimal.java:401) ~[?:?]
    	at java.math.BigDecimal.<init>(BigDecimal.java:834) ~[?:?]
    	at com.serotonin.m2m2.modbus.rt.ModbusDataSourceRT.updatePointValue(ModbusDataSourceRT.java:403) ~[modbus-ds-4.0.0-beta.12.jar:?]
    	at com.serotonin.m2m2.modbus.rt.ModbusDataSourceRT.doPoll(ModbusDataSourceRT.java:229) ~[modbus-ds-4.0.0-beta.12.jar:?]
    	at com.serotonin.m2m2.rt.dataSource.PollingDataSource.doPollNoSync(PollingDataSource.java:234) ~[mango-4.0.0-beta.12.jar:?]
    	at com.serotonin.m2m2.rt.dataSource.PollingDataSource.scheduleTimeoutImpl(PollingDataSource.java:189) ~[mango-4.0.0-beta.12.jar:?]
    	at com.serotonin.m2m2.rt.dataSource.PollingDataSource$1.scheduleTimeout(PollingDataSource.java:83) ~[mango-4.0.0-beta.12.jar:?]
    	at com.serotonin.m2m2.util.timeout.TimeoutTask.run(TimeoutTask.java:59) ~[mango-4.0.0-beta.12.jar:?]
    	at com.serotonin.timer.Task.runTask(Task.java:183) ~[mango-4.0.0-beta.12.jar:?]
    	at com.serotonin.timer.TaskWrapper.run(TaskWrapper.java:23) ~[mango-4.0.0-beta.12.jar:?]
    	at com.serotonin.timer.OrderedThreadPoolExecutor$OrderedTaskCollection.run(OrderedThreadPoolExecutor.java:313) ~[mango-4.0.0-beta.12.jar:?]
    	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) ~[?:?]
    	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) ~[?:?]
    	at java.lang.Thread.run(Thread.java:834) [?:?]
    
    

  • @hazel I am pretty confident one of your registers is being read as:

    NaN
    

    by Mango.

    I have opened a ticket to make this more robust but the current version of Mango does not have a simple way to determine what data point is causing this. You will need to start looking into what registers you are reading for numeric values that have out of range data.