[jira] [Commented] (LUCENE-4978) Spatial search with point query won't find identical indexed point
[ https://issues.apache.org/jira/browse/LUCENE-4978?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13799375#comment-13799375 ] oli mcc commented on LUCENE-4978: - Hi David, Sorry for the delay in following up, I've actually been spending some time familiarizing myself with the code and have some followup thoughts/questions. I think I get the issue now; the optimization short circuits to using the centre (a cheaper relation verification) in some cases, and as a result, the following two query types (a point and polygon) would not match due to no intersection with the centre. !https://docs.google.com/drawings/d/1iEX4D7PXQHq3mJvSII-Y0Y5MHPKSGOkqjUV6UcIecY4/pub?w=759h=353! - It's not clear to me why the quick fix doesn't work in both cases you described however, maybe I'm missing the underlying problem. If we _always_ use cell.getShape() won't we be guaranteed to match all points in the cell (potentially inefficient and with false positives, but not false negatives)? - I think this is purely a query time issue, would that be right? I'd like to start indexing documents now, but will avoid doing so if a fix to this will require a re-index. To answer your question, Elasticsearch does have a specific mapping type for geo points ([GeoPointFieldMapper.java|https://github.com/elasticsearch/elasticsearch/blob/master/src/main/java/org/elasticsearch/index/mapper/geo/GeoPointFieldMapper.java] which I think follows the pattern you described. Spatial search with point query won't find identical indexed point -- Key: LUCENE-4978 URL: https://issues.apache.org/jira/browse/LUCENE-4978 Project: Lucene - Core Issue Type: Bug Components: modules/spatial Affects Versions: 4.1 Reporter: David Smiley Assignee: David Smiley Priority: Minor Fix For: 4.6 Given a document with indexed POINT (10 20), when a search for INTERSECTS( POINT (10 20)) is issued, no results are returned. The work-around is to not search with a point shape, use a very small-radius circle or rectangle. (I'm marking this issue as minor because it's easy to do this). An unstated objective of the PrefixTree/grid approximation is that no matter what precision you use, an intersects query will find all true-positives. Due to approximations, it may also find some close false-positives. But in the case above, that unstated promise is violated. But it can also happen for query shapes other than points which do in fact barely enclose the point given at index time yet the indexed point is in-effect shifted to the center point of a cell which could be outside the query shape, and ultimately leading to a false-negative. -- This message was sent by Atlassian JIRA (v6.1#6144) - To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org
[jira] [Comment Edited] (LUCENE-4978) Spatial search with point query won't find identical indexed point
[ https://issues.apache.org/jira/browse/LUCENE-4978?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13799375#comment-13799375 ] oli mcc edited comment on LUCENE-4978 at 10/18/13 6:30 PM: --- Hi David, Sorry for the delay in following up, I've actually been spending some time familiarizing myself with the code and have some followup thoughts/questions. I think I get the issue now; the optimization short circuits to using the centre (a cheaper relation verification) in some cases, and as a result, the following two query types (a point and polygon) would not match due to no intersection with the centre. !https://docs.google.com/drawings/d/1iEX4D7PXQHq3mJvSII-Y0Y5MHPKSGOkqjUV6UcIecY4/pub?w=759h=353! - It's not clear to me why the quick fix doesn't work in both cases you described however, maybe I'm missing the underlying problem. If we _always_ use cell.getShape() won't we be guaranteed to match all points in the cell (potentially inefficient and with false positives, but not false negatives)? - I think this is purely a query time issue, would that be right? I'd like to start indexing documents now, but will avoid doing so if a fix to this will require a re-index. To hopefully answer your question, Elasticsearch does have a specific mapping type for geo points ([GeoPointFieldMapper.java|https://github.com/elasticsearch/elasticsearch/blob/master/src/main/java/org/elasticsearch/index/mapper/geo/GeoPointFieldMapper.java] which I think follows the pattern you described. was (Author: olimcc): Hi David, Sorry for the delay in following up, I've actually been spending some time familiarizing myself with the code and have some followup thoughts/questions. I think I get the issue now; the optimization short circuits to using the centre (a cheaper relation verification) in some cases, and as a result, the following two query types (a point and polygon) would not match due to no intersection with the centre. !https://docs.google.com/drawings/d/1iEX4D7PXQHq3mJvSII-Y0Y5MHPKSGOkqjUV6UcIecY4/pub?w=759h=353! - It's not clear to me why the quick fix doesn't work in both cases you described however, maybe I'm missing the underlying problem. If we _always_ use cell.getShape() won't we be guaranteed to match all points in the cell (potentially inefficient and with false positives, but not false negatives)? - I think this is purely a query time issue, would that be right? I'd like to start indexing documents now, but will avoid doing so if a fix to this will require a re-index. To answer your question, Elasticsearch does have a specific mapping type for geo points ([GeoPointFieldMapper.java|https://github.com/elasticsearch/elasticsearch/blob/master/src/main/java/org/elasticsearch/index/mapper/geo/GeoPointFieldMapper.java] which I think follows the pattern you described. Spatial search with point query won't find identical indexed point -- Key: LUCENE-4978 URL: https://issues.apache.org/jira/browse/LUCENE-4978 Project: Lucene - Core Issue Type: Bug Components: modules/spatial Affects Versions: 4.1 Reporter: David Smiley Assignee: David Smiley Priority: Minor Fix For: 4.6 Given a document with indexed POINT (10 20), when a search for INTERSECTS( POINT (10 20)) is issued, no results are returned. The work-around is to not search with a point shape, use a very small-radius circle or rectangle. (I'm marking this issue as minor because it's easy to do this). An unstated objective of the PrefixTree/grid approximation is that no matter what precision you use, an intersects query will find all true-positives. Due to approximations, it may also find some close false-positives. But in the case above, that unstated promise is violated. But it can also happen for query shapes other than points which do in fact barely enclose the point given at index time yet the indexed point is in-effect shifted to the center point of a cell which could be outside the query shape, and ultimately leading to a false-negative. -- This message was sent by Atlassian JIRA (v6.1#6144) - To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org
[jira] [Commented] (LUCENE-4978) Spatial search with point query won't find identical indexed point
[ https://issues.apache.org/jira/browse/LUCENE-4978?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13786287#comment-13786287 ] oli mcc commented on LUCENE-4978: - Hi David I think I've uncovered this same issue via Elasticsearch, see [issue 3795 | https://github.com/elasticsearch/elasticsearch/issues/3795] and have verified it with some test cases I've written. Any chance you'd have time to take a look at this? I'm digging in myself, but am still just at a stage of getting a sense for the codebase. Spatial search with point query won't find identical indexed point -- Key: LUCENE-4978 URL: https://issues.apache.org/jira/browse/LUCENE-4978 Project: Lucene - Core Issue Type: Bug Components: modules/spatial Affects Versions: 4.1 Reporter: David Smiley Assignee: David Smiley Priority: Minor Given a document with indexed POINT (10 20), when a search for INTERSECTS( POINT (10 20)) is issued, no results are returned. The work-around is to not search with a point shape, use a very small-radius circle or rectangle. (I'm marking this issue as minor because it's easy to do this). An unstated objective of the PrefixTree/grid approximation is that no matter what precision you use, an intersects query will find all true-positives. Due to approximations, it may also find some close false-positives. But in the case above, that unstated promise is violated. But it can also happen for query shapes other than points which do in fact barely enclose the point given at index time yet the indexed point is in-effect shifted to the center point of a cell which could be outside the query shape, and ultimately leading to a false-negative. -- This message was sent by Atlassian JIRA (v6.1#6144) - To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org
[jira] [Comment Edited] (LUCENE-4978) Spatial search with point query won't find identical indexed point
[ https://issues.apache.org/jira/browse/LUCENE-4978?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13786287#comment-13786287 ] oli mcc edited comment on LUCENE-4978 at 10/4/13 4:20 PM: -- Hi David, I think I've uncovered this same issue via Elasticsearch, see [issue 3795 | https://github.com/elasticsearch/elasticsearch/issues/3795] and have verified it with some test cases I've written. Any chance you'd have time to take a look at this? I'm digging in myself, but am still just at a stage of getting a sense for the codebase. was (Author: olimcc): Hi David I think I've uncovered this same issue via Elasticsearch, see [issue 3795 | https://github.com/elasticsearch/elasticsearch/issues/3795] and have verified it with some test cases I've written. Any chance you'd have time to take a look at this? I'm digging in myself, but am still just at a stage of getting a sense for the codebase. Spatial search with point query won't find identical indexed point -- Key: LUCENE-4978 URL: https://issues.apache.org/jira/browse/LUCENE-4978 Project: Lucene - Core Issue Type: Bug Components: modules/spatial Affects Versions: 4.1 Reporter: David Smiley Assignee: David Smiley Priority: Minor Given a document with indexed POINT (10 20), when a search for INTERSECTS( POINT (10 20)) is issued, no results are returned. The work-around is to not search with a point shape, use a very small-radius circle or rectangle. (I'm marking this issue as minor because it's easy to do this). An unstated objective of the PrefixTree/grid approximation is that no matter what precision you use, an intersects query will find all true-positives. Due to approximations, it may also find some close false-positives. But in the case above, that unstated promise is violated. But it can also happen for query shapes other than points which do in fact barely enclose the point given at index time yet the indexed point is in-effect shifted to the center point of a cell which could be outside the query shape, and ultimately leading to a false-negative. -- This message was sent by Atlassian JIRA (v6.1#6144) - To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org