Mango stopped reading data
-
Hello, I've recently run into two issues, both seem to be at the same time on two different sites but on the same network. I have Mango ES units, both were configured to read BACnet values from the same type of device and both simply stopped reading at about the same time, about two weeks ago, and did not recover until I did something. Both mangos are 2.8.8.
Site 1
When I arrived I checked to see what the BACnet data source was doing. I opened the DS and ran the little explorer. To my surprise it found everything, including the device it was supposed to be talking to.
I next went to one of the points which were being read and checked it's history. The history had flat-lined about two weeks ago when the issue started. The "present" value of the point was stuck at the two week old number. While being on that history page I noticed that the value started updating again. It has worked since. I have the ma.log files covering the time period of when it went offline up to yesterday. The log for this site includes a point history where you can see the point value freezing at some point.
[0_1511876368768_psysak - Site 1.7z](Uploading 100%)Site 2
This time when I checked the value which was supposed to be read it was nothing, it did not have a value and did not start reading on its own. When I ran the bacnet discovery on the data source it found nothing on the network. There was an associated error in the logs from when I started the discovery.ERROR 2017-11-27 16:01:44,239 (com.serotonin.m2m2.web.dwr.util.ExceptionDetectionFilter.doFilter:38) - DWR invocation exception java.lang.ClassCastException: com.serotonin.bacnet4j.transport.ServiceFutureImpl cannot be cast to com.serotonin.bacnet4j.service.acknowledgement.ReadPropertyAck at com.serotonin.ma.bacnet.BACnetDataSourceRT.forcePointRead(BACnetDataSourceRT.java:373) at com.serotonin.m2m2.rt.RuntimeManager.forcePointRead(RuntimeManager.java:650) at com.serotonin.m2m2.web.dwr.BaseDwr.forcePointRead(BaseDwr.java:278) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.directwebremoting.impl.ExecuteAjaxFilter.doFilter(ExecuteAjaxFilter.java:34) at org.directwebremoting.impl.DefaultRemoter$1.doFilter(DefaultRemoter.java:428) at com.serotonin.m2m2.web.dwr.util.TranslationsFilter.doFilter(TranslationsFilter.java:37) at org.directwebremoting.impl.DefaultRemoter$1.doFilter(DefaultRemoter.java:428) at com.serotonin.m2m2.web.dwr.util.ExceptionDetectionFilter.doFilter(ExceptionDetectionFilter.java:26) at org.directwebremoting.impl.DefaultRemoter$1.doFilter(DefaultRemoter.java:428) at com.serotonin.m2m2.web.dwr.util.DwrPermissionFilter.doFilter(DwrPermissionFilter.java:45) at org.directwebremoting.impl.DefaultRemoter$1.doFilter(DefaultRemoter.java:428) at org.directwebremoting.impl.DefaultRemoter.execute(DefaultRemoter.java:431) at org.directwebremoting.impl.DefaultRemoter.execute(DefaultRemoter.java:283) at org.directwebremoting.servlet.PlainCallHandler.handle(PlainCallHandler.java:52) at org.directwebremoting.servlet.UrlProcessor.handle(UrlProcessor.java:101) at org.directwebremoting.servlet.DwrServlet.doPost(DwrServlet.java:146) at javax.servlet.http.HttpServlet.service(HttpServlet.java:707) at javax.servlet.http.HttpServlet.service(HttpServlet.java:790) at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:808) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1669) at org.eclipse.jetty.servlets.UserAgentFilter.doFilter(UserAgentFilter.java:83) at org.eclipse.jetty.servlets.GzipFilter.doFilter(GzipFilter.java:300) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652) at org.springframework.web.filter.ShallowEtagHeaderFilter.doFilterInternal(ShallowEtagHeaderFilter.java:87) at com.serotonin.m2m2.web.filter.MangoShallowEtagHeaderFilter.doFilterInternal(MangoShallowEtagHeaderFilter.java:47) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577) at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223) at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127) at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515) at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185) at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:215) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97) at org.eclipse.jetty.server.Server.handle(Server.java:499) at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310) at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257) at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635) at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555) at java.lang.Thread.run(Thread.java:745)
[0_1511876385726_psysak - Site 2.7z](Uploading 100%)
Logs are attached.
-
Ugh, sorry it posted the error as on long line. Did it upload the files?
-
I'll let someone else look at the logs but I will say that there are significant improvements with BACnet in Mango 3 so I would highly recommend upgrading. Contact us at support@infiniteautomation.com about a upgrade.
-
Hmm, most of my other Mangos in that group of buildings are already V3 and aren't doing BACnet, these two are actually the only V2s I have in that group :) Perhaps I will take the opportunity to swap them.