[
https://issues.apache.org/jira/browse/SOLR-8876?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15905473#comment-15905473
]
Steve Rowe commented on SOLR-8876:
----------------------------------
bq. I'm actually going to withdraw my veto from Steve's removal of the
map-reduce contribs
[[email protected]], could you make a comment to this effect over on
SOLR-9221 ?
> Morphlines fails with "No command builder registered for ..." when using Java
> 9 due to morphline "importCommands" config option attempting to resolve
> classname globs
> ---------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: SOLR-8876
> URL: https://issues.apache.org/jira/browse/SOLR-8876
> Project: Solr
> Issue Type: Bug
> Components: contrib - MapReduce, contrib - morphlines-cell, contrib
> - morphlines-core
> Reporter: Uwe Schindler
> Assignee: Hoss Man
> Labels: Java9
> Fix For: 6.5, master (7.0)
>
> Attachments: SOLR-8876.patch
>
>
> When running Solr in java9, and using the morphlines contrib(s) users may
> encounter vague errors such as...
> {noformat}
> No command builder registered for COMMAND_NAME
> {noformat}
> This error comes directly from the morphlines code, and relates to the use of
> wildcards in the {{importCommands}} declaration of of morphlines {{\*.conf}}
> files used -- for example...
> {noformat}
> importCommands : ["org.kitesdk.**", "org.apache.solr.**"]
> {noformat}
> Using wildcards like {{\*}} and {{\*\*}} in morphline's {{importCommands}}
> config options do not work in java9 due to changes in the underlying JVM
> classloader.
> This issue is tracked up stream in:
> https://github.com/kite-sdk/kite/issues/469
> ----
> *WORK AROUND*
> The workaround is to only use fully qualified command class names in
> {{importCommands}} declaration, one for each distinct command used in that
> {{conf}} file.
> Example:
> {noformat}
> # Old config, does not work in java9
> # importCommands : ["org.kitesdk.**", "org.apache.solr.**"]
> # replaced with...
> # using globs (foo.bar.* or foo.bar.**) will not work in Java9 due to
> classpath scanning limitations
> # so we enumarate every command (builder) we know this config uses below.
> (see SOLR-8876)
> importCommands : ["org.kitesdk.morphline.stdlib.LogDebugBuilder",
>
> "org.apache.solr.morphlines.solr.SanitizeUnknownSolrFieldsBuilder",
> "org.apache.solr.morphlines.solr.LoadSolrBuilder"]
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]