Strange ADO.NET/Sybase/Sybase OLEDB problem

From: Steve (me_at_removethisbit_stephenmcnabb.com)
Date: 02/03/04


Date: Tue, 3 Feb 2004 19:48:39 -0000


We've recently run in to a very strange problem with a windows service that
we have developed in VB.NET and that accesses a Sybase database using the
Sybase OLEDB driver via ADO.NET.

Every morning about 5am, the windows service checks a specified directory,
looking for data export files. If it finds them then it parses them, uploads
the contents to a set of temporary tables and then runs a stored procedure
(call it MergeData) to merge the needed data from the temporary tables in to
the tables used by our main system. It then fires off another couple of
stored procedures to prepare report data and then a set of reports are
generated.

This has all worked fine for a couple of months now. All of a sudden the
MergeData stored proc has started to finish prematurely before it has
completed all of the processing it is supposed to do. The strange thing is
that it doesn't raise any errors back to the windows service. It just seems
to stop doing what it was doing before it has completed all of the
processing and returns control to the windows service, which then carries on
with the other stored proc calls. The even stranger thing is that if we then
run the MergeData stored proc directly on the database it works fine and
completes all the processing it was supposed to do.

However, it gets even stranger. The same installation of the windows service
that was used on our live server was installed on our test server, the same
data export files were copied across and it works perfectly. The test server
uses the same versions of .NET framework, Sybase OLEDB driver and Sybase
database. So from the surface the test server looks to have exactly the same
software on it - both the software we developed and the third party software
we use.

Why would a stored procedure not complete when run from an application
(without throwing any errors) but work fine when run interactively from the
database (without throwing any errors)? And why would the same version of
the application on another environment work perfectly.

Both the command and connection timeouts on our OLEDB objects are set to
20mins and this timeout is not being reached. The process finishes
prematurely within about 9-10 minutes and then continues with the other
stored procs. We've had timeout issues before but they have always thrown
errors.

Has anyone seen this sort of problem using ADO.NET, Sybase or the Sybase
OLEDB driver? As you can see it's proving to be frustrating trying to
logically conclude where the problem resides. Our code seems fine on the
test server but doesn't seem to work on the live server. Therefore you'd
think it would be an environment issue, however the MergeData stored proc
works fine on the live server when run interactively from the database. Very
confusing! :-)

Sorry for the crosspost but I haven't a clue which bit of our system the
problem resides in.

Thanks for any help you can give,

Steve



Relevant Pages

  • RE: ODBC Error with Sybase from Win2K Server (but works from WinXP!)
    ... the error occured BEFORE the Sybase stored proc ... created the tempDB..tempTable in the SELECT INTO part of the stored procedure. ... > Our company only allow the use of Merant 3.60 32-bit Sybase ODBC Driver ... Read from the server has timed out. ...
    (microsoft.public.sqlserver.odbc)
  • Re: Dateadd in SQL statement not working
    ... Omigod, I thought you said you were using SQL Server, which is what my ... version of SQL used by Jet, which is the database usually used by Access): ... But my confusion is not totally resolved: Why are you using a Sybase ODBC ... driver to connect to either a Jet or a SQL Server database? ...
    (microsoft.public.inetserver.asp.general)
  • Re: Decouple SQL queries from class in OOP design
    ... then the arguments to the storeCart stored procedure have to be rather ... I have to be familiar with database schema, ... > support returning arbitrary numbers of rows through SELECT statements. ... > SYBASE does support that, and with SYBASE you have a lot of room to ...
    (comp.object)
  • Re: Zombie handles when trapped by a signal
    ... Now that I know that the Sybase ... The concept is to do the execute with a timeout. ... > database server automatically is not correct. ... even after the DBD-Sybase bug is fixed. ...
    (perl.dbi.users)
  • Re: Sybase Market
    ... relational database management systems and database-related products. ... "Sybase" is also commonly used to refer to Adaptive Server Enterprise, ... a deal with Microsoft to share the source code for Microsoft to ...
    (comp.databases.sybase)