Đây hầu như không phải là sự cố máy chủ SQL nhưng việc thiết lập dường như chỉ ảnh hưởng đến BULK INSERTS đến Máy chủ SQL.
Gần đây chúng tôi đã chuyển VM Phần cứng và tất cả các khách đã được di chuyển đã chuyển đổi ảo từ tiêu chuẩn sang phân phối.
Sau đó tôi bắt đầu nhận
Đã xảy ra lỗi nghiêm trọng trong khi đọc luồng đầu vào từ mạng. Phiên sẽ kết thúc (lỗi đầu vào: 64, lỗi đầu ra: 0)
trên hai máy chủ SQL trong các hoạt động BULK INSERT. Một trong những máy chủ SQL là một VM với cấu hình mới và cái còn lại là một máy chủ vật lý. Cả hai hoạt động BULK INSERT có nguồn gốc từ một VM với cấu hình mới. Các BULK INSERT sẽ không thất bại mọi lúc, nó rất ngẫu nhiên khi nó xảy ra.
Khi chúng tôi thay đổi công tắc ảo thành công tắc tiêu chuẩn thay vì công tắc phân tán, vấn đề sẽ biến mất.
Tôi đang tìm kiếm thêm một lời giải thích về lý do tại sao nó không hoạt động với một công tắc phân tán thay vì độ phân giải. Tôi đoán là hoạt động BULK INSERT là nối tiếp và với một công tắc phân tán, các gói đang được chuyển qua các máy chủ khác nhau, một số trong đó có thể bận hơn các máy chủ khác và đang đến máy chủ đích vượt quá ngưỡng trễ. (lưu ý: không có gì trong nhật ký sự kiện windows tại thời điểm xảy ra lỗi trên máy chủ nguồn hoặc máy chủ đích)
CẬP NHẬT: hóa ra vấn đề là do NIC. Tất cả các máy ảo của chúng tôi được cấu hình với một E1000 NIC hoạt động đủ tốt trên các công tắc tiêu chuẩn. Khi chúng tôi chuyển sang các thiết bị chuyển mạch phân tán, chúng tôi bắt đầu thấy các vấn đề với việc truyền dữ liệu lớn, không chỉ các truy vấn sql. Việc thay đổi NIC thành VMXNET3 dường như đã giải quyết được vấn đề.