datafusion icon indicating copy to clipboard operation
datafusion copied to clipboard

Sqllogictest(parquet.slt) failed in rustc 1.81.0-nightly (cc8da78a0 2024-07-04) using main branch

Open Rachelint opened this issue 1 year ago • 4 comments

Describe the bug

I found test parquet.slt failed in my branch, then I swith to main and run again, and it failed too... But it can success in my another dev machine and ci...

It is really a strange problem...

One point I found may be related is that, the test will get top10 by timestamp, however top10 has the same timestamp. I suspect it may be realted to some unstable sorts?

Running "parquet.slt"
Running "parquet_sorted_statistics.slt"
External error: query result mismatch:
[SQL] SELECT
  count,
  LAG(timestamp, 1) OVER (ORDER BY timestamp),
  arrow_typeof(LAG(timestamp, 1) OVER (ORDER BY timestamp))
FROM timestamp_with_tz
LIMIT 10;
[Diff] (-expected|+actual)
    0 NULL Timestamp(Millisecond, Some("UTC"))
    0 2014-08-27T14:00:00Z Timestamp(Millisecond, Some("UTC"))
    0 2014-08-27T14:00:00Z Timestamp(Millisecond, Some("UTC"))
-   4 2014-08-27T14:00:00Z Timestamp(Millisecond, Some("UTC"))
    0 2014-08-27T14:00:00Z Timestamp(Millisecond, Some("UTC"))
-   0 2014-08-27T14:00:00Z Timestamp(Millisecond, Some("UTC"))
+   12 2014-08-27T14:00:00Z Timestamp(Millisecond, Some("UTC"))
+   2 2014-08-27T14:00:00Z Timestamp(Millisecond, Some("UTC"))
    0 2014-08-27T14:00:00Z Timestamp(Millisecond, Some("UTC"))
    14 2014-08-27T14:00:00Z Timestamp(Millisecond, Some("UTC"))
-   0 2014-08-27T14:00:00Z Timestamp(Millisecond, Some("UTC"))
-   0 2014-08-27T14:00:00Z Timestamp(Millisecond, Some("UTC"))
+   5 2014-08-27T14:00:00Z Timestamp(Millisecond, Some("UTC"))
+   1 2014-08-27T14:00:00Z Timestamp(Millisecond, Some("UTC"))

To Reproduce

Just run cargo test --test sqllogictests -- parquet

Expected behavior

No response

Additional context

No response

Rachelint avatar Aug 27 '24 01:08 Rachelint

try adding rowsort for this kind of undeterministic query

query IPT rowsort
SELECT
  count,
  LAG(timestamp, 1) OVER (ORDER BY timestamp),
  arrow_typeof(LAG(timestamp, 1) OVER (ORDER BY timestamp))
FROM timestamp_with_tz
LIMIT 10;
----

jayzhan211 avatar Aug 27 '24 05:08 jayzhan211

rowsort

Still failed... seems make the same effect as ORDER BY timestamp in origin sql... I try to switch rust version, cargo clean, remove cargo cache... still not work...

Rachelint avatar Aug 27 '24 11:08 Rachelint

I can't reproduce the error

rustc 1.78.0 (9b00956e5 2024-04-29) Macos Version 14.5 (23F79)

it can success in my another dev machine and ci...

May need more info about your failing machine

jayzhan211 avatar Aug 27 '24 11:08 jayzhan211

I can't reproduce the error

rustc 1.78.0 (9b00956e5 2024-04-29) Macos Version 14.5 (23F79)

it can success in my another dev machine and ci...

May need more info about your failing machine

I got it... I forget to switch the rust version although I have installed it... It just failed in rustc 1.81.0-nightly (cc8da78a0 2024-07-04) currently I found, and when I switch to 1.76, it works.

Rachelint avatar Aug 27 '24 12:08 Rachelint