Raster oversampling + reprojection issue EPSG:2154 -> EPSG:3857
Description
Environment
jetty 9.2 / jre7 / java jai
Attachments
Activity

Tested with 2.12.x, indeed I cannot reproduce anymore. I believe the actual fix is the linked Geotools issue, so closing this one and marking fixed for the corresponding releases of GeoServer.
Here is a tiled viewer on the dataset, with high oversampling, far away from the mosaic origin, and bilinear interpolation:

Hi, can you try again with GeoServer 2.10.2? This change likely fixed the problem: https://osgeo-org.atlassian.net/browse/GEOT-5615

I have same warning message, my solution is using cached image

Possible solutions (from Andrea on ML):
1) Using jai-ext to fix the problem
2) "Another possible approach would be to "fix" image mosaic so that it does not
generate these huge coordinates to start with.
Right now it's using a global "grid to world" to represent the output,
but I believe it could be using a "reduced" one, local to the requested area,
that would position images in raster space location closer to the origin,
and thus avoid this issue without causing performance regressions."

DETAILS FOR WORKING VERSION
the image:
[PlanarImage[minX=1600 minY=2395 width=51 height=36 tileGridXOffset=1598
tileGridYOffset=2393 tileWidth=512 tileHeight=512
sampleModel=java.awt.image.PixelInterleavedSampleModel@3070002
colorModel=ColorModel: #pixelBits = 24 numComponents = 3 color space =
java.awt.color.ICC_ColorSpace@4bd37c5f transparency = 1 has alpha =
false isAlphaPre = false]]
the values that the warp operation is built from:
CONCAT_MT[PARAM_MT["Affine",
PARAMETER["num_row", 3],
PARAMETER["num_col", 3],
PARAMETER["elt_0_0", 0.034539737749169123],
PARAMETER["elt_0_2", 332894.3361804273],
PARAMETER["elt_1_1", -0.01734296884752956],
PARAMETER["elt_1_2", 6551844.388902134]],
INVERSE_MT[PARAM_MT["Popular Visualisation Pseudo Mercator",
PARAMETER["semi_major", 6378137.0],
PARAMETER["semi_minor", 6378137.0],
PARAMETER["latitude_of_origin", 0.0],
PARAMETER["central_meridian", 0.0],
PARAMETER["scale_factor", 1.0],
PARAMETER["false_easting", 0.0],
PARAMETER["false_northing", 0.0]]],
PARAM_MT["Ellipsoid_To_Geocentric",
PARAMETER["dim", 2],
PARAMETER["semi_major", 6378137.0],
PARAMETER["semi_minor", 6356752.314245179]],
PARAM_MT["Geocentric_To_Ellipsoid",
PARAMETER["dim", 2],
PARAMETER["semi_major", 6378137.0],
PARAMETER["semi_minor", 6356752.314140356]],
PARAM_MT["Lambert_Conformal_Conic_2SP",
PARAMETER["semi_major", 6378137.0],
PARAMETER["semi_minor", 6356752.314140356],
PARAMETER["central_meridian", 3.0],
PARAMETER["latitude_of_origin", 46.5],
PARAMETER["standard_parallel_1", 49.0],
PARAMETER["false_easting", 700000.0],
PARAMETER["false_northing", 6600000.0],
PARAMETER["scale_factor", 1.0],
PARAMETER["standard_parallel_2", 44.0]],
PARAM_MT["Affine",
PARAMETER["num_row", 3],
PARAMETER["num_col", 3],
PARAMETER["elt_0_0", 5.0],
PARAMETER["elt_0_2", -2960000.0],
PARAMETER["elt_1_1", -5.0],
PARAMETER["elt_1_2", 35555000.0]]]
DETAILS FOR NON-WORKING VERSION
[PlanarImage[minX=536600 minY=272395 width=51 height=36
tileGridXOffset=536598 tileGridYOffset=272393 tileWidth=512
tileHeight=512
sampleModel=java.awt.image.PixelInterleavedSampleModel@3070002
colorModel=ColorModel: #pixelBits = 24 numComponents = 3 color space =
java.awt.color.ICC_ColorSpace@4bd37c5f transparency = 1 has alpha =
false isAlphaPre = false], null, null, null, null, null, null, null,
null, null]
CONCAT_MT[PARAM_MT["Affine",
PARAMETER["num_row", 3],
PARAMETER["num_col", 3],
PARAMETER["elt_0_0", 0.034539737749169123],
PARAMETER["elt_0_2", 332894.3361804273],
PARAMETER["elt_1_1", -0.01734296884752956],
PARAMETER["elt_1_2", 6551844.388902134]],
INVERSE_MT[PARAM_MT["Popular Visualisation Pseudo Mercator",
PARAMETER["semi_major", 6378137.0],
PARAMETER["semi_minor", 6378137.0],
PARAMETER["latitude_of_origin", 0.0],
PARAMETER["central_meridian", 0.0],
PARAMETER["scale_factor", 1.0],
PARAMETER["false_easting", 0.0],
PARAMETER["false_northing", 0.0]]],
PARAM_MT["Ellipsoid_To_Geocentric",
PARAMETER["dim", 2],
PARAMETER["semi_major", 6378137.0],
PARAMETER["semi_minor", 6356752.314245179]],
PARAM_MT["Geocentric_To_Ellipsoid",
PARAMETER["dim", 2],
PARAMETER["semi_major", 6378137.0],
PARAMETER["semi_minor", 6356752.314140356]],
PARAM_MT["Lambert_Conformal_Conic_2SP",
PARAMETER["semi_major", 6378137.0],
PARAMETER["semi_minor", 6356752.314140356],
PARAMETER["central_meridian", 3.0],
PARAMETER["latitude_of_origin", 46.5],
PARAMETER["standard_parallel_1", 49.0],
PARAMETER["false_easting", 700000.0],
PARAMETER["false_northing", 6600000.0],
PARAMETER["scale_factor", 1.0],
PARAMETER["standard_parallel_2", 44.0]],
PARAM_MT["Affine",
PARAMETER["num_row", 3],
PARAMETER["num_col", 3],
PARAMETER["elt_0_0", 5.0],
PARAMETER["elt_0_2", -3495000.0],
PARAMETER["elt_1_1", -5.0],
PARAMETER["elt_1_2", 35285000.0]]]
A geoserver 2.8.3 instance running with jetty 9.2 / jre7 fails to display a mosaic of tiff files (https://www.ppige-npdc.fr/opendata/ortho/2012-2013/DALLES_L93_RGB_TIFF/) without vertical artifacts when reprojecting from EPSG:2154 (Lambert 93) to EPSG:3857
I've setup a simple ol3-based viewer showing the behavior: https://ppige-npdc.fr/opendata/ol3.html
Note that the artifacts only appear at the highest zoom levels (oversampling).
Andrea said "Without touching anything, you can try to disable the "warp/affine" merging by passing this parameter to the JVM: -DENABLE_ADVANCED_PROJECTION=false" but this did not help fix it.
In the logs, I noticed these kind of warnings:
WARN [lite.gridcoverage2d] - Could not reduce the grid geometry inside the valid area bounds: ReferencedEnvelope[-1.7976931348623157E308 : 1.7976931348623157E308, -85.0 : 85.0]
Grid geometry isGridGeometry2D[GridEnvelope2D[271928..272217, 151790..152079], PARAM_MT["Affine",
PARAMETER["num_row", 3],
PARAMETER["num_col", 3],
PARAMETER["elt_0_0", 0.4],
PARAMETER["elt_0_2", 592000.2],
PARAMETER["elt_1_1", -0.4],
PARAMETER["elt_1_2", 7115999.8]]]