Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

Dataflow query results show every Date32 value as 1970-01-01

Đang mở Phù hợp với người mới
#121 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Đánh giá

Độ khó
1/5
Thời gian dự kiến
Dưới một giờ
Mức phù hợp với người mới
86/100
Loại issue
Lỗi
Độ rõ ràng
Đặc tả rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
csharp
Lĩnh vực
data-engineering

Hướng nghiên cứu

Bắt đầu tại DataFactory.MCP.Core/Services/ArrowDataReaderService.cs:99 và kiểm tra nhánh Date32 trong ExtractValueFromArray, so sánh cách chuyển đổi của nhánh này với trường hợp Date64 và API Apache.Arrow đã được tham chiếu. Xác minh rằng một giá trị như 20722 được định dạng thành ngày thực tế của nó trong cả structuredSampleData và các dòng báo cáo, trong khi hành vi của Date64 vẫn không thay đổi.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

ArrowDataReaderService.ExtractValueFromArray converts Date32 values with DateTimeOffset.FromUnixTimeSeconds, but an Arrow Date32 counts days since the Unix epoch, not seconds. Every date a dataflow query returns therefore comes out as 1970-01-01.

DataFactory.MCP.Core/Services/ArrowDataReaderService.cs:99:

Date32Array dt32 => DateTimeOffset.FromUnixTimeSeconds(dt32.GetValue(index) ?? 0).ToString("yyyy-MM-dd"),

For example, 2026-09-26 is stored as 20722; FromUnixTimeSeconds(20722) is 1970-01-01T05:45:22Z, which formats as 1970-01-01. The same happens in both structuredSampleData and the report rows, since the rows are built from it. The Date64 case on the next line is correct, because Date64 does hold milliseconds.

A possible fix, using the Apache.Arrow API the project already references (22.1.0):

Date32Array dt32 => dt32.GetDateTime(index)?.ToString("yyyy-MM-dd"),

I found this while porting the query tool to Go and haven't reproduced it against a live dataflow; the conversion above is deterministic, though.

Ngôn ngữ chính
C#
Star
42
Fork
19
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Chuẩn bị môi trường

Chúng tôi chưa kiểm tra các tệp thiết lập môi trường của dự án này. Hãy bắt đầu từ README và xem hướng dẫn đóng góp lần đầu của chúng tôi để biết các bước chung.

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của microsoft/DataFactory.MCP

Tất cả issue của microsoft/DataFactory.MCP

Issue tương tự

Thêm issue về C#

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.