.net - SQL Server 2012 Remote connection giving Timeout and ASYNC_NETWORK_IO errors -


i experiencing problems service connects remote instance of sql server 2012.

the .net 2.0 service runs on clients machine , connects using tcp/ip remote web server running instance of sql server 2012. web server used windows server 2003 , sql server 2005 , upgraded 6 months ago without problems. service checks see if there data needs download.

client machine

  • windows server 2003

web server

  • windows server 2012
  • sql server 2012

this running fine 5+ years until last friday when stopped working , gives following error log message

event type: warning event source:    event category: none event id:   0 date:       21/05/2013 time:       16:45:11 user:       n/a computer:    description: system.reflection.targetinvocationexception: exception has been thrown target of invocation. ---> system.data.sqlclient.sqlexception: timeout expired.  timeout period elapsed prior completion of operation or server not responding.    @ system.data.sqlclient.sqlinternalconnection.onerror(sqlexception exception, boolean breakconnection)    @ system.data.sqlclient.tdsparser.throwexceptionandwarning(tdsparserstateobject stateobj)    @ system.data.sqlclient.tdsparserstateobject.readsnierror(tdsparserstateobject stateobj, uint32 error)    @ system.data.sqlclient.tdsparserstateobject.readsni(dbasyncresult asyncresult, tdsparserstateobject stateobj)    @ system.data.sqlclient.tdsparserstateobject.readnetworkpacket()    @ system.data.sqlclient.tdsparserstateobject.readbytearray(byte[] buff, int32 offset, int32 len)    @ system.data.sqlclient.tdsparserstateobject.readuint32()    @ system.data.sqlclient.tdsparser.readsqlvalueinternal(sqlbuffer value, byte tdstype, int32 typeid, int32 length, tdsparserstateobject stateobj)    @ system.data.sqlclient.tdsparser.readsqlvalue(sqlbuffer value, sqlmetadatapriv md, int32 length, tdsparserstateobject stateobj)    @ system.data.sqlclient.sqldatareader.readcolumndata()    @ system.data.sqlclient.sqldatareader.readcolumnheader(int32 i)    @ system.data.sqlclient.sqldatareader.readcolumn(int32 i, boolean settimeout)    @ system.data.sqlclient.sqldatareader.getvalueinternal(int32 i)    @ system.data.sqlclient.sqldatareader.getvalue(int32 i)    @ redblack.data.synchronisation.syncmanager.upsertrecords(string sourceselect, string desttable, string[] destfields, list`1 relations)    @ general.cypro.application.websynchronisation.syncroutines.fetchorders(upsertflags upsertoptions)    --- end of inner exception stack trace ---    @ system.runtimemethodhandle._invokemethodfast(object target, object[] arguments, signaturestruct& sig, methodattributes methodattributes, runtimetypehandle typeowner)    @ system.reflection.runtimemethodinfo.invoke(object obj, bindingflags invokeattr, binder binder, object[] parameters, cultureinfo culture, boolean skipvisibilitychecks)    @ system.delegate.dynamicinvokeimpl(object[] args)    @ redblack.cypro.application.websynchronisation.job.run(object[] args) ... system.data.sqlclient.sqlexception: timeout expired.  timeout period elapsed prior completion of operation or server not responding.    @ system.data.sqlclient.sqlinternalconnection.onerror(sqlexception exception, boolean breakconnection)    @ system.data.sqlclient.tdsparser.throwexceptionandwarning(tdsparserstateobject stateobj)    @ system.data.sqlclient.tdsparserstateobject.readsnierror(tdsparserstateobject stateobj, uint32 error)    @ system.data.sqlclient.tdsparserstateobject.readsni(dbasyncresult asyncresult, tdsparserstateobject stateobj)    @ system.data.sqlclient.tdsparserstateobject.readnetworkpacket()    @ system.data.sqlclient.tdsparserstateobject.readbytearray(byte[] buff, int32 offset, int32 len)    @ system.data.sqlclient.tdsparserstateobject.readuint32()    @ system.data.sqlclient.tdsparser.readsqlvalueinternal(sqlbuffer value, byte tdstype, int32 typeid, int32 length, tdsparserstateobject stateobj)    @ system.data.sqlclient.tdsparser.readsqlvalue(sqlbuffer value, sqlmetadatapriv md, int32 length, tdsparserstateobject stateobj)    @ system.data.sqlclient.sqldatareader.readcolumndata()    @ system.data.sqlclient.sqldatareader.readcolumnheader(int32 i)    @ system.data.sqlclient.sqldatareader.readcolumn(int32 i, boolean settimeout)    @ system.data.sqlclient.sqldatareader.getvalueinternal(int32 i)    @ system.data.sqlclient.sqldatareader.getvalue(int32 i)    @ redblack.data.synchronisation.syncmanager.upsertrecords(string sourceselect, string desttable, string[] destfields, list`1 relations)    @ general.cypro.application.websynchronisation.syncroutines.fetchorders(upsertflags upsertoptions) 

i have checked activity monitor on web server , when query run suspended wait_type of async_network_io.

i have run query trying run manually in management studio on clients server connecting remotely web server instance , runs 40 seconds returning 2600+ rows before gives me following error

msg 121, level 20, state 0, line 0 transport-level error has occurred when receiving results server. (provider: tcp provider, error: 0 - semaphore timeout period has expired.) 

i have run same query on machine in management studio remotely connecting web server instance , returns complete 4000 rows in 0.312 seconds.

i @ loss trying figure out seems me sort of network issue. clients hardware technicians have checked network , have said fine far concerned.

if need more information let me know

thanks

this has been resolved , issue in end turned out problem clients internet. dont have details bt found issue @ exchange , once fixed program began working again.


Comments

Popular posts from this blog

blackberry 10 - how to add multiple markers on the google map just by url? -

php - guestbook returning database data to flash -

delphi - Dynamic file type icon -