Skip to content

api endpoint tsgrouprefs gives an error #456

@wjonassen

Description

@wjonassen

Describe the bug
When you hit the api endpoint for tsgrouprefs, you get an error.

To Reproduce
Steps to reproduce the behavior:

  1. In your browser navigate to the tsgrouprefs endpoint.
    https://localhost:8080/tsgrouprefs

Expected behavior
You would receive a json object of the ts group refs, instead there is an error:

Here is the error:
10-Apr-2025 11:53:40.194 WARNING [http-nio-8080-exec-72] org.opendcs.odcsapi.res.AppExceptionMapper.handle There was an error. Please contact your sys admin.
org.opendcs.odcsapi.dao.DbException: Unable to retrieve time series group references
at org.opendcs.odcsapi.res.TimeSeriesResources.getTsGroupRefs(TimeSeriesResources.java:696)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory.lambda$static$0(ResourceMethodInvocationHandlerFactory.java:52)
at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:146)
at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:189)
at org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$ResponseOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:176)
at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:93)
at org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:478)
at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:400)
at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:81)
at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:256)
at org.glassfish.jersey.internal.Errors$1.call(Errors.java:248)
at org.glassfish.jersey.internal.Errors$1.call(Errors.java:244)
at org.glassfish.jersey.internal.Errors.process(Errors.java:292)
at org.glassfish.jersey.internal.Errors.process(Errors.java:274)
at org.glassfish.jersey.internal.Errors.process(Errors.java:244)
at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:265)
at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:235)
at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:684)
at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:394)
at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:346)
at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:358)
at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:311)
at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:205)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:212)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:156)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:181)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:156)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:168)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:483)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:679)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:617)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:932)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1694)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)
at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:748)
Caused by: decodes.tsdb.DbIoException: Error filling TsGroup cache.
at opendcs.dao.TsGroupDAO.fillCache(TsGroupDAO.java:620)
at opendcs.dao.TsGroupDAO.getTsGroupList(TsGroupDAO.java:276)
at org.opendcs.odcsapi.res.TimeSeriesResources.getTsGroupRefs(TimeSeriesResources.java:692)
... 48 more
Caused by: java.sql.SQLException: Unable to get timeseries identified for group member.
at opendcs.dao.TsGroupDAO.lambda$fillCache$7(TsGroupDAO.java:546)
at opendcs.dao.DaoBase.lambda$doQuery$2(DaoBase.java:578)
at opendcs.dao.DaoBase.lambda$withStatement$1(DaoBase.java:455)
at opendcs.dao.DaoBase.withConnection(DaoBase.java:427)
at opendcs.dao.DaoBase.withStatement(DaoBase.java:447)
at opendcs.dao.DaoBase.doQuery(DaoBase.java:573)
at opendcs.dao.TsGroupDAO.lambda$fillCache$12(TsGroupDAO.java:516)
at opendcs.dao.DaoBase.inTransaction(DaoBase.java:816)
at opendcs.dao.TsGroupDAO.fillCache(TsGroupDAO.java:495)
... 50 more
Caused by: decodes.tsdb.DbIoException: Error reading TS_SPEC table: java.lang.NullPointerException
at opendcs.opentsdb.OpenTimeSeriesDAO.reloadTsIdCache(OpenTimeSeriesDAO.java:1382)
at opendcs.opentsdb.OpenTimeSeriesDAO.findTimeSeriesIdentifier(OpenTimeSeriesDAO.java:1993)
at opendcs.dao.TsGroupDAO.lambda$fillCache$7(TsGroupDAO.java:533)
... 58 more

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions