Error Reading Data From The Connection Interbase
Contents |
application using Interbase 5.1 on the backend, Delphi 4.x on the front. SQL Links are used over TCP/IP, TDatabase, and TQuery. I am also error reading data from the connection firebird using the TIBEventAlerter with a single registered event in Interbase. Simply, when the error reading data from the connection delphi server posts a row of information, the client application updates its by running a single query. It is firebird sql error code a very simple application. When compiled in D5, with BDE 5.10 installed on the server and workstation, it get frequent "Error reading data from the connection" messages. A few other
Statement Failed Sqlcode
wierd ones show up to. After reviewing in the SQL Monitor, I discovered it always occurs when getting data back from the server (after making a request) in one of the isc_ api calls. I tried converting all the TQuery, TDatabase, and TIBEventAlerter to the IBExpress components, and the same error is reported. Strangely enough, if the client software is run on the server, the problem never arrises. Is this a Delphi or BDE thing? If anyone has an suggested work arounds, I would appreciate the help. Thanks, Jason. Juha Kuustone Delphi Developer Wed, 18 Jun 1902 08:00:00 GMT Re:"Error reading data from the connection" - Interbase, SQL Links Hi! I had same strange behaviour in similar system. I was happy to notice that some clients didn't use TCP/IP. Change back from NetBeui to TCP/IP made "Error reading data from the connection" messages go away! I hope it works for You too QuoteJason Perry wrote: > I have a real-time application using Interbase 5.1 on the backend, Delphi > 4.x on the front. SQL Links are used over TCP/IP, TDatabase, and TQuery. I > am also using the TIBEventAlerter with a single registered event in > Interbase. Simply, when the server posts a row of information, the client > application updates its by running a single query. It is a very simple > application. > When compiled in D5, with BDE 5.10 installed on the server and workstation, > it get frequent "Error reading data from th
for Help Receive Real-Time Help Create a Freelance Project Hire for a Full Time Job Ways to Get Help Ask a Question Ask for Help Receive Real-Time Help Create a Freelance Project Hire for a Full Time Job Ways to Get Help Expand Search Submit Close Search Login Join Today Products BackProducts Gigs Live Careers Vendor Services Groups Website Testing Store Headlines Experts Exchange > Questions > General SQL error. Error reading data from the connection. Want to Advertise Here? Solved General SQL error. Error reading data from the connection. Posted on 2005-09-14 Databases 5 Verified Solutions 25 Comments 17,107 Views Last Modified: 2013-12-09 http://www.delphigroups.info/2/68/240924.html Hello all. We have a problem that we've been working on with a client for several months that we cannot resolve. The environment is as follows. Server (not sure of server details, but an adequate box I'm told) is running Interbase 6.0.1.6 with 1 user and 1 database (ours) which is used to track timesheets. On the same machine we have a Delphi 5 application running as https://www.experts-exchange.com/questions/21561378/General-SQL-error-Error-reading-data-from-the-connection.html a service which we call a 'Transaction Server' which is the layer that interacts with the Interbase database using the BDE (version 5.2) and the clients which are ActiveX controls running in IE. The problem we see from our logs is that the connection from our 'Transaction Server' to the Interbase Server seems to fail during heavy periods of use with messages like "General SQL error.'#13#10'Error reading data from the connection." or our own generated errors such as 'Unable to Process Request' which we display when we get an unexpected response from the database server. During the week when there is less activity, things seem to go along without interuption and the service is not restarted, but on Friday or Monday when timesheets are due and the volume is up it's as if the IB Server cannot handle the requests fast enough. We have taken their GDB file and run several tests here with it and it always behaves properly although we cannot really simulate the traffic this client has, but we have literally hundreds of other clients who have literally hundreds more users than this client does and the other clients do not display the same problems AT
6 posts • Page 1 of 1 Error reading data from the connection by zd » Mon 06 Sep 2010 09:23 Hi! I've upgraded to IBDAC 3.10.0.16 from http://forums.devart.com/viewtopic.php?t=18912 2.5 and I've ran into a problem. At a point where my program used to work perfectly, sometimes an "Error reading data from the connection" EIBCError is displayed. The problem http://stackoverflow.com/questions/9640686/delphi-thread-best-practices is that the error can't always be reproduced, but tests show it happens at the same place. I've an idea on what is causing it, and I need your feedback error reading to work something out. The following is happening at the place of the error: 1. An INSERT INTO command is executed using IBCQuery.ExecSQL. --- Meanwhile --- In the database an After Insert trigger is fired, which inserts a record to a log table and fires a Firebird event. --- Back to the program 2. After ExecSQL a RET_ paremeters are error reading data stored which were returned by the INSERT INTO - RETURNING ... query. 3. Using INSERT INTO another record is inserted to a separate table. IBCQuery.ExecSQL is called. -----> And this is where the "Error reading data from the connection" error is raised, straight after the second ExecSQL. Please note that in order to handle the event generated by the AFTER INSERT trigger, an IBCAlerter is used. Once the alerter receives the event, it does a query on the log table using a separate, IBCQuery2 component (IBCQuery and IBCQuery2 are using the same IBCConnection component). Since the error happens at the same place and not always but just from time-to-time, I believe this must be an issue with the IBCAlerter component. (which is known to be a very problematic component by IBDAC customers ) Do you guys have any ideas on what might be causing the problem? Did you change anything in how IBCAlerter works in the past few versions of IBDAC? Are alerts still executed in the main thread and what you do there is considered "thread
here for a quick overview of the site Help Center Detailed answers to any questions you might have Meta Discuss the workings and policies of this site About Us Learn more about Stack Overflow the company Business Learn more about hiring developers or posting ads with us Stack Overflow Questions Jobs Documentation Tags Users Badges Ask Question x Dismiss Join the Stack Overflow Community Stack Overflow is a community of 4.7 million programmers, just like you, helping each other. Join them; it only takes a minute: Sign up Delphi thread best practices up vote 3 down vote favorite 1 I am implementing a synchronization method inside my application. The main steps it will perform are: Get XML content from a remote site Parse this XML using IXMLDomDocument2 Update a Firebird database The logic is quite complex, but it is working fine per se. The problem is when I try to run it inside a separate thread. It is clear to me that I am not getting thread safety properly in my logic. So let´s slice it I - Get content using TidHTTP Didn´t have any problems with it, should I have any concerns here? II - For IXMLDomDocument2 I am calling CoInitializeEx(nil, 0); which according to the documentation should be enough to use IXMLDomDocument2 safely. And it seems to be ok, after adding it I did not get any error when trying to use it. Any extra concern here? III - To use Firebird safely My problems are here. Sometimes it works, sometimes it don´t (which I guess is the main symptom of badly designed thread logic). Most of the time I get a EInterbaseError with the message "Error reading data from the connection". Other times it simply locks. Should I have a separate connection with the database? multithreading delphi thread-safety delphi-7 share|improve this question edited Mar 10 '12 at 12:52 Argalatyr 4,04722556 asked Mar 9 '12 at 20:40 Ricardo Acras 16.9k105296 10 Definitely should not share the connection to the DB between the background and the foreground thread. –Warren P Mar 9 '12 at 21:02 3 I agree with Warren. When it comes to database, unless you know for a fact that a given DB engine (and its VCL components) is thread-safe, then don't share DB components across