Ошибки · Решение
SQL Server ошибка 4011: что означает и как исправить
Сервер получил некорректный MARS header в TDS stream.
Короткий ответ
SQL Server 4011: MARS TDS header содержит ошибки. Проверьте Multiple Active Result Sets и версию драйвера; временное отключение MARS помогает подтвердить источник.
Что означает ошибка
Сервер получил некорректный MARS header в TDS stream.
Возможные причины
- Драйвер неправильно ведёт sequence/state для нескольких активных result sets.
- Соединение с MARS используется конкурентно способом, которого библиотека не поддерживает.
- Промежуточный компонент повреждает MARS metadata.
Что проверить
- Повторите сценарий с MultipleActiveResultSets=False.
- Проверьте одновременные reader/command на одном connection.
- Обновите драйвер и сравните поведение на чистом тестовом клиенте.
Безопасные шаги
- Уберите небезопасное конкурентное использование одного MARS connection.
- Обновите драйвер, если ошибка исчезает на новой версии.
- Если MARS не нужен, отключите его в connection string.
Только безопасные обратимые действия. Опасные шаги — только по официальной инструкции и с пониманием рисков.
Когда нужен сервис
- Для повторяющегося 4011 передайте разработчику последовательность команд на одном connection и версию клиента.
Похожие ошибки
- /errors/sql-server-error-4001/
- /errors/sql-server-error-4002/
- /errors/sql-server-error-4004/
Что учитывать
Точная причина зависит от версии ПО/прошивки, полного текста ошибки и контекста. Официальная инструкция имеет приоритет.
Официальный источник
Расшифровка сверена с официальными страницами поддержки из источников ниже. Редакция N1RO не диагностировала ваш конкретный случай.