Здравствуйте, Коваленко Дмитрий, Вы писали:
КД>Не перегибай палку 
Я вообще с палками не очень...
КД>Блин, я вот не могу понять — в чем именно проявлется усложнение?
Может ты просто по другому не пробовал?
КД>IB, ни кто не заставляет обязательно делать многопоточное приложение.
Расскажи ка мне, как ты собираешься работать с параллельными транзакциями из одного подключения в однопоточном приложении?
Приостанавливать действие одной транзакции и запускать из того же потока другую? Вот уж действительно редкое извращение.
КД> Поддержка многопоточного клиента — это забота уровня компонент доступа, а не сервера.
Вот о компонентах доступа и речь. Пока ты не распараллелишь работу на самом клиенте, говорить о параллельных транзакциях в одном подключении смысла не имеет.
КД>И что же там делается?
Где?
КД>Тестили через OLEDB. Новая параллельная транзакция порождает НОВОЕ подключение
И на 2000 и на 2005
MARS не поддерживается OLEDB, только .Net провайдером.
КД>В FB/IB можно и зачастую так и делают — в каждый момент времени только одна транзакция.
Причем тут в каждый момент? Кошерный способ работы — на каждое подключение одна активная транзакция, а уж в какой момент эти подключения идут — дело десятое.
КД>Но практикующие ведущие собаководы иногда предлагают создавать по требованию именно транзакции. Понимаешь?
И в чем проблема?
КД>Кроме того, сейчас, на сколько я понимаю, с появлением временных таблиц действующих на уровне соединения, весьма актульно что бы "параллельные" транзакции действительно оставались в рамках одного подключения. Потому что иначе — новая "параллельная" транзакция просто не увидит эту таблицу.
А должна видеть? Скажем, в идеологии сиквела другая транзакция не должна видеть временные данные другой, думаю понятно почему. А вот зачем делать так чтобы временные данные можно было видеть — не понятно.