Arithmetic operation resulted in an overflow

Discussion in 'Installation and Configuration in Windows and Linux' started by moukhabo, Mar 10, 2013.

  1. moukhabo

    moukhabo Bit poster

    Messages:
    2
    I have searched through this forum only to find many dead ends on this topic Currently we are trying to to populate a dataset and in most cases it works flawlessly. In the past couple of days, we have encountered an error from the latest odp.net that is putting a stranglehold on our efforts.

    I have discussed this with the dbm an he assures me that the numbers in question are only a 14/4 precision but when we try to access it, we get this;

    Error filling dataset
    Arithmetic operation resulted in an overflow.
    at Oracle.DataAccess.Types.DecimalConv.GetDecimal(IntPtr numCtx)
    at Oracle.DataAccess.Client.OracleDataReader.GetDecimal(Int32 i)
    plus.google.com/communities/117274286675479602695
    plus.google.com/communities/117274286675479602695
    gameinformer.com/blogs/members/b/abirhayder_blog/archive/2013/03/10/slug-monster.aspx?PageIndex=1
    gameinformer.com/blogs/members/b/abirhayder_blog/archive/2013/03/10/finda-dug-monster.aspx
    at Oracle.DataAccess.Client.OracleDataReader.GetValue(Int32 i)
    at Oracle.DataAccess.Client.OracleDataReader.GetValues(Object[] values)
    at System.Data.Common.SchemaMapping.LoadDataRow(Boolean clearDataValues, Boolean acceptChanges)
    at System.Data.Common.DbDataAdapter.FillLoadDataRow(SchemaMapping mapping)
    at System.Data.Common.DbDataAdapter.FillFromReader(Object data, String srcTable, IDataReader dataReader, Int32 startRecord, Int32 maxRecords, DataColumn parentChapterColumn, Object parentChapterValue)
    at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, String srcTable, IDataReader dataReader, Int32 startRecord, Int32 maxRecords)
    at Oracle.DataAccess.Client.OracleDataAdapter.Fill(DataSet dataSet, String srcTable, IDataReader dataReader, Int32 startRecord, Int32 maxRecords)
    at Oracle.DataAccess.Client.OracleDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
    at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet)

    This data is not that complex so I am wondering why odp.net is suddenly choking to death on this small value. It can physically populate the value so why can't it read it back?

    Any help will be greatly appreciated.

    I've strictly the same problem, and currently have no workarround.

    I've also tried with IDataReader and got the following exception (french error message):

    Erreur interne du fournisseur de données(-3000)

    [OracleException: Erreur interne du fournisseur de données(-3000)]
    Oracle.DataAccess.Client.OracleException.HandleErrorHelper(Int32 errCode, OracleConnection conn, IntPtr opsErrCtx, OpoSqlValCtx* pOpoSqlValCtx, Object src, String procedure) +523
    Oracle.DataAccess.Client.OracleCommand.ExecuteReader(Boolean requery, Boolean fillRequest, CommandBehavior behavior) +2296
    Oracle.DataAccess.Client.OracleCommand.ExecuteReader() +95
    Nemo.WebApplication.perso.gseg.arithmeticoverflow.Page_Load(Object sender, EventArgs e) in ...\arithmeticoverflow.aspx.cs:41
    System.Web.UI.Control.OnLoad(EventArgs e) +67
    System.Web.UI.Control.LoadRecursive() +29
    System.Web.UI.Page.ProcessRequestMain() +713

    Thanks for your support.
     

Share This Page