[
https://issues.apache.org/jira/browse/SOLR-4136?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Hoss Man updated SOLR-4136:
---------------------------
Attachment: SOLR-4136.patch
New patch...
1) implements the "less kludgy-kludge" idea i mentioned above. I put the new
public method for getting the baseURL of a nodeName in SolrZkClient in case we
want to change it to be a live lookup from ZK at some point (and marked it
@lucene.experimental in case we want completely move/remove it at some point)
2) improved ZkController to allow both leading and trailing "/" in the
hostContext -- both of which get striped off _after_ the "empty string defaults
to 'solr'" logic, and _before_ the generation of the nodeName. As as result,
specifying {{hostContext="/"}} in solr.xml is now a viable way to tell solr
it's running in the root context. (In general i think this makes things easier
to use, but
3) enhanced the hostContext randomization logic in
BaseDistributedSearchTestCase so that it randomly uses: the root context (eg:
"/"), one level paths (eg: "/as"), two level paths (eg: "/s/bf"), and,
sometimes including an "_" character in a path (eg: "/as_", "/s_d", "/_d/bf",
etc..)
4) Changed BaseDistributedSearchTestCase to us the context path randomization
logic by default. This is something i had left out of my previous patch
because i wa worried about users who might have their own tests extending
BaseDistributedSearchTestCase that were then making assumptions about the
context being "/solr" -- but i decided having more test coverage using these
random context paths was more important -- we can include an upgrade note along
the lines of...
{noformat}
BaseDistributedSearchTestCase now randomizes the servlet context it uses when
creating Jetty instances. Subclasses that assume a hard coded context of
"/solr" should either be fixed to use the "String context" variable, or should
take advantage of the new BaseDistributedSearchTestCase(String) constructor
to explicitly specify a fixed servlet context path.
{noformat}
5) Fixed test bugs exposed by 3 & 4 above.
--
Mark: would really appreciate it if you could take this bad-boy for a spin and
let me know what you think
> SolrCloud bugs when servlet context contains "/" or "_"
> -------------------------------------------------------
>
> Key: SOLR-4136
> URL: https://issues.apache.org/jira/browse/SOLR-4136
> Project: Solr
> Issue Type: Bug
> Components: SolrCloud
> Affects Versions: 4.0
> Reporter: Hoss Man
> Assignee: Hoss Man
> Attachments: SOLR-4136.patch, SOLR-4136.patch
>
>
> SolrCloud does not work properly with non-trivial values for "hostContext"
> (ie: the servlet context path). In particular...
> * Using a hostContext containing a "/" (ie: a servlet context with a subdir
> path, semi-common among people who organize webapps hierarchically for lod
> blanacer rules) is explicitly forbidden in ZkController because of how the
> hostContext is used to build a ZK nodeName
> * Using a hostContext containing a "\_" causes problems in
> OverseerCollectionProcessor where it assumes all "\_" characters should be
> converted to "/" to reconstitute a URL from nodeName (NOTE: this code
> specifically has a TODO to fix this, and then has a subsequent TODO about
> assuming "http://" labeled "this sucks")
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]