Timeout with REQUIRES
Abe Gillespie
agillesp at VT.EDU
Wed Dec 29 11:36:55 PST 2004
Latest and greatest on all the major players: Linux, Mac OS 10, and
Windows (this bug occurs on all). Probably not the smartest setup but
my dev machine is Mac, my server is Linux, and my clients use Windows.
:)
-Abe
On Dec 28, 2004, at 4:51 PM, Steve Lime wrote:
> What versions/platform are you using?
>
> Steve
>
>>>> Abe Gillespie <agillesp at vt.edu> 12/28/2004 4:06:07 PM >>>
> A couple of other tests that also didn't fix anything.
>
> Where REQUIRES "[Flood Zone]" works for the "Flood Elevation" layer it
>
> won't work for the "Buildings 0" layer. I.e.:
>
> LAYER
> NAME "Buildings 0"
> STATUS ON
> DATA "bldg0"
> TYPE polygon
> MAXSCALE 15000
> UNITS FEET
> CLASS
> COLOR 168 168 168
> OUTLINECOLOR 97 97 97
> END
> REQUIRES "[Flood Zone]"
> END
>
> Renaming "Buildings" to "Foo" and then using REQUIRES "[Foo]" was
> fruitless. These two tests seem to isolate the dependent layer as
> being the problem as opposed to the independent layer.
>
> -Abe
>
> On Dec 28, 2004, at 4:54 PM, Abe Gillespie wrote:
>
>> Comments are inline.
>>
>> -Abe
>>
>> On Dec 27, 2004, at 7:45 PM, Steve Lime wrote:
>>
>>> Abe's right the single quote isn't a problem. The requires
> directive
>>> was
>>> mostly broken in 4.2 and probably 4.0. There were changes made in
>>> portions of the code that made requires basically useless. The
> problem
>>> was only found and fixed right before 4.4 was released.
>>>
>>> I don't see anything obvious but let's try a couple of things and
> see
>>> if
>>> they help.
>>>
>>> 1) You don't need ()'s nor equality tests. So
>>>
>>> REQUIRES "([Buildings] = 1)" should be REQUIRES "[Buildings]" and
>>
>> Didn't change anything - still timing out.
>>
>>> REQUIRES "([Flood Zone] = 1)" should be REQUIRES "[Flood Zone]"
>>
>> Didn't change anything - continued to work w/o problems.
>>
>>>
>>> 2) Try renaming "Buildings 0" to "Buildings_0". I'm thinking there
> may
>>> be an issue with some string comparisons someplace.
>>
>> Didn't change anything - still timing out.
>>
>>>
>>> Please try these one at a time and let me know how it goes.
>>>
>>> Steve
>>>
>>>>>> Abe Gillespie <agillesp at VT.EDU> 12/27/04 4:41 PM >>>
>>> Uh, no, that shouldn't be a problem. If it was, the whole map file
>>> wouldn't parse correctly. That single quote just adds a "feet"
>>> designation to the elevation measurement. In fact, if I remove the
>>> "Buildings 0" layer completely, everything runs fine.
>>>
>>> -Abe
>>>
>>> On Dec 27, 2004, at 5:05 PM, Ethan Alpert wrote:
>>>
>>>> Look at the TEXT label for the Flood Elevation layer.
>>>>
>>>> TEXT ([ELEVATION]')
>>>>
>>>> You're missing a '
>>>>
>>>> I've had all kinds of problems before when I miss a " or '
>>>>
>>>> -e
>>>>
>>>> -----Original Message-----
>>>> From: UMN MapServer Users List
> [mailto:MAPSERVER-USERS at LISTS.UMN.EDU]
>>>> On
>>>> Behalf Of Abe Gillespie
>>>> Sent: Monday, December 27, 2004 3:22 PM
>>>> To: MAPSERVER-USERS at LISTS.UMN.EDU
>>>> Subject: [UMN_MAPSERVER-USERS] Timeout with REQUIRES
>>>>
>>>>
>>>> I have two layers that look like this:
>>>>
>>>> LAYER
>>>> NAME "Flood Zone"
>>>> STATUS ON
>>>> DATA "flood_zo"
>>>> TYPE polygon
>>>> MAXSCALE 300000
>>>> UNITS FEET
>>>> CLASS
>>>> COLOR 68 126 171
>>>> OUTLINECOLOR 11 57 92
>>>> END
>>>> GROUP "Layers"
>>>> END
>>>>
>>>> LAYER
>>>> NAME "Flood Elevation"
>>>> STATUS ON
>>>> DATA "flood_el"
>>>> TYPE line
>>>> UNITS FEET
>>>> MAXSCALE 20000
>>>> CLASS
>>>> COLOR 68 155 255
>>>> TEXT ([ELEVATION]')
>>>> LABEL
>>>> TYPE TRUETYPE
>>>> FONT arial
>>>> SIZE 8
>>>> POSITION cc
>>>> COLOR 0 0 0
>>>> ANGLE auto
>>>> MINFEATURESIZE 1
>>>> END
>>>> END
>>>> REQUIRES "([Flood Zone] = 1)"
>>>> END
>>>>
>>>> Notice the "REQUIRES" tag. These two layers cause no problems.
>>>> However,
>>>> I also have these two layers further in the map file:
>>>>
>>>> LAYER
>>>> NAME "Buildings"
>>>> STATUS ON
>>>> DATA "bldg1"
>>>> TYPE polygon
>>>> MAXSCALE 15000
>>>> UNITS FEET
>>>> LABELITEM "ADDRESS"
>>>> LABELCACHE on
>>>> LABELMAXSCALE 6000
>>>> CLASS
>>>> COLOR 220 149 146
>>>> OUTLINECOLOR 190 95 96
>>>> LABEL
>>>> MINFEATURESIZE 12
>>>> TYPE truetype
>>>> FONT arial
>>>> ANTIALIAS true
>>>> ANGLE auto
>>>> POSITION cc
>>>> COLOR 0 0 0
>>>> OUTLINECOLOR 255 255 255
>>>> BUFFER 3
>>>> SIZE 8
>>>> END
>>>> END
>>>> TOLERANCE 3
>>>> TEMPLATE "x"
>>>> METADATA
>>>> search_field "FULLADDR"
>>>> search_fields "FULLADDR"
>>>> search_aliases "Address"
>>>> END
>>>> GROUP "Layers"
>>>> END
>>>>
>>>> LAYER
>>>> NAME "Buildings 0"
>>>> STATUS ON
>>>> DATA "bldg0"
>>>> TYPE polygon
>>>> MAXSCALE 15000
>>>> UNITS FEET
>>>> CLASS
>>>> COLOR 168 168 168
>>>> OUTLINECOLOR 97 97 97
>>>> END
>>>> REQUIRES "([Buildings] = 1)"
>>>> END
>>>>
>>>> With the "Buildings 0" layer, if I include the "REQUIRES" tag
>>> MapServer
>>>> will timeout. If I remove the "REQUIRES" tag everything runs
>>> smoothly.
>>>> I'm using PHP Mapscript 4.4.1. Before I upgraded (I think it
> was
>>>> Mapscript 4.0) this worked fine. So something has changed between
>>> then
>>>> and now with the "REQUIRES" algorithm.
>>>>
>>>> Any ideas?
>>>>
>>>> Thanks.
>>>> -Abe
>>>>
>>>
>>
>
More information about the MapServer-users
mailing list