在设计核心名称的命名方案时,我尝试命名核心"搜索/直播"并在尝试启动solr时收到此异常:
java.lang.RuntimeException: Invalid core name: search/live
at org.apache.solr.core.CoreContainer.registerCore(CoreContainer.java:411)
at org.apache.solr.core.CoreContainer.create(CoreContainer.java:499)
at org.apache.solr.core.CoreContainer$1.call(CoreContainer.java:255)
at org.apache.solr.core.CoreContainer$1.call(CoreContainer.java:249)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
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)
显然在核心名称中使用/
会使其无效。使核心名称无效的受限字符是什么?我似乎无法找到相关文档。
答案 0 :(得分:2)
核心名称的有效字符似乎未记录。根据Solr 4.10.4中org.apache.solr.core.CoreContainer#registerCore(String, SolrCore, boolean)
的来源,唯一无效的字符是:
/
\
以下字符在管理界面和执行常规查询时会出现问题:
: