According to Microsoft documentation for DBCommand.ExecuteDbDataReaderAsync: Providers should implement this method to provide a nondefault implementation for overloads. The default implementation invokes the synchronous method and returns a completed task, blocking the calling thread.
However I can see OracleManagedDataAccess did not implement this in OracleCommand class. As a result all reading calls via oracle are blocking and synchronous! I find this very odd and very counter productive in terms of performance. Is there any particular reason this method is not overridden in OracleCommand?