diff --git a/libs/sql-schema-describer/tests/postgres_introspection_tests.rs b/libs/sql-schema-describer/tests/postgres_introspection_tests.rs index 75ba4a4b461c..fc72e053443a 100644 --- a/libs/sql-schema-describer/tests/postgres_introspection_tests.rs +++ b/libs/sql-schema-describer/tests/postgres_introspection_tests.rs @@ -327,7 +327,7 @@ async fn all_postgres_column_types_must_work() { name: "interval_col".into(), tpe: ColumnType { raw: "interval".into(), - family: ColumnTypeFamily::DateTime, + family: ColumnTypeFamily::String, arity: ColumnArity::Required, }, diff --git a/query-engine/prisma/src/request_handlers/graphql/protocol_adapter.rs b/query-engine/prisma/src/request_handlers/graphql/protocol_adapter.rs index 1c69770bbcc4..978b82da6abf 100644 --- a/query-engine/prisma/src/request_handlers/graphql/protocol_adapter.rs +++ b/query-engine/prisma/src/request_handlers/graphql/protocol_adapter.rs @@ -3,8 +3,8 @@ use graphql_parser::query::{ Definition, Document, OperationDefinition, Selection as GqlSelection, SelectionSet, Value, }; use query_core::query_document::*; -use rust_decimal::{prelude::FromPrimitive, Decimal}; -use std::collections::BTreeMap; +use rust_decimal::Decimal; +use std::{collections::BTreeMap, str::FromStr}; /// Protocol adapter for GraphQL -> Query Document. /// @@ -145,7 +145,7 @@ impl GraphQLProtocolAdapter { i ))), }, - Value::Float(f) => match Decimal::from_f64(f) { + Value::Float(f) => match Decimal::from_str(&f.to_string()).ok() { Some(dec) => Ok(QueryValue::Float(dec)), None => Err(PrismaError::QueryConversionError(format!( "invalid 64-bit float: {:?}",