graphdb - GraphDB 自定义规则集编译失败:代码太大
问题描述
我在 GraphDB 的一个存储库中使用自定义规则集,但是当我尝试创建存储库时,出现以下错误:
Caused by: com.ontotext.trree.rules.RuleCompilerException: code too large
(请参阅下面的完整错误日志)。
这是否意味着规则文件中允许的行数有限制?
org.eclipse.rdf4j.http.server.ServerHTTPException: org.eclipse.rdf4j.repository.RepositoryException: org.eclipse.rdf4j.sail.SailException: Invalid rule set: /opt/graphdb/home/rules/rules-ontology-processor.pie
at org.eclipse.rdf4j.http.server.repository.RepositoryInterceptor.setRequestAttributes(RepositoryInterceptor.java:113)
at org.eclipse.rdf4j.http.server.ServerInterceptor.preHandle(ServerInterceptor.java:32)
at org.eclipse.rdf4j.http.server.repository.RepositoryInterceptor.preHandle(RepositoryInterceptor.java:82)
at com.ontotext.forest.sesame.ForestRepositoryInterceptor.preHandle(ForestRepositoryInterceptor.java:32)
at com.ontotext.forest.sesame.ForestRepositoryInterceptor$$FastClassBySpringCGLIB$$d99bcd9f.invoke(<generated>)
at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:771)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:749)
at org.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:136)
at org.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:124)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:749)
at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:691)
at com.ontotext.forest.sesame.ForestRepositoryInterceptor$$EnhancerBySpringCGLIB$$f80e69e5.preHandle(<generated>)
at org.springframework.web.servlet.HandlerExecutionChain.applyPreHandle(HandlerExecutionChain.java:151)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1035)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:943)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:626)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:733)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:227)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
at com.ontotext.forest.core.request.RequestFilter.doFilterInternal(RequestFilter.java:47)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
at com.github.ziplet.filter.compression.CompressingFilter.doFilter(CompressingFilter.java:263)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
at com.ontotext.forest.security.AdminDelegatingFilterProxy.doFilter(AdminDelegatingFilterProxy.java:84)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:358)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:271)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:542)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:143)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:346)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:374)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:887)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1684)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.base/java.lang.Thread.run(Thread.java:835)
Caused by: org.eclipse.rdf4j.repository.RepositoryException: org.eclipse.rdf4j.sail.SailException: Invalid rule set: /opt/graphdb/home/rules/rules-ontology-processor.pie
at org.eclipse.rdf4j.repository.sail.SailRepository.initializeInternal(SailRepository.java:153)
at org.eclipse.rdf4j.repository.base.AbstractRepository.init(AbstractRepository.java:39)
at org.eclipse.rdf4j.repository.manager.LocalRepositoryManager.createRepository(LocalRepositoryManager.java:258)
at com.ontotext.graphdb.GraphDBRepositoryManager.createRepository(GraphDBRepositoryManager.java:380)
at com.ontotext.graphdb.GraphDBRepositoryManager$FutureRepository.lambda$new$0(GraphDBRepositoryManager.java:75)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at com.ontotext.graphdb.GraphDBRepositoryManager.awaitFutureRepository(GraphDBRepositoryManager.java:795)
at com.ontotext.graphdb.GraphDBRepositoryManager.getRepository(GraphDBRepositoryManager.java:372)
at org.eclipse.rdf4j.http.server.repository.RepositoryInterceptor.setRequestAttributes(RepositoryInterceptor.java:105)
... 56 common frames omitted
Caused by: org.eclipse.rdf4j.sail.SailException: org.eclipse.rdf4j.sail.SailException: Invalid rule set: /opt/graphdb/home/rules/rules-ontology-processor.pie
at com.ontotext.trree.OwlimSchemaRepository.initializeInternal(OwlimSchemaRepository.java:326)
at org.eclipse.rdf4j.sail.helpers.AbstractSail.init(AbstractSail.java:190)
at org.eclipse.rdf4j.repository.sail.SailRepository.initializeInternal(SailRepository.java:146)
... 64 common frames omitted
Caused by: org.eclipse.rdf4j.sail.SailException: Invalid rule set: /opt/graphdb/home/rules/rules-ontology-processor.pie
at com.ontotext.trree.OwlimSchemaRepository.createInferencer(OwlimSchemaRepository.java:1566)
at com.ontotext.trree.OwlimSchemaRepository.initializeInternal(OwlimSchemaRepository.java:207)
... 66 common frames omitted
Caused by: com.ontotext.trree.rules.RuleCompilerException: code too large
at com.ontotext.trree.rules.RuntimeInferencerCompilerBase.compileSource(RuntimeInferencerCompilerBase.java:79)
at com.ontotext.trree.rules.RuntimeInferencerCompiler.compileInferencer(RuntimeInferencerCompiler.java:57)
at com.ontotext.trree.OwlimSchemaRepository.createInferencer(OwlimSchemaRepository.java:1561)
... 67 common frames omitted
解决方案
推荐阅读
- java - 尽管节点似乎同意,Split Brain Condition 不会在 4.2.1 的 kubernetes 环境中合并
- sql - 计算行之间的百分比差异/方差 - SQL
- java - 在android studio中删除一个带有按钮的listview项目
- javascript - 向 youtube 添加元素
- python - 用于 Pandas UDF 的 PySpark 加载包
- python - 如何绘制堆叠在气泡图中的多个 y 变量?
- amazon-web-services - 使用 Terraform 使用现有的共享负载均衡器创建 AWS Elastic BeanStalk
- r - 使用单循环在 R 中重新编码多个数据帧
- asp.net-mvc - IDX21323:RequireNonce 是“[PII 已隐藏]”。OpenIdConnectProtocolValidationContext.Nonce 为空,ValidatedIdToken.Payload.Nonce 不为空
- c# - 如何创建具有不同数据类型的 JSON?