rebus-org / Rebus.Oracle

:bus: Oracle transport for Rebus
https://mookid.dk/category/rebus
Other
5 stars 10 forks source link

ODP.NET does not implement async #12

Closed jods4 closed 5 years ago

jods4 commented 5 years ago

Oracle.ManagedDataAccess does not implement Async members, they are inherited from DbConnection and DbCommand. Those default implementations always return a completed task, they just call the synchronous methods.

So using async methods on OracleCommand is just wasting resources (allocations + CPU), you're better off just using the plain old sync methods.

PS: do you take PRs?

mookid8000 commented 5 years ago

Yes, PRs are most welcome!

Especially on the Oracle stuff, since I don't have access to an Oracle database. 😀

jods4 commented 5 years ago

How do you run tests then?

mookid8000 commented 5 years ago

I don't run tests on Rebus.Oracle – I need contributors to be able to run them

thomasdc commented 5 years ago

You can easily run an Oracle database in a Docker container nowadays. It's completely free.

At our company we use Oracle database containers for local development and integration tests on our build server via Docker compose.

mookid8000 commented 5 years ago

cool! I must admit that I've been slow to pick up on the whole container thing*, so I didn't even realize that Oracle could do that

I'll definitely check it out!


(*) mostly because Docker for Windows does not work inside a VMWare FUsion VM, but I've moved to doing most of my Windows development on a real Windows box now, so I don't have any real good excuses 😀

jods4 commented 5 years ago

@thomasdc Do you think you could write up a short step-by-step guide in this repo? I think I'm gonna make a few PRs; it would be great to have a simple way to run tests while doing so.

thomasdc commented 5 years ago

@jods4 ok, will do!