ORA-24813 cannot send or receive an unsupported LOB

ORA-24813 cannot send or receive an unsupported LOB

Postby pari » Thu 27 Nov 2008 13:01

Hi!
When I write BLOB to my consumer database then I get ORA-24813.
In this case I used clause 'direct=true', but if I used 'direct=false' then all were ok.

My customer have:
Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Production With the Partitioning, Real Application Clusters, Data Mining and Real Application Testing options

My testing database (there are all is ok):
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit Production With the Partitioning, OLAP and Data Mining options

What can I do? (my company 'very' prefere direct connection without 'huge' Oracle Client).

Have a nice day, Pavel

Ps:
Oracle error description:
ORA-24813 cannot send or receive an unsupported LOB
Cause
An attempt was made to send a LOB across the network, but either the server does not support the LOB sent by the client, or the client does not support the LOB sent by the server. This error usually occurs when the client and server are running different versions of Oracle.
pari
 
Posts: 14
Joined: Thu 27 Nov 2008 12:33

Crazy solving

Postby pari » Thu 27 Nov 2008 13:21

I try to many switches and.... tram ta da da!

If I added 'unicode=false' to connection string then all's ok, but there is only overkill...
pari
 
Posts: 14
Joined: Thu 27 Nov 2008 12:33

Postby AndreyR » Fri 28 Nov 2008 12:52

Does that solution suit you? If no, try to set
Code: Select all
OracleUtils.UseDirectLobs=false

in your code. Please let us know about the results.
AndreyR
Devart Team
 
Posts: 2919
Joined: Mon 07 Jul 2008 13:16

I tested obsolete 'UseDirectLobs' and the problem continues

Postby pari » Mon 01 Dec 2008 09:38

There I identified the problem:
(I suppose, that the byte array can be the problem...)

Hi, PaRi

public override void Save()
{
OracleCommand command;
command = new OracleCommand("UPDATE gag_application SET icon=:icon WHERE id=:id", GAGPersistor.Persistor.Connection);

try
{
command.Parameters.AddWithValue(":id", Id);
command.Parameters.AddWithValue(":icon", ImageToByteArray(Icon));
command.ExecuteScalar();
}
catch
{
command.Dispose();

throw;
}
}


private byte[] ImageToByteArray(Icon icon)
{
MemoryStream stream = new MemoryStream();
icon.Save(stream);
return stream.ToArray();
}
pari
 
Posts: 14
Joined: Thu 27 Nov 2008 12:33

Postby Shalex » Thu 04 Dec 2008 14:59

We are investigating this issue. You will be notified about the results as soon as possible.
Shalex
Devart Team
 
Posts: 7344
Joined: Thu 14 Aug 2008 12:44

Postby Shalex » Fri 05 Dec 2008 09:15

We cannot reproduce the problem on our test machines. Is it possible to connect to your Oracle server through the Internet? If yes, please provide me (alexsh*devart*com) with all necessary settings (connection string).
Shalex
Devart Team
 
Posts: 7344
Joined: Thu 14 Aug 2008 12:44


Return to dotConnect for Oracle