oracle / oracle/dotnet-db-samples

ORA-00604 hiding ORA-01013 when cancelling task

Open
#481 5 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
C#
Stars
434
Forks
191
Avg merge
1d 15h
Merged PRs (30d)
1

Description

Hi,

To my understanding issues in this repo are a way to provide feedback on unexpected behavior in the Oracle.EntityFrameworkCore implementation, as it is not open source or has its own repository. If this is not the case please let me know.

This is related to an issue reported in the Oracle forum last year: Forum Entry
I am now facing the same, I am using:
Oracle.EntityFrameworkCore Version 10.23.26200
.net 10
Oracle db 19c (EF core with OracleSQLCompatibility.DatabaseVersion19)

When cancelling a long running Query via the CancellationToken given to ToListAsync(cancellationToken) an OracleException with ORA-00604 is thrown. The message text of the exception states that the actual Error encapsulated is ORA-01013. However the OracleException.InnerException is null.

It would be very helpful if the Oracle.EntityFrameworkCore would throw an OperationCanceledException or at least have an OracleException as InnerException that has ErrorCode 1013 so we can react properly, since cancelling long running queries is an expected behavior in our app while other errors during fetching data are not. Therefore it would be good if we can have a well defined distinction.

Thank you for your support.
BR Markus

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing cancellation through ToListAsync(cancellationToken) with Oracle.EntityFrameworkCore 10.23.26200, .NET 10, and Oracle Database 19c. Inspect how the provider surfaces ORA-00604 and ORA-01013; done means cancellation is distinguishable as OperationCanceledException or exposes an OracleException with error code 1013.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
backend, databases
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.