ArroyoSystems / arroyo

Distributed stream processing engine in Rust

Home Page:https://arroyo.dev

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Compilation failure when casting types

mwylde opened this issue · comments

The S3 sink work (#197 ) appears to have introduced a regression around casting and type handling. This query now produces a compilation error:

SELECT CAST(1 as FLOAT)
from nexmark100;

The error occurs when constructing the record builder:

error[E0308]: mismatched types
   --> pipeline/src/main.rs:375:50
    |
375 |                 self.Int64_1__array.append_value(data.Int64_1_);
    |                                     ------------ ^^^^^^^^^^^^^ expected `i32`, found `f32`
    |                                     |
    |                                     arguments to this method are incorrect
    |
note: method defined here
   --> /Users/mwylde/.cargo/git/checkouts/arrow-rs-4244527eea6aecc6/31d78a5/arrow-array/src/builder/primitive_builder.rs:205:12
    |
205 |     pub fn append_value(&mut self, v: T::Native) {
    |            ^^^^^^^^^^^^