[jira] [Assigned] (LUCENE-8621) Move LatLonShape and XYShape out of sandbox

2019-08-14 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/LUCENE-8621?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize reassigned LUCENE-8621:
--

Assignee: Nicholas Knize

> Move LatLonShape and XYShape out of sandbox
> ---
>
> Key: LUCENE-8621
> URL: https://issues.apache.org/jira/browse/LUCENE-8621
> Project: Lucene - Core
>  Issue Type: Improvement
>Reporter: Adrien Grand
>Assignee: Nicholas Knize
>Priority: Minor
>
> LatLonShape has matured a lot over the last months, I'd like to start 
> thinking about moving it out of sandbox so that it doesn't stay there for too 
> long like what happened to LatLonPoint. I am pretty happy with the current 
> encoding. To my knowledge, we might just need to do a minor modification 
> because of 
> LUCENE-8620.
> {{XYShape}} and foundation classes will also need to be refactored. 



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-8621) Move LatLonShape and XYShape out of sandbox

2019-08-14 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8621?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16907653#comment-16907653
 ] 

Nicholas Knize commented on LUCENE-8621:


Per LUCENE-8369 I'll take the task of refactoring {{LatLonShape}}, {{XYShape}}, 
and all foundation, utility, and query classes 

> Move LatLonShape and XYShape out of sandbox
> ---
>
> Key: LUCENE-8621
> URL: https://issues.apache.org/jira/browse/LUCENE-8621
> Project: Lucene - Core
>  Issue Type: Improvement
>Reporter: Adrien Grand
>Priority: Minor
>
> LatLonShape has matured a lot over the last months, I'd like to start 
> thinking about moving it out of sandbox so that it doesn't stay there for too 
> long like what happened to LatLonPoint. I am pretty happy with the current 
> encoding. To my knowledge, we might just need to do a minor modification 
> because of 
> LUCENE-8620.
> {{XYShape}} and foundation classes will also need to be refactored. 



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Updated] (LUCENE-8621) Move LatLonShape and XYShape out of sandbox

2019-08-14 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/LUCENE-8621?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize updated LUCENE-8621:
---
Description: 
LatLonShape has matured a lot over the last months, I'd like to start thinking 
about moving it out of sandbox so that it doesn't stay there for too long like 
what happened to LatLonPoint. I am pretty happy with the current encoding. To 
my knowledge, we might just need to do a minor modification because of 
LUCENE-8620.

{{XYShape}} and foundation classes will also need to be refactored. 

  was:
LatLonShape has matured a lot over the last months, I'd like to start thinking 
about moving it out of sandbox so that it doesn't stay there for too long like 
what happened to LatLonPoint. I am pretty happy with the current encoding. To 
my knowledge, we might just need to do a minor modification because of 
LUCENE-8620.


> Move LatLonShape and XYShape out of sandbox
> ---
>
> Key: LUCENE-8621
> URL: https://issues.apache.org/jira/browse/LUCENE-8621
> Project: Lucene - Core
>  Issue Type: Improvement
>Reporter: Adrien Grand
>Priority: Minor
>
> LatLonShape has matured a lot over the last months, I'd like to start 
> thinking about moving it out of sandbox so that it doesn't stay there for too 
> long like what happened to LatLonPoint. I am pretty happy with the current 
> encoding. To my knowledge, we might just need to do a minor modification 
> because of 
> LUCENE-8620.
> {{XYShape}} and foundation classes will also need to be refactored. 



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Comment Edited] (LUCENE-8369) Remove the spatial module as it is obsolete

2019-08-14 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8369?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16907651#comment-16907651
 ] 

Nicholas Knize edited comment on LUCENE-8369 at 8/14/19 9:50 PM:
-

Sounds good to me. Thanks [~mikemccand] and [~simonw]

 [~dsmiley] I think we're good to go on this patch then to remove the spatial 
module? I'll handle refactoring {{LatLonShape}} and {{XYShape}} classes to 
{{core}} in LUCENE-8621


was (Author: nknize):
Sounds good to me. Thanks [~mikemccand] and [~simonw]

 [~dsmiley] I think we're good to go on this patch then to remove the spatial 
module? I'll handle refactoring {{LatLonShape}} and {{XYShape}} classes to 
{{core}} in a separate issue.

> Remove the spatial module as it is obsolete
> ---
>
> Key: LUCENE-8369
> URL: https://issues.apache.org/jira/browse/LUCENE-8369
> Project: Lucene - Core
>  Issue Type: Task
>  Components: modules/spatial
>Reporter: David Smiley
>Assignee: David Smiley
>Priority: Major
> Attachments: LUCENE-8369.patch
>
>
> The "spatial" module is at this juncture nearly empty with only a couple 
> utilities that aren't used by anything in the entire codebase -- 
> GeoRelationUtils, and MortonEncoder.  Perhaps it should have been removed 
> earlier in LUCENE-7664 which was the removal of GeoPointField which was 
> essentially why the module existed.  Better late than never.



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Updated] (LUCENE-8621) Move LatLonShape and XYShape out of sandbox

2019-08-14 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/LUCENE-8621?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize updated LUCENE-8621:
---
Summary: Move LatLonShape and XYShape out of sandbox  (was: Move 
LatLonShape out of sandbox)

> Move LatLonShape and XYShape out of sandbox
> ---
>
> Key: LUCENE-8621
> URL: https://issues.apache.org/jira/browse/LUCENE-8621
> Project: Lucene - Core
>  Issue Type: Improvement
>Reporter: Adrien Grand
>Priority: Minor
>
> LatLonShape has matured a lot over the last months, I'd like to start 
> thinking about moving it out of sandbox so that it doesn't stay there for too 
> long like what happened to LatLonPoint. I am pretty happy with the current 
> encoding. To my knowledge, we might just need to do a minor modification 
> because of 
> LUCENE-8620.



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-8369) Remove the spatial module as it is obsolete

2019-08-14 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8369?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16907651#comment-16907651
 ] 

Nicholas Knize commented on LUCENE-8369:


Sounds good to me. Thanks [~mikemccand] and [~simonw]

 [~dsmiley] I think we're good to go on this patch then to remove the spatial 
module? I'll handle refactoring {{LatLonShape}} and {{XYShape}} classes to 
{{core}} in a separate issue.

> Remove the spatial module as it is obsolete
> ---
>
> Key: LUCENE-8369
> URL: https://issues.apache.org/jira/browse/LUCENE-8369
> Project: Lucene - Core
>  Issue Type: Task
>  Components: modules/spatial
>Reporter: David Smiley
>Assignee: David Smiley
>Priority: Major
> Attachments: LUCENE-8369.patch
>
>
> The "spatial" module is at this juncture nearly empty with only a couple 
> utilities that aren't used by anything in the entire codebase -- 
> GeoRelationUtils, and MortonEncoder.  Perhaps it should have been removed 
> earlier in LUCENE-7664 which was the removal of GeoPointField which was 
> essentially why the module existed.  Better late than never.



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Comment Edited] (LUCENE-8369) Remove the spatial module as it is obsolete

2019-08-08 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8369?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16903204#comment-16903204
 ] 

Nicholas Knize edited comment on LUCENE-8369 at 8/8/19 6:14 PM:


As a side note: the two classes in the spatial module are no longer used and 
can be removed; leaving the spatial module empty.

So it sounds like we're converging on three options then:

1. Move {{LatLonShape}}, {{XYShape}}, queries and supporting classes to core; 
delete spatial module and maintain package private visibility on dependency 
classes
2. Move {{LatLonShape}}, {{XYShape}}, queries and supporting classes to spatial 
module; make dependency classes in core public and label w/ _@lucene.internal_
3. Move {{LatLonShape}}, {{XYShape}}, queries and supporting classes to spatial 
module for Lucene 9 release; keep core dependency class visibility package 
private and use [java modules|https://www.jcp.org/en/jsr/detail?id=376] to 
expose package private classes to the spatial module?

I introduce the third option here because a. I think it might strike a nice 
balance between separating "esoteric" shape features (whatever that means) to 
the spatial module while maintaining proper API visibility, and b. with the 
move to Java 11 we can introduce the Java Platform Module system to achieve 
proper visibility.

I'll admit I'm no expert when it comes to the Java Module System but I seem to 
recall a conversation around this topic a few years back when Java 9 was 
released?

We could also do 2. above for the next Lucene 8.x release, and explore the 
module option as a separate issue for the 9.0 release?


was (Author: nknize):
As a side note: the two classes in the spatial module are no longer used and 
can be removed; leaving the spatial module empty.

So it sounds like we're converging on three options then:

1. Move {{LatLonShape}}, {{XYShape}}, queries and supporting classes to core; 
delete spatial module and maintain package private visibility on dependency 
classes
2. Move {{LatLonShape}}, {{XYShape}}, queries and supporting classes to spatial 
module; make dependency classes in core public and label w/ _@lucene.internal_
3. Move {{LatLonShape}}, {{XYShape}}, queries and supporting classes to spatial 
module for Lucene 9 release; keep core dependency class visibility package 
private and use [java modules|https://www.jcp.org/en/jsr/detail?id=376] to 
expose package private classes to the spatial module?

I introduce the third option here because a. I think it might strike a nice 
balance between separating "esoteric" shape features (whatever that means) to 
the spatial module while maintaining proper API visibility, and b. with the 
move to Java 11 we can introduce the Java Platform Module system to achieve 
proper visibility.

I'll admit I'm no expert when it comes to the Java Module System but I seem to 
recall a conversation around this topic a few years back when Java 9 was 
released?

> Remove the spatial module as it is obsolete
> ---
>
> Key: LUCENE-8369
> URL: https://issues.apache.org/jira/browse/LUCENE-8369
> Project: Lucene - Core
>  Issue Type: Task
>  Components: modules/spatial
>Reporter: David Smiley
>Assignee: David Smiley
>Priority: Major
> Attachments: LUCENE-8369.patch
>
>
> The "spatial" module is at this juncture nearly empty with only a couple 
> utilities that aren't used by anything in the entire codebase -- 
> GeoRelationUtils, and MortonEncoder.  Perhaps it should have been removed 
> earlier in LUCENE-7664 which was the removal of GeoPointField which was 
> essentially why the module existed.  Better late than never.



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Comment Edited] (LUCENE-8369) Remove the spatial module as it is obsolete

2019-08-08 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8369?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16903204#comment-16903204
 ] 

Nicholas Knize edited comment on LUCENE-8369 at 8/8/19 6:12 PM:


As a side note: the two classes in the spatial module are no longer used and 
can be removed; leaving the spatial module empty.

So it sounds like we're converging on three options then:

1. Move {{LatLonShape}}, {{XYShape}}, queries and supporting classes to core; 
delete spatial module and maintain package private visibility on dependency 
classes
2. Move {{LatLonShape}}, {{XYShape}}, queries and supporting classes to spatial 
module; make dependency classes in core public and label w/ _@lucene.internal_
3. Move {{LatLonShape}}, {{XYShape}}, queries and supporting classes to spatial 
module for Lucene 9 release; keep core dependency class visibility package 
private and use [java modules|https://www.jcp.org/en/jsr/detail?id=376] to 
expose package private classes to the spatial module?

I introduce the third option here because a. I think it might strike a nice 
balance between separating "esoteric" shape features (whatever that means) to 
the spatial module while maintaining proper API visibility, and b. with the 
move to Java 11 we can introduce the Java Platform Module system to achieve 
proper visibility.

I'll admit I'm no expert when it comes to the Java Module System but I seem to 
recall a conversation around this topic a few years back when Java 9 was 
released?


was (Author: nknize):
As a side note: the two classes in the spatial module are no longer used and 
can be removed; leaving the spatial module empty.

So it sounds like we're converging on three options then:

1. Move {{LatLonShape}}, {{XYShape}}, queries and supporting classes to core; 
delete spatial module and maintain package private visibility on dependency 
classes
2. Move {{LatLonShape}}, {{XYShape}}, queries and supporting classes to spatial 
module; make dependency classes in core public and label w/ _@lucene.internal_
3. Move {{LatLonShape}}, {{XYShape}}, queries and supporting classes to spatial 
module for Lucene 9 release; leave core dependency class visibility alone and 
use [java modules|https://www.jcp.org/en/jsr/detail?id=376] to expose package 
private classes to the spatial module?

I introduce the third option here because a. I think it might strike a nice 
balance between separating "esoteric" shape features (whatever that means) to 
the spatial module while maintaining proper API visibility, and b. with the 
move to Java 11 we can introduce the Java Platform Module system to achieve 
proper visibility.

I'll admit I'm no expert when it comes to the Java Module System but I seem to 
recall a conversation around this topic a few years back when Java 9 was 
released?

> Remove the spatial module as it is obsolete
> ---
>
> Key: LUCENE-8369
> URL: https://issues.apache.org/jira/browse/LUCENE-8369
> Project: Lucene - Core
>  Issue Type: Task
>  Components: modules/spatial
>Reporter: David Smiley
>Assignee: David Smiley
>Priority: Major
> Attachments: LUCENE-8369.patch
>
>
> The "spatial" module is at this juncture nearly empty with only a couple 
> utilities that aren't used by anything in the entire codebase -- 
> GeoRelationUtils, and MortonEncoder.  Perhaps it should have been removed 
> earlier in LUCENE-7664 which was the removal of GeoPointField which was 
> essentially why the module existed.  Better late than never.



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Comment Edited] (LUCENE-8369) Remove the spatial module as it is obsolete

2019-08-08 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8369?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16903204#comment-16903204
 ] 

Nicholas Knize edited comment on LUCENE-8369 at 8/8/19 6:11 PM:


As a side note: the two classes in the spatial module are no longer used and 
can be removed; leaving the spatial module empty.

So it sounds like we're converging on three options then:

1. Move {{LatLonShape}}, {{XYShape}}, queries and supporting classes to core; 
delete spatial module and maintain package private visibility on dependency 
classes
2. Move {{LatLonShape}}, {{XYShape}}, queries and supporting classes to spatial 
module; make dependency classes in core public and label w/ _@lucene.internal_
3. Move {{LatLonShape}}, {{XYShape}}, queries and supporting classes to spatial 
module for Lucene 9 release; leave core dependency class visibility alone and 
use [java modules|https://www.jcp.org/en/jsr/detail?id=376] to expose package 
private classes to the spatial module?

I introduce the third option here because a. I think it might strike a nice 
balance between separating "esoteric" shape features (whatever that means) to 
the spatial module while maintaining proper API visibility, and b. with the 
move to Java 11 we can introduce the Java Platform Module system to achieve 
proper visibility.

I'll admit I'm no expert when it comes to the Java Module System but I seem to 
recall a conversation around this topic a few years back when Java 9 was 
released?


was (Author: nknize):
As a side note: the two classes in the spatial module are no longer used and 
can be removed; leaving the spatial module empty.

So it sounds like we're converging on three options then:

1. Move {{LatLonShape}}, {{XYShape}}, queries and supporting classes to core; 
delete spatial module
2. Move {{LatLonShape}}, {{XYShape}}, queries and supporting classes to spatial 
module; make dependency classes in core public and label w/ _@lucene.internal_
3. Move {{LatLonShape}}, {{XYShape}}, queries and supporting classes to spatial 
module for Lucene 9 release; leave core dependency class visibility alone and 
use [java modules|https://www.jcp.org/en/jsr/detail?id=376] to expose package 
private classes to the spatial module?

I introduce the third option here because a. I think it might strike a nice 
balance between separating "esoteric" shape features (whatever that means) to 
the spatial module while maintaining proper API visibility, and b. with the 
move to Java 11 we can introduce the Java Platform Module system to achieve 
proper visibility.

I'll admit I'm no expert when it comes to the Java Module System but I seem to 
recall a conversation around this topic a few years back when Java 9 was 
released?

> Remove the spatial module as it is obsolete
> ---
>
> Key: LUCENE-8369
> URL: https://issues.apache.org/jira/browse/LUCENE-8369
> Project: Lucene - Core
>  Issue Type: Task
>  Components: modules/spatial
>Reporter: David Smiley
>Assignee: David Smiley
>Priority: Major
> Attachments: LUCENE-8369.patch
>
>
> The "spatial" module is at this juncture nearly empty with only a couple 
> utilities that aren't used by anything in the entire codebase -- 
> GeoRelationUtils, and MortonEncoder.  Perhaps it should have been removed 
> earlier in LUCENE-7664 which was the removal of GeoPointField which was 
> essentially why the module existed.  Better late than never.



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-8369) Remove the spatial module as it is obsolete

2019-08-08 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8369?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16903204#comment-16903204
 ] 

Nicholas Knize commented on LUCENE-8369:


As a side note: the two classes in the spatial module are no longer used and 
can be removed; leaving the spatial module empty.

So it sounds like we're converging on three options then:

1. Move {{LatLonShape}}, {{XYShape}}, queries and supporting classes to core; 
delete spatial module
2. Move {{LatLonShape}}, {{XYShape}}, queries and supporting classes to spatial 
module; make dependency classes in core public and label w/ _@lucene.internal_
3. Move {{LatLonShape}}, {{XYShape}}, queries and supporting classes to spatial 
module for Lucene 9 release; leave core dependency class visibility alone and 
use [java modules|https://www.jcp.org/en/jsr/detail?id=376] to expose package 
private classes to the spatial module?

I introduce the third option here because a. I think it might strike a nice 
balance between separating "esoteric" shape features (whatever that means) to 
the spatial module while maintaining proper API visibility, and b. with the 
move to Java 11 we can introduce the Java Platform Module system to achieve 
proper visibility.

I'll admit I'm no expert when it comes to the Java Module System but I seem to 
recall a conversation around this topic a few years back when Java 9 was 
released?

> Remove the spatial module as it is obsolete
> ---
>
> Key: LUCENE-8369
> URL: https://issues.apache.org/jira/browse/LUCENE-8369
> Project: Lucene - Core
>  Issue Type: Task
>  Components: modules/spatial
>Reporter: David Smiley
>Assignee: David Smiley
>Priority: Major
> Attachments: LUCENE-8369.patch
>
>
> The "spatial" module is at this juncture nearly empty with only a couple 
> utilities that aren't used by anything in the entire codebase -- 
> GeoRelationUtils, and MortonEncoder.  Perhaps it should have been removed 
> earlier in LUCENE-7664 which was the removal of GeoPointField which was 
> essentially why the module existed.  Better late than never.



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-8369) Remove the spatial module as it is obsolete

2019-07-30 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8369?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16896516#comment-16896516
 ] 

Nicholas Knize commented on LUCENE-8369:


[~dsmiley] yeah, that seems to be the case more often than not. So under that 
construct we would move {{LatLonPointInPolygonQuery}} to the spatial module 
which even further fragments everything.

Seems this discussion gains some activity for a short bit, stalls for a year or 
two, gains some more activity, then stalls again. I know it's no fun to engage 
in the bikeshed activity, but it would be nice to figure out a path forward; 
even if that means find a solution for the 9.0 release and just leave 
{{LatLonShape}} and {{XYShape}} in sandbox for the rest of the 8.x releases.

> Remove the spatial module as it is obsolete
> ---
>
> Key: LUCENE-8369
> URL: https://issues.apache.org/jira/browse/LUCENE-8369
> Project: Lucene - Core
>  Issue Type: Task
>  Components: modules/spatial
>Reporter: David Smiley
>Assignee: David Smiley
>Priority: Major
> Attachments: LUCENE-8369.patch
>
>
> The "spatial" module is at this juncture nearly empty with only a couple 
> utilities that aren't used by anything in the entire codebase -- 
> GeoRelationUtils, and MortonEncoder.  Perhaps it should have been removed 
> earlier in LUCENE-7664 which was the removal of GeoPointField which was 
> essentially why the module existed.  Better late than never.



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-8369) Remove the spatial module as it is obsolete

2019-07-25 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8369?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16893211#comment-16893211
 ] 

Nicholas Knize commented on LUCENE-8369:


{quote}Can we simply make the necessary APIs public and marked 
{{@lucene.internal}} in our core spatial classes?
{quote}

I think that's what we were trying to avoid because it largely feels like a cop 
out to making a foundation class package private vice keeping it exposed. One 
example is {{EdgeTree}} this can (and probably should) stay package private to 
{{org.apache.lucene.geo}}. But it's used for {{XYShape}}, {{LatLonShape}}, and 
{{LatLonPoint}}. So if we fragment those classes between the {{core}} and 
{{spatial}} module we are forcing ourselves to keep it public and mark it 
{{@lucene.internal}}. Which, again, feels like a cop out to doing (in my 
opinion) the "right" thing and making it package private.   

> Remove the spatial module as it is obsolete
> ---
>
> Key: LUCENE-8369
> URL: https://issues.apache.org/jira/browse/LUCENE-8369
> Project: Lucene - Core
>  Issue Type: Task
>  Components: modules/spatial
>Reporter: David Smiley
>Assignee: David Smiley
>Priority: Major
> Attachments: LUCENE-8369.patch
>
>
> The "spatial" module is at this juncture nearly empty with only a couple 
> utilities that aren't used by anything in the entire codebase -- 
> GeoRelationUtils, and MortonEncoder.  Perhaps it should have been removed 
> earlier in LUCENE-7664 which was the removal of GeoPointField which was 
> essentially why the module existed.  Better late than never.



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-8369) Remove the spatial module as it is obsolete

2019-07-25 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8369?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16892820#comment-16892820
 ] 

Nicholas Knize commented on LUCENE-8369:


{quote}Such core use cases should work easily for users without wading thru 
extra jars, third party dependencies, crazy licensing, or crazy class 
hierarchies.
{quote}
I agree. That's why the `spatial` module should remain dependency free and 
apache licensed.
{quote}I don't think adding esoteric functionality (like non-WGS shapes)
{quote}
Except esoteric is in the eye of the beholder so claiming someone will 
understand or prefer latitude longitude search any more than basic x, y is 
assumptive.
{quote}My fear of having LatLonPoint in a different package to other spatial 
fields is code sharing
{quote}
I agree. When we only had LatLonPoint I leaned toward it moving to the spatial 
module because of how we could advance the foundation. But since we weren't 
there yet, I could understand the argument for having "...basic functionality 
in core that solves the 90% geo use case". Now we've added geo shapes and a 
cartesian coordinate system and it's quickly becoming a fragmentation issue 
impeding development. IMHO it's clearer and cleaner for the dependency free 
spatial code to all exist together in the same module called {{spatial}}. Is 
there any technical downside or argument against removing it from core? Or is 
it all a matter of opinion?

> Remove the spatial module as it is obsolete
> ---
>
> Key: LUCENE-8369
> URL: https://issues.apache.org/jira/browse/LUCENE-8369
> Project: Lucene - Core
>  Issue Type: Task
>  Components: modules/spatial
>Reporter: David Smiley
>Assignee: David Smiley
>Priority: Major
> Attachments: LUCENE-8369.patch
>
>
> The "spatial" module is at this juncture nearly empty with only a couple 
> utilities that aren't used by anything in the entire codebase -- 
> GeoRelationUtils, and MortonEncoder.  Perhaps it should have been removed 
> earlier in LUCENE-7664 which was the removal of GeoPointField which was 
> essentially why the module existed.  Better late than never.



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-8369) Remove the spatial module as it is obsolete

2019-07-24 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8369?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16892091#comment-16892091
 ] 

Nicholas Knize commented on LUCENE-8369:


Since the merge of XYShape I wanted to quickly resurrect this conversation. 
Given so much of the {{LatLonShape}} foundation is shared between 
{{LatLonPoint}} and {{XYShape}} and we have a {{spatial}} module that is 
basically empty. I tend to agree with [~dsmiley]'s original proposal to 
refactor {{LatLonPoint}}, {{LatLonShape}}, {{XYShape}}, and all query, support, 
and util classes currently spread between {{core}} and {{sandbox}} to the 
{{spatial}} module.

We can keep the {{spatial}} module dependency free, and still use 
{{spatial-extras}} to build on the foundation classes with third-party 
dependencies. I think the only major ramification is that {{Geo3d}} will have 
to be updated to depend on the spatial module. But I don't see that as a major 
blocker.

Comments, thoughts, objections? /cc [~mikemccand]  [~jpountz]  [~rcmuir]  
[~ivera]

> Remove the spatial module as it is obsolete
> ---
>
> Key: LUCENE-8369
> URL: https://issues.apache.org/jira/browse/LUCENE-8369
> Project: Lucene - Core
>  Issue Type: Task
>  Components: modules/spatial
>Reporter: David Smiley
>Assignee: David Smiley
>Priority: Major
> Attachments: LUCENE-8369.patch
>
>
> The "spatial" module is at this juncture nearly empty with only a couple 
> utilities that aren't used by anything in the entire codebase -- 
> GeoRelationUtils, and MortonEncoder.  Perhaps it should have been removed 
> earlier in LUCENE-7664 which was the removal of GeoPointField which was 
> essentially why the module existed.  Better late than never.



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-8913) Reproducing failure in various TestLatLon* equals/hashcode tests

2019-07-13 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8913?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16884541#comment-16884541
 ] 

Nicholas Knize commented on LUCENE-8913:


Thanks [~gh_at] It couple be a result of the refactor work to support XYShape. 
Will look into it. 

> Reproducing failure in various TestLatLon*  equals/hashcode tests
> -
>
> Key: LUCENE-8913
> URL: https://issues.apache.org/jira/browse/LUCENE-8913
> Project: Lucene - Core
>  Issue Type: Bug
>  Components: core/other
>Affects Versions: master (9.0)
>Reporter: Gus Heck
>Priority: Major
>
> Bumped into this while running tests locally
> ant clean test -Dtests.seed=41D0C5A80C823307 -Dtests.slow=true 
> -Dtests.badapples=true -Dtests.locale=es-CL 
> -Dtests.timezone=Pacific/Rarotonga -Dtests.asserts=true 
> -Dtests.file.encoding=UTF-8
> reliably produces:
>  
> {code:java}
> Tests with failures [seed: 41D0C5A80C823307]:
>[junit4]   - 
> org.apache.lucene.document.TestLatLonPointShapeQueries.testBoxQueryEqualsAndHashcode
>[junit4]   - 
> org.apache.lucene.document.TestLatLonMultiPointShapeQueries.testBoxQueryEqualsAndHashcode
>[junit4]   - 
> org.apache.lucene.document.TestLatLonLineShapeQueries.testBoxQueryEqualsAndHashcode
>[junit4]   - 
> org.apache.lucene.document.TestLatLonPolygonShapeQueries.testBoxQueryEqualsAndHashcode
>[junit4]   - 
> org.apache.lucene.document.TestLatLonMultiPolygonShapeQueries.testBoxQueryEqualsAndHashcode
>[junit4]   - 
> org.apache.lucene.document.TestLatLonMultiLineShapeQueries.testBoxQueryEqualsAndHashcode{code}
>  



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Resolved] (LUCENE-8632) XYShape: Adapt LatLonShape tessellator, field type, and queries to non-geo shapes

2019-07-08 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/LUCENE-8632?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize resolved LUCENE-8632.

Resolution: Implemented

> XYShape: Adapt LatLonShape tessellator, field type, and queries to non-geo 
> shapes
> -
>
> Key: LUCENE-8632
> URL: https://issues.apache.org/jira/browse/LUCENE-8632
> Project: Lucene - Core
>  Issue Type: New Feature
>Reporter: Nicholas Knize
>Assignee: Nicholas Knize
>Priority: Major
>  Time Spent: 5.5h
>  Remaining Estimate: 0h
>
> Currently the tessellator is tightly coupled with latitude and longitude 
> (WGS84) geospatial coordinates. This issue will explore generalizing the 
> tessellator, {{LatLonShape}} field and {{LatLonShapeQuery}} to non geospatial 
> (cartesian) coordinate systems so lucene can provide the index & search 
> capability for general geometry / non GIS type use cases.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-8632) XYShape: Adapt LatLonShape tessellator, field type, and queries to non-geo shapes

2019-06-17 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8632?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16865858#comment-16865858
 ] 

Nicholas Knize commented on LUCENE-8632:


Opened a PR for adding the ability to index and search non Geo / GIS Geometries 
by leveraging and abstracting much of the LatLonShape foundation. I chose the 
PR route since the number of lines is quite big and I figured it would be 
easier to review instead of attaching a patch.

> XYShape: Adapt LatLonShape tessellator, field type, and queries to non-geo 
> shapes
> -
>
> Key: LUCENE-8632
> URL: https://issues.apache.org/jira/browse/LUCENE-8632
> Project: Lucene - Core
>  Issue Type: New Feature
>Reporter: Nicholas Knize
>Assignee: Nicholas Knize
>Priority: Major
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Currently the tessellator is tightly coupled with latitude and longitude 
> (WGS84) geospatial coordinates. This issue will explore generalizing the 
> tessellator, {{LatLonShape}} field and {{LatLonShapeQuery}} to non geospatial 
> (cartesian) coordinate systems so lucene can provide the index & search 
> capability for general geometry / non GIS type use cases.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Updated] (LUCENE-8632) XYShape: Adapt LatLonShape tessellator, field type, and queries to non-geo shapes

2019-06-17 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/LUCENE-8632?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize updated LUCENE-8632:
---
Description: Currently the tessellator is tightly coupled with latitude and 
longitude (WGS84) geospatial coordinates. This issue will explore generalizing 
the tessellator, {{LatLonShape}} field and {{LatLonShapeQuery}} to non 
geospatial (cartesian) coordinate systems so lucene can provide the index & 
search capability for general geometry / non GIS type use cases.  (was: 
Currently the tessellator is tightly coupled with latitude and longitude 
(WGS84) geospatial coordinates. This issue will explore generalizing the 
tessellator to non geospatial coordinate systems so lucene can handle arbitrary 
projections in vector space.)

> XYShape: Adapt LatLonShape tessellator, field type, and queries to non-geo 
> shapes
> -
>
> Key: LUCENE-8632
> URL: https://issues.apache.org/jira/browse/LUCENE-8632
> Project: Lucene - Core
>  Issue Type: New Feature
>Reporter: Nicholas Knize
>Assignee: Nicholas Knize
>Priority: Major
>
> Currently the tessellator is tightly coupled with latitude and longitude 
> (WGS84) geospatial coordinates. This issue will explore generalizing the 
> tessellator, {{LatLonShape}} field and {{LatLonShapeQuery}} to non geospatial 
> (cartesian) coordinate systems so lucene can provide the index & search 
> capability for general geometry / non GIS type use cases.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Updated] (LUCENE-8632) XYShape: Adapt LatLonShape tessellator, field type, and queries to non-geo shapes

2019-06-17 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/LUCENE-8632?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize updated LUCENE-8632:
---
Summary: XYShape: Adapt LatLonShape tessellator, field type, and queries to 
non-geo shapes  (was: Adapt LatLonShape tessellator, field type, and queries to 
non-geo shapes)

> XYShape: Adapt LatLonShape tessellator, field type, and queries to non-geo 
> shapes
> -
>
> Key: LUCENE-8632
> URL: https://issues.apache.org/jira/browse/LUCENE-8632
> Project: Lucene - Core
>  Issue Type: New Feature
>Reporter: Nicholas Knize
>Assignee: Nicholas Knize
>Priority: Major
>
> Currently the tessellator is tightly coupled with latitude and longitude 
> (WGS84) geospatial coordinates. This issue will explore generalizing the 
> tessellator to non geospatial coordinate systems so lucene can handle 
> arbitrary projections in vector space.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Updated] (LUCENE-8632) Adapt LatLonShape tessellator, field type, and queries to non-geo shapes

2019-06-17 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/LUCENE-8632?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize updated LUCENE-8632:
---
Summary: Adapt LatLonShape tessellator, field type, and queries to non-geo 
shapes  (was: Adapt LatLonShape tessellator to non-geo shapes)

> Adapt LatLonShape tessellator, field type, and queries to non-geo shapes
> 
>
> Key: LUCENE-8632
> URL: https://issues.apache.org/jira/browse/LUCENE-8632
> Project: Lucene - Core
>  Issue Type: New Feature
>Reporter: Nicholas Knize
>Assignee: Nicholas Knize
>Priority: Major
>
> Currently the tessellator is tightly coupled with latitude and longitude 
> (WGS84) geospatial coordinates. This issue will explore generalizing the 
> tessellator to non geospatial coordinate systems so lucene can handle 
> arbitrary projections in vector space.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-8736) LatLonShapePolygonQuery returning incorrect WITHIN results with shared boundaries

2019-04-19 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8736?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16822007#comment-16822007
 ] 

Nicholas Knize commented on LUCENE-8736:


bq. If the behavior were to differ, practically speaking, would it be noticed?

By the general user, maybe not. I suppose we will find out. Though I would say 
the same about the minor performance change and I still think correctness 
trumps performance.  

bq. Points are the common use case by far.

All the more reason I think we should be following Geospatial specifications, 
for a geo field, like the rest of the geo community but if that's not the 
consensus and the 1-2qps performance change is unacceptable I'll split the 
logic changes out to shapes only and revert points. 

> LatLonShapePolygonQuery returning incorrect WITHIN results with shared 
> boundaries
> -
>
> Key: LUCENE-8736
> URL: https://issues.apache.org/jira/browse/LUCENE-8736
> Project: Lucene - Core
>  Issue Type: Bug
>Reporter: Nicholas Knize
>Assignee: Nicholas Knize
>Priority: Major
> Fix For: 8.1, master (9.0)
>
> Attachments: LUCENE-8736.patch, LUCENE-8736.patch, 
> adaptive-decoding.patch
>
>
> Triangles that are {{WITHIN}} a target polygon query that also share a 
> boundary with the polygon are incorrectly reported as {{CROSSES}} instead of 
> {{INSIDE}}. This leads to incorrect {{WITHIN}} query results  as demonstrated 
> in the following test:
> {code:java}
>   public void testWithinFailure() throws Exception {
> Directory dir = newDirectory();
> RandomIndexWriter w = new RandomIndexWriter(random(), dir);
> // test polygons:
> Polygon indexPoly1 = new Polygon(new double[] {4d, 4d, 3d, 3d, 4d}, new 
> double[] {3d, 4d, 4d, 3d, 3d});
> Polygon indexPoly2 = new Polygon(new double[] {2d, 2d, 1d, 1d, 2d}, new 
> double[] {6d, 7d, 7d, 6d, 6d});
> Polygon indexPoly3 = new Polygon(new double[] {1d, 1d, 0d, 0d, 1d}, new 
> double[] {3d, 4d, 4d, 3d, 3d});
> Polygon indexPoly4 = new Polygon(new double[] {2d, 2d, 1d, 1d, 2d}, new 
> double[] {0d, 1d, 1d, 0d, 0d});
> // index polygons:
> Document doc;
> addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly1);
> w.addDocument(doc);
> addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly2);
> w.addDocument(doc);
> addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly3);
> w.addDocument(doc);
> addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly4);
> w.addDocument(doc);
> / search //
> IndexReader reader = w.getReader();
> w.close();
> IndexSearcher searcher = newSearcher(reader);
> Polygon[] searchPoly = new Polygon[] {new Polygon(new double[] {4d, 4d, 
> 0d, 0d, 4d}, new double[] {0d, 7d, 7d, 0d, 0d})};
> Query q = LatLonShape.newPolygonQuery(FIELDNAME, QueryRelation.WITHIN, 
> searchPoly);
> assertEquals(4, searcher.count(q));
> IOUtils.close(w, reader, dir);
>   }
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-8736) LatLonShapePolygonQuery returning incorrect WITHIN results with shared boundaries

2019-04-18 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8736?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16821496#comment-16821496
 ] 

Nicholas Knize commented on LUCENE-8736:


{quote}that document is about shapes,
{quote}
That document is the "OpenGIS® Implementation Standard for Geographic 
information - Simple feature access - Part 1: Common architecture". It's about 
Geospatial Data and includes sections on spatial relations / predicates such as 
Point in Polygon search (and other geospatial geometries); not just shapes. I 
think it's important for a field such as *LatLon*Point (which is developed for 
geospatial search) follows community standards; it benefits the project as a 
whole and helps to be taken serious by the Geospatial community. Furthermore, 
the crossing number algorithm doc itself even says it considers topological and 
point-set theory delimitations for simplicity. The GIS specification does not 
share these requirements.

I'm also concerned about deviating behavior between {{LatLonPoint}} and 
{{LatLonShape}}. I think they should complement each other, and follow OGC 
standards, to avoid confusion. Again, just my opinion.

> LatLonShapePolygonQuery returning incorrect WITHIN results with shared 
> boundaries
> -
>
> Key: LUCENE-8736
> URL: https://issues.apache.org/jira/browse/LUCENE-8736
> Project: Lucene - Core
>  Issue Type: Bug
>Reporter: Nicholas Knize
>Assignee: Nicholas Knize
>Priority: Major
> Fix For: 8.1, master (9.0)
>
> Attachments: LUCENE-8736.patch, LUCENE-8736.patch, 
> adaptive-decoding.patch
>
>
> Triangles that are {{WITHIN}} a target polygon query that also share a 
> boundary with the polygon are incorrectly reported as {{CROSSES}} instead of 
> {{INSIDE}}. This leads to incorrect {{WITHIN}} query results  as demonstrated 
> in the following test:
> {code:java}
>   public void testWithinFailure() throws Exception {
> Directory dir = newDirectory();
> RandomIndexWriter w = new RandomIndexWriter(random(), dir);
> // test polygons:
> Polygon indexPoly1 = new Polygon(new double[] {4d, 4d, 3d, 3d, 4d}, new 
> double[] {3d, 4d, 4d, 3d, 3d});
> Polygon indexPoly2 = new Polygon(new double[] {2d, 2d, 1d, 1d, 2d}, new 
> double[] {6d, 7d, 7d, 6d, 6d});
> Polygon indexPoly3 = new Polygon(new double[] {1d, 1d, 0d, 0d, 1d}, new 
> double[] {3d, 4d, 4d, 3d, 3d});
> Polygon indexPoly4 = new Polygon(new double[] {2d, 2d, 1d, 1d, 2d}, new 
> double[] {0d, 1d, 1d, 0d, 0d});
> // index polygons:
> Document doc;
> addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly1);
> w.addDocument(doc);
> addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly2);
> w.addDocument(doc);
> addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly3);
> w.addDocument(doc);
> addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly4);
> w.addDocument(doc);
> / search //
> IndexReader reader = w.getReader();
> w.close();
> IndexSearcher searcher = newSearcher(reader);
> Polygon[] searchPoly = new Polygon[] {new Polygon(new double[] {4d, 4d, 
> 0d, 0d, 4d}, new double[] {0d, 7d, 7d, 0d, 0d})};
> Query q = LatLonShape.newPolygonQuery(FIELDNAME, QueryRelation.WITHIN, 
> searchPoly);
> assertEquals(4, searcher.count(q));
> IOUtils.close(w, reader, dir);
>   }
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Comment Edited] (LUCENE-8736) LatLonShapePolygonQuery returning incorrect WITHIN results with shared boundaries

2019-04-15 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8736?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16818019#comment-16818019
 ] 

Nicholas Knize edited comment on LUCENE-8736 at 4/15/19 4:06 PM:
-

{quote}it would be good to have an example where the determinant overflows as I 
haven't been able to exercise such an error.
{quote}
I'll see if I can grab an example. As expected, it doesn't occur when computing 
on encoded integer space; only decoded 64 bit double space.
{quote}I guess I don't see them as boundary failures.
{quote}
The concern I have is the behavior of excluding boundary points does not follow 
[OGC specifications;|http://portal.opengeospatial.org/files/?artifact_id=25355] 
(pg 37, "touches" relationship) which is the standard that geo systems _should_ 
follow; and the standard I think we should follow.
{quote}this patch really really hurts points
{quote}
Looking at the benchmarks I don't know that it _really_ _really_ hurts points. 
For me it's most important the behavior is correct. Then we can look at ways to 
improve performance? In this instance I think following the OGC community 
definition is probably best for defining "correct" behavior.


was (Author: nknize):
{quote}it would be good to have an example where the determinant overflows as I 
haven't been able to exercise such an error.
{quote}
I'll see if I can grab an example. As expected, it doesn't occur when computing 
on encoded integer space; only decoded 64 bit double space.
{quote}I guess I don't see them as boundary failures.
{quote}
The issue I have is the behavior of excluding boundary points does not follow 
[OGC specifications;|http://portal.opengeospatial.org/files/?artifact_id=25355] 
(pg 37, "touches" relationship) which is the standard that geo systems _should_ 
follow; and the standard I think we should follow.
{quote}this patch really really hurts points
{quote}
Looking at the benchmarks I don't know that it _really_ _really_ hurts points. 
For me it's most important the behavior is correct. Then we can look at ways to 
improve performance? In this instance I think following the OGC community 
definition is probably best for defining "correct" behavior.

> LatLonShapePolygonQuery returning incorrect WITHIN results with shared 
> boundaries
> -
>
> Key: LUCENE-8736
> URL: https://issues.apache.org/jira/browse/LUCENE-8736
> Project: Lucene - Core
>  Issue Type: Bug
>Reporter: Nicholas Knize
>Assignee: Nicholas Knize
>Priority: Major
> Fix For: 8.1, master (9.0)
>
> Attachments: LUCENE-8736.patch, LUCENE-8736.patch, 
> adaptive-decoding.patch
>
>
> Triangles that are {{WITHIN}} a target polygon query that also share a 
> boundary with the polygon are incorrectly reported as {{CROSSES}} instead of 
> {{INSIDE}}. This leads to incorrect {{WITHIN}} query results  as demonstrated 
> in the following test:
> {code:java}
>   public void testWithinFailure() throws Exception {
> Directory dir = newDirectory();
> RandomIndexWriter w = new RandomIndexWriter(random(), dir);
> // test polygons:
> Polygon indexPoly1 = new Polygon(new double[] {4d, 4d, 3d, 3d, 4d}, new 
> double[] {3d, 4d, 4d, 3d, 3d});
> Polygon indexPoly2 = new Polygon(new double[] {2d, 2d, 1d, 1d, 2d}, new 
> double[] {6d, 7d, 7d, 6d, 6d});
> Polygon indexPoly3 = new Polygon(new double[] {1d, 1d, 0d, 0d, 1d}, new 
> double[] {3d, 4d, 4d, 3d, 3d});
> Polygon indexPoly4 = new Polygon(new double[] {2d, 2d, 1d, 1d, 2d}, new 
> double[] {0d, 1d, 1d, 0d, 0d});
> // index polygons:
> Document doc;
> addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly1);
> w.addDocument(doc);
> addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly2);
> w.addDocument(doc);
> addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly3);
> w.addDocument(doc);
> addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly4);
> w.addDocument(doc);
> / search //
> IndexReader reader = w.getReader();
> w.close();
> IndexSearcher searcher = newSearcher(reader);
> Polygon[] searchPoly = new Polygon[] {new Polygon(new double[] {4d, 4d, 
> 0d, 0d, 4d}, new double[] {0d, 7d, 7d, 0d, 0d})};
> Query q = LatLonShape.newPolygonQuery(FIELDNAME, QueryRelation.WITHIN, 
> searchPoly);
> assertEquals(4, searcher.count(q));
> IOUtils.close(w, reader, dir);
>   }
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Comment Edited] (LUCENE-8736) LatLonShapePolygonQuery returning incorrect WITHIN results with shared boundaries

2019-04-15 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8736?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16818019#comment-16818019
 ] 

Nicholas Knize edited comment on LUCENE-8736 at 4/15/19 2:43 PM:
-

{quote}it would be good to have an example where the determinant overflows as I 
haven't been able to exercise such an error.
{quote}
I'll see if I can grab an example. As expected, it doesn't occur when computing 
on encoded integer space; only decoded 64 bit double space.
{quote}I guess I don't see them as boundary failures.
{quote}
The issue I have is the behavior of excluding boundary points does not follow 
[OGC specifications;|http://portal.opengeospatial.org/files/?artifact_id=25355] 
(pg 37, "touches" relationship) which is the standard that geo systems _should_ 
follow; and the standard I think we should follow.
{quote}this patch really really hurts points
{quote}
Looking at the benchmarks I don't know that it _really_ _really_ hurts points. 
For me it's most important the behavior is correct. Then we can look at ways to 
improve performance? In this instance I think following the OGC community 
definition is probably best for defining "correct" behavior.


was (Author: nknize):
{quote}it would be good to have an example where the determinant overflows as I 
haven't been able to exercise such an error.
{quote}
I'll see if I can grab an example. As expected, it doesn't occur when computing 
on encoded integer space; only decoded 64 bit double space.
{quote}I guess I don't see them as boundary failures.
{quote}
The issue I have is the behavior of excluding boundary points does not follow 
[OGC specifications;|http://portal.opengeospatial.org/files/?artifact_id=25355] 
which is the standard that geo systems _should_ follow; and the standard I 
think we should follow.
{quote}this patch really really hurts points
{quote}
Looking at the benchmarks I don't know that it _really_ _really_ hurts points. 
For me it's most important the behavior is correct. Then we can look at ways to 
improve performance? In this instance I think following the OGC community 
definition is probably best for defining "correct" behavior.

> LatLonShapePolygonQuery returning incorrect WITHIN results with shared 
> boundaries
> -
>
> Key: LUCENE-8736
> URL: https://issues.apache.org/jira/browse/LUCENE-8736
> Project: Lucene - Core
>  Issue Type: Bug
>Reporter: Nicholas Knize
>Assignee: Nicholas Knize
>Priority: Major
> Fix For: 8.1, master (9.0)
>
> Attachments: LUCENE-8736.patch, LUCENE-8736.patch, 
> adaptive-decoding.patch
>
>
> Triangles that are {{WITHIN}} a target polygon query that also share a 
> boundary with the polygon are incorrectly reported as {{CROSSES}} instead of 
> {{INSIDE}}. This leads to incorrect {{WITHIN}} query results  as demonstrated 
> in the following test:
> {code:java}
>   public void testWithinFailure() throws Exception {
> Directory dir = newDirectory();
> RandomIndexWriter w = new RandomIndexWriter(random(), dir);
> // test polygons:
> Polygon indexPoly1 = new Polygon(new double[] {4d, 4d, 3d, 3d, 4d}, new 
> double[] {3d, 4d, 4d, 3d, 3d});
> Polygon indexPoly2 = new Polygon(new double[] {2d, 2d, 1d, 1d, 2d}, new 
> double[] {6d, 7d, 7d, 6d, 6d});
> Polygon indexPoly3 = new Polygon(new double[] {1d, 1d, 0d, 0d, 1d}, new 
> double[] {3d, 4d, 4d, 3d, 3d});
> Polygon indexPoly4 = new Polygon(new double[] {2d, 2d, 1d, 1d, 2d}, new 
> double[] {0d, 1d, 1d, 0d, 0d});
> // index polygons:
> Document doc;
> addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly1);
> w.addDocument(doc);
> addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly2);
> w.addDocument(doc);
> addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly3);
> w.addDocument(doc);
> addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly4);
> w.addDocument(doc);
> / search //
> IndexReader reader = w.getReader();
> w.close();
> IndexSearcher searcher = newSearcher(reader);
> Polygon[] searchPoly = new Polygon[] {new Polygon(new double[] {4d, 4d, 
> 0d, 0d, 4d}, new double[] {0d, 7d, 7d, 0d, 0d})};
> Query q = LatLonShape.newPolygonQuery(FIELDNAME, QueryRelation.WITHIN, 
> searchPoly);
> assertEquals(4, searcher.count(q));
> IOUtils.close(w, reader, dir);
>   }
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Comment Edited] (LUCENE-8736) LatLonShapePolygonQuery returning incorrect WITHIN results with shared boundaries

2019-04-15 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8736?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16818019#comment-16818019
 ] 

Nicholas Knize edited comment on LUCENE-8736 at 4/15/19 2:42 PM:
-

{quote}it would be good to have an example where the determinant overflows as I 
haven't been able to exercise such an error.
{quote}
I'll see if I can grab an example. As expected, it doesn't occur when computing 
on encoded integer space; only decoded 64 bit double space.
{quote}I guess I don't see them as boundary failures.
{quote}
The issue I have is the behavior of excluding boundary points does not follow 
[OGC specifications;|http://portal.opengeospatial.org/files/?artifact_id=25355] 
which is the standard that geo systems _should_ follow; and the standard I 
think we should follow.
{quote}this patch really really hurts points
{quote}
Looking at the benchmarks I don't know that it _really_ _really_ hurts points. 
For me it's most important the behavior is correct. Then we can look at ways to 
improve performance? In this instance I think following the OGC community 
definition is probably best for defining "correct" behavior.


was (Author: nknize):
{quote}it would be good to have an example where the determinant overflows as I 
haven't been able to exercise such an error.
{quote}
I'll see if I can grab an example. As expected, it doesn't occur when computing 
on encoded integer space; only decoded 64 bit double space.
{quote}I guess I don't see them as boundary failures.
{quote}
The issue I have is the behavior of excluding boundary points does not follow 
[OGC specifications;|https://www.opengeospatial.org/standards/sfa] which is the 
standard that geo systems _should_ follow; and the standard I think we should 
follow.
{quote}this patch really really hurts points
{quote}
Looking at the benchmarks I don't know that it _really_ _really_ hurts points. 
For me it's most important the behavior is correct. Then we can look at ways to 
improve performance? In this instance I think following the OGC community 
definition is probably best for defining "correct" behavior.

> LatLonShapePolygonQuery returning incorrect WITHIN results with shared 
> boundaries
> -
>
> Key: LUCENE-8736
> URL: https://issues.apache.org/jira/browse/LUCENE-8736
> Project: Lucene - Core
>  Issue Type: Bug
>Reporter: Nicholas Knize
>Assignee: Nicholas Knize
>Priority: Major
> Fix For: 8.1, master (9.0)
>
> Attachments: LUCENE-8736.patch, LUCENE-8736.patch, 
> adaptive-decoding.patch
>
>
> Triangles that are {{WITHIN}} a target polygon query that also share a 
> boundary with the polygon are incorrectly reported as {{CROSSES}} instead of 
> {{INSIDE}}. This leads to incorrect {{WITHIN}} query results  as demonstrated 
> in the following test:
> {code:java}
>   public void testWithinFailure() throws Exception {
> Directory dir = newDirectory();
> RandomIndexWriter w = new RandomIndexWriter(random(), dir);
> // test polygons:
> Polygon indexPoly1 = new Polygon(new double[] {4d, 4d, 3d, 3d, 4d}, new 
> double[] {3d, 4d, 4d, 3d, 3d});
> Polygon indexPoly2 = new Polygon(new double[] {2d, 2d, 1d, 1d, 2d}, new 
> double[] {6d, 7d, 7d, 6d, 6d});
> Polygon indexPoly3 = new Polygon(new double[] {1d, 1d, 0d, 0d, 1d}, new 
> double[] {3d, 4d, 4d, 3d, 3d});
> Polygon indexPoly4 = new Polygon(new double[] {2d, 2d, 1d, 1d, 2d}, new 
> double[] {0d, 1d, 1d, 0d, 0d});
> // index polygons:
> Document doc;
> addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly1);
> w.addDocument(doc);
> addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly2);
> w.addDocument(doc);
> addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly3);
> w.addDocument(doc);
> addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly4);
> w.addDocument(doc);
> / search //
> IndexReader reader = w.getReader();
> w.close();
> IndexSearcher searcher = newSearcher(reader);
> Polygon[] searchPoly = new Polygon[] {new Polygon(new double[] {4d, 4d, 
> 0d, 0d, 4d}, new double[] {0d, 7d, 7d, 0d, 0d})};
> Query q = LatLonShape.newPolygonQuery(FIELDNAME, QueryRelation.WITHIN, 
> searchPoly);
> assertEquals(4, searcher.count(q));
> IOUtils.close(w, reader, dir);
>   }
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-8736) LatLonShapePolygonQuery returning incorrect WITHIN results with shared boundaries

2019-04-15 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8736?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16818019#comment-16818019
 ] 

Nicholas Knize commented on LUCENE-8736:


{quote}it would be good to have an example where the determinant overflows as I 
haven't been able to exercise such an error.
{quote}
I'll see if I can grab an example. As expected, it doesn't occur when computing 
on encoded integer space; only decoded 64 bit double space.
{quote}I guess I don't see them as boundary failures.
{quote}
The issue I have is the behavior of excluding boundary points does not follow 
[OGC specifications;|https://www.opengeospatial.org/standards/sfa] which is the 
standard that geo systems _should_ follow; and the standard I think we should 
follow.
{quote}this patch really really hurts points
{quote}
Looking at the benchmarks I don't know that it _really_ _really_ hurts points. 
For me it's most important the behavior is correct. Then we can look at ways to 
improve performance? In this instance I think following the OGC community 
definition is probably best for defining "correct" behavior.

> LatLonShapePolygonQuery returning incorrect WITHIN results with shared 
> boundaries
> -
>
> Key: LUCENE-8736
> URL: https://issues.apache.org/jira/browse/LUCENE-8736
> Project: Lucene - Core
>  Issue Type: Bug
>Reporter: Nicholas Knize
>Assignee: Nicholas Knize
>Priority: Major
> Fix For: 8.1, master (9.0)
>
> Attachments: LUCENE-8736.patch, LUCENE-8736.patch, 
> adaptive-decoding.patch
>
>
> Triangles that are {{WITHIN}} a target polygon query that also share a 
> boundary with the polygon are incorrectly reported as {{CROSSES}} instead of 
> {{INSIDE}}. This leads to incorrect {{WITHIN}} query results  as demonstrated 
> in the following test:
> {code:java}
>   public void testWithinFailure() throws Exception {
> Directory dir = newDirectory();
> RandomIndexWriter w = new RandomIndexWriter(random(), dir);
> // test polygons:
> Polygon indexPoly1 = new Polygon(new double[] {4d, 4d, 3d, 3d, 4d}, new 
> double[] {3d, 4d, 4d, 3d, 3d});
> Polygon indexPoly2 = new Polygon(new double[] {2d, 2d, 1d, 1d, 2d}, new 
> double[] {6d, 7d, 7d, 6d, 6d});
> Polygon indexPoly3 = new Polygon(new double[] {1d, 1d, 0d, 0d, 1d}, new 
> double[] {3d, 4d, 4d, 3d, 3d});
> Polygon indexPoly4 = new Polygon(new double[] {2d, 2d, 1d, 1d, 2d}, new 
> double[] {0d, 1d, 1d, 0d, 0d});
> // index polygons:
> Document doc;
> addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly1);
> w.addDocument(doc);
> addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly2);
> w.addDocument(doc);
> addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly3);
> w.addDocument(doc);
> addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly4);
> w.addDocument(doc);
> / search //
> IndexReader reader = w.getReader();
> w.close();
> IndexSearcher searcher = newSearcher(reader);
> Polygon[] searchPoly = new Polygon[] {new Polygon(new double[] {4d, 4d, 
> 0d, 0d, 4d}, new double[] {0d, 7d, 7d, 0d, 0d})};
> Query q = LatLonShape.newPolygonQuery(FIELDNAME, QueryRelation.WITHIN, 
> searchPoly);
> assertEquals(4, searcher.count(q));
> IOUtils.close(w, reader, dir);
>   }
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Reopened] (LUCENE-8736) LatLonShapePolygonQuery returning incorrect WITHIN results with shared boundaries

2019-04-12 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/LUCENE-8736?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize reopened LUCENE-8736:

 Assignee: Nicholas Knize
Lucene Fields: New  (was: New,Patch Available)

[~rcmuir] yeah I was thinking about that while working these changes. On the 
one hand explicitly accepting boundary failures (especially for such common 
cases as shown here and in the test) is annoying (though I get the reasoning). 
On the other hand, the determinant equality approach could also [suffer from 
overflow|https://www.cs.cmu.edu/~quake/robust.html]. The problem with the 
latter is that we don't have a good feel for the rate at which overflow occurs 
or the percentage of false positives for when points outside the polygon are 
erroneously determined as colinear by an overflowed determinant. I think that 
deserves some further exploration.

So for now, I can revert the change for points but I'm curious to your thoughts 
around exploring the [adaptive 
orientation|https://www.cs.cmu.edu/afs/cs/project/quake/public/code/predicates.c]
 (_orient2dadap_) approach to solve the overflow issue. I have a [very rough 
port|https://gist.github.com/nknize/dd1dc8a1ccaa8900b70c478cce846f29] that I 
can experiment with for points in a separate issue?



> LatLonShapePolygonQuery returning incorrect WITHIN results with shared 
> boundaries
> -
>
> Key: LUCENE-8736
> URL: https://issues.apache.org/jira/browse/LUCENE-8736
> Project: Lucene - Core
>  Issue Type: Bug
>Reporter: Nicholas Knize
>Assignee: Nicholas Knize
>Priority: Major
> Fix For: 8.1, master (9.0)
>
> Attachments: LUCENE-8736.patch, LUCENE-8736.patch, 
> adaptive-decoding.patch
>
>
> Triangles that are {{WITHIN}} a target polygon query that also share a 
> boundary with the polygon are incorrectly reported as {{CROSSES}} instead of 
> {{INSIDE}}. This leads to incorrect {{WITHIN}} query results  as demonstrated 
> in the following test:
> {code:java}
>   public void testWithinFailure() throws Exception {
> Directory dir = newDirectory();
> RandomIndexWriter w = new RandomIndexWriter(random(), dir);
> // test polygons:
> Polygon indexPoly1 = new Polygon(new double[] {4d, 4d, 3d, 3d, 4d}, new 
> double[] {3d, 4d, 4d, 3d, 3d});
> Polygon indexPoly2 = new Polygon(new double[] {2d, 2d, 1d, 1d, 2d}, new 
> double[] {6d, 7d, 7d, 6d, 6d});
> Polygon indexPoly3 = new Polygon(new double[] {1d, 1d, 0d, 0d, 1d}, new 
> double[] {3d, 4d, 4d, 3d, 3d});
> Polygon indexPoly4 = new Polygon(new double[] {2d, 2d, 1d, 1d, 2d}, new 
> double[] {0d, 1d, 1d, 0d, 0d});
> // index polygons:
> Document doc;
> addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly1);
> w.addDocument(doc);
> addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly2);
> w.addDocument(doc);
> addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly3);
> w.addDocument(doc);
> addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly4);
> w.addDocument(doc);
> / search //
> IndexReader reader = w.getReader();
> w.close();
> IndexSearcher searcher = newSearcher(reader);
> Polygon[] searchPoly = new Polygon[] {new Polygon(new double[] {4d, 4d, 
> 0d, 0d, 4d}, new double[] {0d, 7d, 7d, 0d, 0d})};
> Query q = LatLonShape.newPolygonQuery(FIELDNAME, QueryRelation.WITHIN, 
> searchPoly);
> assertEquals(4, searcher.count(q));
> IOUtils.close(w, reader, dir);
>   }
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Updated] (LUCENE-8736) LatLonShapePolygonQuery returning incorrect WITHIN results with shared boundaries

2019-04-11 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/LUCENE-8736?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize updated LUCENE-8736:
---
Fix Version/s: master (9.0)
   8.1

> LatLonShapePolygonQuery returning incorrect WITHIN results with shared 
> boundaries
> -
>
> Key: LUCENE-8736
> URL: https://issues.apache.org/jira/browse/LUCENE-8736
> Project: Lucene - Core
>  Issue Type: Bug
>Reporter: Nicholas Knize
>Priority: Major
> Fix For: 8.1, master (9.0)
>
> Attachments: LUCENE-8736.patch, LUCENE-8736.patch, 
> adaptive-decoding.patch
>
>
> Triangles that are {{WITHIN}} a target polygon query that also share a 
> boundary with the polygon are incorrectly reported as {{CROSSES}} instead of 
> {{INSIDE}}. This leads to incorrect {{WITHIN}} query results  as demonstrated 
> in the following test:
> {code:java}
>   public void testWithinFailure() throws Exception {
> Directory dir = newDirectory();
> RandomIndexWriter w = new RandomIndexWriter(random(), dir);
> // test polygons:
> Polygon indexPoly1 = new Polygon(new double[] {4d, 4d, 3d, 3d, 4d}, new 
> double[] {3d, 4d, 4d, 3d, 3d});
> Polygon indexPoly2 = new Polygon(new double[] {2d, 2d, 1d, 1d, 2d}, new 
> double[] {6d, 7d, 7d, 6d, 6d});
> Polygon indexPoly3 = new Polygon(new double[] {1d, 1d, 0d, 0d, 1d}, new 
> double[] {3d, 4d, 4d, 3d, 3d});
> Polygon indexPoly4 = new Polygon(new double[] {2d, 2d, 1d, 1d, 2d}, new 
> double[] {0d, 1d, 1d, 0d, 0d});
> // index polygons:
> Document doc;
> addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly1);
> w.addDocument(doc);
> addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly2);
> w.addDocument(doc);
> addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly3);
> w.addDocument(doc);
> addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly4);
> w.addDocument(doc);
> / search //
> IndexReader reader = w.getReader();
> w.close();
> IndexSearcher searcher = newSearcher(reader);
> Polygon[] searchPoly = new Polygon[] {new Polygon(new double[] {4d, 4d, 
> 0d, 0d, 4d}, new double[] {0d, 7d, 7d, 0d, 0d})};
> Query q = LatLonShape.newPolygonQuery(FIELDNAME, QueryRelation.WITHIN, 
> searchPoly);
> assertEquals(4, searcher.count(q));
> IOUtils.close(w, reader, dir);
>   }
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Resolved] (LUCENE-8736) LatLonShapePolygonQuery returning incorrect WITHIN results with shared boundaries

2019-04-11 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/LUCENE-8736?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize resolved LUCENE-8736.

Resolution: Fixed

> LatLonShapePolygonQuery returning incorrect WITHIN results with shared 
> boundaries
> -
>
> Key: LUCENE-8736
> URL: https://issues.apache.org/jira/browse/LUCENE-8736
> Project: Lucene - Core
>  Issue Type: Bug
>Reporter: Nicholas Knize
>Priority: Major
> Fix For: 8.1, master (9.0)
>
> Attachments: LUCENE-8736.patch, LUCENE-8736.patch, 
> adaptive-decoding.patch
>
>
> Triangles that are {{WITHIN}} a target polygon query that also share a 
> boundary with the polygon are incorrectly reported as {{CROSSES}} instead of 
> {{INSIDE}}. This leads to incorrect {{WITHIN}} query results  as demonstrated 
> in the following test:
> {code:java}
>   public void testWithinFailure() throws Exception {
> Directory dir = newDirectory();
> RandomIndexWriter w = new RandomIndexWriter(random(), dir);
> // test polygons:
> Polygon indexPoly1 = new Polygon(new double[] {4d, 4d, 3d, 3d, 4d}, new 
> double[] {3d, 4d, 4d, 3d, 3d});
> Polygon indexPoly2 = new Polygon(new double[] {2d, 2d, 1d, 1d, 2d}, new 
> double[] {6d, 7d, 7d, 6d, 6d});
> Polygon indexPoly3 = new Polygon(new double[] {1d, 1d, 0d, 0d, 1d}, new 
> double[] {3d, 4d, 4d, 3d, 3d});
> Polygon indexPoly4 = new Polygon(new double[] {2d, 2d, 1d, 1d, 2d}, new 
> double[] {0d, 1d, 1d, 0d, 0d});
> // index polygons:
> Document doc;
> addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly1);
> w.addDocument(doc);
> addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly2);
> w.addDocument(doc);
> addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly3);
> w.addDocument(doc);
> addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly4);
> w.addDocument(doc);
> / search //
> IndexReader reader = w.getReader();
> w.close();
> IndexSearcher searcher = newSearcher(reader);
> Polygon[] searchPoly = new Polygon[] {new Polygon(new double[] {4d, 4d, 
> 0d, 0d, 4d}, new double[] {0d, 7d, 7d, 0d, 0d})};
> Query q = LatLonShape.newPolygonQuery(FIELDNAME, QueryRelation.WITHIN, 
> searchPoly);
> assertEquals(4, searcher.count(q));
> IOUtils.close(w, reader, dir);
>   }
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-8736) LatLonShapePolygonQuery returning incorrect WITHIN results with shared boundaries

2019-03-26 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8736?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16801806#comment-16801806
 ] 

Nicholas Knize commented on LUCENE-8736:


Thanks [~ivera]! 

bq. I have tried to quantize the query polygon but that seems to add other 
issues

Indeed, the patch doesn't fix incorrect results related to quantization 
differences; which, as you pointed out, is related to the example test failure 
I posted. I think we can investigate and address that in a separate issue? 

Also, related to this ticket is a similar issue w/ 
{{Polygon2D.componentRelate}} which uses the same faulty logic as 
{{componentRelateTriangle}}. I'll add a similar fix and tighten up the testing 
in this patch so it better characterizes what this change is doing. 

> LatLonShapePolygonQuery returning incorrect WITHIN results with shared 
> boundaries
> -
>
> Key: LUCENE-8736
> URL: https://issues.apache.org/jira/browse/LUCENE-8736
> Project: Lucene - Core
>  Issue Type: Bug
>Reporter: Nicholas Knize
>Priority: Major
> Attachments: LUCENE-8736.patch
>
>
> Triangles that are {{WITHIN}} a target polygon query that also share a 
> boundary with the polygon are incorrectly reported as {{CROSSES}} instead of 
> {{INSIDE}}. This leads to incorrect {{WITHIN}} query results  as demonstrated 
> in the following test:
> {code:java}
>   public void testWithinFailure() throws Exception {
> Directory dir = newDirectory();
> RandomIndexWriter w = new RandomIndexWriter(random(), dir);
> // test polygons:
> Polygon indexPoly1 = new Polygon(new double[] {4d, 4d, 3d, 3d, 4d}, new 
> double[] {3d, 4d, 4d, 3d, 3d});
> Polygon indexPoly2 = new Polygon(new double[] {2d, 2d, 1d, 1d, 2d}, new 
> double[] {6d, 7d, 7d, 6d, 6d});
> Polygon indexPoly3 = new Polygon(new double[] {1d, 1d, 0d, 0d, 1d}, new 
> double[] {3d, 4d, 4d, 3d, 3d});
> Polygon indexPoly4 = new Polygon(new double[] {2d, 2d, 1d, 1d, 2d}, new 
> double[] {0d, 1d, 1d, 0d, 0d});
> // index polygons:
> Document doc;
> addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly1);
> w.addDocument(doc);
> addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly2);
> w.addDocument(doc);
> addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly3);
> w.addDocument(doc);
> addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly4);
> w.addDocument(doc);
> / search //
> IndexReader reader = w.getReader();
> w.close();
> IndexSearcher searcher = newSearcher(reader);
> Polygon[] searchPoly = new Polygon[] {new Polygon(new double[] {4d, 4d, 
> 0d, 0d, 4d}, new double[] {0d, 7d, 7d, 0d, 0d})};
> Query q = LatLonShape.newPolygonQuery(FIELDNAME, QueryRelation.WITHIN, 
> searchPoly);
> assertEquals(4, searcher.count(q));
> IOUtils.close(w, reader, dir);
>   }
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Created] (LUCENE-8736) LatLonShapePolygonQuery returning incorrect WITHIN results with shared boundaries

2019-03-22 Thread Nicholas Knize (JIRA)
Nicholas Knize created LUCENE-8736:
--

 Summary: LatLonShapePolygonQuery returning incorrect WITHIN 
results with shared boundaries
 Key: LUCENE-8736
 URL: https://issues.apache.org/jira/browse/LUCENE-8736
 Project: Lucene - Core
  Issue Type: Bug
Reporter: Nicholas Knize


Triangles that are {{WITHIN}} a target polygon query that also share a boundary 
with the polygon are incorrectly reported as {{CROSSES}} instead of {{INSIDE}}. 
This leads to incorrect {{WITHIN}} query results  as demonstrated in the 
following test:

{code:java}
  public void testWithinFailure() throws Exception {
Directory dir = newDirectory();
RandomIndexWriter w = new RandomIndexWriter(random(), dir);

// test polygons:
Polygon indexPoly1 = new Polygon(new double[] {4d, 4d, 3d, 3d, 4d}, new 
double[] {3d, 4d, 4d, 3d, 3d});
Polygon indexPoly2 = new Polygon(new double[] {2d, 2d, 1d, 1d, 2d}, new 
double[] {6d, 7d, 7d, 6d, 6d});
Polygon indexPoly3 = new Polygon(new double[] {1d, 1d, 0d, 0d, 1d}, new 
double[] {3d, 4d, 4d, 3d, 3d});
Polygon indexPoly4 = new Polygon(new double[] {2d, 2d, 1d, 1d, 2d}, new 
double[] {0d, 1d, 1d, 0d, 0d});

// index polygons:
Document doc;
addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly1);
w.addDocument(doc);
addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly2);
w.addDocument(doc);
addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly3);
w.addDocument(doc);
addPolygonsToDoc(FIELDNAME, doc = new Document(), indexPoly4);
w.addDocument(doc);

/ search //
IndexReader reader = w.getReader();
w.close();
IndexSearcher searcher = newSearcher(reader);

Polygon[] searchPoly = new Polygon[] {new Polygon(new double[] {4d, 4d, 0d, 
0d, 4d}, new double[] {0d, 7d, 7d, 0d, 0d})};

Query q = LatLonShape.newPolygonQuery(FIELDNAME, QueryRelation.WITHIN, 
searchPoly);
assertEquals(4, searcher.count(q));
IOUtils.close(w, reader, dir);
  }
{code}




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-8721) LatLonShapePolygon and LineQuery fail on shared dateline queries

2019-03-12 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8721?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16790781#comment-16790781
 ] 

Nicholas Knize commented on LUCENE-8721:


bq. Should we check whether there is an intersection between the range of 
latitudes of the query and of the box/triangle?

Yes. I posted the wrong patch. Corrected in the new one.

bq. the coordinates are on the encoded space.

The coordinates are in the decoded space but they have been quantized so I've 
corrected maxLon to use its quantized variant.

bq. +1 to simplify the logic on EdgeTree. It is trivial to merge the methods 
relate &  internalComponentRelate and it makes sense. I will open an issue.

+1 to simplify. I went ahead and started by merging the two methods in this 
patch since it made sense. The new issue can explore further refactoring the 
logic for clarity.

> LatLonShapePolygon and LineQuery fail on shared dateline queries
> 
>
> Key: LUCENE-8721
> URL: https://issues.apache.org/jira/browse/LUCENE-8721
> Project: Lucene - Core
>  Issue Type: Bug
>Reporter: Nicholas Knize
>Priority: Major
> Attachments: LUCENE-8721.patch, LUCENE-8721.patch
>
>
> Indexed shapes should be returned with search geometries that share the 
> dateline on the opposite hemisphere. 
> For example:
> {code:java}
>   public void testSharedDateline() throws Exception {
>  index /
> Directory dir = newDirectory();
> RandomIndexWriter w = new RandomIndexWriter(random(), dir);
> Document doc = new Document();
> // index western hemisphere geometry
> Polygon indexPoly = new Polygon(
> new double[] {-7.5d, 15d, 15d, 0d, -7.5d},
> new double[] {-180d, -180d, -176d, -176d, -180d}
> );
> Field[] fields = LatLonShape.createIndexableFields("test", indexPoly);
> for (Field f : fields) {
>   doc.add(f);
> }
> w.addDocument(doc);
> w.forceMerge(1);
> / search //
> IndexReader reader = w.getReader();
> w.close();
> IndexSearcher searcher = newSearcher(reader);
> // search w/ eastern hemisphere geometry that shares the dateline
> Polygon searchPoly = new Polygon(new double[] {-7.5d, 15d, 15d, 0d, 
> -7.5d},
> new double[] {180d, 180d, 170d, 170d, 180d});
> Query q = LatLonShape.newPolygonQuery("test", QueryRelation.INTERSECTS, 
> searchPoly);
> assertEquals(1, searcher.count(q));
> IOUtils.close(w, reader, dir);
>   }
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Created] (LUCENE-8721) LatLonShapePolygon and LineQuery fail on shared dateline queries

2019-03-11 Thread Nicholas Knize (JIRA)
Nicholas Knize created LUCENE-8721:
--

 Summary: LatLonShapePolygon and LineQuery fail on shared dateline 
queries
 Key: LUCENE-8721
 URL: https://issues.apache.org/jira/browse/LUCENE-8721
 Project: Lucene - Core
  Issue Type: Bug
Reporter: Nicholas Knize


Indexed shapes should be returned with search geometries that share the 
dateline on the opposite hemisphere. 

For example:

{code:java}

  public void testSharedDateline() throws Exception {
 index /
Directory dir = newDirectory();
RandomIndexWriter w = new RandomIndexWriter(random(), dir);
Document doc = new Document();
// index western hemisphere geometry
Polygon indexPoly = new Polygon(
new double[] {-7.5d, 15d, 15d, 0d, -7.5d},
new double[] {-180d, -180d, -176d, -176d, -180d}
);
Field[] fields = LatLonShape.createIndexableFields("test", indexPoly);
for (Field f : fields) {
  doc.add(f);
}
w.addDocument(doc);
w.forceMerge(1);

/ search //
IndexReader reader = w.getReader();
w.close();
IndexSearcher searcher = newSearcher(reader);
// search w/ eastern hemisphere geometry that shares the dateline
Polygon searchPoly = new Polygon(new double[] {-7.5d, 15d, 15d, 0d, -7.5d},
new double[] {180d, 180d, 170d, 170d, 180d});
Query q = LatLonShape.newPolygonQuery("test", QueryRelation.INTERSECTS, 
searchPoly);
assertEquals(1, searcher.count(q));
IOUtils.close(w, reader, dir);
  }
{code}




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-8712) Polygon2D does not detect crossings in some cases

2019-03-11 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8712?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16789880#comment-16789880
 ] 

Nicholas Knize commented on LUCENE-8712:


bq. reverts the crossing logic and handles the dateline crossings by skipping 
edges that belongs to the dateline

+1. In essence it treats the dateline as +/- INFINITY. I like this approach as 
it cleans up the code quite a bit and helps out w/ CONTAINS. 

> Polygon2D does not detect crossings in some cases
> -
>
> Key: LUCENE-8712
> URL: https://issues.apache.org/jira/browse/LUCENE-8712
> Project: Lucene - Core
>  Issue Type: Bug
>Reporter: Ignacio Vera
>Priority: Major
> Attachments: LUCENE-8712.patch, LUCENE-8712.patch, LUCENE-8712.patch
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Polygon2D does not detect crossing if the triangle crosses through points of 
> the polygon and none of the points are inside it. For example:
>  
> {code:java}
> public void testLineCrossingPolygonPoints() {
>   Polygon p = new Polygon(new double[] {0, -1, 0, 1, 0}, new double[] {-1, 0, 
> 1, 0, -1});
>   Polygon2D polygon2D = Polygon2D.create(p);
>   PointValues.Relation rel = 
> polygon2D.relateTriangle(GeoEncodingUtils.decodeLongitude(GeoEncodingUtils.encodeLongitude(-1.5)),
>   GeoEncodingUtils.decodeLatitude(GeoEncodingUtils.encodeLatitude(0)),
>   GeoEncodingUtils.decodeLongitude(GeoEncodingUtils.encodeLongitude(1.5)),
>   GeoEncodingUtils.decodeLatitude(GeoEncodingUtils.encodeLatitude(0)),
>   
> GeoEncodingUtils.decodeLongitude(GeoEncodingUtils.encodeLongitude(-1.5)),
>   GeoEncodingUtils.decodeLatitude(GeoEncodingUtils.encodeLatitude(0)));
>   assertEquals(PointValues.Relation.CELL_CROSSES_QUERY, rel);
> }{code}
> [~nknize] you might want to look at this as I am not sure what to do.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Comment Edited] (LUCENE-8712) Polygon2D does not detect crossings in some cases

2019-03-05 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8712?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16784760#comment-16784760
 ] 

Nicholas Knize edited comment on LUCENE-8712 at 3/5/19 6:47 PM:


I took a quick look at this and agree the test case posted exposes a bug in 
{{EdgeTree.relateTriangle}}. The problem is in LUCENE-8679 we added a binary 
condition that returns {{CELL_OUTSIDE_QUERY}} unless {{insideEdges == 3}}. When 
Instead, in the case that {{insideEdges != 3}} but {{insideEdges > 0}} should 
return {{CELL_CROSSES}} query.

Another important thing to note, {{GeoUtils.lineRelateLine}} satisfies the 
commutative property. So line order does not matter: line 1 terminating at line 
2 == line 2 terminating at line 1 == {{CELL_INSIDE_QUERY}}  So 
{{testLineRelateLine}} will always fail because its assuming order will change 
the result.

I've posted a quick patch that corrects the bug posted. There's also some code 
refactoring that renames all instances of {{min/max}} {{lat/lon}} for the 
triangle to {{triMin/triMax }} {{lat/lon}} to avoid confusion w/ the bounding 
box of the polygon.


was (Author: nknize):
I took a quick look at this and agree the test case posted exposes a bug in 
{{EdgeTree.relateTriangle}}. The problem is in LUCENE-8679 we added a binary 
condition that returns {{CELL_OUTSIDE_QUERY}} unless {{insideEdges == 3}}. When 
Instead, in the case that {{insideEdges != 3}} but {{insideEdges > 0}} should 
return {{CELL_CROSSES}} query.

Another important thing to note, {{GeoUtils.lineRelateLine}} satisfies the 
commutative property. So line order does not matter: line 1 terminating at line 
2 == line 2 terminating at line 1 == {{CELL_INSIDE_QUERY}}

I've posted a quick patch that corrects the bug posted. There's also some code 
refactoring that renames all instances of {{min/max}} {{lat/lon}} for the 
triangle to {{triMin/triMax }} {{lat/lon}} to avoid confusion w/ the bounding 
box of the polygon.

> Polygon2D does not detect crossings in some cases
> -
>
> Key: LUCENE-8712
> URL: https://issues.apache.org/jira/browse/LUCENE-8712
> Project: Lucene - Core
>  Issue Type: Bug
>Reporter: Ignacio Vera
>Priority: Major
> Attachments: LUCENE-8712.patch, LUCENE-8712.patch
>
>
> Polygon2D does not detect crossing if the triangle crosses through points of 
> the polygon and none of the points are inside it. For example:
>  
> {code:java}
> public void testLineCrossingPolygonPoints() {
>   Polygon p = new Polygon(new double[] {0, -1, 0, 1, 0}, new double[] {-1, 0, 
> 1, 0, -1});
>   Polygon2D polygon2D = Polygon2D.create(p);
>   PointValues.Relation rel = 
> polygon2D.relateTriangle(GeoEncodingUtils.decodeLongitude(GeoEncodingUtils.encodeLongitude(-1.5)),
>   GeoEncodingUtils.decodeLatitude(GeoEncodingUtils.encodeLatitude(0)),
>   GeoEncodingUtils.decodeLongitude(GeoEncodingUtils.encodeLongitude(1.5)),
>   GeoEncodingUtils.decodeLatitude(GeoEncodingUtils.encodeLatitude(0)),
>   
> GeoEncodingUtils.decodeLongitude(GeoEncodingUtils.encodeLongitude(-1.5)),
>   GeoEncodingUtils.decodeLatitude(GeoEncodingUtils.encodeLatitude(0)));
>   assertEquals(PointValues.Relation.CELL_CROSSES_QUERY, rel);
> }{code}
> [~nknize] you might want to look at this as I am not sure what to do.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Comment Edited] (LUCENE-8712) Polygon2D does not detect crossings in some cases

2019-03-05 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8712?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16784760#comment-16784760
 ] 

Nicholas Knize edited comment on LUCENE-8712 at 3/5/19 6:41 PM:


I took a quick look at this and agree the test case posted exposes a bug in 
{{EdgeTree.relateTriangle}}. The problem is in LUCENE-8679 we added a binary 
condition that returns {{CELL_OUTSIDE_QUERY}} unless {{insideEdges == 3}}. When 
Instead, in the case that {{insideEdges != 3}} but {{insideEdges > 0}} should 
return {{CELL_CROSSES}} query.

Another important thing to note, {{GeoUtils.lineRelateLine}} satisfies the 
commutative property. So line order does not matter: line 1 terminating at line 
2 == line 2 terminating at line 1 == {{CELL_INSIDE_QUERY}}

I've posted a quick patch that corrects the bug posted. There's also some code 
refactoring that renames all instances of {{min/max}} {{lat/lon}} for the 
triangle to {{triMin/triMax }} {{lat/lon}} to avoid confusion w/ the bounding 
box of the polygon.


was (Author: nknize):
I took a quick look at this and agree the test case posted exposes a bug in 
{{EdgeTree.relateTriangle}}. The problem is in LUCENE-8679 we added a binary 
condition that {{CELL_OUTSIDE_QUERY}} unless {{insideEdges == 3}}. Instead, 
{{insideEdges != 3}} but  {{insideEdges > 0}} should return {{CELL_CROSSES}} 
query. 

Another important thing to note, {{GeoUtils.lineRelateLine}} satisfies the 
commutative property. So line order does not matter: line 1 terminating at line 
2 == line 2 terminating at line 1 == {{CELL_INSIDE_QUERY}}

> Polygon2D does not detect crossings in some cases
> -
>
> Key: LUCENE-8712
> URL: https://issues.apache.org/jira/browse/LUCENE-8712
> Project: Lucene - Core
>  Issue Type: Bug
>Reporter: Ignacio Vera
>Priority: Major
> Attachments: LUCENE-8712.patch, LUCENE-8712.patch
>
>
> Polygon2D does not detect crossing if the triangle crosses through points of 
> the polygon and none of the points are inside it. For example:
>  
> {code:java}
> public void testLineCrossingPolygonPoints() {
>   Polygon p = new Polygon(new double[] {0, -1, 0, 1, 0}, new double[] {-1, 0, 
> 1, 0, -1});
>   Polygon2D polygon2D = Polygon2D.create(p);
>   PointValues.Relation rel = 
> polygon2D.relateTriangle(GeoEncodingUtils.decodeLongitude(GeoEncodingUtils.encodeLongitude(-1.5)),
>   GeoEncodingUtils.decodeLatitude(GeoEncodingUtils.encodeLatitude(0)),
>   GeoEncodingUtils.decodeLongitude(GeoEncodingUtils.encodeLongitude(1.5)),
>   GeoEncodingUtils.decodeLatitude(GeoEncodingUtils.encodeLatitude(0)),
>   
> GeoEncodingUtils.decodeLongitude(GeoEncodingUtils.encodeLongitude(-1.5)),
>   GeoEncodingUtils.decodeLatitude(GeoEncodingUtils.encodeLatitude(0)));
>   assertEquals(PointValues.Relation.CELL_CROSSES_QUERY, rel);
> }{code}
> [~nknize] you might want to look at this as I am not sure what to do.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-8712) Polygon2D does not detect crossings in some cases

2019-03-05 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8712?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16784760#comment-16784760
 ] 

Nicholas Knize commented on LUCENE-8712:


I took a quick look at this and agree the test case posted exposes a bug in 
{{EdgeTree.relateTriangle}}. The problem is in LUCENE-8679 we added a binary 
condition that {{CELL_OUTSIDE_QUERY}} unless {{insideEdges == 3}}. Instead, 
{{insideEdges != 3}} but  {{insideEdges > 0}} should return {{CELL_CROSSES}} 
query. 

Another important thing to note, {{GeoUtils.lineRelateLine}} satisfies the 
commutative property. So line order does not matter: line 1 terminating at line 
2 == line 2 terminating at line 1 == {{CELL_INSIDE_QUERY}}

> Polygon2D does not detect crossings in some cases
> -
>
> Key: LUCENE-8712
> URL: https://issues.apache.org/jira/browse/LUCENE-8712
> Project: Lucene - Core
>  Issue Type: Bug
>Reporter: Ignacio Vera
>Priority: Major
> Attachments: LUCENE-8712.patch, LUCENE-8712.patch
>
>
> Polygon2D does not detect crossing if the triangle crosses through points of 
> the polygon and none of the points are inside it. For example:
>  
> {code:java}
> public void testLineCrossingPolygonPoints() {
>   Polygon p = new Polygon(new double[] {0, -1, 0, 1, 0}, new double[] {-1, 0, 
> 1, 0, -1});
>   Polygon2D polygon2D = Polygon2D.create(p);
>   PointValues.Relation rel = 
> polygon2D.relateTriangle(GeoEncodingUtils.decodeLongitude(GeoEncodingUtils.encodeLongitude(-1.5)),
>   GeoEncodingUtils.decodeLatitude(GeoEncodingUtils.encodeLatitude(0)),
>   GeoEncodingUtils.decodeLongitude(GeoEncodingUtils.encodeLongitude(1.5)),
>   GeoEncodingUtils.decodeLatitude(GeoEncodingUtils.encodeLatitude(0)),
>   
> GeoEncodingUtils.decodeLongitude(GeoEncodingUtils.encodeLongitude(-1.5)),
>   GeoEncodingUtils.decodeLatitude(GeoEncodingUtils.encodeLatitude(0)));
>   assertEquals(PointValues.Relation.CELL_CROSSES_QUERY, rel);
> }{code}
> [~nknize] you might want to look at this as I am not sure what to do.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Updated] (LUCENE-8712) Polygon2D does not detect crossings in some cases

2019-03-05 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/LUCENE-8712?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize updated LUCENE-8712:
---
Attachment: LUCENE-8712.patch

> Polygon2D does not detect crossings in some cases
> -
>
> Key: LUCENE-8712
> URL: https://issues.apache.org/jira/browse/LUCENE-8712
> Project: Lucene - Core
>  Issue Type: Bug
>Reporter: Ignacio Vera
>Priority: Major
> Attachments: LUCENE-8712.patch, LUCENE-8712.patch
>
>
> Polygon2D does not detect crossing if the triangle crosses through points of 
> the polygon and none of the points are inside it. For example:
>  
> {code:java}
> public void testLineCrossingPolygonPoints() {
>   Polygon p = new Polygon(new double[] {0, -1, 0, 1, 0}, new double[] {-1, 0, 
> 1, 0, -1});
>   Polygon2D polygon2D = Polygon2D.create(p);
>   PointValues.Relation rel = 
> polygon2D.relateTriangle(GeoEncodingUtils.decodeLongitude(GeoEncodingUtils.encodeLongitude(-1.5)),
>   GeoEncodingUtils.decodeLatitude(GeoEncodingUtils.encodeLatitude(0)),
>   GeoEncodingUtils.decodeLongitude(GeoEncodingUtils.encodeLongitude(1.5)),
>   GeoEncodingUtils.decodeLatitude(GeoEncodingUtils.encodeLatitude(0)),
>   
> GeoEncodingUtils.decodeLongitude(GeoEncodingUtils.encodeLongitude(-1.5)),
>   GeoEncodingUtils.decodeLatitude(GeoEncodingUtils.encodeLatitude(0)));
>   assertEquals(PointValues.Relation.CELL_CROSSES_QUERY, rel);
> }{code}
> [~nknize] you might want to look at this as I am not sure what to do.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-8685) Refactor LatLonShape tests

2019-02-19 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8685?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16772040#comment-16772040
 ] 

Nicholas Knize commented on LUCENE-8685:


+1 Sorry for the delay on this and thanks for separating these tests [~ivera] 

> Refactor LatLonShape tests
> --
>
> Key: LUCENE-8685
> URL: https://issues.apache.org/jira/browse/LUCENE-8685
> Project: Lucene - Core
>  Issue Type: Test
>Reporter: Ignacio Vera
>Priority: Trivial
> Attachments: LUCENE-8685.patch
>
>
> The test class {{TestLatLonShape}} is becoming pretty big and it has a 
> mixture of test. I would like to put the test that are focus on the encoding 
> in its own test class. 
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Created] (LUCENE-8686) TestTaxonomySumValueSource.testRandom Failure

2019-02-07 Thread Nicholas Knize (JIRA)
Nicholas Knize created LUCENE-8686:
--

 Summary: TestTaxonomySumValueSource.testRandom Failure
 Key: LUCENE-8686
 URL: https://issues.apache.org/jira/browse/LUCENE-8686
 Project: Lucene - Core
  Issue Type: Bug
Affects Versions: 8.x
Reporter: Nicholas Knize


Reproducible test failure:

{{NOTE: reproduce with: ant test  -Dtestcase=TestTaxonomyFacetSumValueSource 
-Dtests.method=testRandom -Dtests.seed=7F625DA1A252DF8E -Dtests.slow=true 
-Dtests.badapples=true -Dtests.locale=hu -Dtests.timezone=America/Boa_Vista 
-Dtests.asserts=true -Dtests.file.encoding=UTF8}}


Stacktrace:

{code:java}
10:45:46[junit4] FAILURE 0.24s J3 | 
TestTaxonomyFacetSumValueSource.testRandom <<<
10:45:46[junit4]> Throwable #1: java.lang.AssertionError: expected:<4> 
but was:<3>
10:45:46[junit4]>   at 
__randomizedtesting.SeedInfo.seed([7F625DA1A252DF8E:D2E78AE133269FD]:0)
10:45:46[junit4]>   at 
org.apache.lucene.facet.FacetTestCase.assertFloatValuesEquals(FacetTestCase.java:200)
10:45:46[junit4]>   at 
org.apache.lucene.facet.FacetTestCase.assertFloatValuesEquals(FacetTestCase.java:193)
10:45:46[junit4]>   at 
org.apache.lucene.facet.taxonomy.TestTaxonomyFacetSumValueSource.testRandom(TestTaxonomyFacetSumValueSource.java:477)
10:45:46[junit4]>   at java.lang.Thread.run(Thread.java:748)
10:45:46[junit4]   2> NOTE: test params are: codec=Asserting(Lucene80): 
{$full_path$=PostingsFormat(name=Direct), 
$facets=PostingsFormat(name=LuceneVarGapDocFreqInterval), 
$payloads$=PostingsFormat(name=Direct), f=PostingsFormat(name=LuceneFixedGap), 
$facets2=PostingsFormat(name=LuceneFixedGap), 
$b=PostingsFormat(name=LuceneFixedGap), 
content=TestBloomFilteredLucenePostings(BloomFilteringPostingsFormat(Lucene50(blocksize=128)))},
 docValues:{$facets=DocValuesFormat(name=Asserting), 
price=DocValuesFormat(name=Lucene80), num=DocValuesFormat(name=Direct), 
$facets2=DocValuesFormat(name=Direct), value=DocValuesFormat(name=Lucene80), 
$b=DocValuesFormat(name=Direct)}, maxPointsInLeafNode=1902, 
maxMBSortInHeap=6.164841106101889, 
sim=Asserting(org.apache.lucene.search.similarities.AssertingSimilarity@27ff3281),
 locale=hu, timezone=America/Boa_Vista
10:45:46[junit4]   2> NOTE: Linux 4.15.0-1027-gcp amd64/Oracle Corporation 
1.8.0_191 (64-bit)/cpus=16,threads=1,free=394275096,total=523239424
10:45:46[junit4]   2> NOTE: All tests run in this JVM: [TestFacetsConfig, 
TestRandomSamplingFacetsCollector, TestTaxonomyFacetSumValueSource]
{code}




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-8680) Refactor EdgeTree#relateTriangle method

2019-02-07 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8680?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16762775#comment-16762775
 ] 

Nicholas Knize commented on LUCENE-8680:


+1 Thanks [~ivera]!

> Refactor EdgeTree#relateTriangle method
> ---
>
> Key: LUCENE-8680
> URL: https://issues.apache.org/jira/browse/LUCENE-8680
> Project: Lucene - Core
>  Issue Type: Improvement
>Reporter: Ignacio Vera
>Priority: Minor
> Attachments: LUCENE-8680.patch
>
>
> This proposal moves all the spatial logic for a component to Polygon2D and 
> Line2D. It improves readability of how each object behaves.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-8679) Test failure in LatLonShape

2019-02-01 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8679?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16758448#comment-16758448
 ] 

Nicholas Knize commented on LUCENE-8679:


+1 Thx [~ivera]  Ran some further testing and it LGTM.

> Test failure in LatLonShape
> ---
>
> Key: LUCENE-8679
> URL: https://issues.apache.org/jira/browse/LUCENE-8679
> Project: Lucene - Core
>  Issue Type: Bug
>Reporter: Ignacio Vera
>Priority: Major
> Attachments: LUCENE-8679.patch, LUCENE-8679.patch
>
>
> Error and reproducible seed:
>  
> {code:java}
> [junit4] Suite: org.apache.lucene.document.TestLatLonShape
>    [junit4]   2> NOTE: reproduce with: ant test  -Dtestcase=TestLatLonShape 
> -Dtests.method=testRandomPolygonEncoding -Dtests.seed=E92F1FD44199EFBE 
> -Dtests.multiplier=2 -Dtests.slow=true -Dtests.locale=no-NO 
> -Dtests.timezone=America/North_Dakota/Center -Dtests.asserts=true 
> -Dtests.file.encoding=UTF-8
>    [junit4] FAILURE 0.04s J2 | TestLatLonShape.testRandomPolygonEncoding <<<
>    [junit4]    > Throwable #1: java.lang.AssertionError
>    [junit4]    >        at 
> __randomizedtesting.SeedInfo.seed([E92F1FD44199EFBE:2C3EDB8695100930]:0)
>    [junit4]    >        at 
> org.apache.lucene.document.TestLatLonShape.verifyEncoding(TestLatLonShape.java:774)
>    [junit4]    >        at 
> org.apache.lucene.document.TestLatLonShape.testRandomPolygonEncoding(TestLatLonShape.java:726)
>    [junit4]    >        at java.lang.Thread.run(Thread.java:748)
>    [junit4]   2> NOTE: leaving temporary files on disk at: 
> /x1/jenkins/jenkins-slave/workspace/Lucene-Solr-Tests-master/lucene/build/sandbox/test/J2/temp/lucene.document.TestLatLonShape_E92F1FD44199EFBE-001
>    [junit4]   2> NOTE: test params are: codec=Asserting(Lucene80): {}, 
> docValues:{}, maxPointsInLeafNode=1441, maxMBSortInHeap=7.577899936070286, 
> sim=Asserting(org.apache.lucene.search.similarities.AssertingSimilarity@419db2df),
>  locale=no-NO, timezone=America/North_Dakota/Center
>    [junit4]   2> NOTE: Linux 4.4.0-137-generic amd64/Oracle Corporation 
> 1.8.0_191 (64-bit)/cpus=4,threads=1,free=168572480,total=309854208
>    [junit4]   2> NOTE: All tests run in this JVM: [TestIntervals, 
> TestLatLonLineShapeQueries, TestLatLonShape]
>    [junit4] Completed [10/27 (1!)] on J2 in 14.55s, 25 tests, 1 failure, 1 
> skipped <<< FAILURES!{code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Resolved] (LUCENE-8669) LatLonShape WITHIN queries fail with Multiple search Polygons that share the dateline

2019-01-31 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/LUCENE-8669?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize resolved LUCENE-8669.

Resolution: Fixed

> LatLonShape WITHIN queries fail with Multiple search Polygons that share the 
> dateline
> -
>
> Key: LUCENE-8669
> URL: https://issues.apache.org/jira/browse/LUCENE-8669
> Project: Lucene - Core
>  Issue Type: Bug
>Affects Versions: 8.0, 7.7
>Reporter: Nicholas Knize
>Assignee: Nicholas Knize
>Priority: Blocker
> Attachments: LUCENE-8669.patch
>
>
> {{LatLonShape.newPolygonQuery}} does not support dateline crossing polygons. 
> It is therefore up to the calling application / user to split dateline 
> crossing polygons into a {{MultiPolygon}} query with two search polygons that 
> share the dateline. This, however, does not produce expected results because 
> {{EdgeTree.internalComponentRelateTriangle}} does not differentiate between a 
> triangle that {{CROSSES}} or is {{WITHIN}} the target polygon. Therefore 
> {{MultiPolygon}} {{WITHIN}} queries that share the dateline behave as an 
> {{INTERSECT}} and will therefore produce incorrect results.
> Consider the following test, for example:
> {code:java}
> // index
> // western poly
> Polygon indexPoly1 = new Polygon(
> new double[] {-7.5d, 15d, 15d, 0d, -7.5d},
> new double[] {-180d, -180d, -176d, -176d, -180d}
> );
> // eastern poly
> Polygon indexPoly2 = new Polygon(
> new double[] {15d, -7.5d, -15d, -10d, 15d, 15d},
> new double[] {180d, 180d, 176d, 174d, 176d, 180d}
> );
>  index 
> Field[] fields = LatLonShape.createIndexableFields("test", indexPoly1);
> for (Field f : fields) {
>   doc.add(f);
> }
> fields = LatLonShape.createIndexableFields("test", indexPoly2);
> for (Field f : fields) {
>   doc.add(f);
> }
> writer.addDocument(doc);
> / search //
> Polygon[] searchPoly = new Polygon[] {
> new Polygon(new double[] {-20d, 20d, 20d, -20d, -20d},
> new double[] {-180d, -180d, -170d, -170d, -180d}),
> new Polygon(new double[] {20d, -20d, -20d, 20d, 20d},
> new double[] {180d, 180d, 170d, 170d, 180d})
> };
> Query q = LatLonShape.newPolygonQuery("test", QueryRelation.WITHIN, 
> searchPoly);
> assertEquals(1, searcher.count(q));
> {code}
>  
> In the example above, a dateline spanning polygon is indexed as a 
> {{MultiPolygon}} with two polygons that share the dateline. Similarly, a 
> polygon that spans the dateline is provided as  two polygons that share the 
> dateline in a {{WITHIN}} query. The indexed polygon should be returned as a 
> match; but it does not.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-8669) LatLonShape WITHIN queries fail with Multiple search Polygons that share the dateline

2019-01-31 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8669?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16757765#comment-16757765
 ] 

Nicholas Knize commented on LUCENE-8669:


Thanks [~ivera]  I agree on the testing. With this one being a blocker I'll go 
ahead and commit as is then add some more thorough randomized testing beyond 
the simple explicit testing that is provided.

> LatLonShape WITHIN queries fail with Multiple search Polygons that share the 
> dateline
> -
>
> Key: LUCENE-8669
> URL: https://issues.apache.org/jira/browse/LUCENE-8669
> Project: Lucene - Core
>  Issue Type: Bug
>Affects Versions: 8.0, 7.7
>Reporter: Nicholas Knize
>Assignee: Nicholas Knize
>Priority: Blocker
> Attachments: LUCENE-8669.patch
>
>
> {{LatLonShape.newPolygonQuery}} does not support dateline crossing polygons. 
> It is therefore up to the calling application / user to split dateline 
> crossing polygons into a {{MultiPolygon}} query with two search polygons that 
> share the dateline. This, however, does not produce expected results because 
> {{EdgeTree.internalComponentRelateTriangle}} does not differentiate between a 
> triangle that {{CROSSES}} or is {{WITHIN}} the target polygon. Therefore 
> {{MultiPolygon}} {{WITHIN}} queries that share the dateline behave as an 
> {{INTERSECT}} and will therefore produce incorrect results.
> Consider the following test, for example:
> {code:java}
> // index
> // western poly
> Polygon indexPoly1 = new Polygon(
> new double[] {-7.5d, 15d, 15d, 0d, -7.5d},
> new double[] {-180d, -180d, -176d, -176d, -180d}
> );
> // eastern poly
> Polygon indexPoly2 = new Polygon(
> new double[] {15d, -7.5d, -15d, -10d, 15d, 15d},
> new double[] {180d, 180d, 176d, 174d, 176d, 180d}
> );
>  index 
> Field[] fields = LatLonShape.createIndexableFields("test", indexPoly1);
> for (Field f : fields) {
>   doc.add(f);
> }
> fields = LatLonShape.createIndexableFields("test", indexPoly2);
> for (Field f : fields) {
>   doc.add(f);
> }
> writer.addDocument(doc);
> / search //
> Polygon[] searchPoly = new Polygon[] {
> new Polygon(new double[] {-20d, 20d, 20d, -20d, -20d},
> new double[] {-180d, -180d, -170d, -170d, -180d}),
> new Polygon(new double[] {20d, -20d, -20d, 20d, 20d},
> new double[] {180d, 180d, 170d, 170d, 180d})
> };
> Query q = LatLonShape.newPolygonQuery("test", QueryRelation.WITHIN, 
> searchPoly);
> assertEquals(1, searcher.count(q));
> {code}
>  
> In the example above, a dateline spanning polygon is indexed as a 
> {{MultiPolygon}} with two polygons that share the dateline. Similarly, a 
> polygon that spans the dateline is provided as  two polygons that share the 
> dateline in a {{WITHIN}} query. The indexed polygon should be returned as a 
> match; but it does not.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Updated] (LUCENE-8669) LatLonShape WITHIN queries fail with Multiple search Polygons that share the dateline

2019-01-30 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/LUCENE-8669?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize updated LUCENE-8669:
---
Affects Version/s: (was: 7.6)
   7.7
   8.0

> LatLonShape WITHIN queries fail with Multiple search Polygons that share the 
> dateline
> -
>
> Key: LUCENE-8669
> URL: https://issues.apache.org/jira/browse/LUCENE-8669
> Project: Lucene - Core
>  Issue Type: Bug
>Affects Versions: 8.0, 7.7
>Reporter: Nicholas Knize
>Assignee: Nicholas Knize
>Priority: Blocker
> Attachments: LUCENE-8669.patch
>
>
> {{LatLonShape.newPolygonQuery}} does not support dateline crossing polygons. 
> It is therefore up to the calling application / user to split dateline 
> crossing polygons into a {{MultiPolygon}} query with two search polygons that 
> share the dateline. This, however, does not produce expected results because 
> {{EdgeTree.internalComponentRelateTriangle}} does not differentiate between a 
> triangle that {{CROSSES}} or is {{WITHIN}} the target polygon. Therefore 
> {{MultiPolygon}} {{WITHIN}} queries that share the dateline behave as an 
> {{INTERSECT}} and will therefore produce incorrect results.
> Consider the following test, for example:
> {code:java}
> // index
> // western poly
> Polygon indexPoly1 = new Polygon(
> new double[] {-7.5d, 15d, 15d, 0d, -7.5d},
> new double[] {-180d, -180d, -176d, -176d, -180d}
> );
> // eastern poly
> Polygon indexPoly2 = new Polygon(
> new double[] {15d, -7.5d, -15d, -10d, 15d, 15d},
> new double[] {180d, 180d, 176d, 174d, 176d, 180d}
> );
>  index 
> Field[] fields = LatLonShape.createIndexableFields("test", indexPoly1);
> for (Field f : fields) {
>   doc.add(f);
> }
> fields = LatLonShape.createIndexableFields("test", indexPoly2);
> for (Field f : fields) {
>   doc.add(f);
> }
> writer.addDocument(doc);
> / search //
> Polygon[] searchPoly = new Polygon[] {
> new Polygon(new double[] {-20d, 20d, 20d, -20d, -20d},
> new double[] {-180d, -180d, -170d, -170d, -180d}),
> new Polygon(new double[] {20d, -20d, -20d, 20d, 20d},
> new double[] {180d, 180d, 170d, 170d, 180d})
> };
> Query q = LatLonShape.newPolygonQuery("test", QueryRelation.WITHIN, 
> searchPoly);
> assertEquals(1, searcher.count(q));
> {code}
>  
> In the example above, a dateline spanning polygon is indexed as a 
> {{MultiPolygon}} with two polygons that share the dateline. Similarly, a 
> polygon that spans the dateline is provided as  two polygons that share the 
> dateline in a {{WITHIN}} query. The indexed polygon should be returned as a 
> match; but it does not.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Updated] (LUCENE-8669) LatLonShape WITHIN queries fail with Multiple search Polygons that share the dateline

2019-01-30 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/LUCENE-8669?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize updated LUCENE-8669:
---
Priority: Blocker  (was: Major)

> LatLonShape WITHIN queries fail with Multiple search Polygons that share the 
> dateline
> -
>
> Key: LUCENE-8669
> URL: https://issues.apache.org/jira/browse/LUCENE-8669
> Project: Lucene - Core
>  Issue Type: Bug
>Affects Versions: 7.6
>Reporter: Nicholas Knize
>Assignee: Nicholas Knize
>Priority: Blocker
> Attachments: LUCENE-8669.patch
>
>
> {{LatLonShape.newPolygonQuery}} does not support dateline crossing polygons. 
> It is therefore up to the calling application / user to split dateline 
> crossing polygons into a {{MultiPolygon}} query with two search polygons that 
> share the dateline. This, however, does not produce expected results because 
> {{EdgeTree.internalComponentRelateTriangle}} does not differentiate between a 
> triangle that {{CROSSES}} or is {{WITHIN}} the target polygon. Therefore 
> {{MultiPolygon}} {{WITHIN}} queries that share the dateline behave as an 
> {{INTERSECT}} and will therefore produce incorrect results.
> Consider the following test, for example:
> {code:java}
> // index
> // western poly
> Polygon indexPoly1 = new Polygon(
> new double[] {-7.5d, 15d, 15d, 0d, -7.5d},
> new double[] {-180d, -180d, -176d, -176d, -180d}
> );
> // eastern poly
> Polygon indexPoly2 = new Polygon(
> new double[] {15d, -7.5d, -15d, -10d, 15d, 15d},
> new double[] {180d, 180d, 176d, 174d, 176d, 180d}
> );
>  index 
> Field[] fields = LatLonShape.createIndexableFields("test", indexPoly1);
> for (Field f : fields) {
>   doc.add(f);
> }
> fields = LatLonShape.createIndexableFields("test", indexPoly2);
> for (Field f : fields) {
>   doc.add(f);
> }
> writer.addDocument(doc);
> / search //
> Polygon[] searchPoly = new Polygon[] {
> new Polygon(new double[] {-20d, 20d, 20d, -20d, -20d},
> new double[] {-180d, -180d, -170d, -170d, -180d}),
> new Polygon(new double[] {20d, -20d, -20d, 20d, 20d},
> new double[] {180d, 180d, 170d, 170d, 180d})
> };
> Query q = LatLonShape.newPolygonQuery("test", QueryRelation.WITHIN, 
> searchPoly);
> assertEquals(1, searcher.count(q));
> {code}
>  
> In the example above, a dateline spanning polygon is indexed as a 
> {{MultiPolygon}} with two polygons that share the dateline. Similarly, a 
> polygon that spans the dateline is provided as  two polygons that share the 
> dateline in a {{WITHIN}} query. The indexed polygon should be returned as a 
> match; but it does not.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Assigned] (LUCENE-8670) Add LatLonShapePointQuery to support Point / MultiPoint queries on indexed LatLonShape fields

2019-01-30 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/LUCENE-8670?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize reassigned LUCENE-8670:
--

Assignee: Nicholas Knize

> Add LatLonShapePointQuery to support Point / MultiPoint queries on indexed 
> LatLonShape fields
> -
>
> Key: LUCENE-8670
> URL: https://issues.apache.org/jira/browse/LUCENE-8670
> Project: Lucene - Core
>  Issue Type: Improvement
>Reporter: Nicholas Knize
>Assignee: Nicholas Knize
>Priority: Major
> Attachments: LUCENE-8670.patch
>
>
> Similar to {{LatLonShapeBoundingBoxQuery}}, {{LatLonShapeLineQuery}}, and 
> {{LatLonShapePolygonQuery}} this introduces {{LatLonShapePointQuery}} that 
> will return all indexed {{LatLonShape}} fields that intersect the provided 
> point(s). {{MultiPoint}} is supported by providing an array of points.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Created] (LUCENE-8670) Add LatLonShapePointQuery to support Point / MultiPoint queries on indexed LatLonShape fields

2019-01-30 Thread Nicholas Knize (JIRA)
Nicholas Knize created LUCENE-8670:
--

 Summary: Add LatLonShapePointQuery to support Point / MultiPoint 
queries on indexed LatLonShape fields
 Key: LUCENE-8670
 URL: https://issues.apache.org/jira/browse/LUCENE-8670
 Project: Lucene - Core
  Issue Type: Improvement
Reporter: Nicholas Knize


Similar to {{LatLonShapeBoundingBoxQuery}}, {{LatLonShapeLineQuery}}, and 
{{LatLonShapePolygonQuery}} this introduces {{LatLonShapePointQuery}} that will 
return all indexed {{LatLonShape}} fields that intersect the provided point(s). 
{{MultiPoint}} is supported by providing an array of points.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Updated] (LUCENE-8669) LatLonShape WITHIN queries fail with Multiple search Polygons that share the dateline

2019-01-30 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/LUCENE-8669?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize updated LUCENE-8669:
---
Affects Version/s: (was: 7.7)
   7.6

> LatLonShape WITHIN queries fail with Multiple search Polygons that share the 
> dateline
> -
>
> Key: LUCENE-8669
> URL: https://issues.apache.org/jira/browse/LUCENE-8669
> Project: Lucene - Core
>  Issue Type: Bug
>Affects Versions: 7.6
>Reporter: Nicholas Knize
>Assignee: Nicholas Knize
>Priority: Major
> Attachments: LUCENE-8669.patch
>
>
> {{LatLonShape.newPolygonQuery}} does not support dateline crossing polygons. 
> It is therefore up to the calling application / user to split dateline 
> crossing polygons into a {{MultiPolygon}} query with two search polygons that 
> share the dateline. This, however, does not produce expected results because 
> {{EdgeTree.internalComponentRelateTriangle}} does not differentiate between a 
> triangle that {{CROSSES}} or is {{WITHIN}} the target polygon. Therefore 
> {{MultiPolygon}} {{WITHIN}} queries that share the dateline behave as an 
> {{INTERSECT}} and will therefore produce incorrect results.
> Consider the following test, for example:
> {code:java}
> // index
> // western poly
> Polygon indexPoly1 = new Polygon(
> new double[] {-7.5d, 15d, 15d, 0d, -7.5d},
> new double[] {-180d, -180d, -176d, -176d, -180d}
> );
> // eastern poly
> Polygon indexPoly2 = new Polygon(
> new double[] {15d, -7.5d, -15d, -10d, 15d, 15d},
> new double[] {180d, 180d, 176d, 174d, 176d, 180d}
> );
>  index 
> Field[] fields = LatLonShape.createIndexableFields("test", indexPoly1);
> for (Field f : fields) {
>   doc.add(f);
> }
> fields = LatLonShape.createIndexableFields("test", indexPoly2);
> for (Field f : fields) {
>   doc.add(f);
> }
> writer.addDocument(doc);
> / search //
> Polygon[] searchPoly = new Polygon[] {
> new Polygon(new double[] {-20d, 20d, 20d, -20d, -20d},
> new double[] {-180d, -180d, -170d, -170d, -180d}),
> new Polygon(new double[] {20d, -20d, -20d, 20d, 20d},
> new double[] {180d, 180d, 170d, 170d, 180d})
> };
> Query q = LatLonShape.newPolygonQuery("test", QueryRelation.WITHIN, 
> searchPoly);
> assertEquals(1, searcher.count(q));
> {code}
>  
> In the example above, a dateline spanning polygon is indexed as a 
> {{MultiPolygon}} with two polygons that share the dateline. Similarly, a 
> polygon that spans the dateline is provided as  two polygons that share the 
> dateline in a {{WITHIN}} query. The indexed polygon should be returned as a 
> match; but it does not.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Updated] (LUCENE-8669) LatLonShape WITHIN queries fail with Multiple search Polygons that share the dateline

2019-01-30 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/LUCENE-8669?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize updated LUCENE-8669:
---
Priority: Major  (was: Blocker)

> LatLonShape WITHIN queries fail with Multiple search Polygons that share the 
> dateline
> -
>
> Key: LUCENE-8669
> URL: https://issues.apache.org/jira/browse/LUCENE-8669
> Project: Lucene - Core
>  Issue Type: Bug
>Affects Versions: 7.7
>Reporter: Nicholas Knize
>Assignee: Nicholas Knize
>Priority: Major
> Attachments: LUCENE-8669.patch
>
>
> {{LatLonShape.newPolygonQuery}} does not support dateline crossing polygons. 
> It is therefore up to the calling application / user to split dateline 
> crossing polygons into a {{MultiPolygon}} query with two search polygons that 
> share the dateline. This, however, does not produce expected results because 
> {{EdgeTree.internalComponentRelateTriangle}} does not differentiate between a 
> triangle that {{CROSSES}} or is {{WITHIN}} the target polygon. Therefore 
> {{MultiPolygon}} {{WITHIN}} queries that share the dateline behave as an 
> {{INTERSECT}} and will therefore produce incorrect results.
> Consider the following test, for example:
> {code:java}
> // index
> // western poly
> Polygon indexPoly1 = new Polygon(
> new double[] {-7.5d, 15d, 15d, 0d, -7.5d},
> new double[] {-180d, -180d, -176d, -176d, -180d}
> );
> // eastern poly
> Polygon indexPoly2 = new Polygon(
> new double[] {15d, -7.5d, -15d, -10d, 15d, 15d},
> new double[] {180d, 180d, 176d, 174d, 176d, 180d}
> );
>  index 
> Field[] fields = LatLonShape.createIndexableFields("test", indexPoly1);
> for (Field f : fields) {
>   doc.add(f);
> }
> fields = LatLonShape.createIndexableFields("test", indexPoly2);
> for (Field f : fields) {
>   doc.add(f);
> }
> writer.addDocument(doc);
> / search //
> Polygon[] searchPoly = new Polygon[] {
> new Polygon(new double[] {-20d, 20d, 20d, -20d, -20d},
> new double[] {-180d, -180d, -170d, -170d, -180d}),
> new Polygon(new double[] {20d, -20d, -20d, 20d, 20d},
> new double[] {180d, 180d, 170d, 170d, 180d})
> };
> Query q = LatLonShape.newPolygonQuery("test", QueryRelation.WITHIN, 
> searchPoly);
> assertEquals(1, searcher.count(q));
> {code}
>  
> In the example above, a dateline spanning polygon is indexed as a 
> {{MultiPolygon}} with two polygons that share the dateline. Similarly, a 
> polygon that spans the dateline is provided as  two polygons that share the 
> dateline in a {{WITHIN}} query. The indexed polygon should be returned as a 
> match; but it does not.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Updated] (LUCENE-8669) LatLonShape WITHIN queries fail with Multiple search Polygons that share the dateline

2019-01-30 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/LUCENE-8669?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize updated LUCENE-8669:
---
Affects Version/s: 7.7

> LatLonShape WITHIN queries fail with Multiple search Polygons that share the 
> dateline
> -
>
> Key: LUCENE-8669
> URL: https://issues.apache.org/jira/browse/LUCENE-8669
> Project: Lucene - Core
>  Issue Type: Bug
>Affects Versions: 7.7
>Reporter: Nicholas Knize
>Assignee: Nicholas Knize
>Priority: Blocker
> Attachments: LUCENE-8669.patch
>
>
> {{LatLonShape.newPolygonQuery}} does not support dateline crossing polygons. 
> It is therefore up to the calling application / user to split dateline 
> crossing polygons into a {{MultiPolygon}} query with two search polygons that 
> share the dateline. This, however, does not produce expected results because 
> {{EdgeTree.internalComponentRelateTriangle}} does not differentiate between a 
> triangle that {{CROSSES}} or is {{WITHIN}} the target polygon. Therefore 
> {{MultiPolygon}} {{WITHIN}} queries that share the dateline behave as an 
> {{INTERSECT}} and will therefore produce incorrect results.
> Consider the following test, for example:
> {code:java}
> // index
> // western poly
> Polygon indexPoly1 = new Polygon(
> new double[] {-7.5d, 15d, 15d, 0d, -7.5d},
> new double[] {-180d, -180d, -176d, -176d, -180d}
> );
> // eastern poly
> Polygon indexPoly2 = new Polygon(
> new double[] {15d, -7.5d, -15d, -10d, 15d, 15d},
> new double[] {180d, 180d, 176d, 174d, 176d, 180d}
> );
>  index 
> Field[] fields = LatLonShape.createIndexableFields("test", indexPoly1);
> for (Field f : fields) {
>   doc.add(f);
> }
> fields = LatLonShape.createIndexableFields("test", indexPoly2);
> for (Field f : fields) {
>   doc.add(f);
> }
> writer.addDocument(doc);
> / search //
> Polygon[] searchPoly = new Polygon[] {
> new Polygon(new double[] {-20d, 20d, 20d, -20d, -20d},
> new double[] {-180d, -180d, -170d, -170d, -180d}),
> new Polygon(new double[] {20d, -20d, -20d, 20d, 20d},
> new double[] {180d, 180d, 170d, 170d, 180d})
> };
> Query q = LatLonShape.newPolygonQuery("test", QueryRelation.WITHIN, 
> searchPoly);
> assertEquals(1, searcher.count(q));
> {code}
>  
> In the example above, a dateline spanning polygon is indexed as a 
> {{MultiPolygon}} with two polygons that share the dateline. Similarly, a 
> polygon that spans the dateline is provided as  two polygons that share the 
> dateline in a {{WITHIN}} query. The indexed polygon should be returned as a 
> match; but it does not.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Assigned] (LUCENE-8669) LatLonShape WITHIN queries fail with Multiple search Polygons that share the dateline

2019-01-30 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/LUCENE-8669?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize reassigned LUCENE-8669:
--

Assignee: Nicholas Knize

> LatLonShape WITHIN queries fail with Multiple search Polygons that share the 
> dateline
> -
>
> Key: LUCENE-8669
> URL: https://issues.apache.org/jira/browse/LUCENE-8669
> Project: Lucene - Core
>  Issue Type: Bug
>Reporter: Nicholas Knize
>Assignee: Nicholas Knize
>Priority: Major
> Attachments: LUCENE-8669.patch
>
>
> {{LatLonShape.newPolygonQuery}} does not support dateline crossing polygons. 
> It is therefore up to the calling application / user to split dateline 
> crossing polygons into a {{MultiPolygon}} query with two search polygons that 
> share the dateline. This, however, does not produce expected results because 
> {{EdgeTree.internalComponentRelateTriangle}} does not differentiate between a 
> triangle that {{CROSSES}} or is {{WITHIN}} the target polygon. Therefore 
> {{MultiPolygon}} {{WITHIN}} queries that share the dateline behave as an 
> {{INTERSECT}} and will therefore produce incorrect results.
> Consider the following test, for example:
> {code:java}
> // index
> // western poly
> Polygon indexPoly1 = new Polygon(
> new double[] {-7.5d, 15d, 15d, 0d, -7.5d},
> new double[] {-180d, -180d, -176d, -176d, -180d}
> );
> // eastern poly
> Polygon indexPoly2 = new Polygon(
> new double[] {15d, -7.5d, -15d, -10d, 15d, 15d},
> new double[] {180d, 180d, 176d, 174d, 176d, 180d}
> );
>  index 
> Field[] fields = LatLonShape.createIndexableFields("test", indexPoly1);
> for (Field f : fields) {
>   doc.add(f);
> }
> fields = LatLonShape.createIndexableFields("test", indexPoly2);
> for (Field f : fields) {
>   doc.add(f);
> }
> writer.addDocument(doc);
> / search //
> Polygon[] searchPoly = new Polygon[] {
> new Polygon(new double[] {-20d, 20d, 20d, -20d, -20d},
> new double[] {-180d, -180d, -170d, -170d, -180d}),
> new Polygon(new double[] {20d, -20d, -20d, 20d, 20d},
> new double[] {180d, 180d, 170d, 170d, 180d})
> };
> Query q = LatLonShape.newPolygonQuery("test", QueryRelation.WITHIN, 
> searchPoly);
> assertEquals(1, searcher.count(q));
> {code}
>  
> In the example above, a dateline spanning polygon is indexed as a 
> {{MultiPolygon}} with two polygons that share the dateline. Similarly, a 
> polygon that spans the dateline is provided as  two polygons that share the 
> dateline in a {{WITHIN}} query. The indexed polygon should be returned as a 
> match; but it does not.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Updated] (LUCENE-8669) LatLonShape WITHIN queries fail with Multiple search Polygons that share the dateline

2019-01-30 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/LUCENE-8669?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize updated LUCENE-8669:
---
Priority: Blocker  (was: Major)

> LatLonShape WITHIN queries fail with Multiple search Polygons that share the 
> dateline
> -
>
> Key: LUCENE-8669
> URL: https://issues.apache.org/jira/browse/LUCENE-8669
> Project: Lucene - Core
>  Issue Type: Bug
>Reporter: Nicholas Knize
>Assignee: Nicholas Knize
>Priority: Blocker
> Attachments: LUCENE-8669.patch
>
>
> {{LatLonShape.newPolygonQuery}} does not support dateline crossing polygons. 
> It is therefore up to the calling application / user to split dateline 
> crossing polygons into a {{MultiPolygon}} query with two search polygons that 
> share the dateline. This, however, does not produce expected results because 
> {{EdgeTree.internalComponentRelateTriangle}} does not differentiate between a 
> triangle that {{CROSSES}} or is {{WITHIN}} the target polygon. Therefore 
> {{MultiPolygon}} {{WITHIN}} queries that share the dateline behave as an 
> {{INTERSECT}} and will therefore produce incorrect results.
> Consider the following test, for example:
> {code:java}
> // index
> // western poly
> Polygon indexPoly1 = new Polygon(
> new double[] {-7.5d, 15d, 15d, 0d, -7.5d},
> new double[] {-180d, -180d, -176d, -176d, -180d}
> );
> // eastern poly
> Polygon indexPoly2 = new Polygon(
> new double[] {15d, -7.5d, -15d, -10d, 15d, 15d},
> new double[] {180d, 180d, 176d, 174d, 176d, 180d}
> );
>  index 
> Field[] fields = LatLonShape.createIndexableFields("test", indexPoly1);
> for (Field f : fields) {
>   doc.add(f);
> }
> fields = LatLonShape.createIndexableFields("test", indexPoly2);
> for (Field f : fields) {
>   doc.add(f);
> }
> writer.addDocument(doc);
> / search //
> Polygon[] searchPoly = new Polygon[] {
> new Polygon(new double[] {-20d, 20d, 20d, -20d, -20d},
> new double[] {-180d, -180d, -170d, -170d, -180d}),
> new Polygon(new double[] {20d, -20d, -20d, 20d, 20d},
> new double[] {180d, 180d, 170d, 170d, 180d})
> };
> Query q = LatLonShape.newPolygonQuery("test", QueryRelation.WITHIN, 
> searchPoly);
> assertEquals(1, searcher.count(q));
> {code}
>  
> In the example above, a dateline spanning polygon is indexed as a 
> {{MultiPolygon}} with two polygons that share the dateline. Similarly, a 
> polygon that spans the dateline is provided as  two polygons that share the 
> dateline in a {{WITHIN}} query. The indexed polygon should be returned as a 
> match; but it does not.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Updated] (LUCENE-8669) LatLonShape WITHIN queries fail with Multiple search Polygons that share the dateline

2019-01-30 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/LUCENE-8669?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize updated LUCENE-8669:
---
Issue Type: Bug  (was: Improvement)

> LatLonShape WITHIN queries fail with Multiple search Polygons that share the 
> dateline
> -
>
> Key: LUCENE-8669
> URL: https://issues.apache.org/jira/browse/LUCENE-8669
> Project: Lucene - Core
>  Issue Type: Bug
>Reporter: Nicholas Knize
>Priority: Major
>
> {{LatLonShape.newPolygonQuery}} does not support dateline crossing polygons. 
> It is therefore up to the calling application / user to split dateline 
> crossing polygons into a {{MultiPolygon}} query with two search polygons that 
> share the dateline. This, however, does not produce expected results because 
> {{EdgeTree.internalComponentRelateTriangle}} does not differentiate between a 
> triangle that {{CROSSES}} or is {{WITHIN}} the target polygon. Therefore 
> {{MultiPolygon}} {{WITHIN}} queries that share the dateline behave as an 
> {{INTERSECT}} and will therefore produce incorrect results.
> Consider the following test, for example:
> {code:java}
> // index
> // western poly
> Polygon indexPoly1 = new Polygon(
> new double[] {-7.5d, 15d, 15d, 0d, -7.5d},
> new double[] {-180d, -180d, -176d, -176d, -180d}
> );
> // eastern poly
> Polygon indexPoly2 = new Polygon(
> new double[] {15d, -7.5d, -15d, -10d, 15d, 15d},
> new double[] {180d, 180d, 176d, 174d, 176d, 180d}
> );
>  index 
> Field[] fields = LatLonShape.createIndexableFields("test", indexPoly1);
> for (Field f : fields) {
>   doc.add(f);
> }
> fields = LatLonShape.createIndexableFields("test", indexPoly2);
> for (Field f : fields) {
>   doc.add(f);
> }
> writer.addDocument(doc);
> / search //
> Polygon[] searchPoly = new Polygon[] {
> new Polygon(new double[] {-20d, 20d, 20d, -20d, -20d},
> new double[] {-180d, -180d, -170d, -170d, -180d}),
> new Polygon(new double[] {20d, -20d, -20d, 20d, 20d},
> new double[] {180d, 180d, 170d, 170d, 180d})
> };
> Query q = LatLonShape.newPolygonQuery("test", QueryRelation.WITHIN, 
> searchPoly);
> assertEquals(1, searcher.count(q));
> {code}
>  
> In the example above, a dateline spanning polygon is indexed as a 
> {{MultiPolygon}} with two polygons that share the dateline. Similarly, a 
> polygon that spans the dateline is provided as  two polygons that share the 
> dateline in a {{WITHIN}} query. The indexed polygon should be returned as a 
> match; but it does not.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Created] (LUCENE-8669) LatLonShape WITHIN queries fail with Multiple search Polygons that share the dateline

2019-01-30 Thread Nicholas Knize (JIRA)
Nicholas Knize created LUCENE-8669:
--

 Summary: LatLonShape WITHIN queries fail with Multiple search 
Polygons that share the dateline
 Key: LUCENE-8669
 URL: https://issues.apache.org/jira/browse/LUCENE-8669
 Project: Lucene - Core
  Issue Type: Improvement
Reporter: Nicholas Knize


{{LatLonShape.newPolygonQuery}} does not support dateline crossing polygons. It 
is therefore up to the calling application / user to split dateline crossing 
polygons into a {{MultiPolygon}} query with two search polygons that share the 
dateline. This, however, does not produce expected results because 
{{EdgeTree.internalComponentRelateTriangle}} does not differentiate between a 
triangle that {{CROSSES}} or is {{WITHIN}} the target polygon. Therefore 
{{MultiPolygon}} {{WITHIN}} queries that share the dateline behave as an 
{{INTERSECT}} and will therefore produce incorrect results.

Consider the following test, for example:
{code:java}
// index
// western poly
Polygon indexPoly1 = new Polygon(
new double[] {-7.5d, 15d, 15d, 0d, -7.5d},
new double[] {-180d, -180d, -176d, -176d, -180d}
);

// eastern poly
Polygon indexPoly2 = new Polygon(
new double[] {15d, -7.5d, -15d, -10d, 15d, 15d},
new double[] {180d, 180d, 176d, 174d, 176d, 180d}
);

 index 
Field[] fields = LatLonShape.createIndexableFields("test", indexPoly1);
for (Field f : fields) {
  doc.add(f);
}
fields = LatLonShape.createIndexableFields("test", indexPoly2);
for (Field f : fields) {
  doc.add(f);
}
writer.addDocument(doc);

/ search //
Polygon[] searchPoly = new Polygon[] {
new Polygon(new double[] {-20d, 20d, 20d, -20d, -20d},
new double[] {-180d, -180d, -170d, -170d, -180d}),
new Polygon(new double[] {20d, -20d, -20d, 20d, 20d},
new double[] {180d, 180d, 170d, 170d, 180d})
};

Query q = LatLonShape.newPolygonQuery("test", QueryRelation.WITHIN, 
searchPoly);
assertEquals(1, searcher.count(q));
{code}
 

In the example above, a dateline spanning polygon is indexed as a 
{{MultiPolygon}} with two polygons that share the dateline. Similarly, a 
polygon that spans the dateline is provided as  two polygons that share the 
dateline in a {{WITHIN}} query. The indexed polygon should be returned as a 
match; but it does not.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-8634) LatLonShape: Query with the same polygon that is indexed might not match

2019-01-25 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8634?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16752482#comment-16752482
 ] 

Nicholas Knize commented on LUCENE-8634:


For clarity I'll separate the issues being discussed here:

1. Sub centimeter polygons:  I think we document the spatial resolution of the 
encoding fairly well. 1e-7 dec deg ~= 1.11cm. Any polygon defined with vertex 
distances <= 1e-7 dec deg (like the one in the example here) should not be 
expected to index with the same accuracy as provided. So subcentimeter polygons 
in the WGS84 lat/lon projection are not supported and may result in an 
unexpected invalid shape. This is why I opened LUCENE-8632 to lay groundwork 
for alternative projections. If a user wants to index subcentimeter shapes they 
should do so using the right spatial reference system for the job. 

2. "Should we keep lines and polygons in the encoded space like boxes?"

So I made a simple decision (occam's razor) when handling this in the first 
iteration of development. For point, line, and polygon query, rather than 
quantize the search shape in the query constructor (like BoundingBox does) I 
quantized the query shape in the test before invoking the query. Right or wrong 
I chose this route for two reasons: a. consistency with 
{{LatLonPointInPolygonQuery}} which we discussed this topic at length across 
several issues, and b. we have no formal support for the EqualTo relation 
operation, only INTERSECT, DISJOINT, WITHIN. In hindsight INTERSECT does fill 
this void so a false negative using INTERSECT query on an indexed shape that is 
equalTo the query shape could/should probably be considered a bug. Furthermore, 
{{LatLonPointInPolygonQuery}} doesn't have the complexities to contend with 
like relating lines and polygons. I think this change probably deserves a bit 
more thought / consideration. 


> LatLonShape: Query with the same polygon that is indexed might not match
> 
>
> Key: LUCENE-8634
> URL: https://issues.apache.org/jira/browse/LUCENE-8634
> Project: Lucene - Core
>  Issue Type: Bug
>  Components: modules/sandbox
>Affects Versions: 8.0, 7.7, master (9.0)
>Reporter: Ignacio Vera
>Priority: Major
> Attachments: LUCENE-8634.patch, LUCENE-8634.patch
>
>
> If a polygon with a degenerated dimension is indexed and then an intersect 
> query is performed with the same polygon, it might result in an empty result. 
> For example this polygon with degenerated longitude:
> POLYGON((1.401298464324817E-45 22.0, 1.401298464324817E-45 69.0, 
> 4.8202184588118395E-40 69.0, 4.8202184588118395E-40 22.0, 
> 1.401298464324817E-45 22.0))
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Updated] (LUCENE-8620) Add CONTAINS support for LatLonShape

2019-01-10 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/LUCENE-8620?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize updated LUCENE-8620:
---
Fix Version/s: 7.7
   8.0

> Add CONTAINS support for LatLonShape
> 
>
> Key: LUCENE-8620
> URL: https://issues.apache.org/jira/browse/LUCENE-8620
> Project: Lucene - Core
>  Issue Type: Improvement
>  Components: modules/sandbox
>Reporter: Ignacio Vera
>Priority: Major
> Fix For: 8.0, 7.7
>
> Attachments: LUCENE-8620.patch
>
>
> Currently the only spatial operation that cannot be performed using 
> {{LatLonShape}} is CONTAINS. This issue will add such capability by tracking 
> if an edge of a generated triangle from the {{Tessellator}} is an edge of the 
> polygon.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Assigned] (LUCENE-8632) Adapt LatLonShape tessellator to non-geo shapes

2019-01-09 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/LUCENE-8632?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize reassigned LUCENE-8632:
--

Assignee: Nicholas Knize

> Adapt LatLonShape tessellator to non-geo shapes
> ---
>
> Key: LUCENE-8632
> URL: https://issues.apache.org/jira/browse/LUCENE-8632
> Project: Lucene - Core
>  Issue Type: New Feature
>Reporter: Nicholas Knize
>Assignee: Nicholas Knize
>Priority: Major
>
> Currently the tessellator is tightly coupled with latitude and longitude 
> (WGS84) geospatial coordinates. This issue will explore generalizing the 
> tessellator to non geospatial coordinate systems so lucene can handle 
> arbitrary projections in vector space.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Created] (LUCENE-8632) Adapt LatLonShape tessellator to non-geo shapes

2019-01-09 Thread Nicholas Knize (JIRA)
Nicholas Knize created LUCENE-8632:
--

 Summary: Adapt LatLonShape tessellator to non-geo shapes
 Key: LUCENE-8632
 URL: https://issues.apache.org/jira/browse/LUCENE-8632
 Project: Lucene - Core
  Issue Type: New Feature
Reporter: Nicholas Knize


Currently the tessellator is tightly coupled with latitude and longitude 
(WGS84) geospatial coordinates. This issue will explore generalizing the 
tessellator to non geospatial coordinate systems so lucene can handle arbitrary 
projections in vector space.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-8621) Move LatLonShape out of sandbox

2019-01-02 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8621?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16732616#comment-16732616
 ] 

Nicholas Knize commented on LUCENE-8621:


Ah. Thank you [~dsmiley]   I had forgotten about that issue.

+1 for the removal to be done for 8.0

> Move LatLonShape out of sandbox
> ---
>
> Key: LUCENE-8621
> URL: https://issues.apache.org/jira/browse/LUCENE-8621
> Project: Lucene - Core
>  Issue Type: Improvement
>Reporter: Adrien Grand
>Priority: Minor
>
> LatLonShape has matured a lot over the last months, I'd like to start 
> thinking about moving it out of sandbox so that it doesn't stay there for too 
> long like what happened to LatLonPoint. I am pretty happy with the current 
> encoding. To my knowledge, we might just need to do a minor modification 
> because of 
> LUCENE-8620.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Comment Edited] (LUCENE-8621) Move LatLonShape out of sandbox

2019-01-02 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8621?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16732295#comment-16732295
 ] 

Nicholas Knize edited comment on LUCENE-8621 at 1/2/19 6:33 PM:


+1

I can take this one. I vote:
 # Move {{LatLonShape}} to {{core}} as a companion to {{LatLonPoint}}
 # In a separate issue, refactor (or remove where appropriate) the two 
remaining classes ( {{GeoRelationUtils}} && {{MortonEncoder}} ) from the 
{{spatial}} module to either the {{core}} or {{spatial-extras module}}
 # Remove the {{spatial}} module 

 We can do the refactor for 8.0 and keep it in sandbox for 7.7 leaving the 7.x 
line consistent?

 


was (Author: nknize):
+1

I can take this one. I vote:
 # Move {{LatLonShape}} to {{core}} as a companion to {{LatLonPoint}}
 # In a separate issue, refactor (or remove where appropriate) the two 
remaining classes ({{GeoRelationUtils && {{MortonEncoder) from the 
{{spatial}} module to either the {{core}} or {{spatial-extras module}}
 # Remove the {{spatial}} module 

 We can do the refactor for 8.0 and keep it in sandbox for 7.7 leaving the 7.x 
line consistent?

 

> Move LatLonShape out of sandbox
> ---
>
> Key: LUCENE-8621
> URL: https://issues.apache.org/jira/browse/LUCENE-8621
> Project: Lucene - Core
>  Issue Type: Improvement
>Reporter: Adrien Grand
>Priority: Minor
>
> LatLonShape has matured a lot over the last months, I'd like to start 
> thinking about moving it out of sandbox so that it doesn't stay there for too 
> long like what happened to LatLonPoint. I am pretty happy with the current 
> encoding. To my knowledge, we might just need to do a minor modification 
> because of 
> LUCENE-8620.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-8621) Move LatLonShape out of sandbox

2019-01-02 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8621?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16732295#comment-16732295
 ] 

Nicholas Knize commented on LUCENE-8621:


+1

I can take this one. I vote:
 # Move {{LatLonShape}} to {{core}} as a companion to {{LatLonPoint}}
 # In a separate issue, refactor (or remove where appropriate) the two 
remaining classes ({{GeoRelationUtils && {{MortonEncoder) from the 
{{spatial}} module to either the {{core}} or {{spatial-extras module}}
 # Remove the {{spatial}} module 

 We can do the refactor for 8.0 and keep it in sandbox for 7.7 leaving the 7.x 
line consistent?

 

> Move LatLonShape out of sandbox
> ---
>
> Key: LUCENE-8621
> URL: https://issues.apache.org/jira/browse/LUCENE-8621
> Project: Lucene - Core
>  Issue Type: Improvement
>Reporter: Adrien Grand
>Priority: Minor
>
> LatLonShape has matured a lot over the last months, I'd like to start 
> thinking about moving it out of sandbox so that it doesn't stay there for too 
> long like what happened to LatLonPoint. I am pretty happy with the current 
> encoding. To my knowledge, we might just need to do a minor modification 
> because of 
> LUCENE-8620.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Assigned] (LUCENE-8581) Change LatLonShape encoding to use 4 BYTES Per Dimension

2018-12-18 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/LUCENE-8581?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize reassigned LUCENE-8581:
--

Assignee: Ignacio Vera  (was: Nicholas Knize)

> Change LatLonShape encoding to use 4 BYTES Per Dimension
> 
>
> Key: LUCENE-8581
> URL: https://issues.apache.org/jira/browse/LUCENE-8581
> Project: Lucene - Core
>  Issue Type: New Feature
>Reporter: Nicholas Knize
>Assignee: Ignacio Vera
>Priority: Major
> Attachments: LUCENE-8581.patch, LUCENE-8581.patch, LUCENE-8581.patch, 
> LUCENE-8581.patch, LUCENE-8581.patch, LUCENE-8581.patch, LUCENE-8581.patch, 
> LUCENE-8581.patch
>
>
> {{LatLonShape}} tessellated triangles currently use a relatively naive 
> encoding with the first four dimensions as the bounding box of the triangle 
> and the last three dimensions as the vertices of the triangle. To encode the 
> {{x,y}} vertices in the last three dimensions requires {{bytesPerDim}} to be 
> set to 8, with 4 bytes for the x & y axis, respectively. We can reduce 
> {{bytesPerDim}} to 4 by encoding the index(es) of the vertices shared by the 
> bounding box along with the orientation of the triangle. This also opens the 
> door for supporting {{CONTAINS}} queries.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-8581) Change LatLonShape encoding to use 4 BYTES Per Dimension

2018-12-18 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8581?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16724178#comment-16724178
 ] 

Nicholas Knize commented on LUCENE-8581:


Thanks for all of your work on this [~ivera]. This LGTM!

> Change LatLonShape encoding to use 4 BYTES Per Dimension
> 
>
> Key: LUCENE-8581
> URL: https://issues.apache.org/jira/browse/LUCENE-8581
> Project: Lucene - Core
>  Issue Type: New Feature
>Reporter: Nicholas Knize
>Assignee: Nicholas Knize
>Priority: Major
> Attachments: LUCENE-8581.patch, LUCENE-8581.patch, LUCENE-8581.patch, 
> LUCENE-8581.patch, LUCENE-8581.patch, LUCENE-8581.patch, LUCENE-8581.patch, 
> LUCENE-8581.patch
>
>
> {{LatLonShape}} tessellated triangles currently use a relatively naive 
> encoding with the first four dimensions as the bounding box of the triangle 
> and the last three dimensions as the vertices of the triangle. To encode the 
> {{x,y}} vertices in the last three dimensions requires {{bytesPerDim}} to be 
> set to 8, with 4 bytes for the x & y axis, respectively. We can reduce 
> {{bytesPerDim}} to 4 by encoding the index(es) of the vertices shared by the 
> bounding box along with the orientation of the triangle. This also opens the 
> door for supporting {{CONTAINS}} queries.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Assigned] (LUCENE-8581) Change LatLonShape encoding to use 4 BYTES Per Dimension

2018-12-18 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/LUCENE-8581?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize reassigned LUCENE-8581:
--

Assignee: Nicholas Knize  (was: Ignacio Vera)

> Change LatLonShape encoding to use 4 BYTES Per Dimension
> 
>
> Key: LUCENE-8581
> URL: https://issues.apache.org/jira/browse/LUCENE-8581
> Project: Lucene - Core
>  Issue Type: New Feature
>Reporter: Nicholas Knize
>Assignee: Nicholas Knize
>Priority: Major
> Attachments: LUCENE-8581.patch, LUCENE-8581.patch, LUCENE-8581.patch, 
> LUCENE-8581.patch, LUCENE-8581.patch, LUCENE-8581.patch, LUCENE-8581.patch, 
> LUCENE-8581.patch
>
>
> {{LatLonShape}} tessellated triangles currently use a relatively naive 
> encoding with the first four dimensions as the bounding box of the triangle 
> and the last three dimensions as the vertices of the triangle. To encode the 
> {{x,y}} vertices in the last three dimensions requires {{bytesPerDim}} to be 
> set to 8, with 4 bytes for the x & y axis, respectively. We can reduce 
> {{bytesPerDim}} to 4 by encoding the index(es) of the vertices shared by the 
> bounding box along with the orientation of the triangle. This also opens the 
> door for supporting {{CONTAINS}} queries.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-8581) Change LatLonShape encoding to use 4 BYTES Per Dimension

2018-12-17 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8581?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16723352#comment-16723352
 ] 

Nicholas Knize commented on LUCENE-8581:


Everything's looking good. +1 to merge once these last two changes are in place 
/cc [~ivera]

> Change LatLonShape encoding to use 4 BYTES Per Dimension
> 
>
> Key: LUCENE-8581
> URL: https://issues.apache.org/jira/browse/LUCENE-8581
> Project: Lucene - Core
>  Issue Type: New Feature
>Reporter: Nicholas Knize
>Assignee: Ignacio Vera
>Priority: Major
> Attachments: LUCENE-8581.patch, LUCENE-8581.patch, LUCENE-8581.patch, 
> LUCENE-8581.patch, LUCENE-8581.patch, LUCENE-8581.patch, LUCENE-8581.patch
>
>
> {{LatLonShape}} tessellated triangles currently use a relatively naive 
> encoding with the first four dimensions as the bounding box of the triangle 
> and the last three dimensions as the vertices of the triangle. To encode the 
> {{x,y}} vertices in the last three dimensions requires {{bytesPerDim}} to be 
> set to 8, with 4 bytes for the x & y axis, respectively. We can reduce 
> {{bytesPerDim}} to 4 by encoding the index(es) of the vertices shared by the 
> bounding box along with the orientation of the triangle. This also opens the 
> door for supporting {{CONTAINS}} queries.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-8581) Change LatLonShape encoding to use 4 BYTES Per Dimension

2018-12-17 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8581?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16723224#comment-16723224
 ] 

Nicholas Knize commented on LUCENE-8581:


{quote}Then let's also rename constants so that they enumerate coordinates in 
CCW order
{quote}
+1

 

> Change LatLonShape encoding to use 4 BYTES Per Dimension
> 
>
> Key: LUCENE-8581
> URL: https://issues.apache.org/jira/browse/LUCENE-8581
> Project: Lucene - Core
>  Issue Type: New Feature
>Reporter: Nicholas Knize
>Assignee: Ignacio Vera
>Priority: Major
> Attachments: LUCENE-8581.patch, LUCENE-8581.patch, LUCENE-8581.patch, 
> LUCENE-8581.patch, LUCENE-8581.patch, LUCENE-8581.patch, LUCENE-8581.patch
>
>
> {{LatLonShape}} tessellated triangles currently use a relatively naive 
> encoding with the first four dimensions as the bounding box of the triangle 
> and the last three dimensions as the vertices of the triangle. To encode the 
> {{x,y}} vertices in the last three dimensions requires {{bytesPerDim}} to be 
> set to 8, with 4 bytes for the x & y axis, respectively. We can reduce 
> {{bytesPerDim}} to 4 by encoding the index(es) of the vertices shared by the 
> bounding box along with the orientation of the triangle. This also opens the 
> door for supporting {{CONTAINS}} queries.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-8581) Change LatLonShape encoding to use 4 BYTES Per Dimension

2018-12-17 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8581?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16723186#comment-16723186
 ] 

Nicholas Knize commented on LUCENE-8581:


{quote}I got you, new patch rotates edges and indeed simplifies the logic.
{quote}
++1 this is great
{quote}whether to go with CW or CCW order?
{quote}
Right hand rule is the typical convention and part of the standard. So let's go 
w/ CCW.

> Change LatLonShape encoding to use 4 BYTES Per Dimension
> 
>
> Key: LUCENE-8581
> URL: https://issues.apache.org/jira/browse/LUCENE-8581
> Project: Lucene - Core
>  Issue Type: New Feature
>Reporter: Nicholas Knize
>Assignee: Ignacio Vera
>Priority: Major
> Attachments: LUCENE-8581.patch, LUCENE-8581.patch, LUCENE-8581.patch, 
> LUCENE-8581.patch, LUCENE-8581.patch, LUCENE-8581.patch, LUCENE-8581.patch
>
>
> {{LatLonShape}} tessellated triangles currently use a relatively naive 
> encoding with the first four dimensions as the bounding box of the triangle 
> and the last three dimensions as the vertices of the triangle. To encode the 
> {{x,y}} vertices in the last three dimensions requires {{bytesPerDim}} to be 
> set to 8, with 4 bytes for the x & y axis, respectively. We can reduce 
> {{bytesPerDim}} to 4 by encoding the index(es) of the vertices shared by the 
> bounding box along with the orientation of the triangle. This also opens the 
> door for supporting {{CONTAINS}} queries.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Updated] (SOLR-13039) BadApples for 7.6 Release

2018-12-05 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/SOLR-13039?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize updated SOLR-13039:
--
Description: 
To build the 7.6 release candidate the following test cases need to be 
annotated as {{BadApple}} (Each of these tests have multiple known CI failures 
over an extended period of time):

{{o.a.solr.TestDistributedSearch}}

{{o.a.solr.client.solrj.impl.CloudSolrClientTest}}

{{o.a.solr.cloud.api.collections.CustomCollectionTest}}

{{o.a.solr.cloud.api.collections.ShardSplitTest}}

{{o.a.solr.cloud.api.collections.TestHdfsCloudBackupRestore}}

{{o.a.solr.cloud.api.collections.TestLocalFSCloudBackupRestore}}

{{o.a.solr.cloud.DocValuesNotIndexedTest}}

{{o.a.solr.cloud.SplitShardTest}}

{{o.a.solr.cloud.TestCloudRecovery}}

{{o.a.solr.cloud.TestMiniSolrCloudClusterSSL}}

{{o.a.solr.cloud.TestTlogReplica}}

{{o.a.solr.cloud.TestUtilizeNode}}

{{o.a.solr.cloud.autoscaling.AutoAddReplicasIntegrationTest}}

{{o.a.solr.cloud.autoscaling.HdfsAutoAddReplicasIntegrationTest}}

{{o.a.solr.cloud.autoscaling.IndexSizeTriggerTest}}

{{o.a.solr.cloud.autoscaling.TestPolicyCloud}}

{{o.a.solr.cloud.autoscaling.sim.TestSimPolicyCloud}}

{{o.a.solr.handler.component.DistributedMLTComponentTest}}

{{o.a.solr.metrics.reporters.solr.SolrJmxReportCloudTest}}

{{o.a.solr.metrics.reporters.solr.SolrCloudReportersTest}}

{{o.a.solr.update.processor.TimeRoutedAliasUpdateProcessorTest}}

{{o.a.solr.rest.TestManagedResourceStorage}}

{{o.a.solr.schema.SchemaApiFailureTest}}

{{o.a.solr.servlet.HttpSolrCallGetCoreTest}}

Note: this issue relates to SOLR-12028

  was:
To build the 7.6 release candidate the following test cases need to be 
annotated as {{BadApple}} (Each of these tests have multiple known CI failures 
over an extended period of time):

{{o.a.solr.client.solrj.impl.CloudSolrClientTest}}

{{o.a.solr.cloud.api.collections.CustomCollectionTest}}

{{o.a.solr.cloud.api.collections.ShardSplitTest}}

{{o.a.solr.cloud.api.collections.TestHdfsCloudBackupRestore}}

{{o.a.solr.cloud.api.collections.TestLocalFSCloudBackupRestore}}

{{o.a.solr.cloud.DocValuesNotIndexedTest}}

{{o.a.solr.cloud.SplitShardTest}}

{{o.a.solr.cloud.TestCloudRecovery}}

{{o.a.solr.cloud.TestMiniSolrCloudClusterSSL}}

{{o.a.solr.cloud.TestTlogReplica}}

{{o.a.solr.cloud.TestUtilizeNode}}

{{o.a.solr.cloud.autoscaling.AutoAddReplicasIntegrationTest}}

{{o.a.solr.cloud.autoscaling.HdfsAutoAddReplicasIntegrationTest}}

{{o.a.solr.cloud.autoscaling.IndexSizeTriggerTest}}

{{o.a.solr.cloud.autoscaling.TestPolicyCloud}}

{{o.a.solr.cloud.autoscaling.sim.TestSimPolicyCloud}}

{{o.a.solr.handler.component.DistributedMLTComponentTest}}

{{o.a.solr.metrics.reporters.solr.SolrJmxReportCloudTest}}

{{o.a.solr.metrics.reporters.solr.SolrCloudReportersTest}}

{{o.a.solr.update.processor.TimeRoutedAliasUpdateProcessorTest}}

{{o.a.solr.rest.TestManagedResourceStorage}}

{{o.a.solr.schema.SchemaApiFailureTest}}

{{o.a.solr.servlet.HttpSolrCallGetCoreTest}}

Note: this issue relates to SOLR-12028


> BadApples for 7.6 Release
> -
>
> Key: SOLR-13039
> URL: https://issues.apache.org/jira/browse/SOLR-13039
> Project: Solr
>  Issue Type: Test
>  Security Level: Public(Default Security Level. Issues are Public) 
>Affects Versions: 7.6
>Reporter: Nicholas Knize
>Priority: Blocker
> Attachments: SOLR-13039.patch, SOLR-13039.patch, SOLR-13039.patch
>
>
> To build the 7.6 release candidate the following test cases need to be 
> annotated as {{BadApple}} (Each of these tests have multiple known CI 
> failures over an extended period of time):
> {{o.a.solr.TestDistributedSearch}}
> {{o.a.solr.client.solrj.impl.CloudSolrClientTest}}
> {{o.a.solr.cloud.api.collections.CustomCollectionTest}}
> {{o.a.solr.cloud.api.collections.ShardSplitTest}}
> {{o.a.solr.cloud.api.collections.TestHdfsCloudBackupRestore}}
> {{o.a.solr.cloud.api.collections.TestLocalFSCloudBackupRestore}}
> {{o.a.solr.cloud.DocValuesNotIndexedTest}}
> {{o.a.solr.cloud.SplitShardTest}}
> {{o.a.solr.cloud.TestCloudRecovery}}
> {{o.a.solr.cloud.TestMiniSolrCloudClusterSSL}}
> {{o.a.solr.cloud.TestTlogReplica}}
> {{o.a.solr.cloud.TestUtilizeNode}}
> {{o.a.solr.cloud.autoscaling.AutoAddReplicasIntegrationTest}}
> {{o.a.solr.cloud.autoscaling.HdfsAutoAddReplicasIntegrationTest}}
> {{o.a.solr.cloud.autoscaling.IndexSizeTriggerTest}}
> {{o.a.solr.cloud.autoscaling.TestPolicyCloud}}
> {{o.a.solr.cloud.autoscaling.sim.TestSimPolicyCloud}}
> {{o.a.solr.handler.component.DistributedMLTComponentTest}}
> {{o.a.solr.metrics.reporters.solr.SolrJmxReportCloudTest}}
> {{o.a.solr.metrics.reporters.solr.SolrCloudReportersTest}}
> {{o.a.solr.update.processor.TimeRoutedAliasUpdateProcessorTest}}
> {{o.a.solr.rest.TestManagedResourceStorage}}
> {{o.a.solr.schema.SchemaApiFailureTest}}
> 

[jira] [Updated] (SOLR-13039) BadApples for 7.6 Release

2018-12-05 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/SOLR-13039?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize updated SOLR-13039:
--
Description: 
To build the 7.6 release candidate the following test cases need to be 
annotated as {{BadApple}} (Each of these tests have multiple known CI failures 
over an extended period of time):

{{o.a.solr.client.solrj.impl.CloudSolrClientTest}}

{{o.a.solr.cloud.api.collections.CustomCollectionTest}}

{{o.a.solr.cloud.api.collections.ShardSplitTest}}

{{o.a.solr.cloud.api.collections.TestHdfsCloudBackupRestore}}

{{o.a.solr.cloud.api.collections.TestLocalFSCloudBackupRestore}}

{{o.a.solr.cloud.DocValuesNotIndexedTest}}

{{o.a.solr.cloud.SplitShardTest}}

{{o.a.solr.cloud.TestCloudRecovery}}

{{o.a.solr.cloud.TestMiniSolrCloudClusterSSL}}

{{o.a.solr.cloud.TestTlogReplica}}

{{o.a.solr.cloud.TestUtilizeNode}}

{{o.a.solr.cloud.autoscaling.AutoAddReplicasIntegrationTest}}

{{o.a.solr.cloud.autoscaling.HdfsAutoAddReplicasIntegrationTest}}

{{o.a.solr.cloud.autoscaling.IndexSizeTriggerTest}}

{{o.a.solr.cloud.autoscaling.TestPolicyCloud}}

{{o.a.solr.cloud.autoscaling.sim.TestSimPolicyCloud}}

{{o.a.solr.handler.component.DistributedMLTComponentTest}}

{{o.a.solr.metrics.reporters.solr.SolrJmxReportCloudTest}}

{{o.a.solr.metrics.reporters.solr.SolrCloudReportersTest}}

{{o.a.solr.update.processor.TimeRoutedAliasUpdateProcessorTest}}

{{o.a.solr.rest.TestManagedResourceStorage}}

{{o.a.solr.schema.SchemaApiFailureTest}}

{{o.a.solr.servlet.HttpSolrCallGetCoreTest}}

Note: this issue relates to SOLR-12028

  was:
To build the 7.6 release candidate the following test cases need to be 
annotated as {{BadApple}} (Each of these tests have multiple known CI failures 
over an extended period of time):

{\{o.a.solr.client.solrj.impl.CloudSolrClientTest}}

{{o.a.solr.cloud.api.collections.ShardSplitTest}}

{{o.a.solr.cloud.api.collections.TestHdfsCloudBackupRestore}}

{{o.a.solr.cloud.api.collections.TestLocalFSCloudBackupRestore}}

{{o.a.solr.cloud.DocValuesNotIndexedTest}}

{{o.a.solr.cloud.SplitShardTest}}

{{o.a.solr.cloud.TestCloudRecovery}}

{{o.a.solr.cloud.TestMiniSolrCloudClusterSSL}}

{{o.a.solr.cloud.TestTlogReplica}}

{{o.a.solr.cloud.TestUtilizeNode}}

{{o.a.solr.cloud.autoscaling.AutoAddReplicasIntegrationTest}}

{{o.a.solr.cloud.autoscaling.HdfsAutoAddReplicasIntegrationTest}}

{{o.a.solr.cloud.autoscaling.IndexSizeTriggerTest}}

{{o.a.solr.cloud.autoscaling.TestPolicyCloud}}

{{o.a.solr.cloud.autoscaling.sim.TestSimPolicyCloud}}

{{o.a.solr.metrics.reporters.solr.SolrJmxReportCloudTest}}

{{o.a.solr.metrics.reporters.solr.SolrCloudReportersTest}}

{{o.a.solr.update.processor.TimeRoutedAliasUpdateProcessorTest}}

{{o.a.solr.rest.TestManagedResourceStorage}}

{{o.a.solr.schema.SchemaApiFailureTest}}

{{o.a.solr.servlet.HttpSolrCallGetCoreTest}}

Note: this issue relates to SOLR-12028


> BadApples for 7.6 Release
> -
>
> Key: SOLR-13039
> URL: https://issues.apache.org/jira/browse/SOLR-13039
> Project: Solr
>  Issue Type: Test
>  Security Level: Public(Default Security Level. Issues are Public) 
>Affects Versions: 7.6
>Reporter: Nicholas Knize
>Priority: Blocker
> Attachments: SOLR-13039.patch, SOLR-13039.patch, SOLR-13039.patch
>
>
> To build the 7.6 release candidate the following test cases need to be 
> annotated as {{BadApple}} (Each of these tests have multiple known CI 
> failures over an extended period of time):
> {{o.a.solr.client.solrj.impl.CloudSolrClientTest}}
> {{o.a.solr.cloud.api.collections.CustomCollectionTest}}
> {{o.a.solr.cloud.api.collections.ShardSplitTest}}
> {{o.a.solr.cloud.api.collections.TestHdfsCloudBackupRestore}}
> {{o.a.solr.cloud.api.collections.TestLocalFSCloudBackupRestore}}
> {{o.a.solr.cloud.DocValuesNotIndexedTest}}
> {{o.a.solr.cloud.SplitShardTest}}
> {{o.a.solr.cloud.TestCloudRecovery}}
> {{o.a.solr.cloud.TestMiniSolrCloudClusterSSL}}
> {{o.a.solr.cloud.TestTlogReplica}}
> {{o.a.solr.cloud.TestUtilizeNode}}
> {{o.a.solr.cloud.autoscaling.AutoAddReplicasIntegrationTest}}
> {{o.a.solr.cloud.autoscaling.HdfsAutoAddReplicasIntegrationTest}}
> {{o.a.solr.cloud.autoscaling.IndexSizeTriggerTest}}
> {{o.a.solr.cloud.autoscaling.TestPolicyCloud}}
> {{o.a.solr.cloud.autoscaling.sim.TestSimPolicyCloud}}
> {{o.a.solr.handler.component.DistributedMLTComponentTest}}
> {{o.a.solr.metrics.reporters.solr.SolrJmxReportCloudTest}}
> {{o.a.solr.metrics.reporters.solr.SolrCloudReportersTest}}
> {{o.a.solr.update.processor.TimeRoutedAliasUpdateProcessorTest}}
> {{o.a.solr.rest.TestManagedResourceStorage}}
> {{o.a.solr.schema.SchemaApiFailureTest}}
> {{o.a.solr.servlet.HttpSolrCallGetCoreTest}}
> Note: this issue relates to SOLR-12028



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-

[jira] [Updated] (SOLR-13039) BadApples for 7.6 Release

2018-12-04 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/SOLR-13039?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize updated SOLR-13039:
--
Description: 
To build the 7.6 release candidate the following test cases need to be 
annotated as {{BadApple}} (Each of these tests have multiple known CI failures 
over an extended period of time):

{\{o.a.solr.client.solrj.impl.CloudSolrClientTest}}

{{o.a.solr.cloud.api.collections.ShardSplitTest}}

{{o.a.solr.cloud.api.collections.TestHdfsCloudBackupRestore}}

{{o.a.solr.cloud.api.collections.TestLocalFSCloudBackupRestore}}

{{o.a.solr.cloud.DocValuesNotIndexedTest}}

{{o.a.solr.cloud.SplitShardTest}}

{{o.a.solr.cloud.TestCloudRecovery}}

{{o.a.solr.cloud.TestMiniSolrCloudClusterSSL}}

{{o.a.solr.cloud.TestTlogReplica}}

{{o.a.solr.cloud.TestUtilizeNode}}

{{o.a.solr.cloud.autoscaling.AutoAddReplicasIntegrationTest}}

{{o.a.solr.cloud.autoscaling.HdfsAutoAddReplicasIntegrationTest}}

{{o.a.solr.cloud.autoscaling.IndexSizeTriggerTest}}

{{o.a.solr.cloud.autoscaling.TestPolicyCloud}}

{{o.a.solr.cloud.autoscaling.sim.TestSimPolicyCloud}}

{{o.a.solr.metrics.reporters.solr.SolrJmxReportCloudTest}}

{{o.a.solr.metrics.reporters.solr.SolrCloudReportersTest}}

{{o.a.solr.update.processor.TimeRoutedAliasUpdateProcessorTest}}

{{o.a.solr.rest.TestManagedResourceStorage}}

{{o.a.solr.schema.SchemaApiFailureTest}}

{{o.a.solr.servlet.HttpSolrCallGetCoreTest}}

Note: this issue relates to SOLR-12028

  was:
To build the 7.6 release candidate the following test cases need to be 
annotated as {{BadApple}} (Each of these tests have multiple known CI failures 
over an extended period of time):

{{o.a.solr.cloud.api.collections.ShardSplitTest}}

{{o.a.solr.cloud.api.collections.TestHdfsCloudBackupRestore}}

{{o.a.solr.cloud.api.collections.TestLocalFSCloudBackupRestore}}

{{o.a.solr.cloud.DocValuesNotIndexedTest}}

{{o.a.solr.cloud.SplitShardTest}}

{{o.a.solr.cloud.TestCloudRecovery}}

{{o.a.solr.cloud.TestMiniSolrCloudClusterSSL}}

{{o.a.solr.cloud.TestTlogReplica}}

{{o.a.solr.cloud.TestUtilizeNode}}

{{o.a.solr.cloud.autoscaling.AutoAddReplicasIntegrationTest}}

{{o.a.solr.cloud.autoscaling.HdfsAutoAddReplicasIntegrationTest}}

{{o.a.solr.cloud.autoscaling.IndexSizeTriggerTest}}

{{o.a.solr.cloud.autoscaling.TestPolicyCloud}}

{{o.a.solr.cloud.autoscaling.sim.TestSimPolicyCloud}}

{{o.a.solr.metrics.reporters.solr.SolrJmxReportCloudTest}}

{{o.a.solr.metrics.reporters.solr.SolrCloudReportersTest}}

{{o.a.solr.update.processor.TimeRoutedAliasUpdateProcessorTest}}

{{o.a.solr.rest.TestManagedResourceStorage}}

{{o.a.solr.schema.SchemaApiFailureTest}}

{{o.a.solr.servlet.HttpSolrCallGetCoreTest}}

Note: this issue relates to SOLR-12028


> BadApples for 7.6 Release
> -
>
> Key: SOLR-13039
> URL: https://issues.apache.org/jira/browse/SOLR-13039
> Project: Solr
>  Issue Type: Test
>  Security Level: Public(Default Security Level. Issues are Public) 
>Affects Versions: 7.6
>Reporter: Nicholas Knize
>Priority: Blocker
> Attachments: SOLR-13039.patch, SOLR-13039.patch
>
>
> To build the 7.6 release candidate the following test cases need to be 
> annotated as {{BadApple}} (Each of these tests have multiple known CI 
> failures over an extended period of time):
> {\{o.a.solr.client.solrj.impl.CloudSolrClientTest}}
> {{o.a.solr.cloud.api.collections.ShardSplitTest}}
> {{o.a.solr.cloud.api.collections.TestHdfsCloudBackupRestore}}
> {{o.a.solr.cloud.api.collections.TestLocalFSCloudBackupRestore}}
> {{o.a.solr.cloud.DocValuesNotIndexedTest}}
> {{o.a.solr.cloud.SplitShardTest}}
> {{o.a.solr.cloud.TestCloudRecovery}}
> {{o.a.solr.cloud.TestMiniSolrCloudClusterSSL}}
> {{o.a.solr.cloud.TestTlogReplica}}
> {{o.a.solr.cloud.TestUtilizeNode}}
> {{o.a.solr.cloud.autoscaling.AutoAddReplicasIntegrationTest}}
> {{o.a.solr.cloud.autoscaling.HdfsAutoAddReplicasIntegrationTest}}
> {{o.a.solr.cloud.autoscaling.IndexSizeTriggerTest}}
> {{o.a.solr.cloud.autoscaling.TestPolicyCloud}}
> {{o.a.solr.cloud.autoscaling.sim.TestSimPolicyCloud}}
> {{o.a.solr.metrics.reporters.solr.SolrJmxReportCloudTest}}
> {{o.a.solr.metrics.reporters.solr.SolrCloudReportersTest}}
> {{o.a.solr.update.processor.TimeRoutedAliasUpdateProcessorTest}}
> {{o.a.solr.rest.TestManagedResourceStorage}}
> {{o.a.solr.schema.SchemaApiFailureTest}}
> {{o.a.solr.servlet.HttpSolrCallGetCoreTest}}
> Note: this issue relates to SOLR-12028



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Updated] (SOLR-13039) BadApples for 7.6 Release

2018-12-04 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/SOLR-13039?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize updated SOLR-13039:
--
Description: 
To build the 7.6 release candidate the following test cases need to be 
annotated as {{BadApple}} (Each of these tests have multiple known CI failures 
over an extended period of time):

{{o.a.solr.cloud.api.collections.ShardSplitTest}}

{{o.a.solr.cloud.api.collections.TestHdfsCloudBackupRestore}}

{{o.a.solr.cloud.api.collections.TestLocalFSCloudBackupRestore}}

{{o.a.solr.cloud.DocValuesNotIndexedTest}}

{{o.a.solr.cloud.SplitShardTest}}

{{o.a.solr.cloud.TestCloudRecovery}}

{{o.a.solr.cloud.TestMiniSolrCloudClusterSSL}}

{{o.a.solr.cloud.TestTlogReplica}}

{{o.a.solr.cloud.TestUtilizeNode}}

{{o.a.solr.cloud.autoscaling.AutoAddReplicasIntegrationTest}}

{{o.a.solr.cloud.autoscaling.HdfsAutoAddReplicasIntegrationTest}}

{{o.a.solr.cloud.autoscaling.IndexSizeTriggerTest}}

{{o.a.solr.cloud.autoscaling.TestPolicyCloud}}

{{o.a.solr.cloud.autoscaling.sim.TestSimPolicyCloud}}

{{o.a.solr.metrics.reporters.solr.SolrJmxReportCloudTest}}

{{o.a.solr.metrics.reporters.solr.SolrCloudReportersTest}}

{{o.a.solr.update.processor.TimeRoutedAliasUpdateProcessorTest}}

{{o.a.solr.rest.TestManagedResourceStorage}}

{{o.a.solr.schema.SchemaApiFailureTest}}

{{o.a.solr.servlet.HttpSolrCallGetCoreTest}}

Note: this issue relates to SOLR-12028

  was:
To build the 7.6 release candidate the following test cases need to be 
annotated as {{BadApple}} (Each of these tests have multiple known CI failures 
over an extended period of time):

{{o.a.solr.cloud.api.collections.ShardSplitTest}}

{{o.a.solr.cloud.api.collections.TestHdfsCloudBackupRestore}}

{{o.a.solr.cloud.api.collections.TestLocalFSCloudBackupRestore}}

{{o.a.solr.cloud.DocValuesNotIndexedTest}}

{{o.a.solr.cloud.SplitShardTest}}

{{o.a.solr.cloud.TestCloudRecovery}}

{{o.a.solr.cloud.TestMiniSolrCloudClusterSSL}}

{{o.a.solr.cloud.TestTlogReplica}}

{{o.a.solr.cloud.TestUtilizeNode}}

{{o.a.solr.cloud.autoscaling.AutoAddReplicasIntegrationTest}}

{{o.a.solr.cloud.autoscaling.HdfsAutoAddReplicasIntegrationTest}}

{{o.a.solr.cloud.autoscaling.IndexSizeTriggerTest}}

{{o.a.solr.cloud.autoscaling.TestPolicyCloud}}

{{o.a.solr.cloud.autoscaling.sim.TestSimPolicyCloud}}

{{o.a.solr.metrics.reporters.solr.SolrCloudReportersTest}}

{{o.a.solr.update.processor.TimeRoutedAliasUpdateProcessorTest}}

{{o.a.solr.rest.TestManagedResourceStorage}}

{{o.a.solr.schema.SchemaApiFailureTest}}

{{o.a.solr.servlet.HttpSolrCallGetCoreTest}}

Note: this issue relates to SOLR-12028


> BadApples for 7.6 Release
> -
>
> Key: SOLR-13039
> URL: https://issues.apache.org/jira/browse/SOLR-13039
> Project: Solr
>  Issue Type: Test
>  Security Level: Public(Default Security Level. Issues are Public) 
>Affects Versions: 7.6
>Reporter: Nicholas Knize
>Priority: Blocker
> Attachments: SOLR-13039.patch, SOLR-13039.patch
>
>
> To build the 7.6 release candidate the following test cases need to be 
> annotated as {{BadApple}} (Each of these tests have multiple known CI 
> failures over an extended period of time):
> {{o.a.solr.cloud.api.collections.ShardSplitTest}}
> {{o.a.solr.cloud.api.collections.TestHdfsCloudBackupRestore}}
> {{o.a.solr.cloud.api.collections.TestLocalFSCloudBackupRestore}}
> {{o.a.solr.cloud.DocValuesNotIndexedTest}}
> {{o.a.solr.cloud.SplitShardTest}}
> {{o.a.solr.cloud.TestCloudRecovery}}
> {{o.a.solr.cloud.TestMiniSolrCloudClusterSSL}}
> {{o.a.solr.cloud.TestTlogReplica}}
> {{o.a.solr.cloud.TestUtilizeNode}}
> {{o.a.solr.cloud.autoscaling.AutoAddReplicasIntegrationTest}}
> {{o.a.solr.cloud.autoscaling.HdfsAutoAddReplicasIntegrationTest}}
> {{o.a.solr.cloud.autoscaling.IndexSizeTriggerTest}}
> {{o.a.solr.cloud.autoscaling.TestPolicyCloud}}
> {{o.a.solr.cloud.autoscaling.sim.TestSimPolicyCloud}}
> {{o.a.solr.metrics.reporters.solr.SolrJmxReportCloudTest}}
> {{o.a.solr.metrics.reporters.solr.SolrCloudReportersTest}}
> {{o.a.solr.update.processor.TimeRoutedAliasUpdateProcessorTest}}
> {{o.a.solr.rest.TestManagedResourceStorage}}
> {{o.a.solr.schema.SchemaApiFailureTest}}
> {{o.a.solr.servlet.HttpSolrCallGetCoreTest}}
> Note: this issue relates to SOLR-12028



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Updated] (SOLR-13039) BadApples for 7.6 Release

2018-12-04 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/SOLR-13039?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize updated SOLR-13039:
--
Description: 
To build the 7.6 release candidate the following test cases need to be 
annotated as {{BadApple}} (Each of these tests have multiple known CI failures 
over an extended period of time):

{{o.a.solr.cloud.api.collections.ShardSplitTest}}

{{o.a.solr.cloud.api.collections.TestHdfsCloudBackupRestore}}

{{o.a.solr.cloud.api.collections.TestLocalFSCloudBackupRestore}}

{{o.a.solr.cloud.DocValuesNotIndexedTest}}

{{o.a.solr.cloud.SplitShardTest}}

{{o.a.solr.cloud.TestCloudRecovery}}

{{o.a.solr.cloud.TestMiniSolrCloudClusterSSL}}

{{o.a.solr.cloud.TestTlogReplica}}

{{o.a.solr.cloud.TestUtilizeNode}}

{{o.a.solr.cloud.autoscaling.AutoAddReplicasIntegrationTest}}

{{o.a.solr.cloud.autoscaling.HdfsAutoAddReplicasIntegrationTest}}

{{o.a.solr.cloud.autoscaling.IndexSizeTriggerTest}}

{{o.a.solr.cloud.autoscaling.TestPolicyCloud}}

{{o.a.solr.cloud.autoscaling.sim.TestSimPolicyCloud}}

{{o.a.solr.metrics.reporters.solr.SolrCloudReportersTest}}

{{o.a.solr.update.processor.TimeRoutedAliasUpdateProcessorTest}}

{{o.a.solr.rest.TestManagedResourceStorage}}

{{o.a.solr.schema.SchemaApiFailureTest}}

{{o.a.solr.servlet.HttpSolrCallGetCoreTest}}

Note: this issue relates to SOLR-12028

  was:
To build the 7.6 release candidate the following test cases need to be 
annotated as {{BadApple}} (Each of these tests have multiple known CI failures 
over an extended period of time):

{{o.a.solr.cloud.api.collections.ShardSplitTest}}

{{o.a.solr.cloud.api.collections.TestHdfsCloudBackupRestore}}

{{o.a.solr.cloud.api.collections.TestLocalFSCloudBackupRestore}}

{{o.a.solr.cloud.DocValuesNotIndexedTest}}

{{o.a.solr.cloud.SplitShardTest}}

{{o.a.solr.cloud.TestCloudRecovery}}

{{o.a.solr.cloud.TestMiniSolrCloudClusterSSL}}

{{o.a.solr.cloud.TestTlogReplica}}

{{o.a.solr.cloud.TestUtilizeNode}}

{{o.a.solr.cloud.autoscaling.AutoAddReplicasIntegrationTest}}

{{o.a.solr.cloud.autoscaling.HdfsAutoAddReplicasIntegrationTest}}

{{o.a.solr.cloud.autoscaling.IndexSizeTriggerTest}}

{{o.a.solr.cloud.autoscaling.sim.TestSimPolicyCloud}}

{{o.a.solr.metrics.reporters.solr.SolrCloudReportersTest}}

{{o.a.solr.update.processor.TimeRoutedAliasUpdateProcessorTest}}

{{o.a.solr.rest.TestManagedResourceStorage}}

{{o.a.solr.servlet.HttpSolrCallGetCoreTest}}

Note: this issue relates to SOLR-12028


> BadApples for 7.6 Release
> -
>
> Key: SOLR-13039
> URL: https://issues.apache.org/jira/browse/SOLR-13039
> Project: Solr
>  Issue Type: Test
>  Security Level: Public(Default Security Level. Issues are Public) 
>Affects Versions: 7.6
>Reporter: Nicholas Knize
>Priority: Blocker
> Attachments: SOLR-13039.patch, SOLR-13039.patch
>
>
> To build the 7.6 release candidate the following test cases need to be 
> annotated as {{BadApple}} (Each of these tests have multiple known CI 
> failures over an extended period of time):
> {{o.a.solr.cloud.api.collections.ShardSplitTest}}
> {{o.a.solr.cloud.api.collections.TestHdfsCloudBackupRestore}}
> {{o.a.solr.cloud.api.collections.TestLocalFSCloudBackupRestore}}
> {{o.a.solr.cloud.DocValuesNotIndexedTest}}
> {{o.a.solr.cloud.SplitShardTest}}
> {{o.a.solr.cloud.TestCloudRecovery}}
> {{o.a.solr.cloud.TestMiniSolrCloudClusterSSL}}
> {{o.a.solr.cloud.TestTlogReplica}}
> {{o.a.solr.cloud.TestUtilizeNode}}
> {{o.a.solr.cloud.autoscaling.AutoAddReplicasIntegrationTest}}
> {{o.a.solr.cloud.autoscaling.HdfsAutoAddReplicasIntegrationTest}}
> {{o.a.solr.cloud.autoscaling.IndexSizeTriggerTest}}
> {{o.a.solr.cloud.autoscaling.TestPolicyCloud}}
> {{o.a.solr.cloud.autoscaling.sim.TestSimPolicyCloud}}
> {{o.a.solr.metrics.reporters.solr.SolrCloudReportersTest}}
> {{o.a.solr.update.processor.TimeRoutedAliasUpdateProcessorTest}}
> {{o.a.solr.rest.TestManagedResourceStorage}}
> {{o.a.solr.schema.SchemaApiFailureTest}}
> {{o.a.solr.servlet.HttpSolrCallGetCoreTest}}
> Note: this issue relates to SOLR-12028



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Updated] (SOLR-13039) BadApples for 7.6 Release

2018-12-04 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/SOLR-13039?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize updated SOLR-13039:
--
Description: 
To build the 7.6 release candidate the following test cases need to be 
annotated as {{BadApple}} (Each of these tests have multiple known CI failures 
over an extended period of time):

{{o.a.solr.cloud.api.collections.ShardSplitTest}}

{{o.a.solr.cloud.api.collections.TestHdfsCloudBackupRestore}}

{{o.a.solr.cloud.api.collections.TestLocalFSCloudBackupRestore}}

{{o.a.solr.cloud.DocValuesNotIndexedTest}}

{{o.a.solr.cloud.SplitShardTest}}

{{o.a.solr.cloud.TestCloudRecovery}}

{{o.a.solr.cloud.TestMiniSolrCloudClusterSSL}}

{{o.a.solr.cloud.TestTlogReplica}}

{{o.a.solr.cloud.TestUtilizeNode}}

{{o.a.solr.cloud.autoscaling.AutoAddReplicasIntegrationTest}}

{{o.a.solr.cloud.autoscaling.HdfsAutoAddReplicasIntegrationTest}}

{{o.a.solr.cloud.autoscaling.IndexSizeTriggerTest}}

{{o.a.solr.cloud.autoscaling.sim.TestSimPolicyCloud}}

{{o.a.solr.metrics.reporters.solr.SolrCloudReportersTest}}

{{o.a.solr.update.processor.TimeRoutedAliasUpdateProcessorTest}}

{{o.a.solr.rest.TestManagedResourceStorage}}

{{o.a.solr.servlet.HttpSolrCallGetCoreTest}}

Note: this issue relates to SOLR-12028

  was:
To build the 7.6 release candidate the following test cases need to be 
annotated as {{BadApple}} (Each of these tests have multiple known CI failures 
over an extended period of time):

{{o.a.solr.cloud.api.collections.ShardSplitTest}}

{{o.a.solr.cloud.api.collections.TestHdfsCloudBackupRestore}}

{{o.a.solr.cloud.api.collections.TestLocalFSCloudBackupRestore}}

{{o.a.solr.cloud.SplitShardTest}}

{{o.a.solr.cloud.TestCloudRecovery}}

{{o.a.solr.cloud.TestMiniSolrCloudClusterSSL}}

{{o.a.solr.cloud.TestTlogReplica}}

{{o.a.solr.cloud.TestUtilizeNode}}

{{o.a.solr.cloud.autoscaling.AutoAddReplicasIntegrationTest}}

{{o.a.solr.cloud.autoscaling.HdfsAutoAddReplicasIntegrationTest}}

{{o.a.solr.cloud.autoscaling.IndexSizeTriggerTest}}

{{o.a.solr.cloud.autoscaling.sim.TestSimPolicyCloud}}

{{o.a.solr.update.processor.TimeRoutedAliasUpdateProcessorTest}}

Note: this issue relates to SOLR-12028


> BadApples for 7.6 Release
> -
>
> Key: SOLR-13039
> URL: https://issues.apache.org/jira/browse/SOLR-13039
> Project: Solr
>  Issue Type: Test
>  Security Level: Public(Default Security Level. Issues are Public) 
>Affects Versions: 7.6
>Reporter: Nicholas Knize
>Priority: Blocker
> Attachments: SOLR-13039.patch, SOLR-13039.patch
>
>
> To build the 7.6 release candidate the following test cases need to be 
> annotated as {{BadApple}} (Each of these tests have multiple known CI 
> failures over an extended period of time):
> {{o.a.solr.cloud.api.collections.ShardSplitTest}}
> {{o.a.solr.cloud.api.collections.TestHdfsCloudBackupRestore}}
> {{o.a.solr.cloud.api.collections.TestLocalFSCloudBackupRestore}}
> {{o.a.solr.cloud.DocValuesNotIndexedTest}}
> {{o.a.solr.cloud.SplitShardTest}}
> {{o.a.solr.cloud.TestCloudRecovery}}
> {{o.a.solr.cloud.TestMiniSolrCloudClusterSSL}}
> {{o.a.solr.cloud.TestTlogReplica}}
> {{o.a.solr.cloud.TestUtilizeNode}}
> {{o.a.solr.cloud.autoscaling.AutoAddReplicasIntegrationTest}}
> {{o.a.solr.cloud.autoscaling.HdfsAutoAddReplicasIntegrationTest}}
> {{o.a.solr.cloud.autoscaling.IndexSizeTriggerTest}}
> {{o.a.solr.cloud.autoscaling.sim.TestSimPolicyCloud}}
> {{o.a.solr.metrics.reporters.solr.SolrCloudReportersTest}}
> {{o.a.solr.update.processor.TimeRoutedAliasUpdateProcessorTest}}
> {{o.a.solr.rest.TestManagedResourceStorage}}
> {{o.a.solr.servlet.HttpSolrCallGetCoreTest}}
> Note: this issue relates to SOLR-12028



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-8581) Change LatLonShape encoding to use 4 BYTES Per Dimension

2018-12-04 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8581?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16709022#comment-16709022
 ] 

Nicholas Knize commented on LUCENE-8581:


{quote}Just for my curiosity. when creating a triangle in the tessellator 
points get order. is that really needed? what is the purpose?
{quote}
That can be removed. It's legacy from before the selective indexing approach 
was used. It sounds like that will solve a big part of the problem

+1 for using 2^3 constants. And I also think we can continue to iterate on the 
readability part in a separate patch. I don't think it should hold up the 
bigger benefit of a smaller index.

 

 

> Change LatLonShape encoding to use 4 BYTES Per Dimension
> 
>
> Key: LUCENE-8581
> URL: https://issues.apache.org/jira/browse/LUCENE-8581
> Project: Lucene - Core
>  Issue Type: New Feature
>Reporter: Nicholas Knize
>Assignee: Ignacio Vera
>Priority: Major
> Attachments: LUCENE-8581.patch, LUCENE-8581.patch
>
>
> {{LatLonShape}} tessellated triangles currently use a relatively naive 
> encoding with the first four dimensions as the bounding box of the triangle 
> and the last three dimensions as the vertices of the triangle. To encode the 
> {{x,y}} vertices in the last three dimensions requires {{bytesPerDim}} to be 
> set to 8, with 4 bytes for the x & y axis, respectively. We can reduce 
> {{bytesPerDim}} to 4 by encoding the index(es) of the vertices shared by the 
> bounding box along with the orientation of the triangle. This also opens the 
> door for supporting {{CONTAINS}} queries.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Updated] (SOLR-13039) BadApples for 7.6 Release

2018-12-04 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/SOLR-13039?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize updated SOLR-13039:
--
Description: 
To build the 7.6 release candidate the following test cases need to be 
annotated as {{BadApple}} (Each of these tests have multiple known CI failures 
over an extended period of time):

{{o.a.solr.cloud.api.collections.ShardSplitTest}}

{{o.a.solr.cloud.api.collections.TestHdfsCloudBackupRestore}}

{{o.a.solr.cloud.api.collections.TestLocalFSCloudBackupRestore}}

{{o.a.solr.cloud.SplitShardTest}}

{{o.a.solr.cloud.TestCloudRecovery}}

{{o.a.solr.cloud.TestMiniSolrCloudClusterSSL}}

{{o.a.solr.cloud.TestTlogReplica}}

{{o.a.solr.cloud.TestUtilizeNode}}

{{o.a.solr.cloud.autoscaling.AutoAddReplicasIntegrationTest}}

{{o.a.solr.cloud.autoscaling.HdfsAutoAddReplicasIntegrationTest}}

{{o.a.solr.cloud.autoscaling.IndexSizeTriggerTest}}

{{o.a.solr.cloud.autoscaling.sim.TestSimPolicyCloud}}

{{o.a.solr.update.processor.TimeRoutedAliasUpdateProcessorTest}}

Note: this issue relates to SOLR-12028

  was:
To build the 7.6 release candidate the following test cases need to be 
annotated as {{BadApple}} (Each of these tests have multiple known CI failures 
over an extended period of time):

{{o.a.solr.cloud.SplitShardTest}}

{{o.a.solr.cloud.TestCloudRecovery}}

{{o.a.solr.cloud.TestMiniSolrCloudClusterSSL}}

{{o.a.solr.cloud.TestTlogReplica}}

{{o.a.solr.cloud.TestUtilizeNode}}

{{o.a.solr.cloud.autoscaling.AutoAddReplicasIntegrationTest}}

{{o.a.solr.cloud.autoscaling.HdfsAutoAddReplicasIntegrationTest}}

{{o.a.solr.cloud.autoscaling.IndexSizeTriggerTest}}

{{o.a.solr.cloud.autoscaling.sim.TestSimPolicyCloud}}

{{o.a.solr.update.processor.TimeRoutedAliasUpdateProcessorTest}}

Note: this issue relates to SOLR-12028


> BadApples for 7.6 Release
> -
>
> Key: SOLR-13039
> URL: https://issues.apache.org/jira/browse/SOLR-13039
> Project: Solr
>  Issue Type: Test
>  Security Level: Public(Default Security Level. Issues are Public) 
>Affects Versions: 7.6
>Reporter: Nicholas Knize
>Priority: Blocker
> Attachments: SOLR-13039.patch
>
>
> To build the 7.6 release candidate the following test cases need to be 
> annotated as {{BadApple}} (Each of these tests have multiple known CI 
> failures over an extended period of time):
> {{o.a.solr.cloud.api.collections.ShardSplitTest}}
> {{o.a.solr.cloud.api.collections.TestHdfsCloudBackupRestore}}
> {{o.a.solr.cloud.api.collections.TestLocalFSCloudBackupRestore}}
> {{o.a.solr.cloud.SplitShardTest}}
> {{o.a.solr.cloud.TestCloudRecovery}}
> {{o.a.solr.cloud.TestMiniSolrCloudClusterSSL}}
> {{o.a.solr.cloud.TestTlogReplica}}
> {{o.a.solr.cloud.TestUtilizeNode}}
> {{o.a.solr.cloud.autoscaling.AutoAddReplicasIntegrationTest}}
> {{o.a.solr.cloud.autoscaling.HdfsAutoAddReplicasIntegrationTest}}
> {{o.a.solr.cloud.autoscaling.IndexSizeTriggerTest}}
> {{o.a.solr.cloud.autoscaling.sim.TestSimPolicyCloud}}
> {{o.a.solr.update.processor.TimeRoutedAliasUpdateProcessorTest}}
> Note: this issue relates to SOLR-12028



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Updated] (SOLR-13039) BadApples for 7.6 Release

2018-12-03 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/SOLR-13039?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize updated SOLR-13039:
--
Description: 
To build the 7.6 release candidate the following test cases need to be 
annotated as {{BadApple}} (Each of these tests have multiple known CI failures 
over an extended period of time):

{{o.a.solr.cloud.SplitShardTest}}

{{o.a.solr.cloud.TestCloudRecovery}}

{{o.a.solr.cloud.TestMiniSolrCloudClusterSSL}}

{{o.a.solr.cloud.TestTlogReplica}}

{{o.a.solr.cloud.TestUtilizeNode}}

{{o.a.solr.cloud.autoscaling.AutoAddReplicasIntegrationTest}}

{{o.a.solr.cloud.autoscaling.HdfsAutoAddReplicasIntegrationTest}}

{{o.a.solr.cloud.autoscaling.IndexSizeTriggerTest}}

{{o.a.solr.cloud.autoscaling.sim.TestSimPolicyCloud}}

{{o.a.solr.update.processor.TimeRoutedAliasUpdateProcessorTest}}

Note: this issue relates to SOLR-12028

  was:
To build the 7.6 release candidate the following test cases need to be marked 
with {{BadApple}} (Each of these tests have multiple known CI failures over an 
extended period of time):

{{o.a.solr.cloud.SplitShardTest}}

{{o.a.solr.cloud.TestCloudRecovery}}

{{o.a.solr.cloud.TestMiniSolrCloudClusterSSL}}

{{o.a.solr.cloud.TestTlogReplica}}

{{o.a.solr.cloud.TestUtilizeNode}}

{{o.a.solr.cloud.autoscaling.AutoAddReplicasIntegrationTest}}

{{o.a.solr.cloud.autoscaling.HdfsAutoAddReplicasIntegrationTest}}

{{o.a.solr.cloud.autoscaling.IndexSizeTriggerTest}}

{{o.a.solr.cloud.autoscaling.sim.TestSimPolicyCloud}}

{{o.a.solr.update.processor.TimeRoutedAliasUpdateProcessorTest}}

Note: this issue relates to SOLR-12028


> BadApples for 7.6 Release
> -
>
> Key: SOLR-13039
> URL: https://issues.apache.org/jira/browse/SOLR-13039
> Project: Solr
>  Issue Type: Test
>  Security Level: Public(Default Security Level. Issues are Public) 
>Affects Versions: 7.6
>Reporter: Nicholas Knize
>Priority: Blocker
>
> To build the 7.6 release candidate the following test cases need to be 
> annotated as {{BadApple}} (Each of these tests have multiple known CI 
> failures over an extended period of time):
> {{o.a.solr.cloud.SplitShardTest}}
> {{o.a.solr.cloud.TestCloudRecovery}}
> {{o.a.solr.cloud.TestMiniSolrCloudClusterSSL}}
> {{o.a.solr.cloud.TestTlogReplica}}
> {{o.a.solr.cloud.TestUtilizeNode}}
> {{o.a.solr.cloud.autoscaling.AutoAddReplicasIntegrationTest}}
> {{o.a.solr.cloud.autoscaling.HdfsAutoAddReplicasIntegrationTest}}
> {{o.a.solr.cloud.autoscaling.IndexSizeTriggerTest}}
> {{o.a.solr.cloud.autoscaling.sim.TestSimPolicyCloud}}
> {{o.a.solr.update.processor.TimeRoutedAliasUpdateProcessorTest}}
> Note: this issue relates to SOLR-12028



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Created] (SOLR-13039) BadApples for 7.6 Release

2018-12-03 Thread Nicholas Knize (JIRA)
Nicholas Knize created SOLR-13039:
-

 Summary: BadApples for 7.6 Release
 Key: SOLR-13039
 URL: https://issues.apache.org/jira/browse/SOLR-13039
 Project: Solr
  Issue Type: Test
  Security Level: Public (Default Security Level. Issues are Public)
Reporter: Nicholas Knize


To build the 7.6 release candidate the following test cases need to be marked 
with {{BadApple}} (Each of these tests have multiple known CI failures over an 
extended period of time):

{{o.a.solr.cloud.SplitShardTest}}

{{o.a.solr.cloud.TestCloudRecovery}}

{{o.a.solr.cloud.TestMiniSolrCloudClusterSSL}}

{{o.a.solr.cloud.TestTlogReplica}}

{{o.a.solr.cloud.TestUtilizeNode}}

{{o.a.solr.cloud.autoscaling.AutoAddReplicasIntegrationTest}}

{{o.a.solr.cloud.autoscaling.HdfsAutoAddReplicasIntegrationTest}}

{{o.a.solr.cloud.autoscaling.IndexSizeTriggerTest}}

{{o.a.solr.cloud.autoscaling.sim.TestSimPolicyCloud}}

{{o.a.solr.update.processor.TimeRoutedAliasUpdateProcessorTest}}

Note: this issue relates to SOLR-12028



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Updated] (SOLR-13039) BadApples for 7.6 Release

2018-12-03 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/SOLR-13039?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize updated SOLR-13039:
--
Affects Version/s: 7.6

> BadApples for 7.6 Release
> -
>
> Key: SOLR-13039
> URL: https://issues.apache.org/jira/browse/SOLR-13039
> Project: Solr
>  Issue Type: Test
>  Security Level: Public(Default Security Level. Issues are Public) 
>Affects Versions: 7.6
>Reporter: Nicholas Knize
>Priority: Blocker
>
> To build the 7.6 release candidate the following test cases need to be marked 
> with {{BadApple}} (Each of these tests have multiple known CI failures over 
> an extended period of time):
> {{o.a.solr.cloud.SplitShardTest}}
> {{o.a.solr.cloud.TestCloudRecovery}}
> {{o.a.solr.cloud.TestMiniSolrCloudClusterSSL}}
> {{o.a.solr.cloud.TestTlogReplica}}
> {{o.a.solr.cloud.TestUtilizeNode}}
> {{o.a.solr.cloud.autoscaling.AutoAddReplicasIntegrationTest}}
> {{o.a.solr.cloud.autoscaling.HdfsAutoAddReplicasIntegrationTest}}
> {{o.a.solr.cloud.autoscaling.IndexSizeTriggerTest}}
> {{o.a.solr.cloud.autoscaling.sim.TestSimPolicyCloud}}
> {{o.a.solr.update.processor.TimeRoutedAliasUpdateProcessorTest}}
> Note: this issue relates to SOLR-12028



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Updated] (SOLR-13039) BadApples for 7.6 Release

2018-12-03 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/SOLR-13039?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize updated SOLR-13039:
--
Priority: Blocker  (was: Major)

> BadApples for 7.6 Release
> -
>
> Key: SOLR-13039
> URL: https://issues.apache.org/jira/browse/SOLR-13039
> Project: Solr
>  Issue Type: Test
>  Security Level: Public(Default Security Level. Issues are Public) 
>Affects Versions: 7.6
>Reporter: Nicholas Knize
>Priority: Blocker
>
> To build the 7.6 release candidate the following test cases need to be marked 
> with {{BadApple}} (Each of these tests have multiple known CI failures over 
> an extended period of time):
> {{o.a.solr.cloud.SplitShardTest}}
> {{o.a.solr.cloud.TestCloudRecovery}}
> {{o.a.solr.cloud.TestMiniSolrCloudClusterSSL}}
> {{o.a.solr.cloud.TestTlogReplica}}
> {{o.a.solr.cloud.TestUtilizeNode}}
> {{o.a.solr.cloud.autoscaling.AutoAddReplicasIntegrationTest}}
> {{o.a.solr.cloud.autoscaling.HdfsAutoAddReplicasIntegrationTest}}
> {{o.a.solr.cloud.autoscaling.IndexSizeTriggerTest}}
> {{o.a.solr.cloud.autoscaling.sim.TestSimPolicyCloud}}
> {{o.a.solr.update.processor.TimeRoutedAliasUpdateProcessorTest}}
> Note: this issue relates to SOLR-12028



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-8583) Make GeoUtils#orientation method more stable

2018-12-03 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8583?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16707620#comment-16707620
 ] 

Nicholas Knize commented on LUCENE-8583:


{quote}Since we aren't a geo library that's not a goal we have to strive for
{quote}
+1 
{quote}And maybe it should be moved back to a private method in Polygon2D where 
it was originally?
{quote}
I agree. I'd also like to point out that we shouldn't need this to be super 
accurate in {{LatLonShape}} either. It looks like this is a byproduct of adding 
a dependency on orientation in {{LatLonShape.Triangle#encodeTriangle}} we 
should remove that dependency and just ensure order of the triangle vertices 
are preserved. 



> Make GeoUtils#orientation method more stable
> 
>
> Key: LUCENE-8583
> URL: https://issues.apache.org/jira/browse/LUCENE-8583
> Project: Lucene - Core
>  Issue Type: Improvement
>  Components: core/other
>Reporter: Ignacio Vera
>Priority: Major
> Attachments: LUCENE-8583.patch
>
>
> The method GeoUtils#orient is problematic when called with points that are 
> almost collinear but not quite. In that case the sign of the determinant is 
> not reliable, so for example calling the method with points (a, b, c) and 
> with (c, b, a) gives the same orientation. 
> There is a complex implementation described here 
> (https://www.cs.cmu.edu/~quake/robust.html) where the method becomes more 
> reliable. I have been playing with such implementation and still is not 100% 
> reliable.
> My proposal is not to be fully precise and define a precision constant for 
> this method. Therefore whenever the value of determinant is small to that 
> precision, we consider the points to be collinear. In this case the results 
> of the method are reliable.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-8581) Change LatLonShape encoding to use 4 BYTES Per Dimension

2018-12-03 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8581?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16707612#comment-16707612
 ] 

Nicholas Knize commented on LUCENE-8581:


Thanks [~ivera]

 {{setTriangleValue((aLon), (aLat), (bLon), (bLat), (cLon), (cLat));}}

I think it would be good to keep the calls to {{encodeLatitude}} and 
{{encodeLongitude}} here. The tessellator already encodes polygon triangles, so 
there's no need to call the encode methods twice.

{{setTriangleValue(t.getLon(0), t.getLat(0), t.getLon(1), t.getLat(1), 
t.getLon(2), t.getLat(2));}}

Just keep the calls to {{getEncodedX}} {{getEncodedY}} to unnecessarily encode 
twice.


{code:java}
int ccw = GeoUtils.orient(aLon, aLat, bLon, bLat, cLon, cLat);
if (ccw == 1) {
  throw new IllegalArgumentException("Orientation of the triangle cannot be 
clock-wise");
}{code}

Encoding should be orientation agnostic, but congruent (order preserved). I 
think we should remove the orientation dependency.

 
{code:java}
if (minY == aY && minX == aX) {
...{code}
For maintenance I'd really like to reduce this tree of conditionals. Its pretty 
hard to follow. However, I think we could do that in a separate issue/patch 
iteration (this is in sandbox after all). For now, lets at least make sure this 
code is well documented so it's clear what's going on. 

 

 

 

 

> Change LatLonShape encoding to use 4 BYTES Per Dimension
> 
>
> Key: LUCENE-8581
> URL: https://issues.apache.org/jira/browse/LUCENE-8581
> Project: Lucene - Core
>  Issue Type: New Feature
>Reporter: Nicholas Knize
>Assignee: Ignacio Vera
>Priority: Major
> Attachments: LUCENE-8581.patch
>
>
> {{LatLonShape}} tessellated triangles currently use a relatively naive 
> encoding with the first four dimensions as the bounding box of the triangle 
> and the last three dimensions as the vertices of the triangle. To encode the 
> {{x,y}} vertices in the last three dimensions requires {{bytesPerDim}} to be 
> set to 8, with 4 bytes for the x & y axis, respectively. We can reduce 
> {{bytesPerDim}} to 4 by encoding the index(es) of the vertices shared by the 
> bounding box along with the orientation of the triangle. This also opens the 
> door for supporting {{CONTAINS}} queries.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Assigned] (LUCENE-8581) Change LatLonShape encoding to use 4 BYTES Per Dimension

2018-11-30 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/LUCENE-8581?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize reassigned LUCENE-8581:
--

Assignee: Ignacio Vera

> Change LatLonShape encoding to use 4 BYTES Per Dimension
> 
>
> Key: LUCENE-8581
> URL: https://issues.apache.org/jira/browse/LUCENE-8581
> Project: Lucene - Core
>  Issue Type: New Feature
>Reporter: Nicholas Knize
>Assignee: Ignacio Vera
>Priority: Major
>
> {{LatLonShape}} tessellated triangles currently use a relatively naive 
> encoding with the first four dimensions as the bounding box of the triangle 
> and the last three dimensions as the vertices of the triangle. To encode the 
> {{x,y}} vertices in the last three dimensions requires {{bytesPerDim}} to be 
> set to 8, with 4 bytes for the x & y axis, respectively. We can reduce 
> {{bytesPerDim}} to 4 by encoding the index(es) of the vertices shared by the 
> bounding box along with the orientation of the triangle. This also opens the 
> door for supporting {{CONTAINS}} queries.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Created] (LUCENE-8581) Change LatLonShape encoding to use 4 BYTES Per Dimension

2018-11-30 Thread Nicholas Knize (JIRA)
Nicholas Knize created LUCENE-8581:
--

 Summary: Change LatLonShape encoding to use 4 BYTES Per Dimension
 Key: LUCENE-8581
 URL: https://issues.apache.org/jira/browse/LUCENE-8581
 Project: Lucene - Core
  Issue Type: New Feature
Reporter: Nicholas Knize


{{LatLonShape}} tessellated triangles currently use a relatively naive encoding 
with the first four dimensions as the bounding box of the triangle and the last 
three dimensions as the vertices of the triangle. To encode the {{x,y}} 
vertices in the last three dimensions requires {{bytesPerDim}} to be set to 8, 
with 4 bytes for the x & y axis, respectively. We can reduce {{bytesPerDim}} to 
4 by encoding the index(es) of the vertices shared by the bounding box along 
with the orientation of the triangle. This also opens the door for supporting 
{{CONTAINS}} queries.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-8579) Don't run badapples when building a release

2018-11-29 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8579?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16703853#comment-16703853
 ] 

Nicholas Knize commented on LUCENE-8579:


+1

> Don't run badapples when building a release
> ---
>
> Key: LUCENE-8579
> URL: https://issues.apache.org/jira/browse/LUCENE-8579
> Project: Lucene - Core
>  Issue Type: Improvement
>Reporter: Adrien Grand
>Priority: Major
>
> Nick pinged me because his attempt to build a release failed because of Solr 
> test failures. When looking at those, I noticed that a number of them were 
> known flaky test that are already tagged as bad apples, eg. 
> org.apache.solr.cloud.TestStressInPlaceUpdates.stressTest.
> We should disable badapples in the script to build a release, ie. something 
> like
> {code:python}
> diff --git a/dev-tools/scripts/buildAndPushRelease.py 
> b/dev-tools/scripts/buildAndPushRelease.py
> index 5a8f5cc..b557da2 100644
> --- a/dev-tools/scripts/buildAndPushRelease.py
> +++ b/dev-tools/scripts/buildAndPushRelease.py
> @@ -105,7 +105,7 @@ def prepare(root, version, gpgKeyID, gpgPassword):
>print('  Check DOAP files')
>checkDOAPfiles(version)
>  
> -  print('  ant clean test validate documentation-lint')
> +  print('  ant -Dtests.badapples=false clean test validate 
> documentation-lint')
> -  run('ant clean test validate documentation-lint')
> +  run('ant -Dtests.badapples=false clean test validate documentation-lint')
>  
>open('rev.txt', mode='wb').write(rev.encode('UTF-8'))
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-8573) BKDWriter should use FutureArrays#mismatch

2018-11-27 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8573?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16700688#comment-16700688
 ] 

Nicholas Knize commented on LUCENE-8573:


That would be great [~cbuescher]

> BKDWriter should use FutureArrays#mismatch
> --
>
> Key: LUCENE-8573
> URL: https://issues.apache.org/jira/browse/LUCENE-8573
> Project: Lucene - Core
>  Issue Type: Improvement
>Reporter: Adrien Grand
>Priority: Minor
>
> In a number of places, BKDWriter tries to find the first mismatching byte 
> between multiple arrays with a for loop. It could use the safer 
> FutureArrays#mismatch instead.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-8554) Add new LatLonShapeLineQuery

2018-11-13 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8554?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16685543#comment-16685543
 ] 

Nicholas Knize commented on LUCENE-8554:


Just pointing out there was a nice performance improvement side effect from 
this patch:

Seen here in 
[geobench.html#search-polyMedium|http://people.apache.org/~mikemccand/geobench.html#search-polyMedium]

A simple optimization was added to 
[EdgeTree.java#330|https://github.com/apache/lucene-solr/blob/95d01c6583b825b6b87591e4f27002c285ea25fb/lucene/core/src/java/org/apache/lucene/geo/EdgeTree.java#L330]
 to check if either end of the polygon's line segment is contained by the 
target rectangle. This optimization skips all of the determinant calculations 
below giving what appears to be a boost in search performance of ~1.4 QPS for 
{{LatLonPoint#newPolygonQuery}}

> Add new LatLonShapeLineQuery
> 
>
> Key: LUCENE-8554
> URL: https://issues.apache.org/jira/browse/LUCENE-8554
> Project: Lucene - Core
>  Issue Type: New Feature
>Affects Versions: 7.6, master (8.0)
>Reporter: Nicholas Knize
>Assignee: Nicholas Knize
>Priority: Blocker
> Attachments: LUCENE-8554.patch, LUCENE-8554.patch
>
>
> Its often useful to be able to query a shape index for documents that either 
> {{INTERSECT}} or are {{DISJOINT}} from a given {{LINESTRING}}. Occasionally 
> the linestring of interest may also have a distance component, which creates 
> a *buffered query* (often used in routing, or shape snapping). This feature 
> first adds a new {{LatLonShapeLineQuery}} for querying  {{LatLonShape}} 
> fields by arbitrary lines. A distance component can then be added in a future 
> issue.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-8556) Tessellator: Polygons can fail when using Morton optimisation

2018-11-08 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8556?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16680642#comment-16680642
 ] 

Nicholas Knize commented on LUCENE-8556:


Patch LGTM!!  Thanks [~ivera]

> Tessellator: Polygons can fail when using Morton optimisation
> -
>
> Key: LUCENE-8556
> URL: https://issues.apache.org/jira/browse/LUCENE-8556
> Project: Lucene - Core
>  Issue Type: Bug
>  Components: modules/sandbox
>Affects Versions: 7.6, master (8.0)
>Reporter: Ignacio Vera
>Priority: Blocker
> Attachments: LUCENE-8556.patch, image-2018-11-02-08-48-12-898.png
>
>
> I experience some errors when processing complex polygons. I realised that if 
> I disable the Morton optimisation, then the errors go away.
> I studied one of the cases and it seems that when using the optimisation, it 
> is possible to create triangles with points inside of them (see picture 
> attached). There is a point just on the edge of the triangle. When disabling 
> the optimisation, such a triangle is not created.
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-8559) Tessellator: isIntersectingPolygon method skip polygon edges

2018-11-06 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8559?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16677313#comment-16677313
 ] 

Nicholas Knize commented on LUCENE-8559:


+1  Thank you [~ivera]

> Tessellator: isIntersectingPolygon method skip polygon edges
> 
>
> Key: LUCENE-8559
> URL: https://issues.apache.org/jira/browse/LUCENE-8559
> Project: Lucene - Core
>  Issue Type: Bug
>  Components: modules/sandbox
>Affects Versions: 7.6, master (8.0)
>Reporter: Ignacio Vera
>Priority: Blocker
> Attachments: LUCENE-8559.patch
>
>
> The following condition seems wrong:
> {code:java}
> if(node.getX() != x0 && node.getY() != y0 && nextNode.getX() != x0
> && nextNode.getY() != y0 && node.getX() != x1 && node.getY() != y1
> && nextNode.getX() != x1 && nextNode.getY() != y1) {
>//check intersection
> }{code}
> Any node with the same X or Y is skipped. 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Resolved] (LUCENE-8555) Add dateline crossing support to LatLonShapeBoundingBoxQuery

2018-11-04 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/LUCENE-8555?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize resolved LUCENE-8555.

Resolution: Implemented

> Add dateline crossing support to LatLonShapeBoundingBoxQuery
> 
>
> Key: LUCENE-8555
> URL: https://issues.apache.org/jira/browse/LUCENE-8555
> Project: Lucene - Core
>  Issue Type: New Feature
>Affects Versions: 7.6, master (8.0)
>Reporter: Nicholas Knize
>Priority: Blocker
> Attachments: LUCENE-8555.patch
>
>
> Instead of rewriting into a {{BooleanQuery}}, {{LatLonShapeBoundingBoxQuery}} 
> should handle dateline crossing support directly in the {{IntersectVisitor}}. 
> This feature issue will add support for splitting a 
> {{LatLonShapeBoundingBoxQuery}} into an east and west box and comparing the 
> indexed {{LatLonShape}} fields against each. {{INTERSECTS}}, {{DISJOINT}}, 
> and {{WITHIN}} will all be handled by the {{LatLonShapeQuery}} 
> IntersectVisitor.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Resolved] (LUCENE-8554) Add new LatLonShapeLineQuery

2018-11-04 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/LUCENE-8554?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize resolved LUCENE-8554.

Resolution: Implemented

> Add new LatLonShapeLineQuery
> 
>
> Key: LUCENE-8554
> URL: https://issues.apache.org/jira/browse/LUCENE-8554
> Project: Lucene - Core
>  Issue Type: New Feature
>Affects Versions: 7.6, master (8.0)
>Reporter: Nicholas Knize
>Assignee: Nicholas Knize
>Priority: Blocker
> Attachments: LUCENE-8554.patch, LUCENE-8554.patch
>
>
> Its often useful to be able to query a shape index for documents that either 
> {{INTERSECT}} or are {{DISJOINT}} from a given {{LINESTRING}}. Occasionally 
> the linestring of interest may also have a distance component, which creates 
> a *buffered query* (often used in routing, or shape snapping). This feature 
> first adds a new {{LatLonShapeLineQuery}} for querying  {{LatLonShape}} 
> fields by arbitrary lines. A distance component can then be added in a future 
> issue.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (SOLR-12954) facet.pivot refinement bug when facet.sort=index and mincount > 2*numShards

2018-11-02 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/SOLR-12954?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16673164#comment-16673164
 ] 

Nicholas Knize commented on SOLR-12954:
---

Sounds like we should label as a blocker for 7.6 & 8.0?

> facet.pivot refinement bug when facet.sort=index and mincount > 2*numShards
> ---
>
> Key: SOLR-12954
> URL: https://issues.apache.org/jira/browse/SOLR-12954
> Project: Solr
>  Issue Type: Bug
>  Security Level: Public(Default Security Level. Issues are Public) 
>Reporter: Hoss Man
>Priority: Major
>
> While testing out SOLR-7804 i discovered a failure in TestCloudPivotFacet 
> that indicates a problem with the refinement of (nested?) pivot facets when 
> {{facet.sort=index}} and {{facet.pivot.mincount > 2*numShards}}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-8549) Tessellator should throw an error if all points were not processed

2018-11-01 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8549?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16672177#comment-16672177
 ] 

Nicholas Knize commented on LUCENE-8549:


Nice convenience method, and the patch is small and straightforward. 

Can you add the explicit testing to {{TestTessellator}}. Then +1 to commit.

> Tessellator should throw an error if all points were not processed
> --
>
> Key: LUCENE-8549
> URL: https://issues.apache.org/jira/browse/LUCENE-8549
> Project: Lucene - Core
>  Issue Type: Bug
>  Components: modules/sandbox
>Affects Versions: 7.6, master (8.0)
>Reporter: Ignacio Vera
>Priority: Blocker
> Attachments: LUCENE-8549.patch
>
>
> Currently, the tessellation in some situations when it has not successfully 
> process all points in the polygon, it will still return an incomplete/wrong 
> tessellation. 
> For example the following code:
> {code:java}
> public void testInvalidPolygon()  throws Exception {
>   String wkt = "POLYGON((0 0, 1 1, 0 1, 1 0, 0 0))";
>   Polygon polygon = (Polygon)SimpleWKTShapeParser.parse(wkt);
>   expectThrows( IllegalArgumentException.class, () -> 
> {Tessellator.tessellate(polygon); });
> }{code}
> will fail as the tessellator return a wrong tessellation containing one 
> triangle.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-8550) Tessellator fails when filtering coplanar points when creating linked list

2018-11-01 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8550?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16672175#comment-16672175
 ] 

Nicholas Knize commented on LUCENE-8550:


+1 great catch!

> Tessellator fails when filtering coplanar points when creating linked list 
> ---
>
> Key: LUCENE-8550
> URL: https://issues.apache.org/jira/browse/LUCENE-8550
> Project: Lucene - Core
>  Issue Type: Bug
>  Components: modules/sandbox
>Affects Versions: 7.6, master (8.0)
>Reporter: Ignacio Vera
>Priority: Blocker
> Attachments: LUCENE-8550.patch
>
>
> Currently when creating the linked list on the tessellator, coplanar points 
> are filtered. The problem is the following: 
> if we have three coplanar points, the code is actually removing the last 
> point, instead it should remove the middle one.
>  
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-8534) Another case of Polygon tessellator going into an infinite loop

2018-11-01 Thread Nicholas Knize (JIRA)


[ 
https://issues.apache.org/jira/browse/LUCENE-8534?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16672171#comment-16672171
 ] 

Nicholas Knize commented on LUCENE-8534:


Sorry for the delay on this [~ivera] and thanks for addressing these issues. 
The patch look good to me. 

> Another case of Polygon tessellator going into an infinite loop
> ---
>
> Key: LUCENE-8534
> URL: https://issues.apache.org/jira/browse/LUCENE-8534
> Project: Lucene - Core
>  Issue Type: Bug
>  Components: modules/sandbox
>Affects Versions: 7.6, master (8.0)
>Reporter: Ignacio Vera
>Priority: Blocker
> Attachments: LUCENE-8534.patch, LUCENE-8534.patch, LUCENE-8534.patch, 
> bigPolygon.wkt, image-2018-10-19-12-25-07-849.png
>
>
> Related to LUCENE-8454, another case where tesselator never returns when 
> processing a polygon.
>  
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Updated] (LUCENE-8534) Another case of Polygon tessellator going into an infinite loop

2018-11-01 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/LUCENE-8534?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize updated LUCENE-8534:
---
Affects Version/s: master (8.0)
   7.6

> Another case of Polygon tessellator going into an infinite loop
> ---
>
> Key: LUCENE-8534
> URL: https://issues.apache.org/jira/browse/LUCENE-8534
> Project: Lucene - Core
>  Issue Type: Bug
>  Components: modules/sandbox
>Affects Versions: 7.6, master (8.0)
>Reporter: Ignacio Vera
>Priority: Blocker
> Attachments: LUCENE-8534.patch, LUCENE-8534.patch, LUCENE-8534.patch, 
> bigPolygon.wkt, image-2018-10-19-12-25-07-849.png
>
>
> Related to LUCENE-8454, another case where tesselator never returns when 
> processing a polygon.
>  
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Updated] (LUCENE-8534) Another case of Polygon tessellator going into an infinite loop

2018-11-01 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/LUCENE-8534?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize updated LUCENE-8534:
---
Priority: Blocker  (was: Major)

> Another case of Polygon tessellator going into an infinite loop
> ---
>
> Key: LUCENE-8534
> URL: https://issues.apache.org/jira/browse/LUCENE-8534
> Project: Lucene - Core
>  Issue Type: Bug
>  Components: modules/sandbox
>Affects Versions: 7.6, master (8.0)
>Reporter: Ignacio Vera
>Priority: Blocker
> Attachments: LUCENE-8534.patch, LUCENE-8534.patch, LUCENE-8534.patch, 
> bigPolygon.wkt, image-2018-10-19-12-25-07-849.png
>
>
> Related to LUCENE-8454, another case where tesselator never returns when 
> processing a polygon.
>  
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Updated] (LUCENE-8550) Tessellator fails when filtering coplanar points when creating linked list

2018-11-01 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/LUCENE-8550?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize updated LUCENE-8550:
---
Affects Version/s: master (8.0)
   7.6

> Tessellator fails when filtering coplanar points when creating linked list 
> ---
>
> Key: LUCENE-8550
> URL: https://issues.apache.org/jira/browse/LUCENE-8550
> Project: Lucene - Core
>  Issue Type: Bug
>  Components: modules/sandbox
>Affects Versions: 7.6, master (8.0)
>Reporter: Ignacio Vera
>Priority: Blocker
> Attachments: LUCENE-8550.patch
>
>
> Currently when creating the linked list on the tessellator, coplanar points 
> are filtered. The problem is the following: 
> if we have three coplanar points, the code is actually removing the last 
> point, instead it should remove the middle one.
>  
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Updated] (LUCENE-8549) Tessellator should throw an error if all points were not processed

2018-11-01 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/LUCENE-8549?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize updated LUCENE-8549:
---
Affects Version/s: 7.6

> Tessellator should throw an error if all points were not processed
> --
>
> Key: LUCENE-8549
> URL: https://issues.apache.org/jira/browse/LUCENE-8549
> Project: Lucene - Core
>  Issue Type: Bug
>  Components: modules/sandbox
>Affects Versions: 7.6, master (8.0)
>Reporter: Ignacio Vera
>Priority: Blocker
> Attachments: LUCENE-8549.patch
>
>
> Currently, the tessellation in some situations when it has not successfully 
> process all points in the polygon, it will still return an incomplete/wrong 
> tessellation. 
> For example the following code:
> {code:java}
> public void testInvalidPolygon()  throws Exception {
>   String wkt = "POLYGON((0 0, 1 1, 0 1, 1 0, 0 0))";
>   Polygon polygon = (Polygon)SimpleWKTShapeParser.parse(wkt);
>   expectThrows( IllegalArgumentException.class, () -> 
> {Tessellator.tessellate(polygon); });
> }{code}
> will fail as the tessellator return a wrong tessellation containing one 
> triangle.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Updated] (LUCENE-8550) Tessellator fails when filtering coplanar points when creating linked list

2018-11-01 Thread Nicholas Knize (JIRA)


 [ 
https://issues.apache.org/jira/browse/LUCENE-8550?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Knize updated LUCENE-8550:
---
Priority: Blocker  (was: Major)

> Tessellator fails when filtering coplanar points when creating linked list 
> ---
>
> Key: LUCENE-8550
> URL: https://issues.apache.org/jira/browse/LUCENE-8550
> Project: Lucene - Core
>  Issue Type: Bug
>  Components: modules/sandbox
>Reporter: Ignacio Vera
>Priority: Blocker
> Attachments: LUCENE-8550.patch
>
>
> Currently when creating the linked list on the tessellator, coplanar points 
> are filtered. The problem is the following: 
> if we have three coplanar points, the code is actually removing the last 
> point, instead it should remove the middle one.
>  
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



  1   2   3   4   5   6   7   >