Rõ ràng có ít nhất hai nhược điểm (tiềm ẩn) đã biết (từ điều này (1) Blog của nhóm ):
-
Rõ ràng điều này có thể gây ra các vấn đề tiềm ẩn đối với bất kỳ hệ thống kế thừa nào không được thiết kế để chạy với thiết kế hỗ trợ MARS - "mã hiện tại được tối ưu hóa để chạy trong thế giới không phải MARS có thể cho thấy hiệu suất giảm nhẹ khi chạy không được sửa đổi với MARS "
-
“Với MARS, bạn có thể gửi nhiều lô nhiều câu lệnh tới máy chủ. Máy chủ sẽ xen kẽ việc thực thi các lô như vậy, có nghĩa là nếu các lô đó thay đổi trạng thái máy chủ thông qua các câu lệnh SET hoặc USE, hoặc sử dụng các câu lệnh quản lý giao dịch TSQL (BEGIN TRAN, COMMIT, ROLLBACK), cả bạn và máy chủ đều có thể bị nhầm lẫn về mục đích thực sự của bạn là gì. ”
Tôi vẫn chưa thử một thiết kế hỗ trợ MARS, nhưng tôi đang tiến rất gần đến việc làm như vậy cho dự án hiện tại của mình. Chúng tôi gặp một chút vấn đề với các hoạt động truy vấn cạnh tranh (và đôi khi phụ thuộc) (chẳng hạn như tải dữ liệu cấu hình từ cùng một cơ sở dữ liệu mà một tập bản ghi đang hoạt động đang thực thi).
Có thêm thông tin về trang web MSDN (2) tại đây
[(1) https://web.archive.org/web/20190911155929/https://blogs.msdn.microsoft.com/sqlnativeclient/2006/09/27/using- mars-with-sql-native-client /
]
[(2) http://msdn.microsoft. com / en-us / library / ms131686.aspx
]