- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-01-2025 07:16 AM
Hey Hung, totally get it—not wanting to trigger a full refresh makes sense, especially if the table is large. Since casting to FLOAT didn’t solve it, one thing you can try is setting this config at the top of your DLT notebook: spark.conf.set("spark.databricks.delta.schema.autoMerge.enabled", "true"). This tells Delta to allow merging compatible data types like INT to FLOAT. Also, make sure the cast is actually happening before the data is returned in your DLT function, so the final schema matches what you want. If you're using schema hints or expectations, double-check that those also match the FLOAT type. And if nothing else works, you could try just dropping the target table manually—DLT will recreate it fresh next time without needing to reset the entire pipeline. Let me know how it goes—happy to help figure it out further!
Regards,
Brahma