[
https://issues.apache.org/jira/browse/LUCENE-5056?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13961102#comment-13961102
]
David Smiley commented on LUCENE-5056:
--------------------------------------
I was just thinking about this bug/shortcoming or whatever one might call it.
There's an easy solution to this -- modify the algorithm that determines how
many "levels" to go down so it's based on a Euclidean computation, not
geodesic. It means that the shape is going to be a lot more "blocky"
(approximated) than the same same on the equator. But I feel that doesn't
matter, or at least it won't matter soon once RecursivePrefixTree &
SerializedDVStrategy get linked up such that indexed non-point shapes will be
validated for precision against the actual vector geometry. Once that happens,
it will matter very little how few grid cells represent a shape since you'll
always have absolute precision as far as the shape geometry can calculate it.
> Indexing non-point shapes close to the poles doesn't scale
> ----------------------------------------------------------
>
> Key: LUCENE-5056
> URL: https://issues.apache.org/jira/browse/LUCENE-5056
> Project: Lucene - Core
> Issue Type: Bug
> Components: modules/spatial
> Affects Versions: 4.3
> Reporter: Hal Deadman
> Assignee: David Smiley
> Fix For: 4.8
>
> Attachments: indexed circle close to the pole.png
>
>
> From: [~hdeadman]
> We are seeing an issue where certain shapes are causing Solr to use up all
> available heap space when a record with one of those shapes is indexed. We
> were indexing polygons where we had the points going clockwise instead of
> counter-clockwise and the shape would be so large that we would run out of
> memory. We fixed those shapes but we are seeing this circle eat up about
> 700MB of memory before we get an OutOfMemory error (heap space) with a 1GB
> JVM heap.
> Circle(3.0 90 d=0.0499542757922153)
> Google Earth can't plot that circle either, maybe it is invalid or too close
> to the north pole due to the latitude of 90, but it would be nice if there
> was a way for shapes to be validated before they cause an OOM error.
> The objects (4.5 million) are all GeohashPrefixTree$GhCell objects in an
> ArrayList owned by PrefixTreeStrategy$CellTokenStream.
> Is there anyway to have a max number of cells in a shape before it is
> considered too large and is not indexed? Is there a geo library that could
> validate the shape as being reasonably sized and bounded before it is
> processed?
> We are currently using Solr 4.1.
> <fieldType name="location_rpt"
> class="solr.SpatialRecursivePrefixTreeFieldType"
> spatialContextFactory="com.spatial4j.core.context.jts.JtsSpatialContextFactory"
> geo="true" distErrPct="0.025" maxDistErr="0.000009" units="degrees" />
--
This message was sent by Atlassian JIRA
(v6.2#6252)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]