<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Error ORA-01438 when update in Operating System - HP-UX</title>
    <link>https://community.hpe.com/t5/operating-system-hp-ux/error-ora-01438-when-update/m-p/2998156#M914072</link>
    <description>Hi,&lt;BR /&gt;i know it may sound silly, but is the variable &lt;BR /&gt;STRC_STREAM_NUMBER&lt;BR /&gt;&lt;BR /&gt;inizialized before using ?&lt;BR /&gt;&lt;BR /&gt;It looks like garbage in the cimpiling, like a standard value put from the compiler in it.&lt;BR /&gt;&lt;BR /&gt;HTH,&lt;BR /&gt; Massimo&lt;BR /&gt;</description>
    <pubDate>Mon, 16 Jun 2003 08:46:57 GMT</pubDate>
    <dc:creator>Massimo Bianchi</dc:creator>
    <dc:date>2003-06-16T08:46:57Z</dc:date>
    <item>
      <title>Error ORA-01438 when update</title>
      <link>https://community.hpe.com/t5/operating-system-hp-ux/error-ora-01438-when-update/m-p/2998155#M914071</link>
      <description>Hi all,&lt;BR /&gt;&lt;BR /&gt;We have an C process which tries to update an table but at the commit statement ORACLE has occured the following error message:&lt;BR /&gt;&lt;BR /&gt;00101 Check_OCI_Error() : Oracle Error ORA-01438: value larger than specified precision allows for this column&lt;BR /&gt;&lt;BR /&gt;Here are the details traces written in the log file.&lt;BR /&gt;&lt;BR /&gt;686960 AddRecordToElements(): STRC_STREAM_NUMBER:-1074790400&lt;BR /&gt;686967 Check_OCI_Error() : Oracle Error ORA-01438: value larger than specified precision allows for this column&lt;BR /&gt;&lt;BR /&gt;686968 Force_Statement(): Failure during KCHECK (line 1612)&lt;BR /&gt;686969 librp0002() : start&lt;BR /&gt;&lt;BR /&gt;Error Executing s23cpp0201.exe&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;What bothers us the most is this line:&lt;BR /&gt;686960 AddRecordToElements(): STRC_STREAM_NUMBER:-1074790400&lt;BR /&gt;&lt;BR /&gt;It seems that the STRC_STREAM_NUMBER field is creating the problem: it should actually contain a value of 0 or -1 but not such a big number. In the C program the variable which contains the STRC_STREAM_NUMBER value is defined as follows:&lt;BR /&gt;&lt;BR /&gt;long lStreamNumber = 0L;&lt;BR /&gt;&lt;BR /&gt;This field value (type NUMBER) comes from the s23_calls_for_rating view which is related to the physical table s23_stream_companion (in this table, the field has got NUMBER(3) type) as shown on the below:&lt;BR /&gt;&lt;BR /&gt;SQL&amp;gt; desc s23_calls_for_rating&lt;BR /&gt; Name                                      Null?    Type&lt;BR /&gt; ----------------------------------------- -------- ----------------------------&lt;BR /&gt; TABLE_ROWID                                        VARCHAR2(18)&lt;BR /&gt; STRC_STREAM_NUMBER                                 NUMBER&lt;BR /&gt;&lt;BR /&gt;SQL&amp;gt; desc s23_stream_companion                                                  &lt;BR /&gt; Name                                      Null?    Type                        &lt;BR /&gt; ----------------------------------------- -------- ----------------------------&lt;BR /&gt; CALL_CC_RUN_NO                            NOT NULL NUMBER(9)                   &lt;BR /&gt; CUST_BILL_KEY                             NOT NULL CHAR(6)                     &lt;BR /&gt; PT_PARTITION                              NOT NULL NUMBER(3)                   &lt;BR /&gt; STRM_STREAM_KEY                           NOT NULL CHAR(20)                    &lt;BR /&gt; STRC_STREAM_NUMBER                                 NUMBER(3)                   &lt;BR /&gt;&lt;BR /&gt;SQL&amp;gt; select TEXT from all_views where VIEW_NAME='S23_CALLS_FOR_RATING';&lt;BR /&gt;SELECT --+ ORDERED USE_HASH(s23uc) USE_NL(s23cbkp)&lt;BR /&gt;           rowidtochar(s23uc.rowid) table_rowid,&lt;BR /&gt;           nvl(s23sc.strc_stream_number,-1) strc_stream_number,&lt;BR /&gt;      etc....&lt;BR /&gt;      FROM s23_stream_companion s23sc,&lt;BR /&gt;           s23_unbilled_calls s23uc,&lt;BR /&gt;           s23_cust_bill_key_periods s23cbkp&lt;BR /&gt;     WHERE s23uc.call_cc_run_no = s23sc.call_cc_run_no(+)&lt;BR /&gt;       AND s23uc.cust_bill_key = s23sc.cust_bill_key(+)&lt;BR /&gt;       AND s23uc.pt_partition = s23sc.pt_partition(+)&lt;BR /&gt;       AND s23uc.s23_subscriber = s23sc.strm_stream_key(+)&lt;BR /&gt;       AND s23uc.cust_bill_key = s23cbkp.cust_bill_key(+)&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;Somehow in the view, the field value is converted but not properly... We have investigated a bit and it seems that 1074790400 is the default number of bytes (initial size) for a field of type integer (or number). So we wonder why such a value is put instead of the expected '0' or '-1'. &lt;BR /&gt;&lt;BR /&gt;So far this is all we have discovered... &lt;BR /&gt;&lt;BR /&gt;If you have any idea, thanks in advance for your help&lt;BR /&gt;&lt;BR /&gt;Regards&lt;BR /&gt;&lt;BR /&gt;J??r??me</description>
      <pubDate>Mon, 16 Jun 2003 08:26:07 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-hp-ux/error-ora-01438-when-update/m-p/2998155#M914071</guid>
      <dc:creator>Chartier Jerome</dc:creator>
      <dc:date>2003-06-16T08:26:07Z</dc:date>
    </item>
    <item>
      <title>Re: Error ORA-01438 when update</title>
      <link>https://community.hpe.com/t5/operating-system-hp-ux/error-ora-01438-when-update/m-p/2998156#M914072</link>
      <description>Hi,&lt;BR /&gt;i know it may sound silly, but is the variable &lt;BR /&gt;STRC_STREAM_NUMBER&lt;BR /&gt;&lt;BR /&gt;inizialized before using ?&lt;BR /&gt;&lt;BR /&gt;It looks like garbage in the cimpiling, like a standard value put from the compiler in it.&lt;BR /&gt;&lt;BR /&gt;HTH,&lt;BR /&gt; Massimo&lt;BR /&gt;</description>
      <pubDate>Mon, 16 Jun 2003 08:46:57 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-hp-ux/error-ora-01438-when-update/m-p/2998156#M914072</guid>
      <dc:creator>Massimo Bianchi</dc:creator>
      <dc:date>2003-06-16T08:46:57Z</dc:date>
    </item>
    <item>
      <title>Re: Error ORA-01438 when update</title>
      <link>https://community.hpe.com/t5/operating-system-hp-ux/error-ora-01438-when-update/m-p/2998157#M914073</link>
      <description>Hi,&lt;BR /&gt;another thought: can you put the DDL of the view ?&lt;BR /&gt;&lt;BR /&gt;Maybe when the view was created there were some option to change it.&lt;BR /&gt;&lt;BR /&gt;HTH,&lt;BR /&gt; Massimo&lt;BR /&gt;</description>
      <pubDate>Mon, 16 Jun 2003 08:54:17 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-hp-ux/error-ora-01438-when-update/m-p/2998157#M914073</guid>
      <dc:creator>Massimo Bianchi</dc:creator>
      <dc:date>2003-06-16T08:54:17Z</dc:date>
    </item>
    <item>
      <title>Re: Error ORA-01438 when update</title>
      <link>https://community.hpe.com/t5/operating-system-hp-ux/error-ora-01438-when-update/m-p/2998158#M914074</link>
      <description>Hi, &lt;BR /&gt;&lt;BR /&gt;i know it may sound silly, but is the variable &lt;BR /&gt;STRC_STREAM_NUMBER &lt;BR /&gt;&lt;BR /&gt;inizialized before using ? &lt;BR /&gt;&lt;BR /&gt;It looks like garbage in the cimpiling, like a standard value put from the compiler in it. &lt;BR /&gt;&lt;BR /&gt;STRC_STREAM_NUMBER is not a variable, actually we use an OCI function to execute a SQL request to collect STRC_STREAM_NUMBER from the view S23_CALLS_FOR_RATING and we store the result of the request into the variable lStreamNumber.&lt;BR /&gt;&lt;BR /&gt;ET&lt;BR /&gt;&lt;BR /&gt;Hi, &lt;BR /&gt;another thought: can you put the DDL of the view ? &lt;BR /&gt;&lt;BR /&gt;Maybe when the view was created there were some option to change it. &lt;BR /&gt;&lt;BR /&gt;    CREATE OR REPLACE VIEW s23_calls_for_rating AS&lt;BR /&gt;SELECT --+ ORDERED USE_HASH(s23uc) USE_NL(s23cbkp)&lt;BR /&gt;           rowidtochar(s23uc.rowid) table_rowid,&lt;BR /&gt;           nvl(s23sc.strc_stream_number,-1) strc_stream_number,&lt;BR /&gt;      etc....&lt;BR /&gt;      FROM s23_stream_companion s23sc,&lt;BR /&gt;           s23_unbilled_calls s23uc,&lt;BR /&gt;           s23_cust_bill_key_periods s23cbkp&lt;BR /&gt;     WHERE s23uc.call_cc_run_no = s23sc.call_cc_run_no(+)&lt;BR /&gt;       AND s23uc.cust_bill_key = s23sc.cust_bill_key(+)&lt;BR /&gt;       AND s23uc.pt_partition = s23sc.pt_partition(+)&lt;BR /&gt;       AND s23uc.s23_subscriber = s23sc.strm_stream_key(+)&lt;BR /&gt;       AND s23uc.cust_bill_key = s23cbkp.cust_bill_key(+)&lt;BR /&gt;&lt;BR /&gt;EXIT&lt;BR /&gt;&lt;BR /&gt;Thanks&lt;BR /&gt;&lt;BR /&gt;J??r??me&lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Mon, 16 Jun 2003 10:59:44 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-hp-ux/error-ora-01438-when-update/m-p/2998158#M914074</guid>
      <dc:creator>Chartier Jerome</dc:creator>
      <dc:date>2003-06-16T10:59:44Z</dc:date>
    </item>
    <item>
      <title>Re: Error ORA-01438 when update</title>
      <link>https://community.hpe.com/t5/operating-system-hp-ux/error-ora-01438-when-update/m-p/2998159#M914075</link>
      <description>hi,&lt;BR /&gt;&lt;BR /&gt;can you trace the program using SQL_TRACE and post the tkprof output?&lt;BR /&gt;&lt;BR /&gt;one simple way will be to just use a LOGON database trigger to issue an alter session to enable sql_trace.&lt;BR /&gt;&lt;BR /&gt;regards&lt;BR /&gt;Yogeeraj&lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Mon, 16 Jun 2003 11:51:45 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-hp-ux/error-ora-01438-when-update/m-p/2998159#M914075</guid>
      <dc:creator>Yogeeraj_1</dc:creator>
      <dc:date>2003-06-16T11:51:45Z</dc:date>
    </item>
    <item>
      <title>Re: Error ORA-01438 when update</title>
      <link>https://community.hpe.com/t5/operating-system-hp-ux/error-ora-01438-when-update/m-p/2998160#M914076</link>
      <description>Hi,&lt;BR /&gt;doing a serach in metalink i found some info relating to similar errors.&lt;BR /&gt;&lt;BR /&gt;in one case was classified as a program error, because there was a memory leak in the software.&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;In the other they mentioned a pathset.&lt;BR /&gt;For the 8.0.5 release, for example, you read:&lt;BR /&gt;&lt;BR /&gt;OCI&lt;BR /&gt;          687764+                Will get an incorrect result when trying to insert or retrieve a&lt;BR /&gt;                                 number greater than 100000000 into(from) the database. This&lt;BR /&gt;                                 problem is intermittent. &lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;Could you please post db and os version, just to have a further check ?&lt;BR /&gt;&lt;BR /&gt;Another thought:&lt;BR /&gt;&lt;BR /&gt;You say:&lt;BR /&gt;" We have investigated a bit and it seems that 1074790400 is the default number of bytes (initial size) for a field of type integer (or number). So we wonder why such a value is put instead of the expected '0' or '-1'. "&lt;BR /&gt;&lt;BR /&gt;But NVL returns the value of the field, if not null, or -1 if null. So why do you say zero ?&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;Last thing: what is the default value for that column ?&lt;BR /&gt;&lt;BR /&gt;   HTH,&lt;BR /&gt;    Massimo&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Tue, 17 Jun 2003 06:35:52 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-hp-ux/error-ora-01438-when-update/m-p/2998160#M914076</guid>
      <dc:creator>Massimo Bianchi</dc:creator>
      <dc:date>2003-06-17T06:35:52Z</dc:date>
    </item>
  </channel>
</rss>

