You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by kw...@apache.org on 2018/03/26 10:21:13 UTC
[1/2] lucene-solr:master: LUCENE-8220: Fix yet another case where we
cannot tile.
Repository: lucene-solr
Updated Branches:
refs/heads/master 624d128b5 -> 07d255a70
LUCENE-8220: Fix yet another case where we cannot tile.
Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/26ba705a
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/26ba705a
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/26ba705a
Branch: refs/heads/master
Commit: 26ba705a4f2537505fd75a326a751a627694bd32
Parents: 4bb02d8
Author: Karl Wright <Da...@gmail.com>
Authored: Mon Mar 26 06:20:34 2018 -0400
Committer: Karl Wright <Da...@gmail.com>
Committed: Mon Mar 26 06:20:34 2018 -0400
----------------------------------------------------------------------
.../spatial3d/geom/GeoPolygonFactory.java | 62 ++++++++++----------
.../lucene/spatial3d/geom/GeoPolygonTest.java | 28 +++++++++
2 files changed, 60 insertions(+), 30 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/26ba705a/lucene/spatial3d/src/java/org/apache/lucene/spatial3d/geom/GeoPolygonFactory.java
----------------------------------------------------------------------
diff --git a/lucene/spatial3d/src/java/org/apache/lucene/spatial3d/geom/GeoPolygonFactory.java b/lucene/spatial3d/src/java/org/apache/lucene/spatial3d/geom/GeoPolygonFactory.java
index d8938dc..a5a4406 100755
--- a/lucene/spatial3d/src/java/org/apache/lucene/spatial3d/geom/GeoPolygonFactory.java
+++ b/lucene/spatial3d/src/java/org/apache/lucene/spatial3d/geom/GeoPolygonFactory.java
@@ -175,20 +175,20 @@ public class GeoPolygonFactory {
holes = null;
}
- // First, exercise a sanity filter on the provided pointList, and remove identical points, linear points, and backtracks
- //System.err.println(" filtering "+pointList.size()+" points...");
- //final long startTime = System.currentTimeMillis();
- final List<GeoPoint> firstFilteredPointList = filterPoints(description.points);
- if (firstFilteredPointList == null) {
- return null;
- }
- final List<GeoPoint> filteredPointList = filterEdges(firstFilteredPointList, leniencyValue);
- //System.err.println(" ...done in "+(System.currentTimeMillis()-startTime)+"ms ("+((filteredPointList==null)?"degenerate":(filteredPointList.size()+" points"))+")");
- if (filteredPointList == null) {
- return null;
- }
+ if (description.points.size() <= SMALL_POLYGON_CUTOFF_EDGES) {
+ // First, exercise a sanity filter on the provided pointList, and remove identical points, linear points, and backtracks
+ //System.err.println(" filtering "+pointList.size()+" points...");
+ //final long startTime = System.currentTimeMillis();
+ final List<GeoPoint> firstFilteredPointList = filterPoints(description.points);
+ if (firstFilteredPointList == null) {
+ return null;
+ }
+ final List<GeoPoint> filteredPointList = filterEdges(firstFilteredPointList, leniencyValue);
+ //System.err.println(" ...done in "+(System.currentTimeMillis()-startTime)+"ms ("+((filteredPointList==null)?"degenerate":(filteredPointList.size()+" points"))+")");
+ if (filteredPointList == null) {
+ return null;
+ }
- if (filteredPointList.size() <= SMALL_POLYGON_CUTOFF_EDGES) {
try {
//First approximation to find a point
final GeoPoint centerOfMass = getCenterOfMass(planetModel, filteredPointList);
@@ -1144,7 +1144,7 @@ public class GeoPolygonFactory {
final MutableBoolean seenConcave,
final EdgeBuffer edgeBuffer,
final List<GeoPolygon> holes,
- final GeoPoint testPoint) {
+ final GeoPoint testPoint) throws TileException {
if (edgeBuffer.size() == 0) {
return true;
@@ -1182,25 +1182,27 @@ public class GeoPolygonFactory {
edge = edgeBuffer.getNext(edge);
}
- // Since we attempt to prevent the addition of any edge that shows up as colinear, and we filter out colinear edge parts
- // beforehand, it isn't possible to have a colinear edge at this point.
- if (testPoint != null && holes != null && holes.size() > 0) {
- // No holes, for test
- final GeoPolygon testPolygon = new GeoConcavePolygon(planetModel, points, null, internalEdges, isInternal);
- if (testPolygon.isWithin(testPoint)) {
- return false;
+ try {
+ if (testPoint != null && holes != null && holes.size() > 0) {
+ // No holes, for test
+ final GeoPolygon testPolygon = new GeoConcavePolygon(planetModel, points, null, internalEdges, isInternal);
+ if (testPolygon.isWithin(testPoint)) {
+ return false;
+ }
}
- }
-
- final GeoPolygon realPolygon = new GeoConcavePolygon(planetModel, points, holes, internalEdges, isInternal);
- if (testPoint != null && (holes == null || holes.size() == 0)) {
- if (realPolygon.isWithin(testPoint)) {
- return false;
+
+ final GeoPolygon realPolygon = new GeoConcavePolygon(planetModel, points, holes, internalEdges, isInternal);
+ if (testPoint != null && (holes == null || holes.size() == 0)) {
+ if (realPolygon.isWithin(testPoint)) {
+ return false;
+ }
}
+
+ rval.addShape(realPolygon);
+ return true;
+ } catch (IllegalArgumentException e) {
+ throw new TileException(e.getMessage());
}
-
- rval.addShape(realPolygon);
- return true;
}
/** Look for a convex polygon at the specified edge. If we find it, create one and adjust the edge buffer.
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/26ba705a/lucene/spatial3d/src/test/org/apache/lucene/spatial3d/geom/GeoPolygonTest.java
----------------------------------------------------------------------
diff --git a/lucene/spatial3d/src/test/org/apache/lucene/spatial3d/geom/GeoPolygonTest.java b/lucene/spatial3d/src/test/org/apache/lucene/spatial3d/geom/GeoPolygonTest.java
index 9d2aa1e..2625ba7 100755
--- a/lucene/spatial3d/src/test/org/apache/lucene/spatial3d/geom/GeoPolygonTest.java
+++ b/lucene/spatial3d/src/test/org/apache/lucene/spatial3d/geom/GeoPolygonTest.java
@@ -1176,4 +1176,32 @@ shape:
Collections.reverse(points);
polygon = GeoPolygonFactory.makeGeoPolygon(PlanetModel.SPHERE, points);
}
+
+ @Test
+ public void testCoplanarityConvex2() throws Exception {
+ //POLYGON((-3.488658 50.45564,-3.4898987 50.455627,-3.489865 50.455585,-3.489833 50.45551,-3.489808 50.455433,-3.489806 50.455406,-3.4898643 50.45525,-3.4892037 50.455162,-3.4891756 50.455166,-3.4891088 50.455147,-3.4890108 50.455166,-3.4889853 50.455166,-3.48895 50.45516,-3.488912 50.455166,-3.4889014 50.455177,-3.488893 50.455185,-3.488927 50.45523,-3.4890666 50.455456,-3.48905 50.455467,-3.488658 50.45564))
+ List<GeoPoint> points = new ArrayList<>();
+ points.add(new GeoPoint(PlanetModel.SPHERE, Geo3DUtil.fromDegrees(50.45564), Geo3DUtil.fromDegrees(-3.488658)));
+ points.add(new GeoPoint(PlanetModel.SPHERE, Geo3DUtil.fromDegrees(50.455627), Geo3DUtil.fromDegrees(-3.4898987)));
+ points.add(new GeoPoint(PlanetModel.SPHERE, Geo3DUtil.fromDegrees(50.455585), Geo3DUtil.fromDegrees(-3.489865)));
+ points.add(new GeoPoint(PlanetModel.SPHERE, Geo3DUtil.fromDegrees(50.45551), Geo3DUtil.fromDegrees(-3.489833)));
+ points.add(new GeoPoint(PlanetModel.SPHERE, Geo3DUtil.fromDegrees(50.455433), Geo3DUtil.fromDegrees(-3.489808)));
+ points.add(new GeoPoint(PlanetModel.SPHERE, Geo3DUtil.fromDegrees(50.455406), Geo3DUtil.fromDegrees(-3.489806)));
+ points.add(new GeoPoint(PlanetModel.SPHERE, Geo3DUtil.fromDegrees(50.45525), Geo3DUtil.fromDegrees(-3.4898643)));
+ points.add(new GeoPoint(PlanetModel.SPHERE, Geo3DUtil.fromDegrees(50.455162), Geo3DUtil.fromDegrees(-3.4892037)));
+ points.add(new GeoPoint(PlanetModel.SPHERE, Geo3DUtil.fromDegrees(50.455166), Geo3DUtil.fromDegrees(-3.4891756)));
+ points.add(new GeoPoint(PlanetModel.SPHERE, Geo3DUtil.fromDegrees(50.455147), Geo3DUtil.fromDegrees(-3.4891088)));
+ points.add(new GeoPoint(PlanetModel.SPHERE, Geo3DUtil.fromDegrees(50.455166), Geo3DUtil.fromDegrees(-3.4890108)));
+ points.add(new GeoPoint(PlanetModel.SPHERE, Geo3DUtil.fromDegrees(50.455166), Geo3DUtil.fromDegrees(-3.4889853)));
+ points.add(new GeoPoint(PlanetModel.SPHERE, Geo3DUtil.fromDegrees(50.45516), Geo3DUtil.fromDegrees(-3.48895)));
+ points.add(new GeoPoint(PlanetModel.SPHERE, Geo3DUtil.fromDegrees(50.455166), Geo3DUtil.fromDegrees(-3.488912)));
+ points.add(new GeoPoint(PlanetModel.SPHERE, Geo3DUtil.fromDegrees(50.455177), Geo3DUtil.fromDegrees(-3.4889014)));
+ points.add(new GeoPoint(PlanetModel.SPHERE, Geo3DUtil.fromDegrees(50.455185), Geo3DUtil.fromDegrees( -3.488893)));
+ points.add(new GeoPoint(PlanetModel.SPHERE, Geo3DUtil.fromDegrees(50.45523), Geo3DUtil.fromDegrees(-3.488927)));
+ points.add(new GeoPoint(PlanetModel.SPHERE, Geo3DUtil.fromDegrees(50.455456), Geo3DUtil.fromDegrees(-3.4890666)));
+ points.add(new GeoPoint(PlanetModel.SPHERE, Geo3DUtil.fromDegrees(50.455467), Geo3DUtil.fromDegrees( -3.48905)));
+ GeoPolygon polygon = GeoPolygonFactory.makeGeoPolygon(PlanetModel.SPHERE, points);
+ Collections.reverse(points);
+ polygon = GeoPolygonFactory.makeGeoPolygon(PlanetModel.SPHERE, points);
+ }
}
[2/2] lucene-solr:master: Merge branch 'master' of
https://git-wip-us.apache.org/repos/asf/lucene-solr
Posted by kw...@apache.org.
Merge branch 'master' of https://git-wip-us.apache.org/repos/asf/lucene-solr
Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/07d255a7
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/07d255a7
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/07d255a7
Branch: refs/heads/master
Commit: 07d255a7087aede40b32c311f076a876cccdfb08
Parents: 26ba705 624d128
Author: Karl Wright <Da...@gmail.com>
Authored: Mon Mar 26 06:20:49 2018 -0400
Committer: Karl Wright <Da...@gmail.com>
Committed: Mon Mar 26 06:20:49 2018 -0400
----------------------------------------------------------------------
lucene/common-build.xml | 3 +-
lucene/ivy-versions.properties | 12 +-
solr/CHANGES.txt | 5 +
solr/bin/install_solr_service.sh | 8 +-
solr/bin/solr | 8 +-
solr/bin/solr.cmd | 52 ++--
solr/bin/solr.in.cmd | 2 +-
solr/bin/solr.in.sh | 8 +-
.../clustering/src/test-files/log4j.properties | 10 -
.../clustering/src/test-files/log4j2.xml | 37 +++
.../src/test-files/log4j.properties | 9 -
.../dataimporthandler/src/test-files/log4j2.xml | 36 +++
.../contrib/ltr/src/test-files/log4j.properties | 32 --
solr/contrib/ltr/src/test-files/log4j2.xml | 41 +++
solr/contrib/prometheus-exporter/ivy.xml | 5 +-
solr/core/ivy.xml | 8 +-
.../client/solrj/embedded/JettySolrRunner.java | 2 +-
.../solr/handler/admin/LoggingHandler.java | 4 +-
.../org/apache/solr/logging/LogWatcher.java | 16 +-
.../solr/logging/log4j/EventAppender.java | 48 ---
.../apache/solr/logging/log4j/Log4jInfo.java | 52 ----
.../apache/solr/logging/log4j/Log4jWatcher.java | 171 -----------
.../apache/solr/logging/log4j/package-info.java | 23 --
.../solr/logging/log4j2/Log4j2Watcher.java | 289 +++++++++++++++++++
.../solr/logging/log4j2/package-info.java | 22 ++
.../apache/solr/servlet/SolrDispatchFilter.java | 1 +
.../src/java/org/apache/solr/util/SolrCLI.java | 2 +-
.../org/apache/solr/util/SolrLogLayout.java | 69 +++--
.../apache/solr/util/StartupLoggingUtils.java | 39 ++-
solr/core/src/test-files/log4j.properties | 38 ---
solr/core/src/test-files/log4j2.xml | 39 +++
.../apache/solr/handler/RequestLoggingTest.java | 42 ++-
.../solr/handler/admin/LoggingHandlerTest.java | 34 ++-
.../org/apache/solr/logging/TestLogWatcher.java | 21 ++
.../reporters/SolrSlf4jReporterTest.java | 7 +-
.../apache/solr/util/TestSolrCLIRunExample.java | 3 +
solr/example/README.txt | 2 +-
.../example-DIH/solr/db/conf/solrconfig.xml | 2 +-
.../example-DIH/solr/mail/conf/solrconfig.xml | 2 +-
.../example-DIH/solr/solr/conf/solrconfig.xml | 2 +-
solr/example/resources/log4j.properties | 24 --
solr/example/resources/log4j2.xml | 53 ++++
solr/licenses/disruptor-3.4.0.jar.sha1 | 1 +
solr/licenses/disruptor-LICENSE-ASL.txt | 201 +++++++++++++
solr/licenses/disruptor-NOTICE.txt | 0
solr/licenses/log4j-1.2-api-2.11.0.jar.sha1 | 1 +
solr/licenses/log4j-1.2.17.jar.sha1 | 1 -
solr/licenses/log4j-api-2.11.0.jar.sha1 | 1 +
solr/licenses/log4j-api-LICENSE-ASL.txt | 201 +++++++++++++
solr/licenses/log4j-api-NOTICE.txt | 17 ++
solr/licenses/log4j-core-2.11.0.jar.sha1 | 1 +
solr/licenses/log4j-core-LICENSE-ASL.txt | 201 +++++++++++++
solr/licenses/log4j-core-NOTICE.txt | 17 ++
solr/licenses/log4j-slf4j-LICENSE-ASL.txt | 201 +++++++++++++
solr/licenses/log4j-slf4j-NOTICE.txt | 17 ++
solr/licenses/log4j-slf4j-impl-2.11.0.jar.sha1 | 1 +
solr/licenses/slf4j-log4j12-1.7.24.jar.sha1 | 1 -
solr/server/README.txt | 4 +-
solr/server/ivy.xml | 9 +-
solr/server/resources/log4j.properties | 29 --
solr/server/resources/log4j2.xml | 53 ++++
.../scripts/cloud-scripts/log4j.properties | 12 -
solr/server/scripts/cloud-scripts/log4j2.xml | 37 +++
.../scripts/cloud-scripts/snapshotscli.sh | 4 +-
solr/server/scripts/cloud-scripts/zkcli.bat | 4 +-
solr/server/scripts/cloud-scripts/zkcli.sh | 4 +-
.../conf/solrconfig.xml | 2 +-
solr/solr-ref-guide/ivy.xml | 4 +-
.../solr-ref-guide/src/configuring-logging.adoc | 8 +-
.../src/solr-control-script-reference.adoc | 4 +-
.../src/taking-solr-to-production.adoc | 4 +-
solr/solrj/ivy.xml | 2 +-
solr/solrj/src/test-files/log4j.properties | 32 --
solr/solrj/src/test-files/log4j2.xml | 39 +++
.../java/org/apache/solr/SolrTestCaseJ4.java | 9 +-
.../src/java/org/apache/solr/util/LogLevel.java | 47 +--
.../src/test-files/log4j.properties | 11 -
solr/test-framework/src/test-files/log4j2.xml | 39 +++
.../apache/solr/TestLogLevelAnnotations.java | 16 +-
79 files changed, 1838 insertions(+), 680 deletions(-)
----------------------------------------------------------------------