[Geoserver-devel] [jira] Created: (GEOS-3132) Runaway URL-encoding of featureType filenames

Runaway URL-encoding of featureType filenames
---------------------------------------------

                 Key: GEOS-3132
                 URL: http://jira.codehaus.org/browse/GEOS-3132
             Project: GeoServer
          Issue Type: Bug
          Components: Configuration
    Affects Versions: 1.7.4
         Environment: MacOS 10.5, CentOS 5.0
            Reporter: Daniel Lipsitt
            Assignee: Andrea Aime

When I create a featureType from a PostGIS table with a space in the name (eg. {{Foo Bar}}), I end up with directories in {{data/featureTypes}} that look like this:

{{postgis_Foo%252525252BBar}}

I assume that what is happening is this: The first time I save the featureType, it encodes the space as {{%2B}}. The next time I save the config (any part of it, I think), it reads that feature type filename, sees that it has a {{%}}, and encodes that as {{%25}}. The next time, it sees that it still contains a {{%}}, and encodes it again, ad infinitum. This repeats each time I make any changes to my config, until the filenames are longer than the legal filesystem limit. Then I can't save anything.

--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

     [ http://jira.codehaus.org/browse/GEOS-3132?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Daniel Lipsitt reopened GEOS-3132:
----------------------------------

Although I am not seeing runaway growth of file names in 1.7.5, I think there are still potential issues with the encoding.

For a layer named {{Foo Bar}}, I am getting both {{namespace_Foo+Bar}} and {{namespace_Foo%2BBar}} in my {{featureTypes}} directory.

I'm not totally sure about the sequence, but it looks like the plus sign version is saved first, and then the %-encoded version comes later when I save another change (anywhere in the config, I think). Strangely, it seems that it then saves it with the plus sign again at some later point.

My main concern is the duplication of the config for these layers. Which version of the file gets read in when the config is reloaded? It seems like there is a potential for the two versions to get out of sync and for the older one to be read in by mistake when the server is restarted.

Notice that {{%2B}} is the code for plus, not space. If the filename is going to be URL encoded, it should be {{%20}}. In any case, it just needs to be done consistently.

Runaway URL-encoding of featureType filenames
---------------------------------------------

                Key: GEOS-3132
                URL: http://jira.codehaus.org/browse/GEOS-3132
            Project: GeoServer
         Issue Type: Bug
         Components: Configuration
   Affects Versions: 1.7.4
        Environment: MacOS 10.5, CentOS 5.0
           Reporter: Daniel Lipsitt
           Assignee: Justin Deoliveira

When I create a featureType from a PostGIS table with a space in the name (eg. {{Foo Bar}}), I end up with directories in {{data/featureTypes}} that look like this:
{{postgis_Foo%252525252BBar}}
I assume that what is happening is this: The first time I save the featureType, it encodes the space as {{%2B}}. The next time I save the config (any part of it, I think), it reads that feature type filename, sees that it has a {{%}}, and encodes that as {{%25}}. The next time, it sees that it still contains a {{%}}, and encodes it again, ad infinitum. This repeats each time I make any changes to my config, until the filenames are longer than the legal filesystem limit. Then I can't save anything.

--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira