• B
    Brad_GMI

    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 read more
  • B
    Brad_GMI

    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 read more
  • B
    Brad_GMI

    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 read more
  • B
    Brad_GMI

    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 read more
  • B
    Brad_GMI

    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 read more
  • B
    Brad_GMI

    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 read more
  • B
    Brad_GMI

    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 read more
  • B
    Brad_GMI

    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 read more
  • B
    Brad_GMI

    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 read more
  • B
    Brad_GMI

    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 read more