[MapServer-users] SOLVED Re: Cluster style crashes MapServer 8

Seth G sethg at geographika.co.uk
Wed Jun 12 00:31:22 PDT 2024


Hi,

Glad you got it working!

What version of the GIS Internal releases were you using? Each one uses different MSVC runtime libraries. 
For example, the 1930 in the download release-1930-x64-gdal-3-8-5-mapserver-8-0-1.zip indicates MSVC 2022. 
There is a full list at https://www.gisinternals.com/sdk.php. 

The server will need to have the corresponding "Microsoft Visual C++ Redistributable" installed, which includes uacrtbase.dll (I thought you could have several of these though). These can be downloaded from https://learn.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170

These may or may not already be installed on your Windows Server, you can check with the following command:

    wmic product where "name like 'Microsoft Visual C++%'" get name,version

Your server seems to be Windows 2022, which should include MSVC 2022 and work with any of the GISInternals 1930 releases, so if you are already using these then it could be a different issue. The GISInternals use pgsql - REL_14_0 rather than 16. 

Seth

--
web:https://geographika.net & https://mapserverstudio.net
twitter: @geographika

On Tue, Jun 11, 2024, at 5:21 PM, Jaques Tati via MapServer-users wrote:
> Hi,
>
> well, that was a journey.
> I was able to grap a .dmp-file created by a mapserver-crash (not so easy
> cause it gets
> deleted very fast automatically by windows) and windbg revealed, that
> the crash
> happens in the libpq.dll of the MapServer-Distribution of gisinternals,
> caused by
> the uacrtbase.dll.
> Microsoft claims, that regardless of how many uacrtbase.dll's there are
> at different locations
> on your machine, only the OS-Version somewhere in the windows-directory
> is used.
> Since i couldn't change this dll i searched for another version of the
> libpq.dll and after testing many,
> the libpq.dll from the current OSGeo4W - QGis-Install-Directory solves
> the problem
> (just replace the orginal with the OSGeo4W-Version).
> After copying the file the clustered and all other postgis layers worked
> again as
> expected.
> It seems to be dependend on the version of the uacrtbase.dll on your system.
> The version on our windows server is 10.0.20348.2461 and it works with
> libpq.dll v16.2.
>
> BR
> Stefan
>
> Am 11.06.2024 um 10:14 schrieb Jaques Tati via MapServer-users:
>> Hi Seth,
>>
>> layer has an EXTEND (ensured this after reading the results of a search
>> through this mailing list).
>> I also did a mapserver 8 setup with a postgis layer and the same layer
>> definition on my private laptop
>> also with a postgis source and it works flawless. - but it uses IIS as
>> webserver.
>> I wrote, that according to logging the data comes back from the
>> postgreSQL source and when i do
>> comment out the CLUSTER the data is correctly displayed.
>> But, i will try to test your idea about the shapefile source, will come
>> back then.
>>
>> thanks anyway and BR
>> Stefan
>>
>> Am 11.06.2024 um 09:51 schrieb Seth G:
>>> Hi,
>>>
>>> A couple of things to try to narrow down the issue:
>>>
>>> 1. If you are able to export the PostGIS layer to a shapefile, then
>>> you can change the DATA of the layer and see if there is still a crash.
>>> 2. Is there an EXTENT set on the layer? I ran into an issue using MS
>>> SQL [1] and clustering. Try adding one manually.
>>>
>>> Seth
>>>
>>>
>>> [1] https://github.com/MapServer/MapServer/pull/6278
>>>
>>> --
>>> web:https://geographika.net & https://mapserverstudio.net
>>> twitter: @geographika
>>>
>>> On Tue, Jun 11, 2024, at 9:31 AM, Jaques Tati via MapServer-users wrote:
>>>> Hi There,
>>>>
>>>> in our application we're upgrading our v7.6 MapServer to v8.01.
>>>> Everything seems to work good so far but we have one layer that uses
>>>> Clustering of points
>>>> and whenever this layer should be displayed MapServer 8 crashes
>>>> reproducably.
>>>>
>>>> This layer works flawless in v7.6 and clustering is setup exactly from
>>>> the book.
>>>> When i comment clustering out, the layer is displayed, so all other
>>>> style features do work.
>>>> Datasource is a PostGIS layer, webserver is Apache 2.4.59.
>>>>
>>>> Looking at the debug output, the data comes back as expected from the
>>>> database,
>>>> even clustering is logged and no error in the MapServer-Logfile.
>>>> The crash is reported in Windows Application-Eventlog with only cryptic
>>>> reasons that do
>>>> not really result in any valid answers when googling.
>>>> ..there is a word "StackHash" included that might point to DEP
>>>> (DataExecutionPrevention)
>>>> of Windows, - but since all other layers do work with the MapServer-Exe
>>>> it would be hard
>>>> to understand why windows does prevent the output of clustered layers.
>>>>
>>>> We're using Windows Server 2022 21H2 Datacenter Edition, 8 CPU 32GB
>>>> RAM.
>>>>
>>>> Anyone heard of this crude behaviour, I'm running out of ideas?
>>>>
>>>> Thanks in advance for any hint
>>>>
>>>> SH
>>>> _______________________________________________
>>>> MapServer-users mailing list
>>>> MapServer-users at lists.osgeo.org
>>>> https://lists.osgeo.org/mailman/listinfo/mapserver-users
>>
>> _______________________________________________
>> MapServer-users mailing list
>> MapServer-users at lists.osgeo.org
>> https://lists.osgeo.org/mailman/listinfo/mapserver-users
>
> _______________________________________________
> MapServer-users mailing list
> MapServer-users at lists.osgeo.org
> https://lists.osgeo.org/mailman/listinfo/mapserver-users


More information about the MapServer-users mailing list