locked
SQL Server 2012 crashing when using spatial types RRS feed

  • Question

  • I'm working on a project that is using SQL Server 2012 and the spatial types.

    Tables and stored procedures have been created using the spatial types, and calling the stored procedures from SSMS works fine, however whenever I attempt to call one of the stored procedures that has a parameter of type GEOGRAPHY from .NET, I get an exception saying that the connection was forcibly closed, and every time the SQL Server service stops.

    If SQL Server was throwing some sort of exception, I wouldn't be that concerned, but the fact that this is causing SQL Server to crash is concerning me greatly!

    The C# code making the calls is nothing special, essentially variants of:

    using (var command = new SqlCommand("usp_somestoredprocedure"))
    {
    command.Connection = connection;
    command.CommandType = CommandType.StoredProcedure;
    var parameter = command.CreateParameter();
    parameter.Name = "@Geography";
    parameter.Value = location; //SqlGeography type
    parameter.UdtTypeName = "Geography";
    command.Parameters.Add(parameter);
    command.ExecuteNonQuery();
    }

    In the SQL Server logs, I can see that a minidump was created with the following details (clipped sine it was too long to post the entire thing):

    Current time is 09:57:41 10/17/12.                                                                               
    =====================================================================                                            
           BugCheck Dump                                                                                             
    =====================================================================                                            
                                                                                                                     
    This file is generated by Microsoft SQL Server                                                                   
    version 11.0.2100.60                                                                                             
    upon detection of fatal unexpected error. Please return this file,                                               
    the query or program that produced the bugcheck, the database and                                                
    the error log, and any other pertinent information with a Service Request.                                       
                                                                                                                     
                                                                                                                     
    Computer type is Intel(R) Core(TM)2 Duo CPU     E6750  @ 2.66GHz.                                                
    Bios Version is HPQOEM - 20070718                                                                                
    2 Intel x86 level 6, 2 Mhz processor (s).                                                                        
    Windows NT 6.1 Build 7601 CSD Service Pack 1.                                                                    
                                         
    Memory                               
    MemoryLoad = 62%                     
    Total Physical = 3567 MB             
    Available Physical = 1341 MB         
    Total Page File = 7132 MB            
    Available Page File = 4092 MB        
    Total Virtual = 2047 MB              
    Available Virtual = 1598 MB          
    **Dump thread - spid = 0, EC = 0x14155DA8                                                                        
    ***Stack Dump being sent to C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\LOG\SQLDump0009.txt  
    * *******************************************************************************                                
    *                                                                                                                
    * BEGIN STACK DUMP:                                                                                              
    *   10/17/12 09:57:41 spid 52                                                                                    
    *                                                                                                                
    * ex_terminator - Last chance exception handling                                                                 
    *                                                                                                                
    * Input Buffer 144 bytes -                                                                                       
    *                     16 00 00 00 12 00 00 00 02 00 00 00 00 00 00 00 00 00                                      
    *        [ u s p _ G  01 00 00 00 12 00 5b 00 75 00 73 00 70 00 5f 00 47 00                                      
    *  e t G e o g r a p  65 00 74 00 47 00 65 00 6f 00 67 00 72 00 61 00 70 00                                      
    *  h y ]    @ G e o g 68 00 79 00 5d 00 00 00 0a 40 00 47 00 65 00 6f 00 67                                      
    *   r a p h y  ð   G  00 72 00 61 00 70 00 68 00 79 00 00 f0 00 00 09 47 00                                      
    *  e o g r a p h y    65 00 6f 00 67 00 72 00 61 00 70 00 68 00 79 00 16 00                                      
    *            æ     é  00 00 00 00 00 00 16 00 00 00 e6 10 00 00 01 0c e9 9d                                      
    *   ¸ç¿I@H1@¢ Á¿     0a b8 e7 bf 49 40 48 31 40 a2 09 14 c1 bf 00 00 00 00                                      
    *                                                                                                                
    *                                                                                                                
    *  MODULE                          BASE      END       SIZE                                                      
    * sqlservr                       00AE0000  00B14FFF  00035000                                                    
    * ntdll                          77020000  7715BFFF  0013c000                                                    
    * kernel32                       76610000  766E3FFF  000d4000                                                    
    * KERNELBASE                     748F0000  7493AFFF  0004b000                                                    
    * ADVAPI32                       74C00000  74C9FFFF  000a0000                                                    
    * msvcrt                         75300000  753ABFFF  000ac000                                                    
    * sechost                        74BE0000  74BF8FFF  00019000                                                    
    * RPCRT4                         750E0000  75180FFF  000a1000                                                    
    * MSVCR100                       71130000  711EEFFF  000bf000                                                    
    * MSVCP100                       711F0000  71258FFF  00069000                                                    
    * sqlos                          38EA0000  38EA5FFF  00006000                                                    
    * NETAPI32                       72F00000  72F10FFF  00011000                                                    
    * netutils                       72EF0000  72EF8FFF  00009000                                                    
    * srvcli                         74600000  74618FFF  00019000                                                    
    * wkscli                         72EE0000  72EEEFFF  0000f000                                                    
    * pdh                            6BA80000  6BABBFFF  0003c000                                                    
    * opends60                       37400000  37406FFF  00007000                                                    
    * sqlmin                         00B20000  024BCFFF  0199d000                                                    
    * USER32                         76510000  765D8FFF  000c9000                                                    
    * GDI32                          74CA0000  74CEDFFF  0004e000                                                    
    * LPK                            74D00000  74D09FFF  0000a000                                                    
    * USP10                          74B40000  74BDCFFF  0009d000                                                    
    * ole32                          75190000  752EBFFF  0015c000                                                    
    * OLEAUT32                       74AB0000  74B3EFFF  0008f000                                                    
    * Secur32                        74670000  74677FFF  00008000                                                    
    * SSPICLI                        74690000  746AAFFF  0001b000                                                    
    * PSAPI                          755A0000  755A4FFF  00005000                                                    
    * WS2_32                         76450000  76484FFF  00035000                                                    
    * NSI                            752F0000  752F5FFF  00006000                                                    
    * sqlTsEs                        70930000  710F8FFF  007c9000                                                    
    * sqldk                          70530000  70904FFF  003d5000                                                    
    * WINMM                          6BA40000  6BA71FFF  00032000                                                    
    * sqllang                        024C0000  03D9AFFF  018db000                                                    
    * USERENV                        73E60000  73E76FFF  00017000                                                    
    * profapi                        747B0000  747BAFFF  0000b000                                                    
    * LOGONCLI                       74050000  74071FFF  00022000                                                    
    * SAMCLI                         72ED0000  72EDEFFF  0000f000                                                    
    * AUTHZ                          743A0000  743BAFFF  0001b000                                                    
    * WINTRUST                       74A60000  74A8CFFF  0002d000                                                    
    * CRYPT32                        74940000  74A5DFFF  0011e000                                                    
    * MSASN1                         74820000  7482BFFF  0000c000                                                    
    * IMM32                          77160000  7717EFFF  0001f000                                                    
    * MSCTF                          76380000  7644BFFF  000cc000                                                    
    * CRYPTBASE                      746E0000  746EBFFF  0000c000                                                    
    * instapi110                     6BA20000  6BA2AFFF  0000b000                                                    
    * cscapi                         6FF80000  6FF8AFFF  0000b000                                                    
    * sqlevn70                       5CD40000  5CFB3FFF  00274000                                                    
    * CRYPTSP                        74200000  74215FFF  00016000                                                    
    * rsaenh                         73FA0000  73FDAFFF  0003b000                                                    
    * imagehlp                       765E0000  76609FFF  0002a000                                                    
    * ncrypt                         74360000  74397FFF  00038000                                                    
    * bcrypt                         74340000  74356FFF  00017000                                                    
    * bcryptprimitives               73EE0000  73F1CFFF  0003d000                                                    
    * GPAPI                          73DE0000  73DF5FFF  00016000                                                    
    * cryptnet                       00990000  009ABFFF  0001c000                                                    
    * WLDAP32                        753B0000  753F4FFF  00045000                                                    
    * SHLWAPI                        74ED0000  74F26FFF  00057000                                                    
    * VERSION                        73CB0000  73CB8FFF  00009000                                                    
    * credssp                        73EA0000  73EA7FFF  00008000                                                    
    * msv1_0                         74160000  741A1FFF  00042000                                                    
    * cryptdll                       74430000  74440FFF  00011000                                                    
    * kerberos                       74220000  742A7FFF  00088000                                                    
    * schannel                       74010000  74049FFF  0003a000                                                    
    * MSCOREE                        6FF30000  6FF79FFF  0004a000                                                    
    * mscoreei                       6FEB0000  6FF29FFF  0007a000                                                    
    * CLUSAPI                        62C50000  62C8AFFF  0003b000                                                    
    * RESUTILS                       62C20000  62C33FFF  00014000                                                    
    * security                       69AA0000  69AA2FFF  00003000                                                    
    * CLBCatQ                        74F30000  74FB2FFF  00083000                                                    
    * sqlncli11                      38020000  382FEFFF  002df000                                                    
    * COMCTL32                       715B0000  71633FFF  00084000                                                    
    * COMDLG32                       76490000  7650AFFF  0007b000                                                    
    * SHELL32                        756D0000  76319FFF  00c4a000                                                    
    * SQLNCLIR11                     394F0000  39527FFF  00038000                                                    
    * netbios                        0F190000  0F197FFF  00008000                                                    
    * clr                            6F0B0000  6F741FFF  00692000                                                    
    * MSVCR110_CLR0400               6ED10000  6EDE2FFF  000d3000                                                    
    * mscorlib.ni                    6D640000  6E5FEFFF  00fbf000                                                    
    * nlssorting                     6C370000  6C381FFF  00012000                                                    
    * clrjit                         650D0000  6513DFFF  0006e000                                                    
    * BatchParser                    5E210000  5E231FFF  00022000                                                    
    * RsFxFt                         0F100000  0F106FFF  00007000                                                    
    * ftimport                       60000000  6001CFFF  0001d000                                                    
    * MSFTE                          49910000  49B68FFF  00259000                                                    
    * dbghelp                        0F460000  0F5A0FFF  00141000                                                    
    * ntmarta                        73170000  73190FFF  00021000                                                    
    * mswsock                        741C0000  741FBFFF  0003c000                                                    
    * wship6                         741B0000  741B5FFF  00006000                                                    
    * wshqos                         71270000  71275FFF  00006000                                                    
    * wshtcpip                       73D40000  73D44FFF  00005000                                                    
    * ntdsapi                        73100000  73117FFF  00018000                                                    
    * xpsqlbot                       53AD0000  53AD6FFF  00007000                                                    
    * xpstar                         60800000  6084DFFF  0004e000                                                    
    * ATL100                         6CBC0000  6CBE5FFF  00026000                                                    
    * SQLSCM                         603F0000  603FAFFF  0000b000                                                    
    * ODBC32                         65AA0000  65B2BFFF  0008c000                                                    
    * odbcint                        65A60000  65A97FFF  00038000                                                    
    * xpstar                         60C90000  60CB4FFF  00025000                                                    
    * DNSAPI                         74080000  740C3FFF  00044000                                                    
    * IPHLPAPI                       72930000  7294BFFF  0001c000                                                    
    * WINNSI                         72920000  72926FFF  00007000                                                    
    * rasadhlp                       0A1C0000  0A1C5FFF  00006000                                                    
    * fwpuclnt                       72770000  727A7FFF  00038000                                                    
    * System.ni                      6CCC0000  6D638FFF  00979000                                                    
    * System.Data                    61B30000  61E3AFFF  0030b000                                                    
    * System.Transactions            0D260000  0D2A4FFF  00045000                                                    
    * System.Security.ni             12D40000  12DEEFFF  000af000                                                    
    * System.Xml.ni                  6C390000  6CAC7FFF  00738000                                                    
    * SqlServerSpatial110            38820000  3889EFFF  0007f000                                                    
    * dbghelp                        168B0000  169F0FFF  00141000                                                    
    *                                                                                                                
    *        Edi: 128683E8:  097E9AE0  00000096  03C38518  3884C789  C8C00000  41E680AF                              
    *        Esi: 00000000:                                                                                          
    *        Eax: 1286832C:  000042AC  00000000  00000000  748FD3CF  00000000  12868368                              
    *        Ebx: 0000002F:                                                                                          
    *        Ecx: 00000000:                                                                                          
    *        Edx: 0000002F:                                                                                          
    *        Eip: 748FD3CF:  0010C2C9  EBC04589  909090ED  15FF9090  748F1360  243DC933                              
    *        Ebp: 1286837C:  128683C4  02574BD0  000042AC  00000000  00000000  00000000                              
    *      SegCs: 0000001B:                                                                                          
    *     EFlags: 00000246:                                                                                          
    *        Esp: 1286832C:  000042AC  00000000  00000000  748FD3CF  00000000  12868368                              
    *      SegSs: 00000023:                                                                                          

    Wednesday, October 17, 2012 10:15 AM

All replies

  • Hi Richard,

    Thank you for your question.

    I am trying to involve someone more familiar with this topic for a further look at this issue. Sometime delay might be expected from the job transferring. Your patience is greatly appreciated.

    Thank you for your understanding and support.


    TechNet Subscriber Support
    If you are TechNet Subscription user and have any feedback on our support quality, please send your feedback here.

    Best Regards,
    Ray Chen

    Friday, October 19, 2012 2:58 AM
  • This just got a little weirder. I replicated the issue on a second machine to confirm that it's not a problem with the machine that I'm working with and then created a new project with the aim of producing a very small example which "proves" the issue.

    At first I couldn't reproduce the problem in the new project, so I spent quite a lot of time investigating the differences between the two .NET projects (looking at references, project types, etc). Everything seemed to match but one project worked and the other didn't.

    Eventually I noticed that the only significant difference between the two examples was that one of the databases has a spatial index (the one that was failing!), so I deleted the spatial index and that stopped SQL from crashing. I then re-created the spatial index and SQL Server started crashing again.

    Here is the SQL to create the 3 objects required:

    /****** Object:  StoredProcedure [dbo].[usp_GetGeography]    Script Date: 19/10/2012 15:02:59 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    CREATE PROCEDURE [dbo].[usp_GetGeography]
     @Geography GEOGRAPHY
    AS
    BEGIN
     SET NOCOUNT ON;

     SELECT [dbo].[Geo].*
     FROM [dbo].[Geo]
     WHERE [Geography].STEquals(@Geography) = 1
    END
    GO
    /****** Object:  Table [dbo].[Geo]    Script Date: 19/10/2012 15:02:59 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    CREATE TABLE [dbo].[Geo](
     [Id] [int] IDENTITY(1,1) NOT NULL,
     [Geography] [geography] NOT NULL,
     CONSTRAINT [PK_Geo] PRIMARY KEY CLUSTERED
    (
     [Id] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
    ) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]

    GO
    /****** Object:  Index [NDX_Geo_Data]    Script Date: 19/10/2012 15:02:59 ******/
    CREATE SPATIAL INDEX [NDX_Geo_Data] ON [dbo].[Geo]
    (
     [Geography]
    )USING  GEOGRAPHY_AUTO_GRID
    WITH (
    CELLS_PER_OBJECT = 64, PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
    GO

    Friday, October 19, 2012 2:18 PM
  • Hi Richard,

    From a support perspective this is really beyond what we can do here in the forums. If you cannot determine your answer here or on your own, consider opening a support case with us. Visit this link to see the various support options that are available to better meet your needs:  http://support.microsoft.com/default.aspx?id=fh;en-us;offerprophone.

    Another option is to report the issue at http://connect.microsoft.com.

    Thanks,

    Cathy Miller

    Monday, October 22, 2012 7:57 PM
    Answerer