Very bizarre apparent bug

  • We were having trouble redefining a stored procedure, and got the test case down to this:

    CREATE PROC testproc

    AS

    SELECT 123

    -- CONVERT(varchar)

    GO

    which on one particular server gives:

    [Microsoft][ODBC SQL Server Driver][DBNETLIB]ConnectionCheckForData (CheckforData()).

    Server: Msg 11, Level 16, State 1, Line 0

    General network error. Check your network documentation.

    ODBC: Msg 0, Level 16, State 1

    Communication link failure

    Remove the comment, change "CONVERT" to anything else, "varchar" to "nvarchar", or put a space before or after the opening bracket, and it is fine (it defines the

    procedure, or it gives " There is already an object named 'testproc' in the database." as appropriate).

    Version is:

    Microsoft SQL Server 2012 - 11.0.5058.0 (X64)

    May 14 2014 18:34:29

    Copyright (c) Microsoft Corporation

    Enterprise Edition (64-bit) on Windows NT 6.1 <X64> (Build 7601: Service Pack 1)

    No such problem on the test server - different hardware, but the same SQL Server version.

    Don't know what to make of it!

  • Tony Webster (11/11/2014)


    We were having trouble redefining a stored procedure, and got the test case down to this:

    CREATE PROC testproc

    AS

    SELECT 123

    -- CONVERT(varchar)

    GO

    which on one particular server gives:

    [Microsoft][ODBC SQL Server Driver][DBNETLIB]ConnectionCheckForData (CheckforData()).

    Server: Msg 11, Level 16, State 1, Line 0

    General network error. Check your network documentation.

    ODBC: Msg 0, Level 16, State 1

    Communication link failure

    Remove the comment, change "CONVERT" to anything else, "varchar" to "nvarchar", or put a space before or after the opening bracket, and it is fine (it defines the

    procedure, or it gives " There is already an object named 'testproc' in the database." as appropriate).

    Version is:

    Microsoft SQL Server 2012 - 11.0.5058.0 (X64)

    May 14 2014 18:34:29

    Copyright (c) Microsoft Corporation

    Enterprise Edition (64-bit) on Windows NT 6.1 <X64> (Build 7601: Service Pack 1)

    No such problem on the test server - different hardware, but the same SQL Server version.

    Don't know what to make of it!

    Quick questions, how are you connecting to the server? Are you using some old software or has the server been upgraded from 6.5/2000?

    Reason for asking is the ODBC and DBNETLIB in the error message.

    😎

  • In this case it was just a connection from Query Analyser.

    From SQL Management Studio, symptoms are similar, but the error message is a little different:

    A transport-level error has occurred when receiving results from the server. (provider: TCP Provider, error: 0 - The specified network name is no longer available.)

  • Another question, is this a default or a named instance?

    😎

  • It's a server with two named instances - it happens on both instances, in any database - but only when connected remotely, not when logged on to the server itself and connecting locally via TCP/IP ... and just as I thought to write that, a very big bell started ringing - I believe we deployed a new IDS on the subnets in that data centre last week. I'll speak to someone who has access to the IDS logs tomorrow to see if I can tie it down to that. Not 100% sure that will be the answer, but I would take a reasonably hefty bet on it.

    Thanks for the questions - I don't think I would have got there without them.

Viewing 5 posts - 1 through 4 (of 4 total)

You must be logged in to reply to this topic. Login to reply