what does java.lang.IllegalStateException: The BDR is not started means?

1
0
-1

Hello !

Version 7.10.1

When I deploy my BDM in the portal, everything is ok.

But when I do a REST API to find a BDM value, I got this error

Caused by: java.lang.IllegalStateException: The BDR is not started
What does it means ?

The complete log:

12-May-2020 15:38:49.110 INFOS [http-nio-8080-exec-6] org.bonitasoft.engine.tenant.TenantStateManager.pause Pausing tenant 1
12-May-2020 15:38:49.112 INFOS [http-nio-8080-exec-6] org.bonitasoft.engine.tenant.TenantStateManager.pause Paused tenant 1
12-May-2020 15:39:08.021 INFOS [BonitaTaskExecutor] org.bonitasoft.engine.log.technical.TechnicalLoggerSLF4JImpl.log THREAD_ID=434 | HOSTNAME=Dragon-Pierre-Yves | Refreshing classloader with key: TENANT:1
12-May-2020 15:39:19.623 INFOS [http-nio-8080-exec-9] org.bonitasoft.engine.log.technical.TechnicalLoggerSLF4JImpl.log THREAD_ID=101 | HOSTNAME=Dragon-Pierre-Yves | Refreshing classloader with key: TENANT:1
12-May-2020 15:39:19.633 INFOS [http-nio-8080-exec-9] org.bonitasoft.engine.log.technical.TechnicalLoggerSLF4JImpl.log THREAD_ID=101 | HOSTNAME=Dragon-Pierre-Yves | TENANT_ID=1 | Updating classes: [com.company.providers.Contract, com.company.model.CustomerContract, com.company.model.Request, com.company.model.SatisfactionIndex, com.company.model.Supplier, com.company.model.Invoice, com.company.model.OBDEmployee, com.company.model.CustomerLocation, com.company.model.VacationRequest, com.company.admin.mail.MailTemplate, com.company.model.SupportCase, com.company.model.OBDPerson, com.company.providers.BankAccountDetails, com.company.model.OBDITLineItem1, com.company.model.Customer, com.company.model.VacationAvailable, com.company.model.CustomerAddress, com.company.providers.Provider, com.company.model.Quotation, com.company.model.OBDITLineItem, com.company.model.OBDITReqts, com.company.providers.Contact, com.company.model.Reporter]
12-May-2020 15:39:19.917 INFOS [http-nio-8080-exec-9] org.bonitasoft.engine.log.technical.TechnicalLoggerSLF4JImpl.log THREAD_ID=101 | HOSTNAME=Dragon-Pierre-Yves | TENANT_ID=1 | Update operation done
12-May-2020 15:39:32.162 INFOS [http-nio-8080-exec-4] org.bonitasoft.engine.tenant.TenantStateManager.resume Resuming tenant 1
12-May-2020 15:39:32.165 INFOS [http-nio-8080-exec-4] org.bonitasoft.engine.tenant.TenantStateManager.resume Resumed tenant 1
12-May-2020 15:39:39.586 GRAVE [http-nio-8080-exec-8] org.restlet.resource.ServerResource.doCatch Exception or error caught in server resource
org.bonitasoft.engine.exception.BonitaRuntimeException: USERNAME=install | java.lang.IllegalStateException: The BDR is not started
at org.bonitasoft.engine.api.impl.ServerAPIImpl.wrapThrowable(ServerAPIImpl.java:143)
at com.bonitasoft.engine.api.impl.ServerAPIExt.wrapThrowable(ServerAPIExt.java:39)
at org.bonitasoft.engine.api.impl.ServerAPIImpl.invokeMethod(ServerAPIImpl.java:131)
at org.bonitasoft.engine.api.impl.ClientInterceptor.invoke(ClientInterceptor.java:79)
at com.sun.proxy.$Proxy111.execute(Unknown Source)
at org.bonitasoft.web.rest.server.api.bdm.BusinessDataQueryResource.getProcessBusinessDataQuery(BusinessDataQueryResource.java:64)
at sun.reflect.GeneratedMethodAccessor103.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.restlet.resource.ServerResource.doHandle(ServerResource.java:511)
at org.restlet.resource.ServerResource.get(ServerResource.java:692)
at org.restlet.resource.ServerResource.doHandle(ServerResource.java:439)
at org.restlet.resource.ServerResource.doNegotiatedHandle(ServerResource.java:666)
at org.restlet.resource.ServerResource.handle(ServerResource.java:1022)
at org.restlet.resource.Finder.handle(Finder.java:236)
at org.restlet.routing.Filter.doHandle(Filter.java:150)
at org.restlet.routing.Filter.handle(Filter.java:197)
at org.restlet.routing.Router.doHandle(Router.java:422)
at org.restlet.routing.Router.handle(Router.java:641)
at org.restlet.routing.Filter.doHandle(Filter.java:150)
at org.restlet.routing.Filter.handle(Filter.java:197)
at org.restlet.routing.Filter.doHandle(Filter.java:150)
at org.restlet.routing.Filter.handle(Filter.java:197)
at org.restlet.routing.Filter.doHandle(Filter.java:150)
at org.restlet.engine.application.StatusFilter.doHandle(StatusFilter.java:140)
at org.restlet.routing.Filter.handle(Filter.java:197)
at org.restlet.routing.Filter.doHandle(Filter.java:150)
at org.restlet.routing.Filter.handle(Filter.java:197)
at org.restlet.engine.CompositeHelper.handle(CompositeHelper.java:202)
at org.restlet.engine.application.ApplicationHelper.handle(ApplicationHelper.java:77)
at org.restlet.Application.handle(Application.java:385)
at org.bonitasoft.web.rest.server.BonitaRestletApplication.handle(BonitaRestletApplication.java:191)
at org.restlet.routing.Filter.doHandle(Filter.java:150)
at org.restlet.routing.Filter.handle(Filter.java:197)
at org.restlet.routing.Router.doHandle(Router.java:422)
at org.restlet.routing.Router.handle(Router.java:641)
at org.restlet.routing.Filter.doHandle(Filter.java:150)
at org.restlet.routing.Filter.handle(Filter.java:197)
at org.restlet.routing.Router.doHandle(Router.java:422)
at org.restlet.routing.Router.handle(Router.java:641)
at org.restlet.routing.Filter.doHandle(Filter.java:150)
at org.restlet.routing.Filter.handle(Filter.java:197)
at org.restlet.engine.CompositeHelper.handle(CompositeHelper.java:202)
at org.restlet.Component.handle(Component.java:408)
at org.restlet.Server.handle(Server.java:507)
at org.restlet.engine.connector.ServerHelper.handle(ServerHelper.java:63)
at org.restlet.engine.adapter.HttpServerHelper.handle(HttpServerHelper.java:143)
at org.restlet.ext.servlet.ServerServlet.service(ServerServlet.java:1117)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.tuckey.web.filters.urlrewrite.RuleChain.handleRewrite(RuleChain.java:176)
at org.tuckey.web.filters.urlrewrite.RuleChain.doRules(RuleChain.java:145)
at org.tuckey.web.filters.urlrewrite.UrlRewriter.processRequest(UrlRewriter.java:92)
at org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:394)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.bonitasoft.console.common.server.login.filter.AbstractAuthorizationFilter.doFilter(AbstractAuthorizationFilter.java:61)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.bonitasoft.console.common.server.login.filter.AbstractAuthorizationFilter.doFilter(AbstractAuthorizationFilter.java:61)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.bonitasoft.console.common.server.filter.NoCacheFilter.doFilter(NoCacheFilter.java:51)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:528)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:798)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:810)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1500)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.IllegalStateException: The BDR is not started
at org.bonitasoft.engine.business.data.impl.JPABusinessDataRepositoryImpl.getEntityManager(JPABusinessDataRepositoryImpl.java:171)
at org.bonitasoft.engine.business.data.impl.JPABusinessDataRepositoryImpl.findListByNamedQuery(JPABusinessDataRepositoryImpl.java:317)
at org.bonitasoft.engine.business.data.impl.BusinessDataServiceImpl.getJsonQueryEntities(BusinessDataServiceImpl.java:327)
at org.bonitasoft.engine.business.data.impl.BusinessDataServiceImpl.getJsonQueryEntities(BusinessDataServiceImpl.java:59)
at org.bonitasoft.engine.command.GetBusinessDataByQueryCommand.execute(GetBusinessDataByQueryCommand.java:49)
at org.bonitasoft.engine.command.GetBusinessDataByQueryCommand.execute(GetBusinessDataByQueryCommand.java:27)
at org.bonitasoft.engine.api.impl.CommandAPIImpl.executeCommand(CommandAPIImpl.java:212)
at org.bonitasoft.engine.api.impl.CommandAPIImpl.execute(CommandAPIImpl.java:179)
at org.bonitasoft.engine.api.impl.CommandAPIImpl.execute(CommandAPIImpl.java:166)
at sun.reflect.GeneratedMethodAccessor120.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.bonitasoft.engine.api.impl.ServerAPIImpl.invokeAPI(ServerAPIImpl.java:427)
at org.bonitasoft.engine.api.impl.ServerAPIImpl.lambda$invokeAPIInTransaction$1(ServerAPIImpl.java:395)
at org.bonitasoft.engine.transaction.JTATransactionServiceImpl.executeInTransaction(JTATransactionServiceImpl.java:285)
at org.bonitasoft.engine.api.impl.ServerAPIImpl.invokeAPIInTransaction(ServerAPIImpl.java:391)
at org.bonitasoft.engine.api.impl.ServerAPIImpl.invokeAPI(ServerAPIImpl.java:265)
at org.bonitasoft.engine.api.impl.ServerAPIImpl.invokeMethod(ServerAPIImpl.java:121)
... 82 more

Here my BDM:
https://www.dropbox.com/s/uwxhyomrw74t1hy/bdm.zip?dl=0

2 answers

1
0
-1

Hello.

I create a process with an object of your BDM (reporter), started it, tried to access the object using the REST API -> It worked

Then I made a change to the BDM, redeployed, retried that. It still worked. Can you describe the steps to reproduce your issue?

1
0
-1

Hello.

The BDR is not started 

-> This means that the Business data repository is not started. This repository should be started when the tenant is started or resumed and a BDM is installed.

I don't hink it's related to the BDM itself. It is correctly deployed.

What is the version of your platform?

Have you more than one tenant?

Are you able to read/write in the BDM using processes operations?

Comments

Submitted by Pierre-yves Monnet on Fri, 05/15/2020 - 01:04

Bonita 7.10.1

One tenant

BDM is completely block. Only way to have back a platform :

* stop the studio

* remove all h2 files

* restart the studio

* redeploy everything

This occurs systematically when a query is not acceptable by the bdm. Do you deploy the BDM behind the link? Attention, prepare yourself to delete our database.

Submitted by baptiste.mesta on Fri, 05/15/2020 - 11:26

Ok, I was able to reproduce that.

It's a bug in 7.10 +, when the BDM have issues and is deployed, even after the BDM is fixed, it is not redeployed. The server have to be restarted. I'll enter a bug and fix that. Thanks for the report.

Notifications