• Recent
    • Tags
    • Popular
    • Register
    • Login
    1. Home
    2. Brad_GMI
    3. Posts

    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 Mango 5 Documentation Website
    B
    • Profile
    • Following 0
    • Followers 0
    • Topics 16
    • Posts 59
    • Best 1
    • Controversial 0
    • Groups 0

    Posts made by Brad_GMI

    • Database Reporting

      Good Evening,

      We are exploring accessing/exporting point data to an external database reporting software to enhance some of our internal processes with our equipment.

      Is anyone using a specific software or technique to expose the data point data to a external service?

      Thank You!

      posted in Mango Automation general Discussion
      B
      Brad_GMI
    • RE: Corrupt H2 Database

      I've attempted several recoveries from the available backups. They are all producing these errors once the restore process completes:

      org.springframework.web.util.NestedServletException: Request processing failed; nested exception is org.springframework.jdbc.BadSqlGrammarException: PreparedStatementCallback; bad SQL grammar [SELECT edt.id,edt.xid,edt.sourceTypeName,edt.typeName,edt.data,edt.dataPointId FROM eventDetectors AS edt WHERE edt.dataPointId=? ORDER BY id]; nested exception is org.h2.jdbc.JdbcSQLException: Table "EVENTDETECTORS" not found; SQL statement:
      SELECT edt.id,edt.xid,edt.sourceTypeName,edt.typeName,edt.data,edt.dataPointId FROM eventDetectors AS edt WHERE edt.dataPointId=? ORDER BY id [42102-181]
      	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:982)
      	at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:861)
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:687)
      	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
      	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 com.serotonin.m2m2.web.filter.WebContextFilter.doFilter(WebContextFilter.java:43)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
      	at com.serotonin.m2m2.web.filter.LoggedInFilter.doFilter(LoggedInFilter.java:49)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
      	at com.serotonin.m2m2.web.filter.UrlSecurityFilter.doFilter(UrlSecurityFilter.java:206)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
      	at com.serotonin.web.filter.CharacterSetFilter.doFilter(CharacterSetFilter.java:37)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
      	at org.eclipse.jetty.servlets.UserAgentFilter.doFilter(UserAgentFilter.java:83)
      	at org.eclipse.jetty.servlets.GzipFilter.doFilter(GzipFilter.java:364)
      	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.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:317)
      	at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:127)
      	at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:91)
      	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331)
      	at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:115)
      	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331)
      	at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:137)
      	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331)
      	at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:111)
      	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331)
      	at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:169)
      	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331)
      	at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63)
      	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331)
      	at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:121)
      	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331)
      	at com.serotonin.m2m2.web.mvc.spring.security.CsrfHeaderFilter.doFilterInternal(CsrfHeaderFilter.java:41)
      	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
      	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331)
      	at org.springframework.security.web.csrf.CsrfFilter.doFilterInternal(CsrfFilter.java:100)
      	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
      	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331)
      	at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:66)
      	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
      	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331)
      	at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:105)
      	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331)
      	at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:56)
      	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
      	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331)
      	at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:214)
      	at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:177)
      	at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
      	at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
      	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)
      Caused by: org.springframework.jdbc.BadSqlGrammarException: PreparedStatementCallback; bad SQL grammar [SELECT edt.id,edt.xid,edt.sourceTypeName,edt.typeName,edt.data,edt.dataPointId FROM eventDetectors AS edt WHERE edt.dataPointId=? ORDER BY id]; nested exception is org.h2.jdbc.JdbcSQLException: Table "EVENTDETECTORS" not found; SQL statement:
      SELECT edt.id,edt.xid,edt.sourceTypeName,edt.typeName,edt.data,edt.dataPointId FROM eventDetectors AS edt WHERE edt.dataPointId=? ORDER BY id [42102-181]
      	at org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator.doTranslate(SQLErrorCodeSQLExceptionTranslator.java:231)
      	at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:73)
      	at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:645)
      	at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:680)
      	at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:712)
      	at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:722)
      	at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:772)
      	at com.serotonin.db.DaoUtils.query(DaoUtils.java:308)
      	at com.serotonin.m2m2.db.dao.EventDetectorDao.getWithSourceId(EventDetectorDao.java:177)
      	at com.serotonin.m2m2.db.dao.DataPointDao.setEventDetectors(DataPointDao.java:460)
      	at com.serotonin.m2m2.db.dao.DataPointDao.setRelationalData(DataPointDao.java:288)
      	at com.serotonin.m2m2.db.dao.DataPointDao.getDataPoint(DataPointDao.java:167)
      	at com.serotonin.m2m2.db.dao.DataPointDao.getDataPoint(DataPointDao.java:159)
      	at com.serotonin.m2m2.web.mvc.controller.DataPointDetailsController.handleRequest(DataPointDetailsController.java:78)
      	at com.serotonin.m2m2.web.mvc.UrlHandlerController.handleRequest(UrlHandlerController.java:36)
      	at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:50)
      	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:959)
      	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:893)
      	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
      	... 74 more
      Caused by: org.h2.jdbc.JdbcSQLException: Table "EVENTDETECTORS" not found; SQL statement:
      SELECT edt.id,edt.xid,edt.sourceTypeName,edt.typeName,edt.data,edt.dataPointId FROM eventDetectors AS edt WHERE edt.dataPointId=? ORDER BY id [42102-181]
      	at org.h2.message.DbException.getJdbcSQLException(DbException.java:345)
      	at org.h2.message.DbException.get(DbException.java:179)
      	at org.h2.message.DbException.get(DbException.java:155)
      	at org.h2.command.Parser.readTableOrView(Parser.java:5227)
      	at org.h2.command.Parser.readTableFilter(Parser.java:1221)
      	at org.h2.command.Parser.parseSelectSimpleFromPart(Parser.java:1860)
      	at org.h2.command.Parser.parseSelectSimple(Parser.java:1969)
      	at org.h2.command.Parser.parseSelectSub(Parser.java:1854)
      	at org.h2.command.Parser.parseSelectUnion(Parser.java:1675)
      	at org.h2.command.Parser.parseSelect(Parser.java:1663)
      	at org.h2.command.Parser.parsePrepared(Parser.java:433)
      	at org.h2.command.Parser.parse(Parser.java:305)
      	at org.h2.command.Parser.parse(Parser.java:277)
      	at org.h2.command.Parser.prepareCommand(Parser.java:242)
      	at org.h2.engine.Session.prepareLocal(Session.java:446)
      	at org.h2.engine.Session.prepareCommand(Session.java:388)
      	at org.h2.jdbc.JdbcConnection.prepareCommand(JdbcConnection.java:1189)
      	at org.h2.jdbc.JdbcPreparedStatement.<init>(JdbcPreparedStatement.java:72)
      	at org.h2.jdbc.JdbcConnection.prepareStatement(JdbcConnection.java:277)
      	at org.springframework.jdbc.core.JdbcTemplate$SimplePreparedStatementCreator.createPreparedStatement(JdbcTemplate.java:1516)
      	at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:623)
      	... 90 more
      
      REQUEST URL
      http://localhost:8080/exception/error.jsp
      
      REQUEST PARAMETERS
      
      
      REQUEST HEADERS
         Cookie=MANGO8080=1oorhho5d8upo1gbk0m2mlbznz; XSRF-TOKEN=f1840133-71be-4aaf-9ff9-e5cc0422867d
         Accept=text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
         Upgrade-Insecure-Requests=1
         User-Agent=Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:65.0) Gecko/20100101 Firefox/65.0
         Referer=http://localhost:8080/modules.shtm
         Connection=keep-alive
         Host=localhost:8080
         Accept-Language=en-US,en;q=0.5
         Accept-Encoding=gzip, deflate
      
      
      REQUEST ATTRIBUTES
         javax.servlet.forward.context_path=
         org.springframework.web.context.request.async.WebAsyncManager.WEB_ASYNC_MANAGER=org.springframework.web.context.request.async.WebAsyncManager@5252d6dd
         javax.servlet.error.status_code=500
         javax.servlet.forward.servlet_path=/data_point_details.shtm
         org.springframework.web.servlet.DispatcherServlet.CONTEXT=WebApplicationContext for namespace 'springDispatcher-servlet': startup date [Mon Feb 18 15:00:34 EST 2019]; parent: Root WebApplicationContext
         javax.servlet.jsp.jstl.fmt.localizationContext.request=org.springframework.web.servlet.support.JstlUtils$SpringLocalizationContext@1bc9424c
         org.springframework.web.servlet.HandlerMapping.introspectTypeLevelMapping=false
         org.eclipse.jetty.server.error_page=/exception/error.jsp
         __spring_security_session_mgmt_filter_applied=true
         urlSecurity=true
         org.springframework.web.servlet.DispatcherServlet.LOCALE_RESOLVER=org.springframework.web.servlet.i18n.SessionLocaleResolver@6a6a2a03
         org.springframework.web.servlet.HandlerMapping.bestMatchingPattern=/data_point_details.shtm
         org.springframework.web.servlet.DispatcherServlet.OUTPUT_FLASH_MAP=FlashMap [attributes={}, targetRequestPath=null, targetRequestParams={}]
         javax.servlet.error.exception_type=class org.springframework.web.util.NestedServletException
         org.springframework.web.servlet.DispatcherServlet.FLASH_MAP_MANAGER=org.springframework.web.servlet.support.SessionFlashMapManager@3b093a20
         lang=en
         javax.servlet.forward.request_uri=/data_point_details.shtm
         availableLanguages=[]
         javax.servlet.http.HttpServletResponse=org.springframework.security.web.header.HeaderWriterFilter$HeaderWriterResponse@3893bdbb
         __spring_security_filterSecurityInterceptor_filterApplied=true
         _csrf=org.springframework.security.web.csrf.DefaultCsrfToken@d43e349
         javax.servlet.error.servlet_name=springDispatcher
         javax.servlet.error.message=org.springframework.web.util.NestedServletException: Request processing failed; nested exception is org.springframework.jdbc.BadSqlGrammarException: PreparedStatementCallback; bad SQL grammar [SELECT edt.id,edt.xid,edt.sourceTypeName,edt.typeName,edt.data,edt.dataPointId FROM eventDetectors AS edt WHERE edt.dataPointId=? ORDER BY id]; nested exception is org.h2.jdbc.JdbcSQLException: Table "EVENTDETECTORS" not found; SQL statement:
      SELECT edt.id,edt.xid,edt.sourceTypeName,edt.typeName,edt.data,edt.dataPointId FROM eventDetectors AS edt WHERE edt.dataPointId=? ORDER BY id [42102-181]
         org.springframework.web.servlet.DispatcherServlet.THEME_SOURCE=WebApplicationContext for namespace 'springDispatcher-servlet': startup date [Mon Feb 18 15:00:34 EST 2019]; parent: Root WebApplicationContext
         instanceDescription=My Mango Automation
         NEW_ID=-1
         org.springframework.web.servlet.HandlerMapping.pathWithinHandlerMapping=/data_point_details.shtm
         org.springframework.security.web.csrf.CsrfToken=org.springframework.security.web.csrf.DefaultCsrfToken@d43e349
         javax.servlet.error.request_uri=/data_point_details.shtm
         org.springframework.web.servlet.DispatcherServlet.THEME_RESOLVER=org.springframework.web.servlet.theme.FixedThemeResolver@3642fad0
         javax.servlet.jsp.jstl.fmt.locale.request=en_US
         javax.servlet.error.exception=org.springframework.web.util.NestedServletException: Request processing failed; nested exception is org.springframework.jdbc.BadSqlGrammarException: PreparedStatementCallback; bad SQL grammar [SELECT edt.id,edt.xid,edt.sourceTypeName,edt.typeName,edt.data,edt.dataPointId FROM eventDetectors AS edt WHERE edt.dataPointId=? ORDER BY id]; nested exception is org.h2.jdbc.JdbcSQLException: Table "EVENTDETECTORS" not found; SQL statement:
      SELECT edt.id,edt.xid,edt.sourceTypeName,edt.typeName,edt.data,edt.dataPointId FROM eventDetectors AS edt WHERE edt.dataPointId=? ORDER BY id [42102-181]
      
      
      SESSION ATTRIBUTES
         org.springframework.security.web.csrf.HttpSessionCsrfTokenRepository.CSRF_TOKEN=org.springframework.security.web.csrf.DefaultCsrfToken@d43e349
         sessionUser=User [id=1, username=admin, password={BCRYPT}$2a$10$geXLtQkG69172R6A5oHyGO4uv4UrMwPNVg0/XiNvsttNfgDK9m0wC, email=admin@yourMangoDomain.com, phone=, disabled=false, homeUrl=null, lastLogin=0, receiveAlarmEmails=-3, receiveOwnAuditEvents=false, timezone=null, permissions=superadmin]
         LONG_POLL_DATA_TIMEOUT=1550520355793
         SPRING_SECURITY_CONTEXT=org.springframework.security.core.context.SecurityContextImpl@eefb1197: Authentication: org.springframework.security.authentication.UsernamePasswordAuthenticationToken@eefb1197: Principal: User [id=1, username=admin, password={BCRYPT}$2a$10$geXLtQkG69172R6A5oHyGO4uv4UrMwPNVg0/XiNvsttNfgDK9m0wC, email=admin@yourMangoDomain.com, phone=, disabled=false, homeUrl=null, lastLogin=0, receiveAlarmEmails=-3, receiveOwnAuditEvents=false, timezone=null, permissions=superadmin]; Credentials: [PROTECTED]; Authenticated: true; Details: null; Granted Authorities: ROLE_superadmin, ROLE_ADMIN
         LONG_POLL_DATA=[com.serotonin.m2m2.web.dwr.longPoll.LongPollData@360ca62, com.serotonin.m2m2.web.dwr.longPoll.LongPollData@8d8250d, com.serotonin.m2m2.web.dwr.longPoll.LongPollData@4c78eef5, com.serotonin.m2m2.web.dwr.longPoll.LongPollData@1df20e14]
      
      
      CONTEXT ATTRIBUTES
         org.eclipse.jetty.server.webapp.ContainerIncludeJarPattern=.*\.jar$
         DwrContainer=org.directwebremoting.impl.DefaultContainer@11ab28ec
         LocalDeviceDwr=com.serotonin.ma.bacnet.device.LocalDeviceDwr@309ec473
         constants.EventType.EventTypeNames.AUDIT=AUDIT
         constants.SystemEventType.TYPE_USER_LOGIN=USER_LOGIN
         constants.Permissions.DataPointAccessTypes.READ=1
         org.directwebremoting.ContainerList=[org.directwebremoting.impl.DefaultContainer@11ab28ec]
         constants.DataTypes.BINARY=1
         constants.UserComment.TYPE_EVENT=1
         constants.SystemEventType.TYPE_SYSTEM_STARTUP=SYSTEM_STARTUP
         constants.SystemEventType.TYPE_REJECTED_WORK_ITEM=REJECTED_WORK_ITEM
         constants.AuditEventType.TYPE_EVENT_DETECTOR=EVENT_DETECTOR
         javax.servlet.ServletConfig=org.eclipse.jetty.servlet.ServletHolder$Config@3482d47c
         javax.servlet.http.HttpServlet=org.directwebremoting.servlet.DwrServlet@31342b54
         org.eclipse.jetty.tmpdirConfigured=true
         constants.EventType.EventTypeNames.DATA_POINT=DATA_POINT
         clientSideMessages={common.alarmLevel.lifeSafety=com.serotonin.m2m2.i18n.TranslatableMessage@1c71626, common.disabled=com.serotonin.m2m2.i18n.TranslatableMessage@be9bfeff, header.mute=com.serotonin.m2m2.i18n.TranslatableMessage@43df3cba, header.unmute=com.serotonin.m2m2.i18n.TranslatableMessage@d635aa93, common.alarmLevel.critical=com.serotonin.m2m2.i18n.TranslatableMessage@2b076d7, js.help.related=com.serotonin.m2m2.i18n.TranslatableMessage@3dce6ae3, js.help.lastUpdated=com.serotonin.m2m2.i18n.TranslatableMessage@729293fd, js.email.addAddress=com.serotonin.m2m2.i18n.TranslatableMessage@cbb9a38a, js.help.error=com.serotonin.m2m2.i18n.TranslatableMessage@f876c0, js.email.addUser=com.serotonin.m2m2.i18n.TranslatableMessage@49cc77b5, js.email.addMailingList=com.serotonin.m2m2.i18n.TranslatableMessage@6fa4a69f, js.email.noRecipForEmail=com.serotonin.m2m2.i18n.TranslatableMessage@4b694592, common.access.set=com.serotonin.m2m2.i18n.TranslatableMessage@a3e5309b, common.access.read=com.serotonin.m2m2.i18n.TranslatableMessage@d8bff83d, common.loading=com.serotonin.m2m2.i18n.TranslatableMessage@cf5f0419, common.sendTestEmail=com.serotonin.m2m2.i18n.TranslatableMessage@8fd89c9f, common.disabledToggle=com.serotonin.m2m2.i18n.TranslatableMessage@d7f89333, common.alarmLevel.none=com.serotonin.m2m2.i18n.TranslatableMessage@223c1a70, common.administrator=com.serotonin.m2m2.i18n.TranslatableMessage@a467f3ea, common.enabledToggle=com.serotonin.m2m2.i18n.TranslatableMessage@ea5c2f12, common.alarmLevel.urgent=com.serotonin.m2m2.i18n.TranslatableMessage@8fa9c879, common.minimize=com.serotonin.m2m2.i18n.TranslatableMessage@5d740b21, js.email.noRecipients=com.serotonin.m2m2.i18n.TranslatableMessage@d78563d2, common.user=com.serotonin.m2m2.i18n.TranslatableMessage@8a9479ce, events.silence=com.serotonin.m2m2.i18n.TranslatableMessage@8376c0ac, js.email.testSent=com.serotonin.m2m2.i18n.TranslatableMessage@f59d9881, common.alarmLevel.ignore=com.serotonin.m2m2.i18n.TranslatableMessage@7a97f30a, common.maximize=com.serotonin.m2m2.i18n.TranslatableMessage@c752a74f, common.alarmLevel.doNotLog=com.serotonin.m2m2.i18n.TranslatableMessage@9d8a4f14, events.unsilence=com.serotonin.m2m2.i18n.TranslatableMessage@29ad6533, common.alarmLevel.info=com.serotonin.m2m2.i18n.TranslatableMessage@2239cfe6}
         constants.SystemEventType.TYPE_SET_POINT_HANDLER_FAILURE=SET_POINT_HANDLER_FAILURE
         MangoApiSystemSettingsDwr=com.infiniteautomation.mangoApi.web.MangoApiSystemSettingsDwr@799089d6
         constants.DataTypes.ALPHANUMERIC=4
         constants.Permissions.DataPointAccessTypes.ADMIN=4
         constants.Permissions.DataPointAccessTypes.SET=2
         constants.AuditEventType.TYPE_DATA_SOURCE=DATA_SOURCE
         constants.SystemEventType.TYPE_EMAIL_SEND_FAILURE=EMAIL_SEND_FAILURE
         constants.SystemEventType.TYPE_UPGRADE_CHECK=UPGRADE_CHECK
         constants.Permissions.DataPointAccessTypes.NONE=0
         org.directwebremoting.impl.ServerContext=org.directwebremoting.impl.DefaultServerContext@3f6b67cb
         constants.EventType.EventTypeNames.PUBLISHER=PUBLISHER
         org.eclipse.jetty.containerInitializers=[ContainerInitializer{org.eclipse.jetty.apache.jsp.JettyJasperInitializer,interested=[],applicable=[],annotated=[]}]
         org.eclipse.jetty.server.Executor=qtp1324514662{STARTED,10<=10<=200,i=6,q=0}
         constants.EventType.EventTypeNames.DATA_SOURCE=DATA_SOURCE
         constants.SystemEventType.TYPE_LICENSE_CHECK=LICENSE_CHECK
         org.springframework.web.context.WebApplicationContext.ROOT=Root WebApplicationContext: startup date [Mon Feb 18 15:00:31 EST 2019]; root of context hierarchy
         org.springframework.web.context.support.ServletContextScope=org.springframework.web.context.support.ServletContextScope@1de8756e
         constants.SystemEventType.TYPE_SYSTEM_SHUTDOWN=SYSTEM_SHUTDOWN
         SystemSettingsDwr=com.serotonin.m2m2.web.dwr.SystemSettingsDwr@d16830c
         mangoMessageKeys=[Ljava.lang.String;@38290674
         org.directwebremoting.WebContextFactory$WebContextBuilder=org.directwebremoting.impl.DefaultWebContextBuilder@140411b3
         org.apache.jasper.runtime.JspApplicationContextImpl=org.apache.jasper.runtime.JspApplicationContextImpl@4a994558
         javax.servlet.context.tempdir=C:\EnsureSmart\work
         constants.DataTypes.MULTISTATE=2
         org.apache.tomcat.InstanceManager=org.apache.tomcat.SimpleInstanceManager@732ea1e4
         org.apache.catalina.jsp_classpath=C:\EnsureSmart\web\modules\sqlConsole\classes;C:\EnsureSmart\web\modules\sqlConsole\lib\m2m2-sqlConsole-1.6.0.jar;C:\EnsureSmart\web\modules\sstGraphics\classes;C:\EnsureSmart\web\modules\sstGraphics\lib\m2m2-sstGraphics-1.2.0.jar;C:\EnsureSmart\web\modules\TCPIP\classes;C:\EnsureSmart\web\modules\TCPIP\lib\m2m2-TCPIP-1.2.0.jar;C:\EnsureSmart\web\modules\dataPointDetailsView\classes;C:\EnsureSmart\web\modules\dataPointDetailsView\lib\m2m2-dataPointDetailsView-1.1.0.jar;C:\EnsureSmart\web\modules\jsonFileImport\classes;C:\EnsureSmart\web\modules\jsonFileImport\lib\m2m2-jsonFileImport-1.2.2.jar;C:\EnsureSmart\web\modules\mbus\classes;C:\EnsureSmart\web\modules\mbus\lib\commons-beanutils-1.8.3.jar;C:\EnsureSmart\web\modules\mbus\lib\commons-collections-3.2.2.jar;C:\EnsureSmart\web\modules\mbus\lib\commons-lang-2.5.jar;C:\EnsureSmart\web\modules\mbus\lib\commons-logging-1.1.1.jar;C:\EnsureSmart\web\modules\mbus\lib\ezmorph-1.0.6.jar;C:\EnsureSmart\web\modules\mbus\lib\json-lib-2.4-jdk15.jar;C:\EnsureSmart\web\modules\mbus\lib\m2m2-mbus-1.2.0.jar;C:\EnsureSmart\web\modules\mbus\lib\mbus4j-core-1.0.0.jar;C:\EnsureSmart\web\modules\mbus\lib\mbus4j-master-1.0.0.jar;C:\EnsureSmart\web\modules\mbus\lib\spsw-java-0.0.7.jar;C:\EnsureSmart\web\modules\twilio\classes;C:\EnsureSmart\web\modules\twilio\lib\m2m2-twilio-1.2.0.jar;C:\EnsureSmart\web\modules\twilio\lib\twilio-java-sdk-3.4.1-jar-with-dependencies.jar;C:\EnsureSmart\web\modules\pop3\classes;C:\EnsureSmart\web\modules\pop3\lib\m2m2-pop3-1.6.0.jar;C:\EnsureSmart\web\modules\vmstat\classes;C:\EnsureSmart\web\modules\vmstat\lib\m2m2-vmstat-1.6.0.jar;C:\EnsureSmart\web\modules\egauge\classes;C:\EnsureSmart\web\modules\egauge\lib\m2m2-egauge-1.2.0.jar;C:\EnsureSmart\web\modules\scripting\classes;C:\EnsureSmart\web\modules\scripting\lib\m2m2-scripting-1.2.0.jar;C:\EnsureSmart\web\modules\opcda\classes;C:\EnsureSmart\web\modules\opcda\lib\j-interop-2.0.10.jar;C:\EnsureSmart\web\modules\opcda\lib\j-interopdeps-2.01.jar;C:\EnsureSmart\web\modules\opcda\lib\jcifs-1.2.19.jar;C:\EnsureSmart\web\modules\opcda\lib\m2m2-opcda-1.7.0.jar;C:\EnsureSmart\web\modules\opcda\lib\org.openscada.opc.dcom_0.7.0.201203290910.jar;C:\EnsureSmart\web\modules\opcda\lib\org.openscada.opc.lib_0.9.0.201203290910.jar;C:\EnsureSmart\web\modules\opcda\lib\org.openscada.utils_0.17.0.201203290908.jar;C:\EnsureSmart\web\modules\loggingConsole\classes;C:\EnsureSmart\web\modules\loggingConsole\lib\m2m2-loggingConsole-1.2.0.jar;C:\EnsureSmart\web\modules\asciiFile\classes;C:\EnsureSmart\web\modules\asciiFile\lib\m2m2-asciiFile-1.3.0.jar;C:\EnsureSmart\web\modules\dashboards\classes;C:\EnsureSmart\web\modules\dashboards\lib\m2m2-dashboards-3.3.1.jar;C:\EnsureSmart\web\modules\dataImport\classes;C:\EnsureSmart\web\modules\dataImport\lib\m2m2-dataImport-1.5.0.jar;C:\EnsureSmart\web\modules\serial\classes;C:\EnsureSmart\web\modules\serial\lib\m2m2-serial-1.3.0.jar;C:\EnsureSmart\web\modules\onewire\classes;C:\EnsureSmart\web\modules\onewire\lib\m2m2-onewire-1.6.0.jar;C:\EnsureSmart\web\modules\onewire\lib\OneWireAPI.jar;C:\EnsureSmart\web\modules\onewire\lib\RXTXcomm.jar;C:\EnsureSmart\web\modules\ssh\classes;C:\EnsureSmart\web\modules\ssh\lib\jsch-0.1.51.jar;C:\EnsureSmart\web\modules\ssh\lib\m2m2-ssh-1.2.0.jar;C:\EnsureSmart\web\modules\sstGlobalScripts\classes;C:\EnsureSmart\web\modules\sstGlobalScripts\lib\m2m2-sstGlobalScripts-1.6.0.jar;C:\EnsureSmart\web\modules\BACnet\classes;C:\EnsureSmart\web\modules\BACnet\lib\bacnet4j-3.2.4.jar;C:\EnsureSmart\web\modules\BACnet\lib\m2m2-BACnet-2.3.0.jar;C:\EnsureSmart\web\modules\mangoApi\classes;C:\EnsureSmart\web\modules\mangoApi\lib\apache-log4j-extras-1.2.17.jar;C:\EnsureSmart\web\modules\mangoApi\lib\m2m2-mangoApi-1.2.1.jar;C:\EnsureSmart\web\modules\modbus\classes;C:\EnsureSmart\web\modules\modbus\lib\m2m2-modbus-1.8.0.jar;C:\EnsureSmart\web\modules\modbus\lib\modbus4j-3.0.3.jar;C:\EnsureSmart\web\modules\excelReports\classes;C:\EnsureSmart\web\modules\excelReports\lib\m2m2-excelReports-1.1.2.jar;C:\EnsureSmart\web\modules\dglux\classes;C:\EnsureSmart\web\modules\dglux\lib\gentlyWEB-utils-1.1.jar;C:\EnsureSmart\web\modules\dglux\lib\JoSQL-2.2.jar;C:\EnsureSmart\web\modules\dglux\lib\m2m2-dglux-1.4.0.jar;C:\EnsureSmart\web\modules\virtualDS\classes;C:\EnsureSmart\web\modules\virtualDS\lib\m2m2-virtualDS-1.6.1.jar;C:\EnsureSmart\web\modules\scheduledEvents\classes;C:\EnsureSmart\web\modules\scheduledEvents\lib\m2m2-scheduledEvents-1.6.0.jar;C:\EnsureSmart\web\modules\jspViews\classes;C:\EnsureSmart\web\modules\jspViews\lib\m2m2-jspViews-2.2.0.jar;C:\EnsureSmart\web\modules\log4jDS\classes;C:\EnsureSmart\web\modules\log4jDS\lib\m2m2-log4jDS-1.2.0.jar;C:\EnsureSmart\web\modules\snmp\classes;C:\EnsureSmart\web\modules\snmp\lib\m2m2-snmp-1.6.0.jar;C:\EnsureSmart\web\modules\snmp\lib\SNMP4J.jar;C:\EnsureSmart\web\modules\pointLinks\classes;C:\EnsureSmart\web\modules\pointLinks\lib\m2m2-pointLinks-1.6.0.jar;C:\EnsureSmart\web\modules\sqlds\classes;C:\EnsureSmart\web\modules\sqlds\lib\m2m2-sqlds-1.7.0.jar;C:\EnsureSmart\web\modules\controlcore\classes;C:\EnsureSmart\web\modules\controlcore\lib\m2m2-controlcore-1.2.0.jar;C:\EnsureSmart\web\modules\meta\classes;C:\EnsureSmart\web\modules\meta\lib\m2m2-meta-2.3.0.jar;C:\EnsureSmart\web\modules\dnp3\classes;C:\EnsureSmart\web\modules\dnp3\lib\dnp34j.jar;C:\EnsureSmart\web\modules\dnp3\lib\m2m2-dnp3-1.7.0.jar;C:\EnsureSmart\web\modules\maintenanceEvents\classes;C:\EnsureSmart\web\modules\maintenanceEvents\lib\m2m2-maintenanceEvents-1.6.0.jar;C:\EnsureSmart\web\modules\graphicalViews\classes;C:\EnsureSmart\web\modules\graphicalViews\lib\m2m2-graphicalViews-1.7.0.jar;C:\EnsureSmart\web\modules\persistent\classes;C:\EnsureSmart\web\modules\persistent\lib\m2m2-persistent-1.7.2.jar;C:\EnsureSmart\web\modules\templateConfig\classes;C:\EnsureSmart\web\modules\templateConfig\lib\m2m2-templateConfig-1.1.0.jar;C:\EnsureSmart\web\modules\internal\classes;C:\EnsureSmart\web\modules\internal\lib\m2m2-internal-1.6.2.jar;C:\EnsureSmart\web\modules\http\classes;C:\EnsureSmart\web\modules\http\lib\m2m2-http-1.6.2.jar;C:\EnsureSmart\web\modules\log4JReset\classes;C:\EnsureSmart\web\modules\log4JReset\lib\m2m2-log4JReset-1.2.0.jar;C:\EnsureSmart\web\modules\reports\classes;C:\EnsureSmart\web\modules\reports\lib\m2m2-reports-2.3.2.jar;C:\EnsureSmart\web\modules\dataFile\classes;C:\EnsureSmart\web\modules\dataFile\lib\jaxb-api.jar;C:\EnsureSmart\web\modules\dataFile\lib\jaxb-core.jar;C:\EnsureSmart\web\modules\dataFile\lib\jaxb-impl.jar;C:\EnsureSmart\web\modules\dataFile\lib\jaxb-jxc.jar;C:\EnsureSmart\web\modules\dataFile\lib\jaxb-xjc.jar;C:\EnsureSmart\web\modules\dataFile\lib\m2m2-dataFile-1.2.0.jar;C:\EnsureSmart\web\modules\watchlists\classes;C:\EnsureSmart\web\modules\watchlists\lib\m2m2-watchlists-1.8.0.jar
         constants.UserComment.TYPE_POINT=2
         org.directwebremoting.Container=org.directwebremoting.impl.DefaultContainer@11ab28ec
         constants.DataTypes.IMAGE=5
         org.apache.jasper.compiler.TldCache=org.apache.jasper.compiler.TldCache@286acdad
         org.springframework.web.servlet.FrameworkServlet.CONTEXT.springDispatcher=WebApplicationContext for namespace 'springDispatcher-servlet': startup date [Mon Feb 18 15:00:34 EST 2019]; parent: Root WebApplicationContext
         constants.Permissions.DataPointAccessTypes.DATA_SOURCE=3
         constants.EventType.EventTypeNames.SYSTEM=SYSTEM
         constants.SystemEventType.TYPE_PROCESS_FAILURE=PROCESS_FAILURE
         constants.AuditEventType.TYPE_DATA_POINT=DATA_POINT
         constants.SystemEventType.TYPE_MAX_ALARM_LEVEL_CHANGED=MAX_ALARM_LEVEL_CHANGED
         constants.DataTypes.NUMERIC=3
         constants.Common.NEW_ID=-1
         MiscDwr=com.serotonin.m2m2.web.dwr.MiscDwr@1c57d89a
         constants.AuditEventType.TYPE_EVENT_HANDLER=EVENT_HANDLER
      
      posted in Mango Automation general Discussion
      B
      Brad_GMI
    • Corrupt H2 Database

      Good Afternoon All,

      I am receiving this error on one of our client systems in the field:

      File corrupted while reading record: "[360329] stream data key:16680 pos:11 remaining:0". Possible solution: use the recovery tool [90030-181] 90030/90030 (Help)

      Based on a quick search it looks like there are varying degrees of success in recovering the database file.

      Has anyone had any experience in recovering a Mango H2 database?

      Thanks!

      posted in Mango Automation general Discussion
      B
      Brad_GMI
    • RE: Mango persistent TCP

      I use an event detector on the last update of a data point that i know changes on a regular basis. So far, so good.

      posted in Mango Automation general Discussion
      B
      Brad_GMI
    • RE: 100% CPU after user login attempt

      This is a enterprise install with NoSQL.

      There are currently ~35 Persistent TCP datasources in this install.

      I did notice today that the datasource page will not load the datasources, but the dashboard and datapoints pages appear to be displaying the data properly.

      I'm going to check an older database and see if that helps.

      posted in Mango Automation general Discussion
      B
      Brad_GMI
    • RE: 100% CPU after user login attempt

      It appears as though I am back in business. This has apparently been going on since July 5.

      I restored the backup from July 4 and all appears to be functioning.

      The database is sitting at 3 GB now. Any idea what would cause such a dramatic increase?

      Thank you for the assistance!

      posted in Mango Automation general Discussion
      B
      Brad_GMI
    • RE: 100% CPU after user login attempt

      Thanks for the information. I suspect that will get me going in the right direction.

      The lastest piece of the puzzle is the service will not shutdown.

      The server stops listening on 8080, but a portion of the persistent connections still remain connected according to netstat.

      If I kill the PID, I suspect the lock will not be released?

      posted in Mango Automation general Discussion
      B
      Brad_GMI
    • RE: 100% CPU after user login attempt

      This is version 2.8.

      The systems resides in an AWS EC2 instance. Currently the mah2.h2.db file is 12 GB.

      I don't have any additional event handling that I am aware of.

      Currently, there is a lock file that is hindering the web console.

      I'm not familiar with the H2 database, so I don't want to get to far away from home. If i move this lock file, I should be able to clean the event table?

      posted in Mango Automation general Discussion
      B
      Brad_GMI
    • 100% CPU after user login attempt

      Our central server is having an issue where, when a user attempts to login, CPU utilization grows until it reaches 100%.

      Occasionally, a user will be authorized, but nothing will load.

      This is one entry from a recent log that seems related:

      ERROR 2018-07-30 10:37:48,116 (com.serotonin.m2m2.rt.RuntimeManager.stopDataSourceShutdown:413) - Data source 'Zirkle Facility D' failed proper termination.
      org.springframework.dao.CannotAcquireLockException: PreparedStatementCallback; SQL [SELECT dp.id,dp.data,dp.xid,dp.dataSourceId,dp.name,dp.deviceName,dp.enabled,dp.pointFolderId,dp.loggingType,dp.intervalLoggingPeriodType,dp.intervalLog$
      SELECT dp.id,dp.data,dp.xid,dp.dataSourceId,dp.name,dp.deviceName,dp.enabled,dp.pointFolderId,dp.loggingType,dp.intervalLoggingPeriodType,dp.intervalLoggingPeriod,dp.intervalLoggingType,dp.tolerance,dp.purgeOverride,dp.purgeType,dp.purg$
      SELECT dp.id,dp.data,dp.xid,dp.dataSourceId,dp.name,dp.deviceName,dp.enabled,dp.pointFolderId,dp.loggingType,dp.intervalLoggingPeriodType,dp.intervalLoggingPeriod,dp.intervalLoggingType,dp.tolerance,dp.purgeOverride,dp.purgeType,dp.purg$
              at org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator.doTranslate(SQLErrorCodeSQLExceptionTranslator.java:259)
              at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:73)
              at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:645)
              at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:680)
              at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:712)
              at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:722)
              at com.serotonin.db.spring.ExtendedJdbcTemplate.queryForObject(ExtendedJdbcTemplate.java:39)
              at com.serotonin.db.DaoUtils.queryForObject(DaoUtils.java:332)
              at com.serotonin.m2m2.db.dao.AbstractBasicDao.get(AbstractBasicDao.java:549)
              at com.serotonin.m2m2.vo.permission.Permissions.hasEventTypePermission(Permissions.java:248)
              at com.serotonin.m2m2.rt.EventManager.deactivateEvents(EventManager.java:316)
              at com.serotonin.m2m2.rt.EventManager.cancelEventsForDataPoint(EventManager.java:529)
              at com.serotonin.m2m2.rt.dataImage.DataPointRT.terminate(DataPointRT.java:699)
              at com.serotonin.m2m2.rt.RuntimeManager.stopDataPointShutdown(RuntimeManager.java:561)
              at com.serotonin.m2m2.rt.RuntimeManager.stopDataSourceShutdown(RuntimeManager.java:402)
              at com.serotonin.m2m2.rt.DataSourceGroupTerminator$DataSourceSubGroupTerminator.run(DataSourceGroupTerminator.java:141)
              at com.serotonin.timer.TimerTask.runTask(TimerTask.java:148)
              at com.serotonin.timer.TimerTask.run(TimerTask.java:119)
              at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
              at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
              at java.lang.Thread.run(Thread.java:745)
      Caused by: org.h2.jdbc.JdbcSQLException: Timeout trying to lock table "DATAPOINTS"; SQL statement:
      SELECT dp.id,dp.data,dp.xid,dp.dataSourceId,dp.name,dp.deviceName,dp.enabled,dp.pointFolderId,dp.loggingType,dp.intervalLoggingPeriodType,dp.intervalLoggingPeriod,dp.intervalLoggingType,dp.tolerance,dp.purgeOverride,dp.purgeType,dp.purg$
              at org.h2.message.DbException.getJdbcSQLException(DbException.java:345)
              at org.h2.message.DbException.get(DbException.java:179)
              at org.h2.message.DbException.get(DbException.java:155)
              at org.h2.table.RegularTable.doLock1(RegularTable.java:504)
              at org.h2.table.RegularTable.lock(RegularTable.java:469)
              at org.h2.table.TableFilter.lock(TableFilter.java:146)
              at org.h2.command.dml.Select.queryWithoutCache(Select.java:630)
              at org.h2.command.dml.Query.query(Query.java:322)
              at org.h2.command.dml.Query.query(Query.java:290)
              at org.h2.command.dml.Query.query(Query.java:36)
              at org.h2.command.CommandContainer.query(CommandContainer.java:90)
              at org.h2.command.Command.executeQuery(Command.java:197)
              at org.h2.jdbc.JdbcPreparedStatement.executeQuery(JdbcPreparedStatement.java:108)
              at org.springframework.jdbc.core.JdbcTemplate$1.doInPreparedStatement(JdbcTemplate.java:688)
              at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:629)
              ... 18 more
      
      

      Any ideas?

      posted in Mango Automation general Discussion
      B
      Brad_GMI
    • Point Hierarchy in Report Template

      Is there a way to address the point hierarchy of a point in a report template?

      Based on what I can find in the code, I don't see any record of that information being based to the report module.

      posted in Mango Automation general Discussion
      B
      Brad_GMI
    • Overriding the dateRangePicker

      We have been testing and refining our dashboard setup for around three months now and have resolved most of the user feedback.

      The biggest and final complaint we have left to resolve is the chart complexity.

      All of the users would prefer to have less options in the date range drop down, and no roll up data.

      From what I can tell, a good bit of this work is done in the dateBar and dateRangePicker components.

      To achieve the goal above, is the best path forward to override the components of the mdAdmin template, or is there a simpler path?

      posted in Mango Automation general Discussion
      B
      Brad_GMI
    • RE: Persistent TCP Publisher Sync Issue

      The updated system exports with no errors. I'll try a different system on 2.7.1 and see what it does.

      posted in Mango Automation general Discussion
      B
      Brad_GMI
    • RE: Persistent TCP Publisher Sync Issue

      So I bit the bullet and updated the install to 2.8.6.

      As of now, the system is syncing every 5 minutes without issue.

      posted in Mango Automation general Discussion
      B
      Brad_GMI
    • RE: Persistent TCP Publisher Sync Issue

      Here is a sample from the receiving side:

      DEBUG 2017-03-07 14:58:11,107 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler.runImpl:546) - /<IP Address>:<port>: ensuring point LGCY_OZ2_PB2_PDM, index: 468
      DEBUG 2017-03-07 14:58:11,107 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler.ensurePointV5:788) - /<IP Address>:<port>: ensuring point LGCY_OZ2_PB2_PDM
      DEBUG 2017-03-07 14:58:11,107 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler.ensurePointV5:796) - /<IP Address>:<port>: point LGCY_OZ2_PB2_PDM already exists in RT list
      DEBUG 2017-03-07 14:58:11,107 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler.updatePointV5:853) - /<IP Address>:<port>: saving point LGCY_OZ2_PB2_PDM updates
      DEBUG 2017-03-07 14:58:11,108 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler.runImpl:556) - /<IP Address>:<port>: confirmed LGCY_OZ2_PB2_PDM with client
      INFO  2017-03-07 14:58:11,108 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler.runImpl:565) - /<IP Address>:<port>: point init done
      DEBUG 2017-03-07 14:58:11,505 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler.updatePointHierarchy:927) - /<IP Address>:<port>: updatePointHierarchy
      DEBUG 2017-03-07 14:58:11,513 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler.updatePointHierarchy:934) - /<IP Address>:<port>: updatePointHierarchy: count=468
      DEBUG 2017-03-07 14:58:11,523 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler.updatePointHierarchy:990) - /<IP Address>:<port>: updatePointHierarchy: done
      DEBUG 2017-03-07 14:58:42,618 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler.runImpl:670) - /<IP Address>:<port>: Received test packet
      DEBUG 2017-03-07 14:59:42,594 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler.runImpl:670) - /<IP Address>:<port>: Received test packet
      DEBUG 2017-03-07 15:00:22,831 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler$RangeCountHandler.runImpl:1060) - /<IP Address>:<port>: Processing range count request: id=0 from task: 0, pointId=1801, xid=LGCY_OZ1_RM12_OFF, from=1488916230001, to=1488916500000
      DEBUG 2017-03-07 15:00:22,831 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler$RangeCountHandler.run:1030) - /<IP Address>:<port>: Finished range count request 0 from task: 0
      DEBUG 2017-03-07 15:00:22,831 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler$RangeCountHandler.runImpl:1060) - /<IP Address>:<port>: Processing range count request: id=0 from task: 2, pointId=1893, xid=LGCY_OZ2_RM13_CONC, from=1488916230001, to=1488916500000
      DEBUG 2017-03-07 15:00:22,831 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler$RangeCountHandler.runImpl:1060) - /<IP Address>:<port>: Processing range count request: id=0 from task: 1, pointId=1847, xid=LGCY_OZ3_PB_PDM, from=1488916230001, to=1488916500000
      DEBUG 2017-03-07 15:00:22,832 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler$RangeCountHandler.run:1030) - /<IP Address>:<port>: Finished range count request 0 from task: 1
      DEBUG 2017-03-07 15:00:22,835 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler$RangeCountHandler.run:1030) - /<IP Address>:<port>: Finished range count request 0 from task: 2
      DEBUG 2017-03-07 15:00:22,835 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler$RangeCountHandler.runImpl:1060) - /<IP Address>:<port>: Processing range count request: id=0 from task: 5, pointId=2031, xid=LGCY_OZ1_RM5_DUTY, from=1488916230001, to=1488916500000
      DEBUG 2017-03-07 15:00:22,835 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler$RangeCountHandler.run:1030) - /<IP Address>:<port>: Finished range count request 0 from task: 5
      DEBUG 2017-03-07 15:00:22,836 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler$RangeCountHandler.runImpl:1060) - /<IP Address>:<port>: Processing range count request: id=0 from task: 7, pointId=2123, xid=LGCY_OZ3_RM8_INTR, from=1488916230001, to=1488916500000
      DEBUG 2017-03-07 15:00:22,836 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler$RangeCountHandler.runImpl:1060) - /<IP Address>:<port>: Processing range count request: id=0 from task: 9, pointId=2575, xid=LGCY_OZ2_PB2_PDM, from=1488916230001, to=1488916500000
      DEBUG 2017-03-07 15:00:22,836 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler$RangeCountHandler.run:1030) - /<IP Address>:<port>: Finished range count request 0 from task: 7
      DEBUG 2017-03-07 15:00:22,836 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler$RangeCountHandler.run:1030) - /<IP Address>:<port>: Finished range count request 0 from task: 9
      DEBUG 2017-03-07 15:00:22,836 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler$RangeCountHandler.runImpl:1060) - /<IP Address>:<port>: Processing range count request: id=0 from task: 4, pointId=1985, xid=LGCY_OZ3_RM3_INSTALLED, from=1488916230001, to=1488916500000
      DEBUG 2017-03-07 15:00:22,836 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler$RangeCountHandler.run:1030) - /<IP Address>:<port>: Finished range count request 0 from task: 4
      DEBUG 2017-03-07 15:00:22,837 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler$RangeCountHandler.runImpl:1060) - /<IP Address>:<port>: Processing range count request: id=0 from task: 6, pointId=2077, xid=LGCY_OZ2_RM6_SETPOINT, from=1488916230001, to=1488916500000
      DEBUG 2017-03-07 15:00:22,837 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler$RangeCountHandler.runImpl:1060) - /<IP Address>:<port>: Processing range count request: id=0 from task: 8, pointId=2169, xid=LGCY_OZ1_TD2_REFLAMP, from=1488916230001, to=1488916500000
      DEBUG 2017-03-07 15:00:22,837 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler$RangeCountHandler.run:1030) - /<IP Address>:<port>: Finished range count request 0 from task: 6
      DEBUG 2017-03-07 15:00:22,837 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler$RangeCountHandler.runImpl:1060) - /<IP Address>:<port>: Processing range count request: id=0 from task: 3, pointId=1939, xid=LGCY_OZ2_RM16_OFF, from=1488916230001, to=1488916500000
      DEBUG 2017-03-07 15:00:22,837 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler$RangeCountHandler.run:1030) - /<IP Address>:<port>: Finished range count request 0 from task: 8
      DEBUG 2017-03-07 15:00:22,837 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler$RangeCountHandler.run:1030) - /<IP Address>:<port>: Finished range count request 0 from task: 3
      DEBUG 2017-03-07 15:00:23,390 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler$RangeCountHandler.runImpl:1060) - /<IP Address>:<port>: Processing range count request: id=1 from task: 9, pointId=2574, xid=LGCY_OZ1_PB2_PDM, from=1488916230001, to=1488916500000
      DEBUG 2017-03-07 15:00:23,390 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler$RangeCountHandler.runImpl:1060) - /<IP Address>:<port>: Processing range count request: id=1 from task: 5, pointId=2030, xid=LGCY_OZ3_RM5_CONC, from=1488916230001, to=1488916500000
      DEBUG 2017-03-07 15:00:23,390 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler$RangeCountHandler.runImpl:1060) - /<IP Address>:<port>: Processing range count request: id=1 from task: 2, pointId=1892, xid=LGCY_OZ2_RM13_ABOVESP, from=1488916230001, to=1488916500000
      DEBUG 2017-03-07 15:00:23,390 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler$RangeCountHandler.runImpl:1060) - /<IP Address>:<port>: Processing range count request: id=1 from task: 7, pointId=2122, xid=LGCY_OZ2_RM8_INTR, from=1488916230001, to=1488916500000
      DEBUG 2017-03-07 15:00:23,390 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler$RangeCountHandler.run:1030) - /<IP Address>:<port>: Finished range count request 1 from task: 9
      DEBUG 2017-03-07 15:00:23,390 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler$RangeCountHandler.run:1030) - /<IP Address>:<port>: Finished range count request 1 from task: 7
      DEBUG 2017-03-07 15:00:23,390 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler$RangeCountHandler.runImpl:1060) - /<IP Address>:<port>: Processing range count request: id=1 from task: 1, pointId=1846, xid=LGCY_OZ2_PB_PDM, from=1488916230001, to=1488916500000
      DEBUG 2017-03-07 15:00:23,390 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler$RangeCountHandler.run:1030) - /<IP Address>:<port>: Finished range count request 1 from task: 2
      DEBUG 2017-03-07 15:00:23,390 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler$RangeCountHandler.run:1030) - /<IP Address>:<port>: Finished range count request 1 from task: 5
      DEBUG 2017-03-07 15:00:23,390 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler$RangeCountHandler.run:1030) - /<IP Address>:<port>: Finished range count request 1 from task: 1
      DEBUG 2017-03-07 15:00:23,390 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler$RangeCountHandler.runImpl:1060) - /<IP Address>:<port>: Processing range count request: id=1 from task: 0, pointId=1800, xid=LGCY_OZ1_RM12_INTR, from=1488916230001, to=1488916500000
      DEBUG 2017-03-07 15:00:23,391 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler$RangeCountHandler.run:1030) - /<IP Address>:<port>: Finished range count request 1 from task: 0
      DEBUG 2017-03-07 15:00:23,391 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler$RangeCountHandler.runImpl:1060) - /<IP Address>:<port>: Processing range count request: id=1 from task: 6, pointId=2076, xid=LGCY_OZ1_RM6_SETPOINT, from=1488916230001, to=1488916500000
      DEBUG 2017-03-07 15:00:23,391 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler$RangeCountHandler.runImpl:1060) - /<IP Address>:<port>: Processing range count request: id=1 from task: 3, pointId=1938, xid=LGCY_OZ1_RM16_OFF, from=1488916230001, to=1488916500000
      DEBUG 2017-03-07 15:00:23,391 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler$RangeCountHandler.runImpl:1060) - /<IP Address>:<port>: Processing range count request: id=1 from task: 8, pointId=2168, xid=LGCY_OZ3_TD2_COMOK, from=1488916230001, to=1488916500000
      DEBUG 2017-03-07 15:00:23,391 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler$RangeCountHandler.run:1030) - /<IP Address>:<port>: Finished range count request 1 from task: 6
      DEBUG 2017-03-07 15:00:23,391 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler$RangeCountHandler.run:1030) - /<IP Address>:<port>: Finished range count request 1 from task: 8
      DEBUG 2017-03-07 15:00:23,391 (com.serotonin.m2m2.persistent.ds.PersistentDataSourceRT$TcpConnectionHandler$RangeCountHandler.run:1030) - /<IP Address>:<port>: Finished range count request 1 from task: 3
      

      No failures to note as of yet. I'll stretch the timeouts and see if that helps.

      posted in Mango Automation general Discussion
      B
      Brad_GMI
    • RE: Persistent TCP Publisher Sync Issue

      It is currently set to 5 min.

      I enabled the debug log and it shows a pattern similar to this:

      .m2m2.persistent.pub.SyncHandler$PointSync.run:277) - Points completed: 420
      INFO  2017-03-03 07:10:22,130 (com.serotonin.m2m2.persistent.pub.SyncHandler$PointSync.run:248) - Points left: 48
      INFO  2017-03-03 07:10:22,130 (com.serotonin.m2m2.persistent.pub.SyncHandler$PointSync.checkPoint:306) - PointSync[4](OZ2_RM16_SETPOINT) starting from saved time at 1488553259001
      DEBUG 2017-03-03 07:10:22,130 (com.serotonin.m2m2.persistent.pub.SyncHandler.sendRequest:178) - PointSync[4](OZ2_RM16_SETPOINT) Sending request with id: 42
      DEBUG 2017-03-03 07:10:22,130 (com.serotonin.m2m2.persistent.pub.SyncHandler$PointSync.checkRangeImpl:406) - PointSync[4](OZ2_RM16_SETPOINT/0.0/42) locally counted 0 rows in 0ms, from=1488553259001, to=1488553500002
      DEBUG 2017-03-03 07:10:22,130 (com.serotonin.m2m2.persistent.pub.SyncHandler$PointSync.checkRangeImpl:420) - PointSync[4](OZ2_RM16_SETPOINT/0.0/42) didn't recieve response in time.  Forced to wait up to 1200000ms
      DEBUG 2017-03-03 07:10:22,687 (com.serotonin.m2m2.persistent.pub.SyncHandler$PointSync.responseReceived:532) - PointSync[6](OZ2_RM5_HIGHFLOW) Received response with id: 42
      DEBUG 2017-03-03 07:10:22,687 (com.serotonin.m2m2.persistent.pub.PersistentSendThread.sendRealTime:452) - Sending datapoint with index: 102
      DEBUG 2017-03-03 07:10:22,687 (com.serotonin.m2m2.persistent.pub.PersistentSendThread.sendRealTime:452) - Sending datapoint with index: 205
      DEBUG 2017-03-03 07:10:22,687 (com.serotonin.m2m2.persistent.pub.PersistentSendThread.sendRealTime:452) - Sending datapoint with index: 232
      

      A large number of Sending data point with index x, and on occasion the forced to wait.

      This particular client is running 2.7.10. I cannot update this particular unit without a lot of pain.

      posted in Mango Automation general Discussion
      B
      Brad_GMI
    • Persistent TCP Publisher Sync Issue

      Good Evening Everyone,

      I am having a bit of difficulty getting the Mango Persistent TCP Publisher and Datasource to sync properly.

      The local data source has 288 entries for March 1, however the Persistent TCP Datasource only shows the following:

      50	Mar 01 22:00	
      53	Mar 01 21:55	
      49	Mar 01 17:10	
      57	Mar 01 17:05	
      49	Mar 01 12:20	
      48	Mar 01 12:15	
      47	Mar 01 07:30	
      52	Mar 01 07:25	
      56	Mar 01 02:45	
      58	Mar 01 02:40	
      

      The cron statement for the Publisher is set like so:

      * 0/5 * * * ?
      

      I have tried several settings in the 'Synchronize history prior to' with no improvement.

      Any ideas?

      Thanks!

      posted in Mango Automation general Discussion
      B
      Brad_GMI
    • Manual Upgrade

      I have a Mango install deployed in South Africa that is having difficulty completing the downloads required to upgrade the system to the latest module versions.

      Is there a way to perform an upgrade manually?

      posted in User help
      B
      Brad_GMI
    • RE: Event Handler Email Format

      @phildunlap Thanks Phil,

      I wrote an excel sheet that automated the alias generation.

      I'll check out that ftl file and see what I can do.

      posted in Mango Automation general Discussion
      B
      Brad_GMI
    • Event Handler Email Format

      Good Morning Everyone,

      I'm working on getting the event dectection/handling for equipment faults operational in our main Mango installation.

      So far the detectors are working great and sending out an email when needed.

      However, all the systems we have reporting in have the same data point template, so I cannot tell which system has the issue.

      For example:

      0_1483372561215_Capture.PNG

      Is there a simple way to distinguish between the points that I am missing? The alias field works, but I have to manually generate those.

      Also, is there a way to edit the email format similar to the way reports are done?

      posted in Mango Automation general Discussion
      B
      Brad_GMI
    • RE: override logo doesn't replace logo on report emails

      Arg. Helps to read the whole post. Reading Comprehension 101.

      posted in User help
      B
      Brad_GMI