[mapserver-users] Memoryproblem

Hallgren, Johan johan.hallgren at logica.com
Wed Aug 13 07:09:52 PDT 2008


Hello

I have MapServer 5.2.0 and I have built the bin by myself. I use Windows Server 2003 standard edition.

I also have tried to turn off all layers in the file and I have also removed all layes from the mapfile and still there is the same problem.

Here is the file:
+++++++++++++++++++++++++++
#
# Start of map file
#
MAP
  NAME GIMS
  STATUS ON
  EXTENT 223559 6043080 2944725 7727610
#               1470448 6850024 1471966 6851089
  SIZE 500 500
  UNITS METERS
  IMAGECOLOR 255 255 255
  FONTSET "D:\apps\GMSAgent\MapFiles\fonts.txt"
  SYMBOLSET "D:\apps\GMSAgent\MapFiles\Symbol\symbolset.sym"
  SHAPEPATH "D:\data\Mapdata\GIMS"
  RESOLUTION 96
# DEBUG 5
# CONFIG "MS_ERRORFILE" "D:\apps\GMSAgent\log\mapserver.log"

#  IMAGETYPE PNG
  OUTPUTFORMAT
   NAME 'AGG'
   DRIVER AGG/PNG
   IMAGEMODE RGB
  END

  WEB
    TEMPLATE "c:\temp\template.txt"
  END

  #
  # Start of legend
  #
  LEGEND
    KEYSIZE 18 12
    LABEL
      TYPE BITMAP
      SIZE MEDIUM
      COLOR 0 0 89
    END
    STATUS ON
    #STATUS embed
  END

  #
  # Start of layer definitions
  #

  LAYER
    NAME "Sjöar"
    TYPE POLYGON
    STATUS ON
    DATA "vv/sj"
    TEMPLATE "c:\temp\template.txt"
    MAXSCALE 750000
    CLASS
      STYLE
        OUTLINECOLOR 0 0 255
        COLOR 165 250 255
      END
    END
  END

  LAYER
    NAME "Stora Sjöar"
    TYPE POLYGON
    STATUS ON
    DATA "vv/sj_large"
    TEMPLATE "c:\temp\template.txt"
    MINSCALE 750000
    CLASS
      STYLE
        OUTLINECOLOR 0 0 255
        COLOR 165 250 255
      END
    END
  END

  LAYER
    NAME "Sveriges vatten"
    TYPE POLYGON
    STATUS ON
    DATA "vv/rsv_hv_grid"
    TEMPLATE "c:\temp\template.txt"
    MINSCALE 30000
    CLASS
      STYLE
        COLOR 165 250 255
      END
    END
  END

  LAYER
    NAME "Öar"
    TYPE POLYGON
    STATUS ON
    DATA "vv/Or"
    TEMPLATE "c:\temp\template.txt"
    MAXSCALE 300000
    MINSCALE 30000
    CLASS
      STYLE
        OUTLINECOLOR 0 130 255
        COLOR 255 255 255
      END
    END
  END

  LAYER
    NAME "Tätorter"
    TYPE POLYGON
    STATUS ON
    DATA "vv/TATYT"
    TEMPLATE "c:\temp\template.txt"
    MAXSCALE 1000000
    CLASS
      STYLE
        OUTLINECOLOR 0 0 0
        COLOR 210 210 210
      END
    END
  END

  LAYER
    NAME "Vägar"
    TYPE LINE
    STATUS ON
    DATA "vv/vdb_m"
    TEMPLATE "c:\temp\template.txt"
    MAXSCALE 2000000
    CLASS
      EXPRESSION ([VAEGNR] > 1 AND [VAEGNR] < 100)
      STYLE
        SYMBOL solid
        SIZE 2
        COLOR 105 105 105
      END
    END
    CLASS
      MAXSCALE 1000000
      EXPRESSION ([VAEGNR] >= 100 AND [VAEGNR] < 500)
      STYLE
        SYMBOL solid
        SIZE 2
        COLOR 105 105 105
      END
    END
    CLASS
      MAXSCALE 1000000
      EXPRESSION ([VAEGNR] >= 500)
      STYLE
        COLOR 105 105 105
      END
    END
  END

  LAYER
    NAME "Gränser"
    TYPE LINE
    STATUS ON
    DATA "vv/Granser"
    TEMPLATE "c:\temp\template.txt"
    CLASS
      EXPRESSION ([TYP] = 5)
      STYLE
        SYMBOL dot
        COLOR 255 173 0
        SIZE 2
      END
    END
    CLASS
      EXPRESSION ([TYP] = 6)
      STYLE
        COLOR 255 173 0
      END
    END
    CLASS
      EXPRESSION ([TYP] = 7)
      STYLE
        COLOR 255 173 0
      END
    END
    CLASS
      EXPRESSION ([TYP] = 8)
      STYLE
        SYMBOL solid
        COLOR 255 173 0
        SIZE 2
      END
    END
  END

  LAYER
    NAME "Vattendrag"
    TYPE LINE
    STATUS ON
    DATA "vv/vd"
    TEMPLATE "c:\temp\template.txt"
    MAXSCALE 500000
    CLASS
      STYLE
        COLOR 0 219 255
      END
    END
  END

  LAYER
    NAME "Texter"
    TYPE LINE
    STATUS ON
    DATA "vv/TATTXT"
    TEMPLATE "c:\temp\template.txt"
    MAXSCALE 1250000
    LABELITEM "TEXT"
    CLASS
      LABEL
        ENCODING CP437
        TYPE truetype
        FONT verdanab
        SIZE 10
      END
    END
  END

  LAYER
    NAME "Texter småorter"
    TYPE LINE
    STATUS ON
    DATA "vv/SMAORTTX"
    TEMPLATE "c:\temp\template.txt"
    MAXSCALE 1250000
    LABELITEM "TEXT"
    CLASS
      LABEL
        ENCODING CP437
        TYPE truetype
        FONT verdana
        SIZE 8
      END
    END
  END

  LAYER
    NAME "Sverige"
    STATUS ON
    TILEINDEX "D:\data\Mapdata\gsd\Svekra\idx"
    TYPE RASTER
    MAXSCALE 1500000
    MINSCALE 250000
  END

  LAYER
    NAME "Översiktskartan"
    STATUS ON
    TILEINDEX "D:\data\Mapdata\gsd\Overskra\idx"
    TYPE RASTER
    MAXSCALE 250000
    MINSCALE 75000
  END

  LAYER
    NAME "Vägkartan"
    STATUS ON
    TILEINDEX "D:\data\Mapdata\gsd\Vagkra\idx"
    TYPE RASTER
    MAXSCALE 75000
    MINSCALE 25000
  END

  LAYER
    NAME "Terrängkartan"
    STATUS ON
    TILEINDEX "D:\data\Mapdata\gsd\Terrkra\idx"
    TYPE RASTER
    MAXSCALE 25000
  END

  LAYER
    NAME "Tätortskartan"
    STATUS ON
    TILEINDEX "D:\data\Mapdata\gsd\Tatortra\idx"
    TYPE RASTER
    OFFSITE 255 255 255
    MAXSCALE 10000
  END
END # Map File
+++++++++++++++++++++++++++

/Johan

___________________________________


Johan Hallgren


Logica
Pelle Bergs backe 3
Box 1938, 791 19 Falun
Tel (och mobil): 023-547 46 (int: +46-2354746)
johan.hallgren at logica.com
http://www.logica.se

-----Original Message-----
From: Tamas Szekeres [mailto:szekerest at gmail.com]
Sent: den 13 augusti 2008 15:36
To: Hallgren, Johan
Cc: mapserver-users at lists.osgeo.org
Subject: Re: [mapserver-users] Memoryproblem

Johan,

I wonder if this was a Win 2003 issue, since all of the windows builder are running on Win 2003 at the buildbot and the build process includes testing the getBytes function.

How is your mapfile looking like? Which mapserver version are you testing with.


Tamas



2008/8/13 Hallgren, Johan <johan.hallgren at logica.com>:
> Hello Tamas
>
> I'm glad that you supports me here:)
>
> We are getting closer to the problem:)
>
> Your code (getbytes.exe) runs fine on my own pc, but when I move the code to the server the problem starts.
>
> I made a new project with your cs-file and named it getbytemap, but it's actually the same code as the getbytes.exe. The output below doesn't actually write the error but the "GetBytes:" is the first part och the exception message. I can guess that the memory already is corrupt. When I do the same with the debugger you can see the watch output below.
>
> One difference I have in mind compared to other environments I have used is that this server have more power. In the task manager there is eight CPUs.
>
> The problem is deterministic with the getbyte-code.
>
> Console output
> +++++++++++++++++++++++++++++++++++
> C:\temp>getbytemap.exe D:\apps\GMSAgent\MapFiles\gims.map
> c:\temp\t.png Drawing map: 'GIMS' using imageObj.getBytes
> GetBytes:
>
> C:\temp>getbytemap.exe D:\apps\GMSAgent\MapFiles\gims.map
> c:\temp\t.png Drawing map: 'GIMS' using imageObj.getBytes Drawing map:
> 'GIMS' using imageObj.write
> GetBytes:
>
> C:\temp>getbytemap.exe D:\apps\GMSAgent\MapFiles\gims.map
> c:\temp\t.png Drawing map: 'GIMS' using imageObj.getBytes
> GetBytes:
>
> C:\temp>getbytemap.exe D:\apps\GMSAgent\MapFiles\gims.map
> c:\temp\t.png Drawing map: 'GIMS' using imageObj.getBytes
> GetBytes:
>
> C:\temp>getbytemap.exe D:\apps\GMSAgent\MapFiles\gims.map
> c:\temp\t.png Drawing map: 'GIMS' using imageObj.getBytes
> GetBytes:
> +++++++++++++++++++++++++++++++++++
>
> Watch output
> +++++++++++++++++++++++++++++++++++
> ex.Message      "Attempted to read or write protected memory. This is often an indication that other memory is corrupt."        string
> +++++++++++++++++++++++++++++++++++
>
> /Johan
>
> ___________________________________
>
>
> Johan Hallgren
>
>
> Logica
> Pelle Bergs backe 3
> Box 1938, 791 19 Falun
> Tel (och mobil): 023-547 46 (int: +46-2354746)
> johan.hallgren at logica.com http://www.logica.se
>
> -----Original Message-----
> From: Tamas Szekeres [mailto:szekerest at gmail.com]
> Sent: den 12 augusti 2008 16:48
> To: Hallgren, Johan
> Cc: mapserver-users at lists.osgeo.org
> Subject: Re: [mapserver-users] Memoryproblem
>
> Johan,
>
> I haven't run into this problem yet. Do you able to run the getbytes console application in the /csharp directory?
> Is this issue deterministic or random? Do you have an example to reproduce it?
>
> Best regards,
>
> Tamas
>
>
> 2008/8/12 Hallgren, Johan <johan.hallgren at logica.com>:
>> Hello
>>
>>
>>
>> I have a major problem when using imgMapObj.getBytes().
>>
>> The memory will be corrupt. The problem doesn't occur when using the
>> save function.  I have not seen the problem on other servers so the
>> problem seams to be related to a specific server (Windows Server 2003 standard edition).
>>
>> Error msg
>>
>> ++++++++++++++++++++++
>>
>> Attempted to read or write protected memory. This is often an
>> indication that other memory is corrupt.
>>
>>    at OSGeo.MapServer.mapscriptPINVOKE.imageObj_getBytes(HandleRef
>> jarg1, SWIGByteArrayDelegate jarg2)
>>    at OSGeo.MapServer.imageObj.getBytes(SWIGByteArrayDelegate callback)
>>    at OSGeo.MapServer.imageObj.getBytes()
>>    at WMData.GIS.GMSAgent_WP.Libs.MapEngine.Get_Image(XmlDocument
>> xmlDoc, Boolean bRetImage) in
>> C:\Project\applications\GMS\GMSAgent_WP\Libs\MapEngine.cs:line 298
>> ++++++++++++++++++++++
>>
>> I use mapserver in c# and I have version 5.2.0.
>>
>>
>>
>> /Johan
>>
>> Johan Hallgren
>>
>> Logica
>> Pelle Bergs backe 3
>> Box 1938, 791 19 Falun
>> Tel (och mobil): 023-547 46 (int: +46-2354746)
>> johan.hallgren at logica.com http://www.logica.se
>>
>>
>> _______________________________________________
>> mapserver-users mailing list
>> mapserver-users at lists.osgeo.org
>> http://lists.osgeo.org/mailman/listinfo/mapserver-users
>>
>>
>
>




More information about the MapServer-users mailing list