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

fix(status-bar): 'Running query…' stays after a successful SELECT (plain row-count status line)

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

Maintainer thường phản hồi trong vòng 1 ngày

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

Đánh giá

Độ khó
2/5
Thời gian dự kiến
1-3 giờ
Mức phù hợp với người mới
79/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ệ
dart, flutter
Lĩnh vực
database, desktop

Hướng nghiên cứu

Bắt đầu bằng cách đọc QueryaShellStatus.reportQueryResult và các bài kiểm thử đơn vị về hành vi của thông báo đang bận; issue nêu tên phương thức và cung cấp chuỗi thao tác gây lỗi. Sau đó, kiểm tra đường đi công bố kết quả của GenericSqlWorkspace để xác nhận cách một thông báo đếm số hàng đơn giản trở thành null. Hoàn thành khi kết quả có số hàng đơn giản xóa thông báo đang bận, văn bản trạng thái của script hoặc số hàng bị ảnh hưởng vẫn hiển thị và bài kiểm thử đơn vị được chỉ định chạy thành công.

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

Mô tả

bug frontend P2 ui
Problem

After a successful SELECT the status bar keeps showing "Running query…" until the next query. It is stuck, not just late: seen 4 s after the grid had been shown.

Cause

GenericSqlWorkspace publishes the result with message: _shellMessage(session.statusLine), and _shellMessage deliberately returns null for a plain "N row(s)." status line (the counts are already on the right of the bar). QueryaShellStatus.reportQueryResult then does:

if (message != null) _statusMessage = message;   // null: keeps the old "Running query…"
_messageIsBusy = false;                          // ...and now it is no longer dropped by endBusy()

So the busy message set by beginBusy survives and is re-labelled as a normal message.

Reproduction

Demo Playground -> SQL -> SELECT * FROM orders LIMIT 200; -> F5. The grid shows 12 rows, the bar shows Running query…, 1 ms, 12 rows, 8 cols.

Fix

In reportQueryResult, take the message as given (_statusMessage = message;), or drop the busy message when message == null (if (_messageIsBusy) _statusMessage = null before the assignment). Add a unit test: beginBusy(message: 'Running query…') then reportQueryResult(message: null) leaves statusMessage == null.

Acceptance
  • Plain-count results leave no message in the bar.
  • Results with a script / affected-rows status still show their text.
  • Unit test for the sequence above.

Related: #714 (live status-bar metrics), #1481.

Ngôn ngữ chính
Dart
Star
23
Fork
1
Merge trung bình
31 phút
Pull request đã merge (30 ngày)
570

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

Mở trong Codespaces

Khởi chạy dev container của dự án ngay trên trình duyệt, bằng tài khoản GitHub của bạn.

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 QueryaHub/Querya-Desktop

Tất cả issue của QueryaHub/Querya-Desktop

Issue tương tự

Thêm issue về Dart

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.