Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations strongm on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Machine specific problem? I need your help!

Status
Not open for further replies.

dotnetprogrammer

Programmer
Aug 17, 2000
77
US
Have You Heard of Something Like This???
Please help me with your expert input!

Some software-users have been experiencing problem with a database related VB6 app. The app utilizes DAO, ADO, ODBC, Access MDB, etc.

The application returns SLIGHTLY different query results on some PCs.

Apparently, the problem is noticeable with older PCs (around Pentium 400MHz or less) including Notebooks.(compared under similar OS: Win9x, NT, Win2K etc.) making the result UNRELIABLE!
I could not figure out what causes this problem, CPU? May be? Please help!
fred
 
Fred,
Are all the Pc's setup with the same international settings, if you are querying dates and have a mixture of dd/mmm/yyyy and mm/dd/yyyy then you will have differences, always format dates in the query as #dd/mmm/yyyy#. One other problem I have experienced with ADO and Access 2000 databases is occasionally when you Execute an INSERT INTO select query and then get a total of the records inserted you can get different totals, to get round this a one second delay has been added before the SELECT Count() etc which has cured the problem.

Hope this helps.

Nick W
 
Nick,
After I heard about it from a couple of users, I had simulated the problem at work. I used a @300Mhz Notebook, a 233Mhz PC, and a 500Mhz PC. All had default (US) setting. Running and re-running the App that users complaint about, I found 233Mhz and 300MHz PCs erred intermittently.
Thanks,
fred

 
You asked this in another thread. I agree with Nick, good bloke that he is.
What is the query? Are you comparing with reals for instance. Peter Meachem
peter@accuflight.com
 
If I could just jump in here... you mentioned that you checked the regional settings and:
"All had default (US) setting".
This doesn't necessarily mean that you won't run into problems. I have seen the same query return a different result set on two different machines because one had a short date style of "dd-MMM-yy" and the other had "dd-MM-yy". These both were the default date settings, except one PC was running Windows 98 2nd edition and the other Windows 2000 Pro. We are always having date-related issues here, as we have handfuls of databases installed at ~60 companies. I just wanted to stress that regional settings can be very important.
 
Chip, I love that theorem and proof. Very academic.

Still like to know what the query was. Peter Meachem
peter@accuflight.com
 
If you follow a couple of links from his page, there's an explanation of how the european paper sizes work. It seems that all sizes have their width to height dimensions in a ratio of 1::sqrt(2).

Very elegant, but it results in paper too long to fit into a 8-1/2"x11" binder!

Chip H.
(engaging in a bit of Ameri-centrism)
<g>
 
Thanks to Nick ISD, Peter Meachem, CTC1, ChipH for your valuable response. I appreciate your input very much.

Correcting my original message (and to further add to my confusion,) late last Friday, one of the users informed me that his notebook has a PIII-800Mhz.

There are literally hundreds of queries firing in sequence analyzing and verifying accuracy of the data in question. Some queries may fire other queries as necessary. Those queries are written by very-very competent men and women in database business; yet, I will not be surprised to find some human errors (such as typos, and even syntax errors, etc.) but so far we have located none relating to “intermittent problems”.

What puzzles me is, while two given PCs have same OS (with all default settings, nothing was tweaked – AT ALL), same known good-data will pass on one PC but will INTERMITTENTLY (may be, once in every four tries) fail on the other.

Yes, a lot of those queries are INSERT queries.

As far as regional setting is concerned, will it be different on different PCs, if same OS was installed using all default settings? Please correct me if I am wrong: If errors are due to regional setting, they should consistently error out with the same known-good-data, not intermittently, right?
Thanks,
fred
 
Since you're saying on two identical PCs the queries are randomly failiing, I'd say that the program has what's called a &quot;race condition&quot; in it somewhere. This is a big bugaboo with multithreaded programs, where you have two functions updating a shared variable after reading it's value. You get unpredicatable results, depending on which one executed last.

I'd look at a couple of things: SQL statements doing updates after reads, without using any record locks, and see if they're using timers to simulate multi-threaded programing in their VB code.

Chip H.
 
Chips advice sounds right - I've seen this before. Some program or other has something locked to update it. Something else does a query and can't read the data, silently fails (because I forgot (again) to put checking into the query) and sometimes returns *very* strange results. Mike
michael.j.lacey@ntlworld.com
Email welcome if you're in a hurry or something -- but post in tek-tips as well please, and I will post my reply here as well.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top