Ticket #29 (closed defect: worksforme)

Opened 9 months ago

Last modified 2 months ago

Random distortions on tiles

Reported by: Mithral Owned by: arneke
Priority: major Milestone: 0.8
Component: core Version: 0.7
Keywords: Cc:

Description

Hi,

Sometimes, I got distortions on some tiles when displaying a VMAP or a Bluemarble map with GeoWebCache.

It seems that I don't have the problem when accessing directly to geoserver or with TileCache?.

Unless I delete the cache directory, the problem remains persistant on the same tiles.

I have attached to the ticket :
- 2 screenshots
- the property files I used with geowebcache
- the openlayers code I'm using to display the maps

Regards,

Cédric G. (Mithral)

Attachments

vmap_ticket.JPG (104.7 kB) - added by Mithral 9 months ago.
VMAP screenshot
layer_bluemarble.properties (0.5 kB) - added by Mithral 9 months ago.
Bluemarble property file
layer_VMAP.properties (205 bytes) - added by Mithral 9 months ago.
VMAP property file
openlayers.html (1.6 kB) - added by Mithral 9 months ago.
My openlayers map
bluemarble_15042008.jpg (192.6 kB) - added by Mithral 9 months ago.
Bluemarble screenshot (15/04/2008)
bluemarble_15042008_2.jpg (136.4 kB) - added by Mithral 9 months ago.
Bluemarble screenshot 2 (15/04/2008)
bluemarble_15042008_3.jpg (145.5 kB) - added by Mithral 9 months ago.
Bluemarble screenshot 3 (15/04/2008)

Change History

Changed 9 months ago by Mithral

VMAP screenshot

Changed 9 months ago by Mithral

Bluemarble property file

Changed 9 months ago by Mithral

VMAP property file

Changed 9 months ago by Mithral

My openlayers map

Changed 9 months ago by arneke

Hi,

any chance you could make that geoserver publicy accessible? If not I will still try to look into it, but it may take a while because I would have to setup a geoserver with bluemarble first.

The images appear to be invalid, and 3.8 mbyte is huge for .jpg, can you try again?

Changed 9 months ago by Mithral

Hi,

Thanks for your answer.

Unfortunately, the server I use is part of an enterprise network and I don't have authorizations to do it accessible.

I have attached a new bluemarble screenshot.
The wrong tile is underlined and I noticed the the tile matches to another tile on the map (it is underlined on the

screenshot too)

I got the requests send to geowebcache for the two tiles :

- The duplicated tile :

http://pmts166811:8080/geowebcache/wms?LAYERS=bluemarble&FORMAT=image%2Fjpeg&TILED=true&SERVICE=WMS&VERSION=1.1.1&REQUEST=

GetMap?&STYLES=&EXCEPTIONS=application%2Fvnd.ogc.se_inimage&SRS=EPSG%3A4326&BBOX=53.43749999999626,44.99999999999781,56.249

99999999622,47.81249999999777&WIDTH=256&HEIGHT=256

- The wrong tile:

http://pmts166811:8080/geoserver/wms?LAYERS=pyramid_8&FORMAT=image%2Fjpeg&TILED=true&SERVICE=WMS&VERSION=1.1.1&REQUEST=Get

Map&STYLES=&EXCEPTIONS=application%2Fvnd.ogc.se_inimage&SRS=EPSG%3A4326&BBOX=53.43749999999626,47.81249999999777,56.249999

99999622,50.624999999997726&WIDTH=256&HEIGHT=256

The second request is different from the first one and when I send it directly to geoserver, I got the correct tile. If I

delete the cache, the tile is generated by geowebcache again.

Actually, I'm trying to know if the problem is linked to the image format I'm using (JPEG) and to reproduce it on a map demo of geoserver.

Regards,

Cédric G.

Changed 9 months ago by Mithral

Bluemarble screenshot (15/04/2008)

Changed 9 months ago by arneke

  • milestone set to 0.8

Good job, I think you're on the right track regarding the image format, I've been looking into a similar issue since Friday.

GWC uses a wrapper for JAI (Java Advanced Imaging) that uses JAI (much faster) if it's available, and falls back to regular Java image functions when it's not. This code is used to slice up a big image into smaller tiles. It looks like this wrapper is broken for JPEG, it always returns the tile in the bottom left corner.

For 0.8, which will come later this week I hope, there will hopefully be a workaround. In your case I would try disabling metatiling (set it to 1x1). If you have it would be great if you tested with png AND metatiling to verify that the problem does not occur then.

Changed 9 months ago by Mithral

Hi,

I have tried to disable the metatiling and set the image format png, but the problem has occured again. (Here the screenshot) and the request below :

The wrong tile :

http://pmts166811:8080/geowebcache/wms?LAYERS=bluemarble&FORMAT=image%2Fpng&TILED=true&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&STYLES=&EXCEPTIONS=application%2Fvnd.ogc.se_inimage&SRS=EPSG%3A4326&BBOX=118.12499999999523,11.249999999998364,123.74999999999514,16.874999999998273&WIDTH=256&HEIGHT=256

The tile which has been duplicated :

http://pmts166811:8080/geowebcache/wms?LAYERS=bluemarble&FORMAT=image%2Fpng&TILED=true&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&STYLES=&EXCEPTIONS=application%2Fvnd.ogc.se_inimage&SRS=EPSG%3A4326&BBOX=123.74999999999514,11.249999999998364,129.37499999999505,16.874999999998273&WIDTH=256&HEIGHT=256

For JAI, I have installed it on my JDK (version 1.5) with the native windows dll.

Then, I have followed the geoserver tutorial http://geoserver.org/display/GEOSDOC/Dealing+with+native+JAI and do the same operation for GWC. Could it have border effects on GWC ?

Moreover, the bluemarble map I use is a Pyramid Plugin. Could it have border effects on GWC too ?

Regards,

Cédric G.

Changed 9 months ago by Mithral

Bluemarble screenshot 2 (15/04/2008)

Changed 9 months ago by arneke

Hi, I think the error is in the wrapper itself, so it doesn't really matter whether JAI is installed or not.

Did you clear the cache in between, both the files on disk and in your webbrowser.

Either way, I hope to release 0.8 beta beta later today, I would appreciate if you could test, and there's a fair chance your problems will go away. Will update here with a link to the download.

Changed 9 months ago by Mithral

Hi,

Thanks. I will test the 0.8 as soon as possible. Will it be available as a binary build ?

Otherwise, I found a clue about that problem :

I first got the two requests of the two tiles (see the attached screenshot) send to GWC by openlayers :

First tile :
http://pmts166811:8080/geowebcache/wms?LAYERS=bluemarble&FORMAT=image%2Fpng&TILED=true&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&STYLES=&EXCEPTIONS=application%2Fvnd.ogc.se_inimage&SRS=EPSG%3A4326&BBOX=73.12499999999591,78.74999999999729,78.74999999999582,84.3749999999972&WIDTH=256&HEIGHT=256
Second tile :
http://pmts166811:8080/geowebcache/wms?LAYERS=bluemarble&FORMAT=image%2Fpng&TILED=true&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&STYLES=&EXCEPTIONS=application%2Fvnd.ogc.se_inimage&SRS=EPSG%3A4326&BBOX=78.74999999999582,78.74999999999729,84.37499999999574,84.3749999999972&WIDTH=256&HEIGHT=256

Then, I search the corresponding requests send by GWC to Geoserver (In the JBoss log).

I found that the request to get the second tile has been called two times. But I found no request for the first one :

//-----------------------------------------------------------------------------

2008-04-15 18:19:08,923 INFO [STDOUT] 15 avr. 18:19:08 INFO [geoserver.filters] - 172.20.4.25 "GET /geoserver/wms?exceptions=application%2Fvnd.ogc.se_inimage&height=256&bbox=78.75%2C78.75%2C84.375%2C84.375&width=256&layers=nasa%3Apyramid_8&request=GetMap?&srs=EPSG%3A4326&format=image%2Fpng&transparent=false&tiled=true&version=1.1.0" "Java/1.6.0_04" ""
2008-04-15 18:19:08,939 INFO [STDOUT] 15 avr. 18:19:08 INFO [geoserver.filters] - 172.20.4.25 "GET /geoserver/wms?exceptions=application%2Fvnd.ogc.se_inimage&height=256&bbox=78.75%2C78.75%2C84.375%2C84.375&width=256&layers=nasa%3Apyramid_8&request=GetMap?&srs=EPSG%3A4326&format=image%2Fpng&transparent=false&tiled=true&version=1.1.0" "Java/1.6.0_04" ""
2008-04-15 18:19:09,360 INFO [STDOUT] 15 avr. 18:19:09 INFO [geoserver.filters] - 172.20.4.25 "GET /geoserver/wms?exceptions=application%2Fvnd.ogc.se_inimage&height=256&bbox=78.75%2C78.75%2C84.375%2C84.375&width=256&layers=nasa%3Apyramid_8&request=GetMap?&srs=EPSG%3A4326&format=image%2Fpng&transparent=false&tiled=true&version=1.1.0" took 390ms
2008-04-15 18:19:09,392 INFO [STDOUT] 15 avr. 18:19:09 INFO [geoserver.filters] - 172.20.4.25 "GET /geoserver/wms?exceptions=application%2Fvnd.ogc.se_inimage&height=256&bbox=78.75%2C78.75%2C84.375%2C84.375&width=256&layers=nasa%3Apyramid_8&request=GetMap?&srs=EPSG%3A4326&format=image%2Fpng&transparent=false&tiled=true&version=1.1.0" took 469ms
//--------------------------------------------------------------------------------

Regards,

Cédric G.

Changed 9 months ago by Mithral

Bluemarble screenshot 3 (15/04/2008)

Changed 9 months ago by arneke

0.8.0 is out now, please read the release notes on the front page and make sure all caches are cleared before you test it.

I don't have a good explanation for the behavior above, it's different from what I have observed with JPEG and I notice that you only have problems with some of the tiles.

Changed 9 months ago by Mithral

Hi,

I have installed the 0.8.

My problem still occurs but it seems to be more rare. I will continue to investigate.

PS : The variable GEOWEBCACHE_CONFIG_DIR doesn't work anymore. Has the mechanism changed ? (To do my layer work, I put the property files directly in the war)

Regards,

Cédric G.

Changed 9 months ago by arneke

Yes, this is now handled in applicationContext.xml.

I guess I'll have to find time to setup a blue marble map myself... we definetly run a styled vmap already.

Changed 9 months ago by arneke

Forgot to mention, the vmap is here http://sigma.openplans.org/users/ (still running 0.7.2)

Changed 2 months ago by arneke

  • status changed from new to closed
  • resolution set to worksforme
Note: See TracTickets for help on using tickets.