diff --git a/src/lib.rs b/src/lib.rs index 6597474e..d24f4e03 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -471,6 +471,8 @@ impl InnerConnection { ORDER BY enumsortorder") { Ok(..) => {} Err(Error::Io(e)) => return Err(ConnectError::Io(e)), + // Old versions of Postgres and things like Redshift don't support enums + Err(Error::Db(ref e)) if e.code == SqlState::UndefinedTable => {} Err(Error::Db(e)) => return Err(ConnectError::Db(e)), Err(Error::Conversion(_)) => unreachable!(), } @@ -484,6 +486,8 @@ impl InnerConnection { ORDER BY attnum") { Ok(..) => {} Err(Error::Io(e)) => return Err(ConnectError::Io(e)), + // Old versions of Postgres and things like Redshift don't support composites + Err(Error::Db(ref e)) if e.code == SqlState::UndefinedTable => {} Err(Error::Db(e)) => return Err(ConnectError::Db(e)), Err(Error::Conversion(_)) => unreachable!(), }