Description
Hello!
I'm facing some issues with a .NET 7 application, using Oracle.EntityFrameworkCore version 7.21.13 regarding the commit phase.
The scenario I have is that the command statements are running fast apparently(45ms) but the commit phase sometimes hangs for a long time (212 seconds!).
[21:19:44.441][INF][Microsoft.EntityFrameworkCore.Database.Command] Executed DbCommand (45ms)

For me it's clearly a locking problem but the DBA says that at the Database the commit was completed intantaneously and that this session had no more active transactions at this time.
Is there any "commit confirmation" that the client may be missing(lost over the network or blocked by the firewall, etc) that may cause this behaviour on the client? Or this is not an option and problably it's just waiting for the database to complete the commit?
After some time the DBA found a session with this error message "WAIT FOR EMON PROCESS NTFNS". I've read this article about the EMON and it raised my suspicious about some "commit completed acknowledgement" being lost over the network. Does this client depends on EMON somehow and these errors may be related?
Any advice for additional troubleshooting would be really appreciated!
Also is there any way to setup a "commit timeout"? I've tried to set the CommandTimeout like this:
var timeOut = TimeSpan.FromSeconds(1);
databaseContext.Database.SetCommandTimeout(timeOut);
but I think that it only applies to the command execution and not to the commiting phase.
Environment
- Windows Server 2022
- .NET 7.0
- Oracle.EntityFrameworkCore 7.21.13
- Database: Oracle 19c Enterprise