Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

error: "Snowflake Data Type is not supported" on "NUMBER" with non-zero scale #3146

Closed
cburroughs opened this issue Aug 26, 2022 · 3 comments · Fixed by #3148
Closed

error: "Snowflake Data Type is not supported" on "NUMBER" with non-zero scale #3146

cburroughs opened this issue Aug 26, 2022 · 3 comments · Fixed by #3148

Comments

@cburroughs
Copy link
Contributor

Expected Behavior

feast plan/apply completed without error in version 0.23.0 and I was able to query with get_historical_features.

Current Behavior

With the snowflake datatype NUMBER(38,6) I get:

NotImplementedError: The following Snowflake Data Type is not supported: DECIMAL -- Convert to DOUBLE

Steps to reproduce

  • $ feast init -t snowflake
  • Alter the table like so:
alter table SNOWY_FEAST.PUBLIC."amazed_dane_feast_driver_hourly_stats" add column temp_conv_rate NUMBER(38,6);
update SNOWY_FEAST.PUBLIC."amazed_dane_feast_driver_hourly_stats" set temp_conv_rate = "conv_rate";
alter table SNOWY_FEAST.PUBLIC."amazed_dane_feast_driver_hourly_stats" drop column "conv_rate";
alter table SNOWY_FEAST.PUBLIC."amazed_dane_feast_driver_hourly_stats" rename column temp_conv_rate to "conv_rate";
  • $ feast apply
Traceback (most recent call last):
...
   raise NotImplementedError(
NotImplementedError: The following Snowflake Data Type is not supported: DECIMAL -- Convert to DOUBLE

Specifications

  • Version: Feast SDK Version: "feast 0.24.0"
  • Platform: x86_64 on Python 3.10.5
  • Subsystem: Linux 5.4.203-

Possible Solution

@achals
Copy link
Member

achals commented Aug 26, 2022

I think this is intentional cc @sfc-gh-madkins

@sfc-gh-madkins
Copy link
Collaborator

sfc-gh-madkins commented Aug 27, 2022

@cburroughs my advice for right now would be to cast this to type double/float, as the error recommends. Let me see if I can get NUMBER with scale to work.

The issue stems from afew things. One protobuf doesnt support fixed point numbers, with scale. Two, how NUMBER is passed to pandas types.

@cburroughs
Copy link
Contributor Author

I installed from master to test it out. Looks good; thank you!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants