possible memory leak when inserting CLOBs
Posted: Thu 23 May 2019 10:43
Hi,
there appears to be a memory leak when inserting CLOBs into an Oracle database.
We are using Oracle Database 12c Enterprise Edition Release 12.1.0.2.0. with dotConnect for Oracle:
Devart.Data (4/11/2019 8:11 AM, Version=5.0.2158.0)
Devart.Data.Oracle (4/11/2019 6:46 AM, Version=9.7.734.0)
Devart.Data.PostgreSql (4/11/2019 11:00 AM, Version=7.13.1366.0)
So far the simplest program i have found to demonstrate this issue just repeats this piece of code:
using (var cmd = conn.CreateCommand())
{
cmd.CommandText = "insert into TEST(content) values(:P_CONTENT)";
var par = cmd.CreateParameter();
par.DbType = DbType.String;
par.Direction = ParameterDirection.Input;
par.ParameterName = "P_CONTENT";
par.Value = _myContent;
cmd.Parameters.Add(par);
var trans = conn.BeginTransaction();
cmd.Transaction = trans;
cmd.ExecuteNonQuery();
trans.Commit();
}
The problem does not occur with a PostgreSQL database, but having this running in a loop against Oracle uses up about 1MB per Minute (ca. 3500 iterations).
Is there anything wrong with my usage?
Thanks in advance for any help,
Detlef
there appears to be a memory leak when inserting CLOBs into an Oracle database.
We are using Oracle Database 12c Enterprise Edition Release 12.1.0.2.0. with dotConnect for Oracle:
Devart.Data (4/11/2019 8:11 AM, Version=5.0.2158.0)
Devart.Data.Oracle (4/11/2019 6:46 AM, Version=9.7.734.0)
Devart.Data.PostgreSql (4/11/2019 11:00 AM, Version=7.13.1366.0)
So far the simplest program i have found to demonstrate this issue just repeats this piece of code:
using (var cmd = conn.CreateCommand())
{
cmd.CommandText = "insert into TEST(content) values(:P_CONTENT)";
var par = cmd.CreateParameter();
par.DbType = DbType.String;
par.Direction = ParameterDirection.Input;
par.ParameterName = "P_CONTENT";
par.Value = _myContent;
cmd.Parameters.Add(par);
var trans = conn.BeginTransaction();
cmd.Transaction = trans;
cmd.ExecuteNonQuery();
trans.Commit();
}
The problem does not occur with a PostgreSQL database, but having this running in a loop against Oracle uses up about 1MB per Minute (ca. 3500 iterations).
Is there anything wrong with my usage?
Thanks in advance for any help,
Detlef