Serious Problem with dotConnect for Oracle

Discussion of open issues, suggestions and bugs regarding Entity Framework support in ADO.NET Data providers
Post Reply
emphasis
Posts: 3
Joined: Thu 19 Nov 2015 09:19

Serious Problem with dotConnect for Oracle

Post by emphasis » Thu 19 Nov 2015 11:07

Hi,

We encounter a serious problem with dotConnect for Oracle that happens randomly at customer's site and we cannot reproduce or send specific sample code.

We target Oracle 10g and the problem occurs with latest version 8.5.535 as well as the older version 84.313. We use Entity Framework 6.1.3

A simple projected column of Boolean type (NUMBER(1)) may get TRUE value (1) instead of FALSE (0) that is stored in the database!

It is a query of the following form:

SELECT ... , Table1.ID, Table1.Name, Table1.isActive , ...
WHERE ...
JOIN ...
LEFT JOIN...

In our scenario, it returns about 500 entities and each time the correctness varies: Most times all of them have correct values but some times around 120 of them have correct values, sometimes 134 of them have correct values etc.

Sometimes it works correctly, sometimes not! We cannot figure out the conditions that it provides wrong result. It is not a matter of concurrency on context, the context is local and immediately disposed afterwards.

We have a clue: we are pretty sure it did NOT happen in the last software version that we have been using Model-First (CSDL, MSL, SSDL) model. It appeared since the first day that we deployed a Code-First model.

Any help? Guideline? Somehow to output debug information that will help you understand the situation?

Thanks in advance

Shalex
Site Admin
Posts: 8247
Joined: Thu 14 Aug 2008 12:44

Re: Serious Problem with dotConnect for Oracle

Post by Shalex » Fri 20 Nov 2015 07:10

emphasis wrote:We encounter a serious problem with dotConnect for Oracle that happens randomly at customer's site and we cannot reproduce or send specific sample code.
1. The problem doesn't occur in your development environment, does it? Please find out the difference between customer's environment and yours by comparing the versions:
a) Oracle Server and Oracle Client
b) dotConnect for Oracle
c) Entity Framework
d) .NET Framework installed (https://msdn.microsoft.com/en-us/librar ... .110).aspx)

2. Tell us the exact full versions (a through d) at customer's site.

3. Are you running exactly the same application with the same database structure in both environments?
emphasis wrote:A simple projected column of Boolean type (NUMBER(1)) may get TRUE value (1) instead of FALSE (0) that is stored in the database!
4. Are there vice versa results (FALSE instead of TRUE)?
emphasis wrote:We have a clue: we are pretty sure it did NOT happen in the last software version that we have been using Model-First (CSDL, MSL, SSDL) model. It appeared since the first day that we deployed a Code-First model.
5. Have you generated a detailed complete mapping with the DbContext template (http://blog.devart.com/entity-developer ... plate.html)?

emphasis
Posts: 3
Joined: Thu 19 Nov 2015 09:19

Re: Serious Problem with dotConnect for Oracle

Post by emphasis » Wed 13 Jan 2016 15:48

Sorry for the long delay, below some information about the issue:

The customer uses:
- Oracle Database 11g Release 11.2.0.1.0 - 64bit Production
- Oracle Driver 11.2.0.1.0 - 64bit
- dotConnect 8.5.535
- .NET 4.0 Full

The boolean values of 1 can get 0 and vice versa

The entities have been generated using (Create code-based model from Database)

The problem appears sporadically. BUT, if it appears, I suspect that somehow it does at the first run of the query in a Windows Form application at startup or after idle period.

It is really difficult to further elaborate on the problem, I will try to create a minified example and, if problem exists, send it to you

Shalex
Site Admin
Posts: 8247
Joined: Thu 14 Aug 2008 12:44

Re: Serious Problem with dotConnect for Oracle

Post by Shalex » Mon 18 Jan 2016 13:30

emphasis wrote:LEFT JOIN...
emphasis wrote:Oracle Database 11g Release 11.2.0.1.0
There is a known bug with LEFT OUTER JOINs in Oracle 11.2: http://stackoverflow.com/questions/1136 ... outer-join. So try applying the latest patches to your Oracle server and check if this helps or contact the Oracle support.

Post Reply