Page 1 of 2

EF Core 2.2.0, Oracle Error end-of-file on communication channel

Posted: Fri 11 Jan 2019 10:37
by enrico.rinaldini
Hello,

I'm using the last version of the Devart.Data.Oracle.EFCore 9.6.675.

I'm having an error when trying to use FirstOrDefault() function, code below:

Code: Select all

Devart.Data.Oracle.OracleException: ORA-03113: end-of-file on communication channel
I think the problem is the way the FirstOrDefault is translated in query for the Oracle Database.
This issue is present Connecting to a 10.2.0.5.0 version and not in a 12.2 version.

Going back to EF Core v2.1.4 works for now.

Re: EF Core 2.2.0, Oracle Error end-of-file on communication channel

Posted: Mon 14 Jan 2019 14:35
by Shalex
We cannot reproduce the issue in our environment.

The error you are getting is not related to ORM itself. So, you should be able to reproduce it with a plain ADO.NET connection:

Code: Select all

    var conn = new Devart.Data.Oracle.OracleConnection();
    conn.ConnectionString = @"direct=false;server=orcl1020;uid=scott;pwd=tiger;license key=...";
    //conn.ConnectionString = @"direct=true;server=dboracle;service name=orcl1020;uid=scott;pwd=tiger;license key=...";
    conn.Open();
1. Are you getting this error in both OCI and Direct modes?
2. Try connecting to your Oracle Server 10.2.0.5.0 with a different tool (e.g.: Oracle SQL Developer). Does the issue persist in this case?

Re: EF Core 2.2.0, Oracle Error end-of-file on communication channel

Posted: Wed 16 Jan 2019 10:01
by enrico.rinaldini
Thanks for the Reply,
I tried to connect to the database with OCI insted of Direct Mode as suggested, same problem.

Devart.Data.Oracle.OracleException: 'ORA-03113: end-of-file on communication channel.

FirstOrDefault() is translated with this query, referring at the connection:

Code: Select all

SELECT u.USERID,
       u.FIRSTNAME,
       u.LASTNAME,
       u.LOCKED,
       u.LOGOFFTIME,
       u.USERNAME,
  FROM USERS u
 WHERE (ROWNUM) <= 1
Using this query on TOAD, Oracle SQL Developer and also On Visual Studio Query Window give me the same error as I mentioned before.

On Oracle 12 database the query is translated like this:

Code: Select all

SELECT u.USERID,
       u.FIRSTNAME,
       u.LASTNAME,
       u.LOCKED,
       u.LOGOFFTIME,
       u.USERNAME,
  FROM USERS u
FETCH FIRST 1 ROWS ONLY
Works with no problems.

Re: EF Core 2.2.0, Oracle Error end-of-file on communication channel

Posted: Wed 16 Jan 2019 16:37
by Shalex
enrico.rinaldini wrote: Wed 16 Jan 2019 10:01Devart.Data.Oracle.OracleException: 'ORA-03113: end-of-file on communication channel.

FirstOrDefault() is translated with this query, referring at the connection:

Code: Select all

SELECT u.USERID,
       u.FIRSTNAME,
       u.LASTNAME,
       u.LOCKED,
       u.LOGOFFTIME,
       u.USERNAME,
  FROM USERS u
 WHERE (ROWNUM) <= 1
Using this query on TOAD, Oracle SQL Developer and also On Visual Studio Query Window give me the same error as I mentioned before.
The generated query is correct. We think that the problem is caused by your Oracle Server 10.2. Things to try:

a) can you open a simple ADO.NET connection to your Oracle Server 10.2?

Code: Select all

  var conn = new Devart.Data.Oracle.OracleConnection();
  conn.ConnectionString = @"direct=true;server=dboracle;service name=orcl1020;uid=scott;pwd=tiger;license key=...";
  //conn.ConnectionString = @"direct=false;server=orcl1020;uid=scott;pwd=tiger;license key=...";
  conn.Open();
b) modify the query that fails to find out the exact change in it which leads to the error. For example, start with SELECT "t".ID_CAUSE FROM TB_CAUSE "t". Does it work?

c) refer to general forums about this error like https://stackoverflow.com/questions/536 ... -oracle-11

Re: EF Core 2.2.0, Oracle Error end-of-file on communication channel

Posted: Thu 17 Jan 2019 07:36
by enrico.rinaldini
Hi Shalex,

I think I found the problem:

Code: Select all

SELECT "t".ID_CAUSE, "t".CAUSE_LEVEL, "t".LANGUAGE, "t".DESCRIPTION, "t".MACHINE_CODE 
FROM TB_CAUSE "t" 
WHERE (ROWNUM) <=1;
give the error ORA-03113: end-of-file on communication channel.

If I use the same query without parentesis on ROWNUM, like this:

Code: Select all

SELECT "t".ID_CAUSE, "t".CAUSE_LEVEL, "t".LANGUAGE, "t".DESCRIPTION, "t".MACHINE_CODE 
FROM TB_CAUSE "t" 
WHERE ROWNUM <=1;
the query works correctly.

Responding to your question:
a) Yes opening a simple ADO.NET connection is working.
b) Changing the query is working with no problem.

Re: EF Core 2.2.0, Oracle Error end-of-file on communication channel

Posted: Thu 17 Jan 2019 14:48
by Shalex
Looks like the bug in Oracle Server 10.2.0.5.0.

As a workaround, we will change the SQL generation (ROWNUM) -> ROWNUM and notify you about this.

Re: EF Core 2.2.0, Oracle Error end-of-file on communication channel

Posted: Fri 18 Jan 2019 12:06
by Shalex
The bug with using .FirstOrDefault() against Oracle Server 10.2 is fixed. We will notify you when the new public build of dotConnect for Oracle is available for download.

Re: EF Core 2.2.0, Oracle Error end-of-file on communication channel

Posted: Mon 21 Jan 2019 11:11
by enrico.rinaldini
Thanks.

Best Regards

Re: EF Core 2.2.0, Oracle Error end-of-file on communication channel

Posted: Tue 05 Feb 2019 08:48
by michael1988
We have the same problem. Do you already know when a fixed version is available via nuget?

Re: EF Core 2.2.0, Oracle Error end-of-file on communication channel

Posted: Tue 05 Feb 2019 19:17
by Shalex
The internal build with the fix is available at https://www.devart.com/pub/nuget_oracle_9_6_682.zip.

Re: EF Core 2.2.0, Oracle Error end-of-file on communication channel

Posted: Wed 06 Feb 2019 09:23
by michael1988
When it is available via nuget?

Re: EF Core 2.2.0, Oracle Error end-of-file on communication channel

Posted: Wed 06 Feb 2019 14:43
by Shalex
We are planning to release a new public version and upload it to NuGet next week.

Re: EF Core 2.2.0, Oracle Error end-of-file on communication channel

Posted: Thu 07 Feb 2019 07:44
by michael1988
Thanks for the information. That would be great. :)

Re: EF Core 2.2.0, Oracle Error end-of-file on communication channel

Posted: Mon 18 Feb 2019 13:07
by Shalex
The bug with using .FirstOrDefault() against Oracle Server 10.2 is fixed: viewtopic.php?f=1&t=38378.

Re: EF Core 2.2.0, Oracle Error end-of-file on communication channel

Posted: Wed 03 Apr 2019 09:29
by KerenLindsay
We at present have a comparable inconvenience. Do you certainly know when an unfaltering variety is available through nuget ?
steroids for sale
rad140 review
over the counter phentermine