Skip to content

Clarification about statements and commit phase under save changes and "WAIT FOR EMON PROCESS NFTNS" error #448

Closed
@guilhermecampello

Description

@guilhermecampello

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)
Image

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions