On 24/04/2010 10:03 AM, Gary Doades wrote:
OK, I've poked around a bit by using a trace on a SQL Server backend.
The fundamental issue appears to be the Sequel (via whatever means) is
getting a new connection for EVERY statement issued to the server.
This is obviously BAD, and not just for transactions. Temporary tables
which persist and are visible only for a connection would fail
miserably too. Probably a few other things.....
Unfortunately I don't know what is causing this. It's certainly not
the SQLOLEDB driver as that is used in lots of places, including the
.NET SQL adapters. I've used it from an old VB app and in a large
ASP.NET application without any problems at all, it certainly doesn't
create a connection on each statement!
I can't see anything in Sequel on first glance. It's possible that
it's the win32ole ruby library that's the problem, but I don't really
want to look in there ;)
I'll try some more tests when I get the chance to see if I can nail it
down further. If it can't be fixed then it should probably be dumped
as I suspect that people will run into may problems and not just with
transactions. As a minimum there should be a big warning in the docs
that various operations may fail.
Sorted!!
You need to use a different provider. I use SQLNCLI10 to connect to both
SQL Server 2008 and SQL Server 2000 and it all works OK. That's also why
I hadn't seen any problems.
An example uri:
ado://sa:test...@localhost/test?provider=SQLNCLI10
an example conn_string:
Provider=SQLNCLI10;Uid=sa;Pwd=testing;Database=test;Server=localhost
I'm not sure what the default provider is if you don't explicit ask for
one, but it's broken :(
Maybe a switch to SQLNCLI10 as the default provider? If it's not already
installed, it's a free download from Microsoft.
Cheers,
Gary.
--
You received this message because you are subscribed to the Google Groups
"sequel-talk" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/sequel-talk?hl=en.