BDE-MSSQL7 bug/problem 
Author Message
 BDE-MSSQL7 bug/problem

I have a problem accesing MSSQL7 (same problem with 6.5 version)  trhought
BDE (I tried version 5.0 and 5.01)
when I start a transaction in one connection to the database all the other
connections that are accessing the same table are frozen until I close
(commit or rollback) the transaction, I already try to change a bunch of
configuration paremeters in the bde but it's seems have no effect on this
problem, I try to reproduce this error using MSSQL native tools but it
doesn't appear, this make me think that it's a BDE problem.

Please help me to find a solution
I will really appreciate all the help/suggestions that you can give me
(especially the ones that will not affect too much the code I already have
written)

Thank you

Marco



Wed, 18 Jun 1902 08:00:00 GMT  
 BDE-MSSQL7 bug/problem


Quote:
>I have a problem accesing MSSQL7 (same problem with 6.5 version)  trhought
>BDE (I tried version 5.0 and 5.01)
>when I start a transaction in one connection to the database all the other
>connections that are accessing the same table are frozen until I close
>(commit or rollback) the transaction, I already try to change a bunch of
>configuration paremeters in the bde but it's seems have no effect on this
>problem, I try to reproduce this error using MSSQL native tools but it
>doesn't appear, this make me think that it's a BDE problem.

>Please help me to find a solution
>I will really appreciate all the help/suggestions that you can give me
>(especially the ones that will not affect too much the code I already have
>written)

Maybe a problem of single threaded, single process application. I suppose
(I am not sure) that all connections of the same thread (maybe the same
process) share the same transaction context.
You can try to make your app multi-threaded (maybe multi-processed) or
ensure that each connection does not update/insert tables that are read
by other connections in the same time. If connection "A" updates table "ONE"
and trys to read from table "TWO" while connection "B" has updated table
"TWO" and
trys to read from table "ONE" a deadlock may occur. Try to make your
transactions
a short as possible. Try to access all tables in the same order. Try to make
small
locks (exclusive table locks are the worst thing you can have). Refer to the
SQL
server documentation to find out when it uses record-, page- or table-locks,
I know
that if your are updating a big number of records that the SQL server
extends a small
record level or page locks to a table lock - you can configure that in the
SQL-Server
options.

Hope this helps

Bye



Wed, 18 Jun 1902 08:00:00 GMT  
 BDE-MSSQL7 bug/problem
Hi Marco,

Ever tried opening a new session?

Cheers,

Ivo



Quote:
> I have a problem accesing MSSQL7 (same problem with 6.5 version)
trhought
> BDE (I tried version 5.0 and 5.01)
[...]
> Thank you

> Marco



Wed, 18 Jun 1902 08:00:00 GMT  
 BDE-MSSQL7 bug/problem
This is because MS SQL makes page-locking instead of row-locking (like
Interbase, Oracle etc). Conclusion - do not try to start long transaction,
short only.
Alex
Quote:

>I have a problem accesing MSSQL7 (same problem with 6.5 version)  trhought
>BDE (I tried version 5.0 and 5.01)
>when I start a transaction in one connection to the database all the other
>connections that are accessing the same table are frozen until I close
>(commit or rollback) the transaction, I already try to change a bunch of
>configuration paremeters in the bde but it's seems have no effect on this
>problem, I try to reproduce this error using MSSQL native tools but it
>doesn't appear, this make me think that it's a BDE problem.

>Please help me to find a solution
>I will really appreciate all the help/suggestions that you can give me
>(especially the ones that will not affect too much the code I already have
>written)

>Thank you

>Marco



Wed, 18 Jun 1902 08:00:00 GMT  
 BDE-MSSQL7 bug/problem
Sorry. As I know that MS SQL 7.0 is supported the Page & Record lock level
and The lock level is auto determinited by SQL server.


Quote:
>This is because MS SQL makes page-locking instead of row-locking (like
>Interbase, Oracle etc). Conclusion - do not try to start long transaction,
>short only.
>Alex


>>I have a problem accesing MSSQL7 (same problem with 6.5 version)  trhought
>>BDE (I tried version 5.0 and 5.01)
>>when I start a transaction in one connection to the database all the other
>>connections that are accessing the same table are frozen until I close
>>(commit or rollback) the transaction, I already try to change a bunch of
>>configuration paremeters in the bde but it's seems have no effect on this
>>problem, I try to reproduce this error using MSSQL native tools but it
>>doesn't appear, this make me think that it's a BDE problem.

>>Please help me to find a solution
>>I will really appreciate all the help/suggestions that you can give me
>>(especially the ones that will not affect too much the code I already have
>>written)

>>Thank you

>>Marco



Wed, 18 Jun 1902 08:00:00 GMT  
 
 [ 5 post ] 

 Relevant Pages 

1. MSSQL7-ODBC-BDE Crashes on TQuery.Free

2. MSSQL7-ODBC-BDE Crashes on TQuery.Close

3. Problem/bug with BDE aggregate calc and floating point numbers

4. problem w/local transactions - BDE bug???

5. Strange problem using local SQL / BDE 3.5 (bug?)

6. Switching from Access to MSSQL7

7. How to use temporary file of Mssql7.0 in Delphi4.0

8. Connect to MSSQL7 with NT security??

9. MSSQL7 rowlock

10. QueryUpdatable vs MSSQL7

11. Delphi & MSSql7 - Replication

12. MSSQL7 and Delphi 4.0

 

 
Powered by phpBB® Forum Software