Xsan core dumping on volume start.

Hey guys,
I reciently upgraded to 10.4.7 (in hopes of fixing a kernel memory leak when hammering the san actualy) and now the xsan will not mount at all. I have applied all patches including the new xserver patch, and no love. When I try to start the volume it core dumps, but indicates that it started. However, I can not mount anything to it. The results of /Library/Filesystems/Xsan/data/CYBERSAN/log/cvlog when I try to start the volume is below.
Any help or suggestions greatly apreciated.
Thanks very much.
Most sincerely,
-- James
The first issue seems to be this one here:
[0630 15:46:27] 0x1886400 (*FATAL*) PANIC: /Library/Filesystems/Xsan/bin/fsm "alsplaytree_insert: CvSplayInsert(sblk) failed!" file alloc.c, line 447
Complete log of the "start" process is below.
[0630 15:46:19.570614] 0x1801000 (Debug) sigwait handler starting
[0630 15:46:19] 0xa000ed98 (Info) Server Revision 2.7.200 Build 92.1 Built for Darwin 8.0 Created on Fri Apr 14 20:01:22 PDT 2006
[0630 15:46:19] 0xa000ed98 (Info)
Configuration:
DiskTypes-4
Disks-4
StripeGroups-2
ForceStripeAlignment-1
MaxConnections-75
ThreadPoolSize-128
StripeAlignSize-256
FsBlockSize-8192
BufferCacheSize-32M
InodeCacheSize-8192
RestoreJournal-Disabled
RestoreJournalDir-None
[0630 15:46:19] 0xa000ed98 (Info) Self (10.0.1.202) IP address is 10.0.1.202 .
[0630 15:46:19.583710] 0xa000ed98 (Debug) No fsports file - port range enforcement disabled.
[0630 15:46:19] 0xa000ed98 (Info) Listening on TCP socket 10.0.1.202:49543
[0630 15:46:19] 0xa000ed98 (Info) Node [0] [10.0.1.202:49543] File System Manager Login.
[0630 15:46:19] 0xa000ed98 (Info) Service standing by on host '10.0.1.202:49543'.
[0630 15:46:20.629890] 0xa000ed98 (Debug) Standby service - NSS ping from 10.0.1.21:52043.
[0630 15:46:20.630535] 0xa000ed98 (Debug) FOUsurpCheck: read ARB info (pass 1): host (10.0.1.202:49489) conns 999999 age 1151707516.00 secs his delta 0.00 secs my delta 0.00 secs.
[0630 15:46:20.630634] 0xa000ed98 (Debug) FOUsurpCheck: polling ARB block to check for active peer (pass 1).
[0630 15:46:21.631149] 0xa000ed98 (Debug) FOUsurpCheck: read ARB info (pass 2): host (10.0.1.202:49489) conns 999999 age 1151707516.00 secs his delta 0.00 secs my delta 1.00 secs.
[0630 15:46:21.631211] 0xa000ed98 (Debug) FOUsurpCheck: ARB is already mine.
[0630 15:46:21] 0xa000ed98 (Info) Branding Arbitration Block (attempt 1) votes 2.
[0630 15:46:23.634395] 0xa000ed98 (Debug) Cannot find fail over script [/Library/Filesystems/Xsan/bin/cvfail.10.0.1.202] - looking for generic script.
[0630 15:46:23] 0xa000ed98 (Info) Launching fail over script [/Library/Filesystems/Xsan/bin/cvfail 10.0.1.202 49543 CYBERSAN]
[0630 15:46:24.756291] 0xa000ed98 (Debug) Starting journal log recovery.
[0630 15:46:24.966758] 0xa000ed98 (Debug) Completed journal log recovery.
[0630 15:46:24.967322] 0xa000ed98 (Debug) Inodeinit_postactivation: FsStatus 0x3, Brl_ResyncState 1
[0630 15:46:24] 0x1889c00 (Info) FSM Alloc: Loading Stripe Group "Meta". 372.58 GB.
[0630 15:46:24] 0x188b200 (Info) FSM Alloc: Loading Stripe Group "VideoStorage". 5.46 TB.
[0630 15:46:25] 0x1889c00 (Info) FSM Alloc: Stripe Group "Meta" active.
[0630 15:46:27] 0x188b200 (Info) FSM Alloc: free blocks 4700392 with 947200 blocks reserved for client delayed buffers.
[0630 15:46:27] 0x188b200 (Info) FSM Alloc: reserved blocks are product of MaxConnections(75) and MaxMBPerClientReserve(100).
[0630 15:46:27] 0x188b200 (Info) FSM Alloc: Stripe Group "VideoStorage" active.
[0630 15:46:27] 0xa000ed98 (Info) File System Service 'CYBERSAN[0]' now active on host '10.0.1.202:49543'.
[0630 15:46:27.598917] 0xa000ed98 (Debug) Node [1] [10.0.1.202:49547] connected.
[0630 15:46:27] 0x1886400 (*FATAL*) PANIC: /Library/Filesystems/Xsan/bin/fsm "alsplaytree_insert: CvSplayInsert(sblk) failed!" file alloc.c, line 447
[0630 15:46:27] 0x1886400 (*FATAL*) PANIC: wait 3 secs for journal to flush
[0630 15:46:27.609425] 0xa000ed98 (Debug) Active service - NSS ping from 10.0.1.184:52477.
[0630 15:46:27.609472] 0xa000ed98 (Debug) Listener_thread: flushing journal.
[0630 15:46:27.609492] 0xa000ed98 (Debug) Listener_thread: journal flush complete.
[0630 15:46:27.609519] 0xa000ed98 (Debug) FSM I/O SUMMARY writes total/20.
[0630 15:46:27.609535] 0xa000ed98 (Debug) FSM I/O SUMMARY writes journal/1 sb/0 buf/2 abm/0.
[0630 15:46:27.609555] 0xa000ed98 (Debug) FSM I/O SUMMARY writes inode/1 ganged/2 (12.50%).
[0630 15:46:27.609600] 0xa000ed98 (Debug) FSM wait SUMMARY inode pool expand waits/0.
[0630 15:46:27.609615] 0xa000ed98 (Debug) FSM wait SUMMARY journal waits/0.
[0630 15:46:27.609630] 0xa000ed98 (Debug) FSM wait SUMMARY journal bytes used avg/156501 max/158208.
[0630 15:46:27.609644] 0xa000ed98 (Debug) FSM wait SUMMARY free buffer waits/0.
[0630 15:46:27.609657] 0xa000ed98 (Debug) FSM wait SUMMARY free inode waits/0.
[0630 15:46:27.609736] 0xa000ed98 (Debug) FSM wait SUMMARY revokes/0 avg/0 min/0 max/0.
[0630 15:46:27.609756] 0xa000ed98 (Debug) FSM threads SUMMARY max busy hi-prio/0 lo-prio/0.
[0630 15:46:27.609770] 0xa000ed98 (Debug) FSM threads SUMMARY max busy dmig/0 events/0.
[0630 15:46:27.609784] 0xa000ed98 (Debug) FSM msg queue SUMMARY hi-prio now/0 min/0 max/0.
[0630 15:46:27.609798] 0xa000ed98 (Debug) FSM msg queue SUMMARY lo-prio now/0 min/0 max/0.
[0630 15:46:27.609813] 0xa000ed98 (Debug) FSM msg queue SUMMARY dmig now/0 min/0 max/0.
[0630 15:46:27.609827] 0xa000ed98 (Debug) FSM msg queue SUMMARY events now/0 min/0 max/0.
[0630 15:46:27.609842] 0xa000ed98 (Debug) FSM cache SUMMARY inode lookups/11 misses/7 hits/36.36%.
[0630 15:46:27.609857] 0xa000ed98 (Debug) FSM cache SUMMARY free incore inodes now/8191 min/8189 max/8192.
[0630 15:46:27.609875] 0xa000ed98 (Debug) FSM cache SUMMARY buffer lookups/21 misses/10 hits/52.38%.
[0630 15:46:27.609890] 0xa000ed98 (Debug) FSM cache SUMMARY free buffers now/4096 min/1 max/4096.
[0630 15:46:27.609904] 0xa000ed98 (Debug) FSM cache SUMMARY attrs now/0 min/0 max/0.
[0630 15:46:27.609919] 0xa000ed98 (Debug) FSM extent SUMMARY extent lookups/0 misses/0 hits/0.00%.
[0630 15:46:27.609934] 0xa000ed98 (Debug) FSM extent SUMMARY hint tries/0 misses/0 hits/0.00%.
[0630 15:46:27.609989] 0xa000ed98 (Debug) SG SUMMARY Meta space total/372.58 GB free/371.90 GB (99.82%)
[0630 15:46:27.610011] 0xa000ed98 (Debug) SG SUMMARY Meta space minfree/371.90 GB (99.82%) maxfree/371.90 GB (99.82%)
[0630 15:46:27.610027] 0xa000ed98 (Debug) SG SUMMARY Meta alloc extent cnt/0 avgsize/0.00 B.
[0630 15:46:27.610045] 0xa000ed98 (Debug) SG SUMMARY VideoStorage space total/5.46 TB free/35.91 GB (0.64%)
[0630 15:46:27.610065] 0xa000ed98 (Debug) SG SUMMARY VideoStorage space minfree/35.86 GB (0.64%) maxfree/35.90 GB (0.64%)
[0630 15:46:27.610082] 0xa000ed98 (Debug) SG SUMMARY VideoStorage alloc extent cnt/0 avgsize/0.00 B.
[0630 15:46:27.610102] 0xa000ed98 (Debug) PIO HiPriWr SUMMARY Briana2_META cnt/1 maxq/0.
[0630 15:46:27.610119] 0xa000ed98 (Debug) PIO HiPriWr SUMMARY Briana2_META avg/482 min/482 max/482.
[0630 15:46:27.610135] 0xa000ed98 (Debug) PIO HiPriWr SUMMARY Briana2_META sysavg/480 sysmin/480 sysmax/480.
[0630 15:46:27.610152] 0xa000ed98 (Debug) PIO HiPriWr SUMMARY Briana2_META avglen/2560 minlen/2560 maxlen/2560.
[0630 15:46:27.610168] 0xa000ed98 (Debug) PIO Read SUMMARY Briana2_META cnt/127 maxq/5.
[0630 15:46:27.610184] 0xa000ed98 (Debug) PIO Read SUMMARY Briana2_META avg/16471 min/345 max/84712.
[0630 15:46:27.610200] 0xa000ed98 (Debug) PIO Read SUMMARY Briana2_META sysavg/7001 sysmin/326 sysmax/23029.
[0630 15:46:27.610285] 0xa000ed98 (Debug) PIO Read SUMMARY Briana2_META avglen/970760 minlen/512 maxlen/2097152.
[0630 15:46:27.610302] 0xa000ed98 (Debug) PIO Write SUMMARY Briana2_META cnt/19 maxq/1.
[0630 15:46:27.610342] 0xa000ed98 (Debug) PIO Write SUMMARY Briana2_META avg/1634 min/303 max/21173.
[0630 15:46:27.610360] 0xa000ed98 (Debug) PIO Write SUMMARY Briana2_META sysavg/1015 sysmin/290 sysmax/11011.
[0630 15:46:27.610376] 0xa000ed98 (Debug) PIO Write SUMMARY Briana2_META avglen/5362 minlen/512 maxlen/8192.
[0630 15:46:27] 0x1886400 (*FATAL*) PANIC: aborting threads now.

On mdc open terminal and goto;
/Library/Filesystems/Xsan/bin
run as root
cvfsck -j <selectyourvolume>
to make sure journal is written out to volume
then run
cvfsck <selectyourvolume> until no errors are reported
you can run it with -n option the first time to make sure you do only a readonly check (no modification, hence the FS will not be fixed)

Similar Messages

  • I want to know why display core dump when arch starts!

    I want to know why display core dump when arch starts!
    2008. 06 iso!
    u can see display coredump in starting......

    GAH, you silly people!
    Now I'm going to have to go off and write a program that selects a random string from a file to show on startup!
    (I'll probably fill the file with all the Arch snapshot names)
    EDIT: I should mention that you're silly because you managed to get me following a random compulsion.
    EDIT AGAIN: Done! I now get a random snapshot name in that spot whenever my system boots. I can post the script if anyone wants it, it's three lines.
    EDIT ONE LAST TIME: Oh wait, three lines and a extra file full of snapshot names.
    Last edited by arew264 (2008-07-19 02:35:05)

  • Core dump when starting extract, no error messages

    Hello,
    This is a basic one way replication, Data Pump and Replicat start but Extract stops at once.
    In ggserr.log there's only a message: EXTRACT EORATE02 starting, nothing else. In ggsci it can be seen that it's stopped.
    CHECKPARAMS didn't give the message "Parameters processed successfully", neither did it give error messages
    when starting the extract.
    There are no old Oracle processes which could prevent Extract from starting.
    There's EORATE02.pce in dirpcs, although EORATE02 is not running. If I delete it and try to start the extract,
    the extract will immediately stop.
    A core file has been created in GG_HOME when trying to start the extract. I haven't been able to find out how to read it.
    Source and target are on Aix 6100-06. The source database is Oracle 10.1.0.5, target database is Oracle 11.2.0.3.
    The installation files are V32435-01.zip for db 10.1.0.5 (ggs_AIX_ppc_ora10.1_64bit.tar), V32437-01.zip
    for db 11.2.0.3 (ggs_AIX_ppc_ora11g_64bit.tar). This is GoldenGate 11.2.1.0.1.
    The db:s are on Asm.
    There's only 1 table in source, 1 in target, they are identical and empty.
    There's enough space in the OS.
    If I run the extract in OS (extract paramfile dirprm/eorate02.prm), it ends like this without more information:
    TRANLOGOPTIONS ASMUSER ggs_owner@HOSTNAME:1521/+ASM , ASMPASSWORD *********
    Abort(coredump)
    This happens in both ways of extract described below.
    (1)
    EXTRACT EORATE02
    USERID ggs_owner, PASSWORD [PASSWORD]
    EXTTRAIL ./dirdat/data02/te
    TRANLOGOPTIONS ASMUSER ggs_owner@HOSTNAME:1521/+ASM , ASMPASSWORD [PASSWORD]
    TABLE USER.myobjects2;
    (2)
    EXTRACT EORATE02
    USERID ggs_owner, PASSWORD [PASSWORD]
    EXTTRAIL ./dirdat/data02/te
    tranlogoptions COMPLETEARCHIVEDLOGONLY ALTARCHIVELOGDEST /backup/arch_log/abcd/ABCD/archivelog
    TRANLOGOPTIONS ASMUSER ggs_owner@HOSTNAME:1521/+ASM , ASMPASSWORD [PASSWORD]
    TABLE USER.myobjects2;
    Here's more information on this setup and commands which have been used:
    add extract EORATE02 tranlog begin now, threads 1
    add exttrail ./dirdat/data02/te, extract EORATE02, megabytes 5
    EXTRACT EPMPTE02
    PASSTHRU
    RMTHOST HOSTNAME, MGRPORT 13447
    RMTTRAIL /u01/app/oracle/gg11210/for_11g/dirdat/data02/tr
    TABLE USER.myobjects2;
    ADD EXTRACT EPMPTE02 EXTTRAILSOURCE ./dirdat/data02/te
    ADD RMTTRAIL /u01/app/oracle/gg11210/for_db11/dirdat/data02/tr EXTRACT EPMPTE02, MEGABYTES 5
    Target
    REPLICAT RORATE02
    USERID ggs_owner, PASSWORD [PASSWORD]
    HANDLECOLLISIONS
    ASSUMETARGETDEFS
    DISCARDFILE ./dirrpt/RORATE02.DSC, PURGE
    MAP USER.MYOBJECTS2, TARGET USER.MYOBJECTS2;
    add replicat RORATE02, exttrail /u01/app/oracle/gg11210/for_11g/dirdat/data02/tr
    add checkpointtable ggs_owner.ggschkpt
    Grants
    Source:
    grant connect, resource to ggs_owner;
    grant select any dictionary, select any table to ggs_owner;
    grant create table, alter any table to ggs_owner;
    grant flashback any table to ggs_owner;
    grant execute on dbms_flashback to ggs_owner;
    grant execute on utl_file to ggs_owner;
    grant create session, alter session to ggs_owner;
    Target:
    grant create session, alter session, resource, connect, select any dictionary to ggs_owner;
    grant select any table, insert any table, update any table, delete any table to ggs_owner;
    grant create table, alter any table, lock any table to ggs_owner;
    Source
    ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
    ggsci add trandata USER.myobjects2
    mgr.prm
    --GoldenGate Manager parameter file
    PORT 13346
    Target
    GLOBALS
    CHECKPOINTTABLE ggs_owner.ggschkpt
    mgr.prm
    --GoldenGate Manager parameter file
    PORT 13447
    Thanks for reading this far. Possible comments will be much appreciated!
    Best regards
    Edited by: user11323660 on 14.6.2012 6:39
    Edited by: user11323660 on 14.6.2012 6:41

    Hello,
    Could you wrap your process definitions in proper code brackets so its easier to understand.
    Also I'm not sure what your problem is other then you are receiving core dumps. I'm happy to help.
    Two small comment though regarding your ASM config
    1 . Dont not use ggs_owner as the asm user
    TRANLOGOPTIONS ASMUSER ggs_owner@HOSTNAME:1521/+ASM , ASMPASSWORD *********2. Create a TNSNAMES entry for your ASM instance and tehn use the following:
    TRANLOGOPTIONS ASMUSER SYS@ASM, ASMPASSWORD *****Also here is an example of an extract process that I've setup on RAC database with ASM
    EXTRACT EWFMMTLP
    EXTTRAIL ./dirdat/ew
    USERID GGATE@MY_DB, PASSWORD ggatehcc
    DDLOPTIONS ADDTRANDATA RETRYOP RETRYDELAY 20 MAXRETRIES 5 REPORT
    TRANLOGOPTIONS EXCLUDEUSER ggate
    TRANLOGOPTIONS ASMUSER SYS@ASM, ASMPASSWORD ****
    TRANLOGOPTIONS ALTARCHIVELOGDEST /u02/oracle/fast_recovery_area/MY_DB/archivelog
    TRANLOGOPTIONS PURGEORPHANEDTRANSACTIONS
    STATOPTIONS RESETREPORTSTATS
    REPORT AT 00:01
    REPORTROLLOVER AT 00:01
    REPORTCOUNT EVERY 60 SECONDS, RATELet me know if that helps
    Jan S.

  • Cannot start BI server, cannot start cluster successfully, core dumped

    Hi
    I have the following configuration. The four machines are virtualized containers on solaris sparc
    machine 1 - PS, java host, web logic
    machine 2 - PS, java host, web logic
    machine 3 - bi server, primary cluster controller, scheduler
    machine 4 - bi server, secondary cluster controller, scheduler
    However i dont need the scheduler and i have not configured them completely
    I was able to successfully test on compete stack with no clustering and used only machines 1 and 3. I was able to login to the sample URL and see some graphs.
    The problem started once i was trying the clustering. I looked at the admin docs and the installation and deployment guides and followed the instructions and carefully did the configuration.
    I face multiple problems.
    In single stack some time the BI server was randoly stopping itself for no reason after starting it. it was very random that i used to feel happy if it does not stop.
    During clustering i was not able to start the cluster successfully at all. I did not want to worry about scheduler to start with and even the PS. I just wanted to connect to the BI server using the primary ccs and using the admin tool in the windows machine.
    Today morning i tried to start the BI server and then there was a core dump in both the machines and then i am not even able to start the server at all. There was nothing in the log files and i dont know what to do.
    The log files before the core dump as follows.
    server log file
    2009-07-30 18:18:47
    [36007] Loading repository /software/oraclebi/server/Repository/samplesales.rpd.
    2009-07-30 18:18:49
    [14055] Loading subject area: Sample Sales ...
    2009-07-30 18:18:49
    [14056] Finished loading subject area: Sample Sales.
    2009-07-30 18:18:49
    [58002] Query Cache loaded with 7 entries from saved cache files.
    2009-07-30 18:18:49
    [43030] : Oracle BI Server (64-bit) started. Version: 10.1.3.4.1.090414.1900.
    2009-07-30 18:19:11
    [43031] : Oracle BI Server shutdown.
    2009-07-30 18:19:12
    [58001] Query Cache Statistics -- Hits:0(0%), Qualified Misses:0(0%), Unqualified Misses:0(0%).
    2009-07-30 18:19:12
    [14058] Unloaded all subject areas.
    2009-07-30 18:25:25
    [36007] Loading repository /software/oraclebi/server/Repository/samplesales.rpd.
    2009-07-30 18:25:27
    [14055] Loading subject area: Sample Sales ...
    2009-07-30 18:25:27
    [14056] Finished loading subject area: Sample Sales.
    2009-07-30 18:25:27
    [58002] Query Cache loaded with 7 entries from saved cache files.
    2009-07-30 18:25:27
    [43030] : Oracle BI Server (64-bit) started. Version: 10.1.3.4.1.090414.1900.
    2009-07-30 18:26:25
    [43071] A connection with Cluster Controller maa-zone4:9706 was established.
    2009-07-30 18:30:08
    [nQSError: 12002] Socket communication error at call=recv: (Number=131) Connection reset by peer
    2009-07-30 18:30:08
    [nQSError: 12002] Socket communication error at call=recv: (Number=131) Connection reset by peer
    2009-07-30 20:57:24
    [36007] Loading repository /software/oraclebi/server/Repository/samplesales.rpd.
    2009-07-30 20:57:26
    [14055] Loading subject area: Sample Sales ...
    2009-07-30 20:57:26
    [14056] Finished loading subject area: Sample Sales.
    2009-07-30 20:57:26
    [58002] Query Cache loaded with 7 entries from saved cache files.
    2009-07-30 20:57:26
    [43030] : Oracle BI Server (64-bit) started. Version: 10.1.3.4.1.090414.1900.
    2009-07-30 20:58:39
    [43031] : Oracle BI Server shutdown.
    2009-07-30 20:58:39
    [58001] Query Cache Statistics -- Hits:0(0%), Qualified Misses:0(0%), Unqualified Misses:0(0%).
    2009-07-30 20:58:39
    [14058] Unloaded all subject areas.
    2009-07-30 21:01:40
    [36007] Loading repository /software/oraclebi/server/Repository/samplesales.rpd.
    2009-07-30 21:01:42
    [14055] Loading subject area: Sample Sales ...
    2009-07-30 21:01:42
    [14056] Finished loading subject area: Sample Sales.
    2009-07-30 21:01:42
    [58002] Query Cache loaded with 7 entries from saved cache files.
    2009-07-30 21:01:42
    [43030] : Oracle BI Server (64-bit) started. Version: 10.1.3.4.1.090414.1900.
    2009-07-30 21:08:51
    [43071] A connection with Cluster Controller maa-zone4:9706 was established.
    2009-07-30 21:10:31
    [43065] The connection with Cluster Controller maa-zone4:9706 was lost.
    2009-07-30 21:12:59
    [43071] A connection with Cluster Controller maa-zone4:9706 was established.
    :x
    $ ls
    cluster controller log file
    2009-07-30 21:12:59
    [71008] Cluster Controller started. Version: 10.1.3.4.1.090414.1900
    2009-07-30 21:12:59
    [71021] An attempt to establish a connection with Oracle BI Server maa-zone03:9703 failed.
    2009-07-30 21:12:59
    [71020] A connection with Oracle BI Server maa-zone4:9703 was established.
    2009-07-30 21:12:59
    [71010] Oracle BI Server maa-zone4:9703 has transitioned to ONLINE state.
    2009-07-30 21:13:14
    [71050] This Cluster Controller is promoted to Controlling because there has been no recent contact from
    the Primary Cluster Controller.
    2009-07-30 21:13:14
    [71071] An attempt to establish a connection with Oracle BI Scheduler maa-zone03:9705 failed.
    2009-07-30 21:13:14
    [71068] Oracle BI Scheduler maa-zone03:9705 has transitioned to OFFLINE state.
    2009-07-30 21:13:14
    [71071] An attempt to establish a connection with Oracle BI Scheduler maa-zone4:9705 failed.
    2009-07-30 21:13:14
    [71068] Oracle BI Scheduler maa-zone4:9705 has transitioned to OFFLINE state.
    2009-07-30 23:10:34
    [71019] The connection with Oracle BI Server maa-zone4:9703 was lost.
    2009-07-30 23:10:34
    [71011] Oracle BI Server maa-zone4:9703 has transitioned to OFFLINE state.
    2009-07-30 23:10:39
    [71021] An attempt to establish a connection with Oracle BI Server maa-zone4:9703 failed.
    your help is appreciated.
    thanks
    chaitanya kadaru

    all the four machines are four containers in a solaris server.
    The problem was with the hosts file, there were not entries matching the ipaddress and the hotname.
    After i fixed it now i have a stable BI servers and cluster controllers.
    Now i configured the presentation services to connect to the BI servers but i am getting the following exception.
    Type: Error
    Severity: 42
    Time: Thu Aug 6 13:04:02 2009
    File: project/webcomm/socket.cpp Line: 892
    Properties: ThreadID-6
    Location:
    saw.rpc.client.impl.verify
    saw.rpc.client.impl.initFixedRPC
    saw.rpc.client.cluster
    saw.threads
    An error occurred during execution of "connect". Connection refused [Socket:15]
    Any idea?
    thanks

  • Hotspot core dumping during JVM garbage collection ?

    We have an application which calls a 3rd party supplied server API which has recently been upgraded to use Java 1.5
    We are getting the following error reported by our client application. The application is also now running Java 1.5 but references many classes in jar files which would have quite old code in.
    The supplier of the API has stated that the problem requires us to recompile all our jar files using v 1.5 ( including things like jconnect and jms ?!?!? ). This sounds like a bit of a cop-out to me, not to mention being impossible since we don't have the source for things like jconnect.
    I suspect that there is a garbage collection problem at the bottom of all this, but I'm not sure how I can "prove" this, nor do I currently have any real clue as to how to fix any GC problem that may exist.
    The application is supposed to wait for a message on a MQSeries queue and then transforms it via Xalan XSLT and sends it to a Server application. I've tried playing around with heap sizes etc but that just seems to make it worse. If I leave it at the settings that the previous version used then the client at least manages to process a couple of messages before core dumping. There doesn't seem to be a consistent trigger event to cause the core dump ( it's not a message arriving on a queue for example ) but it does seem to be fairly consistent timewise, i.e. after
    Any ideas gratefully accepted.
    Here's a logfile excerpt from my applications showing the Hotspot error message :
    =====================================================================================
    08-Jul-2008 10:01:05 Waiting for messages from COLT.BBFS
    08-Jul-2008 10:02:05 Waiting for messages from COLT.BBFS
    08-Jul-2008 10:03:05 Waiting for messages from COLT.BBFS
    405.815: [GC [PSYoungGen: 17331K->9244K(37632K)] 111702K->103615K(192128K), 0.1615910 secs]
    405.977: [Full GC#
    # An unexpected error has been detected by HotSpot Virtual Machine:
    #  SIGBUS (0xa) at pc=0xfe141348, pid=2600, tid=8
    # Java VM: Java HotSpot(TM) Server VM (1.5.0_03-b07 mixed mode)
    # Problematic frame:
    # V  [libjvm.so+0x141348]
    # An error report file with more information is saved as hs_err_pid2600.log
    # If you would like to submit a bug report, please visit:
    # http://java.sun.com/webapps/bugreport/crash.jsp
    =====================================================================================
    The logfile referred to in the error message contains the following.
    =====================================================================================
    # An unexpected error has been detected by HotSpot Virtual Machine:
    # SIGBUS (0xa) at pc=0xfe141348, pid=2600, tid=8
    # Java VM: Java HotSpot(TM) Server VM (1.5.0_03-b07 mixed mode)
    # Problematic frame:
    # V [libjvm.so+0x141348]
    --------------- T H R E A D ---------------
    Current thread (0x001484d8): VMThread [id=8]
    siginfo:si_signo=10, si_errno=0, si_code=1, si_addr=0x0000080f
    Registers:
    O0=0x00487588 O1=0xfe7d6454 O2=0x000079b0 O3=0x00007800
    O4=0x00008868 O5=0x00147d48 O6=0xf8781460 O7=0xfe0f7938
    G1=0xe52aaae8 G2=0x00000003 G3=0x00000003 G4=0x001484d8
    G5=0xf8781d98 G6=0x00000002 G7=0xf8781d98 Y=0x805683e2
    PC=0xfe141348 nPC=0xfe14134c
    Top of Stack: (sp=0xf8781460)
    0xf8781460: fe786000 00c6ba20 fe10013c e54bab68
    0xf8781470: 0000080f e54bab6c 0000080f 00000004
    0xf8781480: 00487588 00000134 e54bab6c 00000004
    0xf8781490: 00000001 00000000 f87814c0 fe17aef4
    0xf87814a0: fe6485b4 fe7d899c 001484d8 0011da40
    0xf87814b0: 00148988 00148c10 00148d7c f8781880
    0xf87814c0: 007c3389 007c3c0e 00000f87 00008868
    0xf87814d0: 00008800 00487588 fe141310 fe7d6454
    Instructions: (pc=0xfe141348)
    0xfe141338: ec 06 c0 1a 80 a5 a0 00 22 40 00 0a ba 07 60 01
    0xfe141348: f2 05 a0 00 ae 0e 60 03 80 a5 e0 03 22 40 00 05
    Stack: [0xf8702000,0xf8781d98), sp=0xf8781460, free space=509k
    Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
    V [libjvm.so+0x141348]
    V [libjvm.so+0x17aefc]
    V [libjvm.so+0x2d557c]
    V [libjvm.so+0x300ef8]
    V [libjvm.so+0x301e84]
    V [libjvm.so+0x2ff950]
    V [libjvm.so+0x29df30]
    V [libjvm.so+0x362b44]
    V [libjvm.so+0x6436f0]
    VM_Operation (0xe03012b0): parallel gc system gc, mode: safepoint, requested by thread 0x0031bca0
    --------------- P R O C E S S ---------------
    Java Threads: ( => current thread )
    0x00b2c028 JavaThread "Thread-4" [_thread_in_native, id=85]
    0x007f5048 JavaThread "Thread-0" [_thread_blocked, id=84]
    0x00c27cf0 JavaThread "Notification Delivery" [_thread_blocked, id=81]
    0x0026fa08 JavaThread "RMI LeaseChecker" daemon [_thread_blocked, id=73]
    0x00821048 JavaThread "RMI RenewClean-[162.11.2.32:44425]" daemon [_thread_blocked, id=70]
    0x0031bca0 JavaThread "GC Daemon" daemon [_thread_blocked, id=67]
    0x00cd5d28 JavaThread "RMI Reaper" [_thread_blocked, id=66]
    0x003c9300 JavaThread "Timer-0" daemon [_thread_blocked, id=65]
    0x00929fe0 JavaThread "RMI TCP Accept-0" daemon [_thread_in_native, id=64]
    0x0089bf18 JavaThread "SeedGenerator Thread" daemon [_thread_blocked, id=42]
    0x00c47248 JavaThread "Pool thread #7" daemon [_thread_blocked, id=38]
    0x00c466a0 JavaThread "Pool thread #6" daemon [_thread_blocked, id=37]
    0x00311850 JavaThread "Pool thread #5" daemon [_thread_blocked, id=36]
    0x00287a40 JavaThread "Pool thread #4" daemon [_thread_blocked, id=35]
    0x00286e98 JavaThread "Pool thread #3" daemon [_thread_blocked, id=34]
    0x00c134b0 JavaThread "Pool thread #2" daemon [_thread_blocked, id=33]
    0x00ad09e0 JavaThread "Pool thread #1" daemon [_thread_blocked, id=32]
    0x00286cd8 JavaThread "PoolThreadManager" daemon [_thread_blocked, id=31]
    0x00c129e0 JavaThread "Channel Reaper" daemon [_thread_blocked, id=30]
    0x00c669e8 JavaThread "ORB Daemon Thread" daemon [_thread_blocked, id=29]
    0x00b10170 JavaThread "Worker for ServerProtocol: (iiop) /0.0.0.0:20168" daemon [_thread_blocked, id=22]
    0x008a17e0 JavaThread "Syn~ Client" daemon [_thread_blocked, id=21]
    0x003dc378 JavaThread "PoolScavenger0" daemon [_thread_blocked, id=20]
    0x0015a928 JavaThread "Low Memory Detector" daemon [_thread_blocked, id=15]
    0x00159880 JavaThread "CompilerThread1" daemon [_thread_blocked, id=14]
    0x00158a18 JavaThread "CompilerThread0" daemon [_thread_blocked, id=13]
    0x00157b98 JavaThread "AdapterThread" daemon [_thread_blocked, id=12]
    0x00156dc8 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=11]
    0x0014ccd8 JavaThread "Finalizer" daemon [_thread_blocked, id=10]
    0x0014ad90 JavaThread "Reference Handler" daemon [_thread_blocked, id=9]
    0x00038238 JavaThread "main" [_thread_in_native, id=1]
    Other Threads:
    =>0x001484d8 VMThread [id=8]
    0x0015c3b0 WatcherThread [id=16]
    VM state:at safepoint (normal execution)
    VM Mutex/Monitor currently owned by a thread: ([mutex/lock_event])
    [0x00037728/0x00037758] Threads_lock - owner thread: 0x001484d8
    [0x00033650/0x00037ba8] Heap_lock - owner thread: 0x0031bca0
    Heap
    PSYoungGen total 37632K, used 9244K [0xf2eb0000, 0xf7ba0000, 0xf8400000)
    eden space 28352K, 0% used [0xf2eb0000,0xf2eb0000,0xf4a60000)
    from space 9280K, 99% used [0xf4a60000,0xf5367080,0xf5370000)
    to space 25216K, 0% used [0xf6300000,0xf6300000,0xf7ba0000)
    PSOldGen total 154496K, used 94371K [0xe8400000, 0xf1ae0000, 0xf2eb0000)
    object space 154496K, 61% used [0xe8400000,0xee028e78,0xf1ae0000)
    PSPermGen total 35584K, used 18260K [0xe4400000, 0xe66c0000, 0xe8400000)
    object space 35584K, 51% used [0xe4400000,0xe55d5158,0xe66c0000)
    Dynamic libraries:
    0x00010000      /dsdvlp/java/jvm/jdk1.5.0_03/bin/java
    0xff350000      /usr/lib/libthread.so.1
    0xff340000      /usr/lib/libdl.so.1
    0xff200000      /usr/lib/libc.so.1
    0xff390000      /usr/platform/SUNW,Sun-Fire-880/lib/libc_psr.so.1
    0xfe000000      /dsdvlp/java/jvm/jdk1.5.0_03/jre/lib/sparc/server/libjvm.so
    0xff1e0000      /usr/lib/libsocket.so.1
    0xff2d0000      /usr/lib/libsched.so.1
    0xff1b0000      /usr/lib/libCrun.so.1
    0xff160000      /usr/lib/libm.so.1
    0xff080000      /usr/lib/libnsl.so.1
    0xff060000      /usr/lib/libmp.so.2
    0xff030000      /dsdvlp/java/jvm/jdk1.5.0_03/jre/lib/sparc/native_threads/libhpi.so
    0xfdfc0000      /dsdvlp/java/jvm/jdk1.5.0_03/jre/lib/sparc/libverify.so
    0xfdf80000      /dsdvlp/java/jvm/jdk1.5.0_03/jre/lib/sparc/libjava.so
    0xfdf50000      /dsdvlp/java/jvm/jdk1.5.0_03/jre/lib/sparc/libzip.so
    0xfb7e0000      /usr/lib/locale/en_GB.ISO8859-1/en_GB.ISO8859-1.so.2
    0xe4190000      /dsdvlp/java/jvm/jdk1.5.0_03/jre/lib/sparc/libnet.so
    0xe3bd0000      /dsdvlp/lib/5/libSolarisNatives.so
    0xe3e90000      /dsdvlp/java/jvm/jdk1.5.0_03/jre/lib/sparc/librmi.so
    VM Arguments:
    jvm_args: -Djava.ext.dirs=/dsdvlp/java/tmijar/firs7/lib/cli:/dsdvlp/java/tmijar/firs7/lib/cli/ext:/dsdvlp/java/tmijar/firs7/lib/cmn/OpenORB:/dsdvlp/java/tmijar/firs7/lib/cmn/OpenORB/ext:/dsdvlp/java/tmijar/firs7/lib/cmn:/dsdvlp/java/tmijar/firs7/lib/cmn/ext:/dsdvlp/java/tmijar/firs7/daemonlib -Duser.dir=/dsdvlp/java/tmijar/firs7 -Dopenorb.config=file:/dsdvlp/java/tmijar/firs7/configs/OpenORB/config/SynOpenORB.xml -Dopenorb.home=file:/dsdvlp/java/tmijar/firs7/configs/OpenORB -Dcom.coexis.syn.general.orbbinding=com.coexis.syn.general.orbbinding.openorb.OpenORBBinding_1_4 -Dsun.rmi.dgc.client.gcInterval=360000 -Dsun.rmi.dgc.server.gcInterval=360000000 -Xms32m -Xmx256m -Dcom.coexis.syn.clientcommandsconfiglocation=file://localhost//dsdvlp/java/tmijar/firs7/configs/clientcommands.xml -Dcom.coexis.syn.clientconfiglocation=file://localhost//dsdvlp/java/tmijar/firs7/configs/fsbbtd_client.xml -XX:+PrintGCTimeStamps -XX:+PrintGCDetails
    java_command: com.coexis.syn.mqmessaging.daemon.RunDaemon -p /dsdvlp/bin/5/lndsfsd_fsbbtd.properties start
    Environment Variables:
    JAVA_HOME=/dsdvlp/java/jvm/jdk150
    CLASSPATH=.:/dsdvlp/java/jar/jconnect520.jar:/dsdvlp/java/jar/vbjapp340.jar:/dsdvlp/java/jar/vbjorb340.jar:/dsdvlp/java/jar/javax_jndi120.jar
    PATH=/usr/local/etc:/usr/lang:/usr/openwin/bin:/usr/ucb:/bin:/usr/etc:/usr/local/5/bin:/dsdvlp/bin/5:/dsdvlp/bin/4:/home/app/sybase/5/bin:/home/app/sybase/5/localscripts:/home/app/sybase/5/sqr:/home/app/lang:/home/app/lang/SC2.0.1:/usr/ccs/bin:/usr/local/opt/Acrobat3/bin:/dsdvlp/bin:.
    LD_LIBRARY_PATH=/dsdvlp/java/jvm/jdk1.5.0_03/jre/lib/sparc/server:/dsdvlp/java/jvm/jdk1.5.0_03/jre/lib/sparc:/dsdvlp/java/jvm/jdk1.5.0_03/jre/../lib/sparc:/usr/lib:/usr/openwin/lib:/usr/local/5/lib:/dsdvlp/lib/5:/dstest/lib/5:/home/app/sybase/5/lib:/dstest/cats/sun4/lib:/tmitest/Opus/opus/lib
    SHELL=/bin/csh
    DISPLAY=CLI00184.mfil.local:1.0
    OS=5
    --------------- S Y S T E M ---------------
    OS: Solaris 8 2/02 s28s_u7wos_08a SPARC
    Copyright 2002 Sun Microsystems, Inc. All Rights Reserved.
    Assembled 18 December 2001
    uname:SunOS 5.8 Generic_117350-20 sun4u (T1 libthread)
    rlimit: STACK 8192k, CORE 9216k, NOFILE 4096, AS infinity
    load average:2.24 2.67 2.68
    CPU:total 4 has_v8, has_v9, has_vis1, has_vis2, is_ultra3
    Memory: 8k page, physical 8388608k(166384k free)
    vm_info: Java HotSpot(TM) Server VM (1.5.0_03-b07) for solaris-sparc, built on Apr 13 2005 03:31:26 by unknown with unknown Workshop:0x550

    The very first suggestion I have is to move your VM to a more recent update of 1.5.0.
    It looks like you are crashing with 5.0u3, and I'm pretty sure 5.0u16 is available. You
    don't want to waste your time chasing a bug that's already been fixed.

  • Segment fault (Core dump)

    Hi
    when i run the following Pro*c file in Unix Environment im getting the SEGMENTATION FAULT(CORE DUMP) error. I used DBX to debug the code. I couldnt find out the proper reason for this error form the dbx output.
    This is the output i got from DBX.
    *signal SEGV (no mapping at the fault address) in _doprnt at 0xfb98736c*
    *0xfb98736c: _doprnt+0x2798:     stb     %o0, [%o1]*
    I did the showmemuse and show leaks, the output for this commands :
    (dbx) showmemuse
    Checking for memory use...
    Blocks in use report (blocks in use: 575 total size: 328086 bytes)
    Total % of Num of Avg Allocation call stack
    Size All Blocks Size
    ======= ==== ====== ====== =======================================
    134876 41% 30 4495 kpummapg < kghgex
    18098 5% 1 18098 lxldlbb < lxlinit < kpummpin < kpupin < sqgctx < sqgrct < sqlcmex < sqlcxt
    16552 5% 4 4138 kogmapg < kghgex
    16516 5% 4 4129 kogmapg < kogmasg
    12288 3% 6 2048 nlhtnsl < nlhthnew
    10350 3% 5 2070 calloc < nsbGetBFS
    9688 2% 1 9688 kouogini < kouoini < kpuinit0 < kpuinit < sqgctx < sqgrct < sqlcmex < sqlcxt
    8200 2% 1 8200 findbuf < doprnt < _fprintf < main
    8120 2% 4 2030 sqlrlc < sqlcopydfn
    8080 2% 1 8080 kpuinit0 < kpuinit < sqgctx < sqgrct < sqlcmex < sqlcxt < main
    7168 2% 1 7168 calloc < nsgbliuc < nsgblini < niotns < nigcall < osncon < kpuadef < upiini
    7168 2% 3 2389 lxldlod < lxdlobj
    5976 1% 4 1494 sqlrlc < sqlcopydfn
    4640 1% 1 4640 sqlrlc < sqldrl < sqlexp < sqlcmex < sqlcxt < get_pub_dates < main
    4640 1% 1 4640 sqlrlc < sqlbrl < sqlexp < sqlcmex < sqlcxt < get_pub_dates < main
    4128 1% 1 4128 calloc < nsgbliuc < nsgblini < niotns < nigcall < osncon < kpuadef < upiini
    4024 1% 1 4024 sqlrlc < sqlbrl < sqlexp < sqlcmex < sqlcxt < get_pub_dates < main
    3408 1% 1 3408 sqlrlc < sqldrl < sqlexp < sqlcmex < sqlcxt < get_pub_dates < main
    2452 <1% 8 306 calloc < nsmal
    2156 <1% 7 308 calloc < nlemfins
    (dbx) showleaks
    Checking for memory leaks...
    Actual leaks report (actual leaks: 1 total size: 30 bytes)
    Total Num of Leaked Allocation call stack
    Size Blocks Block
    Address
    ====== ====== ========== =======================================
    30 1 0x9c9c8 getOutFileName < main
    Possible leaks report (possible leaks: 0 total size: 0 bytes)
    i know its because of Pad pointer and something related to Pointer or array overflow. But i couldnt find out where exactly happening....
    Following is my Code, please help me to find out the error and what i need to change in my code:
    #ifndef ORA_PROC
    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    #include <time.h>
    #include <ctype.h>
    #include <math.h>
    #else
    typedef struct FILE FILE;
    #endif
    /*** Added by TCS Begins ***/
    char getOutFileName(char );
    char getEnvVar(char );
    void prepare_declare_oracle_cursors();
    void get_calendar_dates();
    void get_issues();
    void get_master_cusip_no();
    void get_run_date_finish();
    void get_payments();
    int get_pub_dates();
    void get_rights();
    void get_s_h_meetings();
    void get_special_codes();
    void get_agents();
    void get_currency();
    void get_payment_codes();
    void get_issue_codes();
    void get_standard_footnotes();
    void get_index_codes();
    void get_exchanges();
    void get_tax_codes();
    void get_tenders();
    int check_if_holiday(int );
    void sql_error(int , int , char *);
    void login_error();
    void no_pub_dates();
    void no_cal_dates();
    void no_finish_date();
    void save_payment_footnote(char , char [3],int , char );
    void save_issue_footnote(char );
    int print_footnotes();
    int print_foreign_tax();
    int get_partial_run_time();
    void save_rght_footnotes();
    int print_supplimental();
    int convert_tender_price(char *);
    void pad_s_h_meetings();
    int strip_out_codes(char *);
    char *getSqlLogonString();
    /**** TCS ADD Ends ****/
    EXEC SQL INCLUDE sqlca;
    EXEC SQL INCLUDE ddr_create_all_tapes.h;
    #define TRUE 1
    #define ORA_NOT_FOUND     ( sqlca.sqlcode == 1403 )
    /* The Definitions of SUCCESS and FAILURE were switched to test the
    idea that SUCCESS should be Zero and FAILURE should be Non-Zero
    #define SUCCESS 1
    #define FAILURE 0
    #define SUCCESS 0
    #define FAILURE -1
    #define SYSOK          0
    #define SYSERR          1
    #define DEBUGGING     0
    #define DEBUG_LEVEL     0
    /*     #define DEBUGGING     1
         #define DEBUG_LEVEL     2
    int          first_cal_date;
    int          footnote_count;
    int          foreign_count;
    int          last_cal_date;
    int          total_records;
    int          which_tape = 0;
    char          cusip_table_name[30];
    char          field_type_code;
    char          final_cusip_number[10];
    /**** char          footnote_text[300][300];
    char          foreign_text[60][100]; **** Commented by TCS as per the change request ****/
    /*** Added by TCS as per the change request ***/
    char          footnote_text[200][300];
    char          foreign_text[200][300];
    /*** TCS Add Ends ***/
    char          freq_type_code;
    char          init_cusip_number[10];
    char          rec_type_code;
    char          payment_where_clause[600];
    char          rights_where_clause[600];
    char          tenders_where_clause[600];
    char          s_h_meet_where_clause[600];
    char          last_run_time[18];
    char          supp_info_buffer[321];
    int          call_flag;
    int          tenders_flag;
    int          rights_flag;
    int          s_h_meet_flag;
    int          rght_foot_pos;
    double          hold_double;
    int          hold_int;
    char          hold_char[100];
    int i=0;
    FILE      *fp;
    FILE     pfp;          / this is used for a report file to correspond to
    the partial tape file */
    int main(int argc, char argv[]) / Modified by TCS */
         char          ddr_tape_name[100];
         char          ddr_partial_rpt[100];
         char          copyright_notice[100];
         long           file_position;
         char           *logname;
         /* READ IN PARAMETERS AND SET UP VARIABLES */
         memset (oracle_uid.arr, 0, sizeof(oracle_uid.arr));
    memset (oracle_pwd.arr, 0, sizeof(oracle_pwd.arr));
    strcpy (oracle_uid.arr, argv[1]);
    oracle_uid.len = strlen(oracle_uid.arr);
    strcpy (oracle_pwd.arr, argv[2]);
    oracle_pwd.len = strlen(oracle_pwd.arr);
    printf("Calling getSqlLogonString");
    logname = getSqlLogonString();
         which_tape = atoi(argv[1]);
         memset (last_run_time, 0, sizeof(last_run_time));
         if ( ( DEBUGGING ) && ( DEBUG_LEVEL > 1 ) )
         printf ("Oracle username: %s\n", oracle_uid.arr);
         printf ("Oracle password: %s\n", oracle_pwd.arr);
         printf ("Oracle username/password@database: %s\n", logname); /** Added by TCS **/
         printf ("Which Tape: %d\n", which_tape);
         hold_double = 0.0;
         hold_int = 0;
         memset (hold_char, ' ', sizeof(hold_char));
         EXEC SQL WHENEVER SQLERROR DO login_error();
    /*      EXEC SQL CONNECT :oracle_uid IDENTIFIED BY :oracle_pwd; */
         EXEC SQL CONNECT :logname ;
         printf ("Connected to ORACLE... \n");
         EXEC SQL WHENEVER SQLERROR continue;
         get_pub_dates();
         memset (ddr_tape_name, 0, sizeof(ddr_tape_name));
         memset (ddr_partial_rpt, 0, sizeof(ddr_partial_rpt));
         memset (cusip_table_name, 0, sizeof(cusip_table_name));
         memset (payment_where_clause, 0, sizeof(payment_where_clause));
         memset (rights_where_clause, 0, sizeof(rights_where_clause));
         memset (tenders_where_clause, 0, sizeof(tenders_where_clause));
         memset (s_h_meet_where_clause, 0, sizeof(s_h_meet_where_clause));
         /* SET UP VARIABLES BASED ON THE DIFFERENT FREQUENCY OF TAPE */
         switch (which_tape)
              case 0:
                   get_partial_run_time();
                   /*sprintf (ddr_tape_name,
                        "idb_tape$out:ddr_partial%1d.asc", p_count); ** Comented by TCS **/
                   sprintf (ddr_tape_name,"%s%1d.%s",getOutFileName("DDR_PARTIAL"),p_count,getEnvVar("DDR_PARTIAL_EXT_ASC")); /* Added by TCS */
                   strcpy (cusip_table_name,
                        "IDB.DDR_PARTIAL_TAPE_TABLE");
                   /*sprintf (ddr_partial_rpt,
                        "idb_tape$out:ddr_partial%1d.rpt", p_count); ** Commented by TCS **/
                   sprintf (ddr_partial_rpt,"%s%1d.%s",getOutFileName("DDR_PARTIAL"),p_count,getEnvVar("DDR_PARTIAL_EXT_RPT")); /* Added by TCS */
                   get_calendar_dates();
                   freq_type_code = '0';
                   sprintf (payment_where_clause,
    "AND PYMT_PUB_DATE IS NULL \
    AND ((PYMT_ADD_DATE_TIME >= TO_DATE('%15.15s', 'DD-MON-RR HH24:MI') \
    AND PYMT_ADD_DATE_TIME < TO_DATE('%15.15s', 'DD-MON-RR HH24:MI')) \
    OR (PYMT_UPD_DATE_TIME >= TO_DATE('%15.15s', 'DD-MON-RR HH24:MI') \
    AND PYMT_UPD_DATE_TIME < TO_DATE('%15.15s', 'DD-MON-RR HH24:MI')))",
    p_from.arr, p_to.arr, p_from.arr, p_to.arr);
                   sprintf (rights_where_clause,
    "AND RGHT_PUB_DATE IS NULL \
    AND ((RGHT_ADD_DATE_TIME >= TO_DATE('%15.15s', 'DD-MON-RR HH24:MI') \
    AND RGHT_ADD_DATE_TIME < TO_DATE('%15.15s', 'DD-MON-RR HH24:MI')) \
    OR (RGHT_UPD_DATE_TIME >= TO_DATE('%15.15s', 'DD-MON-RR HH24:MI') \
    AND RGHT_UPD_DATE_TIME < TO_DATE('%15.15s', 'DD-MON-RR HH24:MI')))",
    p_from.arr, p_to.arr, p_from.arr, p_to.arr);
                   sprintf (tenders_where_clause,
    "AND TNDR_PUB_DATE IS NULL \
    AND ((TNDR_ADD_DATE_TIME >= TO_DATE('%15.15s', 'DD-MON-RR HH24:MI') \
    AND TNDR_ADD_DATE_TIME < TO_DATE('%15.15s', 'DD-MON-RR HH24:MI')) \
    OR (TNDR_UPD_DATE_TIME >= TO_DATE('%15.15s', 'DD-MON-RR HH24:MI') \
    AND TNDR_UPD_DATE_TIME < TO_DATE('%15.15s', 'DD-MON-RR HH24:MI')))",
    p_from.arr, p_to.arr, p_from.arr, p_to.arr);
                   sprintf (s_h_meet_where_clause,
    "AND SMTG_PUB_DATE IS NULL \
    AND ((SMTG_ADD_DATE_TIME >= TO_DATE('%15.15s', 'DD-MON-RR HH24:MI') \
    AND SMTG_ADD_DATE_TIME < TO_DATE('%15.15s', 'DD-MON-RR HH24:MI')) \
    OR (SMTG_UPD_DATE_TIME >= TO_DATE('%15.15s', 'DD-MON-RR HH24:MI') \
    AND SMTG_UPD_DATE_TIME < TO_DATE('%15.15s', 'DD-MON-RR HH24:MI')))",
    p_from.arr, p_to.arr, p_from.arr, p_to.arr);
                   break;
              case 3:
    /*     PARTIAL 5     */
                   get_partial_run_time();
                   p_count = 5;
                   /**sprintf (ddr_tape_name,
                        "idb_tape$out:ddr_partial%1d.asc", p_count); ** Comented by TCS **/
                   sprintf (ddr_tape_name,"%s%1d.%s",getOutFileName("DDR_PARTIAL"),p_count,getEnvVar("DDR_PARTIAL_EXT_ASC")); /* Added by TCS */
    /* for testing only I am using seperate TABLE     */
                   /**strcpy (cusip_table_name,
                        "IDB.DDR_PARTIAL5_TAPE_TABLE"); ** Commented by TCS **/
                   strcpy (cusip_table_name,
                        "IDB.DDR_PARTIAL_TAPE_TABLE");
                   /*sprintf (ddr_partial_rpt,
                        "idb_tape$out:ddr_partial%1d.rpt", p_count); ** Commented by TCS **/
                   sprintf (ddr_tape_name,"%s%1d.%s",getOutFileName("DDR_PARTIAL"),p_count,getEnvVar("DDR_PARTIAL_EXT_RPT")); /* Added by TCS */
                   get_calendar_dates();
                   freq_type_code = '3';
                   sprintf (payment_where_clause,
    "AND ( (PYMT_ADD_DATE_TIME >= TO_DATE('%15.15s', 'DD-MON-RR HH24:MI')) \
    OR (PYMT_UPD_DATE_TIME >= TO_DATE('%15.15s', 'DD-MON-RR HH24:MI')))",
    p_to.arr, p_to.arr);
                   sprintf (rights_where_clause,
    "AND ((RGHT_ADD_DATE_TIME >= TO_DATE('%15.15s', 'DD-MON-RR HH24:MI')) \
    OR (RGHT_UPD_DATE_TIME >= TO_DATE('%15.15s', 'DD-MON-RR HH24:MI')))",
    p_to.arr, p_to.arr);
                   sprintf (tenders_where_clause,
    "AND ((TNDR_ADD_DATE_TIME >= TO_DATE('%15.15s', 'DD-MON-RR HH24:MI')) \
    OR (TNDR_UPD_DATE_TIME >= TO_DATE('%15.15s', 'DD-MON-RR HH24:MI')))",
    p_to.arr, p_to.arr);
                   sprintf (s_h_meet_where_clause,
    "AND ((SMTG_ADD_DATE_TIME >= TO_DATE('%15.15s', 'DD-MON-RR HH24:MI')) \
    OR (SMTG_UPD_DATE_TIME >= TO_DATE('%15.15s', 'DD-MON-RR HH24:MI')))",
    p_to.arr, p_to.arr);
                   break;
              case 1:
                   /**strcpy (ddr_tape_name,
                        "idb_tape$out:ddr_daily_tape.asc"); ** Commented by TCS **/
                   sprintf (ddr_tape_name,"%s",getOutFileName("DDR_DAILY_TAPE_ASC")); /* Added by TCS */
                   strcpy (cusip_table_name,
                        "IDB.DDR_DAILY_TAPE_TABLE");
                   get_calendar_dates();
                   freq_type_code = '1';
                   sprintf (payment_where_clause, "AND (PYMT_PUB_DATE \
    = TO_DATE('%s','DD-MON-RR') OR PYMT_PUB_DATE IS NULL)", pub_to_date.arr);
                   sprintf (rights_where_clause, "AND (RGHT_PUB_DATE \
    = TO_DATE('%s','DD-MON-RR') OR RGHT_PUB_DATE IS NULL)", pub_to_date.arr);
                   sprintf (tenders_where_clause, "AND (TNDR_PUB_DATE \
    = TO_DATE('%s','DD-MON-RR') OR TNDR_PUB_DATE IS NULL)", pub_to_date.arr);
                   sprintf (s_h_meet_where_clause, "AND (SMTG_PUB_DATE \
    = TO_DATE('%s','DD-MON-RR') OR SMTG_PUB_DATE IS NULL)", pub_to_date.arr);
                   break;
              case 5:
                   /*strcpy (ddr_tape_name,
                        "idb_tape$out:ddr_weekly_tape.asc"); ** Commented by TCS **/
                   sprintf (ddr_tape_name, "%s",getOutFileName("DDR_WEEKLY_TAPE_ASC")); /* Added by TCS */
                   strcpy (cusip_table_name,
                        "IDB.DDR_WEEKLY_TAPE_TABLE");
                   get_calendar_dates();
                   freq_type_code = '2';
                   sprintf (payment_where_clause, "AND (PYMT_PUB_DATE \
    BETWEEN to_date('%s','DD-MON-RR') AND to_date('%s','DD-MON-RR') OR PYMT_PUB_DATE IS NULL)",
    pub_from_date.arr, pub_to_date.arr);
                   sprintf (rights_where_clause, "AND (RGHT_PUB_DATE \
    BETWEEN to_date('%s','DD-MON-RR') AND to_date('%s','DD-MON-RR') OR RGHT_PUB_DATE IS NULL)",
    pub_from_date.arr, pub_to_date.arr);
                   sprintf (tenders_where_clause, "AND (TNDR_PUB_DATE \
    BETWEEN to_date('%s','DD-MON-RR') AND to_date('%s','DD-MON-RR') OR TNDR_PUB_DATE IS NULL)",
    pub_from_date.arr, pub_to_date.arr);
                   /* ram - 6/28/95 - reverted back to original criteria: */
                   /* include on weekly tape based on pub-date, regardless of */
                   /* whether in calendar or not */
                   sprintf (s_h_meet_where_clause, "AND (SMTG_PUB_DATE \
    BETWEEN to_date('%s','DD-MON-RR') AND to_date('%s','DD-MON-RR') OR SMTG_PUB_DATE IS NULL)",
    pub_from_date.arr, pub_to_date.arr);
                   break;
              case 12:
                   /* ram - 7/13/95          */
                   /* changed monthly "6" to "12" */
                   /*strcpy (ddr_tape_name,
                        "idb_tape$out:ddr_monthly_tape.asc"); ** Commented by TCS **/
                   sprintf (ddr_tape_name, "%s", getOutFileName("DDR_MONTHLY_TAPE_ASC")); /* Added by TCS */
                   strcpy (cusip_table_name,
                        "IDB.DDR_MONTHLY_TAPE_TABLE");
                   freq_type_code = '3';
                   sprintf (payment_where_clause, "AND (PYMT_PUB_DATE \
    BETWEEN to_date('%s','DD-MON-RR') AND to_date('%s','DD-MON-RR') OR PYMT_PUB_DATE IS NULL)",
    pub_from_date.arr, pub_to_date.arr);
                   sprintf (rights_where_clause, "AND (RGHT_PUB_DATE \
    BETWEEN to_date('%s','DD-MON-RR') AND to_date('%s','DD-MON-RR') OR RGHT_PUB_DATE IS NULL)",
    pub_from_date.arr, pub_to_date.arr);
                   sprintf (tenders_where_clause, "AND (TNDR_PUB_DATE \
    BETWEEN to_date('%s','DD-MON-RR') AND to_date('%s','DD-MON-RR') OR TNDR_PUB_DATE IS NULL)",
    pub_from_date.arr, pub_to_date.arr);
                   break;
              case 8:
                   /*strcpy (ddr_tape_name,
                        "idb_tape$out:ddr_quarterly_tape.asc");** Commented by TCS **/
                   sprintf (ddr_tape_name,"%s",getOutFileName("DDR_QUARTERLY_TAPE_ASC")); /* Added by TCS */
                   strcpy (cusip_table_name,
                        "IDB.DDR_QUARTERLY_TAPE_TABLE");
                   freq_type_code = '3';
                   sprintf (payment_where_clause, "AND (PYMT_PUB_DATE \
    BETWEEN to_date('%s','DD-MON-RR') AND to_date('%s','DD-MON-RR') OR PYMT_PUB_DATE IS NULL)",
    pub_from_date.arr, pub_to_date.arr);
                   sprintf (rights_where_clause, "AND (RGHT_PUB_DATE \
    BETWEEN to_date('%s','DD-MON-RR') AND to_date('%s','DD-MON-RR') OR RGHT_PUB_DATE IS NULL)",
    pub_from_date.arr, pub_to_date.arr);
                   sprintf (tenders_where_clause, "AND (A.TNDR_TENDER_DATE \
    = TO_DATE('%s','DD-MON-RR'))", pub_to_date.arr);               break;
              case 9:
                   /*strcpy (ddr_tape_name,
                        "idb_tape$out:ddr_annual_tape.asc"); ** Comented by TCS **/
                   sprintf (ddr_tape_name,"%s", getOutFileName("DDR_ANNUAL_TAPE_ASC")); /* Added by TCS */
                   strcpy (cusip_table_name,
                        "IDB.DDR_ANNUAL_TAPE_TABLE");
                   freq_type_code = '4';
                   sprintf (payment_where_clause, "AND (PYMT_PUB_DATE \
    BETWEEN to_date('%s','DD-MON-RR') AND to_date('%s','DD-MON-RR') \
    OR PYMT_PUB_DATE = TO_DATE('29-OCT-1929','DD-MON-YYYY'))",
    pub_from_date.arr, pub_to_date.arr);
                   sprintf (rights_where_clause, "AND (RGHT_PUB_DATE \
    BETWEEN to_date('%s','DD-MON-RR') AND to_date('%s','DD-MON-RR') OR RGHT_PUB_DATE IS NULL)",
    pub_from_date.arr, pub_to_date.arr);
                   sprintf (tenders_where_clause, "AND (A.TNDR_TENDER_DATE \
    = TO_DATE('%s','DD-MON-RR'))", pub_to_date.arr);               break;
              case 15:
                   /*strcpy (ddr_tape_name,
                        "idb_tape$out:ddr_general_tape.asc"); ** Commented by TCS **/
                   sprintf (ddr_tape_name,"%s", getOutFileName("DDR_GENERAL_TAPE_ASC")); /* Added by TCS */
                   strcpy (cusip_table_name,
                        "IDB.DDR_GENERAL_TAPE_TABLE");
                   freq_type_code = '3';
                   sprintf (payment_where_clause, "AND (PYMT_PUB_DATE \
    BETWEEN to_date('%s','DD-MON-RR') AND to_date('%s','DD-MON-RR') OR PYMT_PUB_DATE IS NULL)",
    pub_from_date.arr, pub_to_date.arr);
                   sprintf (rights_where_clause, "AND (RGHT_PUB_DATE \
    BETWEEN to_date('%s','DD-MON-RR') AND to_date('%s','DD-MON-RR') OR RGHT_PUB_DATE IS NULL)",
    pub_from_date.arr, pub_to_date.arr);
                   sprintf (tenders_where_clause, "AND (A.TNDR_TENDER_DATE \
    = TO_DATE('%s','DD-MON-RR'))", pub_to_date.arr);               break;
              default:
                   exit (printf ("Invalid tape option: %d\n", which_tape)); /*** %s changed by TCS to %d ***/
                   break;
         if ((fp = fopen(ddr_tape_name, "w+")) == NULL)
              exit (printf ("Unable to open asc <%s> file for write access\n",
                   ddr_tape_name));
    /*     GR. Partial 5
         if (which_tape == 0 || which_tape == 3 )
              if ((pfp = fopen(ddr_partial_rpt, "w+")) == NULL)
                   exit (printf ("Unable to open asc <%s> file \
    for write access\n", ddr_partial_rpt));
         /* WRITE THE HEADER RECORD ON THE TAPE */
         memset (copyright_notice, 0, sizeof(copyright_notice));
         sprintf (copyright_notice, "COPYRIGHT (c) %.4s STANDARD & POOR'S \
    CORPORATION. ALL RIGHTS RESERVED", year.arr);
         fprintf (fp, "%-80.80sDIVIDEND%8d%17.17s ",
    copyright_notice, control_date, run_date_start.arr);
         file_position = ftell(fp);
         fprintf (fp, "\n");
         total_records = 0;
         /* GET THE SPECIAL CATEGORY RECORDS */
         get_special_codes();
         /* SELECT FROM THE DRIVER TABLE TO GET ALL THE OTHER RECORDS */
         get_master_cusip_no();
         printf("After get_master_cusip_no()");
         get_run_date_finish();
         printf("After get_run_date_finish()");
         if ( DEBUGGING )
              printf ("initial cusip = %s\n", init_cusip_number);
              printf ("final cusip = %s\n", final_cusip_number);
              printf ("record type is %c\n", rec_type_code);
         /* WRITE THE TRAILER RECORD */
         fprintf (fp, "%8d%-17.17s%07d%-9.9s1%-9.9s%c\n", control_date,
    run_date_finish.arr, total_records, init_cusip_number , final_cusip_number,
    rec_type_code);
         /* re-wind and add to the header record ... */
         rewind(fp);
         fseek(fp, file_position - 33, 0);
         fprintf (fp, "%07d%-9.9s1%-9.9s%c", total_records, init_cusip_number,
    final_cusip_number, rec_type_code);
         fclose(fp);
    /*     GR Partial 5
         if (which_tape == 0 || which_tape == 3 )
              fclose(pfp);
         printf ("\nDONE: %07d%-9.9s1%-9.9s%c\n", total_records, init_cusip_number,
    final_cusip_number, rec_type_code);
    return (0); /*** Added by TCS ***/
    void prepare_declare_oracle_cursors() /* Modified by TCS */
         /* We'll us dynamic sql to get the appropriate where clause but use */
         /* a bind variable for the master cusip number. So we prepare and */
         /* declare get_issues, get_payments, get_tenders, get rights, and */
         /* get_s_h_meetings cursors only once, outside the driving loop. */
         EXEC SQL BEGIN DECLARE SECTION;
              /**** TCS Comment begins as per the change request ****
              VARCHAR          sql_stmt1[1500];*/     /* issues */
              /*VARCHAR          sql_stmt2[3000];     *//* payments */
              /*VARCHAR          sql_stmt3[500];          *//* tenders */
              /*VARCHAR          sql_stmt4[500];          *//* rights */
              /*VARCHAR          sql_stmt5[500];          *//* s_h_meetings */
              /**** TCS Add begins as per the change request ****/
              VARCHAR          sql_stmt1[2000];     /* issues */
              VARCHAR          sql_stmt2[4000];     /* payments */
              VARCHAR          sql_stmt3[1000];     /* tenders */
              VARCHAR          sql_stmt4[1000];     /* rights */
              VARCHAR          sql_stmt5[1000];     /* s_h_meetings */
              /**** TCS Add ends ****/
         EXEC SQL END DECLARE SECTION;
         /* prepare and declare the get_issues cursor */
         memset (sql_stmt1.arr, 0, sizeof(sql_stmt1.arr));
         sprintf (sql_stmt1.arr, "SELECT \
    A.ISSU_PAR_VALUE, \
    DECODE (A.ISSU_MARKET_SYMBOL||A.ISSU_NASDAQ,'OTCY','NASD', A.ISSU_MARKET_SYMBOL), \
    A.ISSU_C_RATE, A.ISSU_C_FREQ, A.ISSU_C_NEW_AMOUNT, A.ISSU_C_NEW_Q1, \
    A.ISSU_C_NEW_Q2, A.ISSU_C_NEW_Q3, A.ISSU_C_OLD_AMOUNT, A.ISSU_C_OLD_Q1, \
    A.ISSU_C_OLD_Q2, A.ISSU_C_OLD_Q3, A.ISSU_CURRENCY, \
    A.ISSU_UPD_HIS, A.ISSU_COMMENT, A.TAX_EXEMPT_FLAG,\
    B.SEC_TYPE_CODE, B.ACQ_BY_IND, B.ACQ_ISSUER_NO, \
    rtrim(substr(B.ACQ_ISSUER_DESCR,1,30)), \
    B.INDEX_CODE, B.TRFR_AGT_CODE, B.NY_AGT_CODE, B.TICKER_SYMBOL, \
    B.TICKER_SYMBOL2, \
    rtrim(substr(C.ISSR_DDR_ISSUER_DESCR,1,60)), \
    rtrim(substr(E.ISSUE_DESCR,1,30)), \
    rtrim(substr(D.ISSUER_DESCR1,1,30)), \
    F.TRFR_DAYS \
    FROM IDB.DDR_ISSUES A, IDB.DDR_ISSUES_2 B, IDB.DDR_ISSUERS C, \
    BLIS.CUSIP_ISSUERS D, BLIS.CUSIP_ISSUES E, IDB.DDR_TRANSFER F \
    WHERE A.ISSU_CUSIP_NO = :master_cusip_no \
    AND A.ISSU_CUSIP_NO = B.ISSU_CUSIP_NO(+) \
    AND SUBSTR(A.ISSU_CUSIP_NO, 1, 6) = C.ISSR_ISSUER_NO(+) \
    AND SUBSTR(A.ISSU_CUSIP_NO, 1, 6) = D.ISSUER_NO \
    AND A.ISSU_CUSIP_NO = E.CUSIP_NO \
    AND A.ISSU_TRANSFER_CODE = F.TRFR_TR_CD(+) ");
         sql_stmt1.len = strlen(sql_stmt1.arr);
         EXEC SQL PREPARE ISSUES FROM :sql_stmt1;
         if (sqlca.sqlcode)
              sql_error (SYSERR, sqlca.sqlcode,
                   "Error in preparing ISSUES");
         EXEC SQL DECLARE ISSUES_C CURSOR FOR ISSUES;
         if (sqlca.sqlcode)
              sql_error (SYSERR, sqlca.sqlcode,
                   "Error in declaring ISSUES");
         /* now the get_payments cursor */
         memset (sql_stmt2.arr, 0, sizeof(sql_stmt2.arr));
         sprintf (sql_stmt2.arr, "SELECT \
    a.PYMT_RP_DIV, \
    a.PYMT_RP_DEC, \
    a.PYMT_RP_EXD, \
    a.PYMT_RP_REC, \
    a.PYMT_RP_PAY, \
    a.PYMT_RP_DUE, \
    a.PYMT_RP_TAX, \
    a.PYMT_RP_ANN, \
    a.PYMT_PRP_DIV, \
    a.PYMT_PRP_DEC, \
    a.PYMT_PRP_EXD, \
    a.PYMT_PRP_REC, \
    a.PYMT_PRP_PAY, \
    a.PYMT_PRP_DUE, \
    a.PYMT_PRP_TAX, \
    a.PYMT_PRP_ANN, \
    NVL(a.PYMT_SEQ_NO,0), \
    TO_CHAR(a.PYMT_DECLARED, 'YYMMDD'), \
    TO_CHAR(a.PYMT_EX_DATE, 'YYMMDD'), \
    TO_CHAR(a.PYMT_STK_REC, 'YYMMDD'), \
    TO_CHAR(a.PYMT_TRANSFER_DATE, 'YYMMDD'), \
    TO_CHAR(a.PYMT_PAYABLE, 'YYMMDD'), \
    a.PYMT_CODES, \
    NVL(a.PYMT_CASH_DIVD,0.0), \
    NVL(b.ORDINARY_INCOME,0.0), \
    NVL(b.CAP_GAINS,0.0), \
    NVL(b.SHORT_TM_CAP_GAINS,0.0), \
    NVL(b.LONG_TM_CAP_GAINS,0.0), \
    NVL(b.RETURN_OF_CAPITAL,0.0), \
    b.STK_DIVD_IND, \
    NVL(a.PYMT_STK_DIVD,0), \
    b.FRAC_IN_CASH_STK_IND, \
    NVL(b.FRAC_IN_CASH_PRICE,0.0), \
    NVL(a.PYMT_SPLIT_NEW,0), \
    NVL(a.PYMT_SPLIT_OLD,0), \
    TO_CHAR(a.PYMT_DB_DATE, 'YYMMDD'), \
    NVL(b.ARREARS_PAID,0.0), \
    NVL(b.ARREARS_DUE,0.0), \
    b.SPINOFF_IND, \
    b.SPINOFF_ISSUE_NO, \
    b.SPINOFF_ISSUER_DESCR, \
    b.SPINOFF_ISSUE_DESCR, \
    NVL(b.TAX_CODE,0), \
    NVL(b.TAX_CODE_2,0), \
    NVL(b.OLD_SEQ_NO,0), \
    b.ORDINARY_INCOME_CODE, \
    b.CAP_GAINS_CODE, \
    b.SHORT_TM_CAP_GAINS_CODE, \
    b.LONG_TM_CAP_GAINS_CODE, \
    b.RETURN_OF_CAPITAL_CODE, \
    TO_CHAR(b.CALL_DATE, 'YYMMDD'), \
    NVL(b.CALL_PRICE,0.0), \
    b.CALL_PRICE_CURRENCY, \
    b.CALL_AGT_NO, \
    b.ACCRUED_DIVD_IND, \
    TO_CHAR(a.PYMT_DB_DATE, 'YYMMDD'), \
    a.PYMT_DB_TEXT, \
    a.PYMT_DVD_TEXT, \
    a.PYMT_YEAR, \
    TO_CHAR(a.PYMT_STK_REC, 'fmMon dd'), \
    TO_CHAR(a.PYMT_DB_DATE, 'fmMon dd'), \
    b.NY_CALL_AGT_NO, \
    NVL(b.FOREIGN_TAX_RATE, 0.0), \
    NVL(b.NET_RATE, 0.0), \
    NVL(b.FEE, 0.0), \
    NVL(b.COMMISSION, 0.0), \
    a.PYMT_CASH_DIVD_FNS, \
    a.PYMT_STK_DIVD_FNS, \
    a.PYMT_DECLARED_FNS, \
    a.PYMT_EX_DATE_FNS, \
    a.PYMT_STK_REC_FNS, \
    a.PYMT_PAYABLE_FNS, \
    a.PYMT_SPLIT_FNS, \
    NVL (TO_NUMBER (TO_CHAR(a.PYMT_PUB_DATE, 'YYYYMMDD')), 0), \
    NVL (TO_NUMBER (TO_CHAR(a.PYMT_TRANSFER_DATE, 'YYYYMMDD')), 0), \
    NVL (TO_NUMBER (TO_CHAR(a.PYMT_STK_REC, 'YYYYMMDD')), 0), \
    NVL (TO_NUMBER (TO_CHAR(a.PYMT_DB_DATE, 'YYYYMMDD')), 0) \
    FROM IDB.DDR_PAYMENTS A, IDB.DDR_PAYMENTS_2 B \
    WHERE A.PYMT_CUSIP_NO = :master_cusip_no \
    AND A.PYMT_CUSIP_NO = B.PYMT_CUSIP_NO (+) \
    AND A.PYMT_SEQ_NO = B.PYMT_SEQ_NO (+) \
    AND NVL(INSTR(A.PYMT_CODES,'CO'),0) NOT IN (1,3,5,7,9,11) ");
         strcat (sql_stmt2.arr, payment_where_clause);
         sql_stmt2.len = strlen(sql_stmt2.arr);
         EXEC SQL PREPARE PAYMENTS FROM :sql_stmt2;
         if (sqlca.sqlcode)
              sql_error (SYSERR, sqlca.sqlcode,
                   "Error in preparing PAYMENTS");
         EXEC SQL DECLARE PAYMENTS_C CURSOR FOR PAYMENTS;
         if (sqlca.sqlcode)
              sql_error (SYSERR, sqlca.sqlcode,
                   "Error in declaring PAYMENTS");
         /* now the get_tenders cursor */
         memset (sql_stmt3.arr, 0, sizeof(sql_stmt3.arr));
    /* FXL ADD SUBSTR to tndr_price_qual: substr(A.TNDR_PRICE_QUAL,1,14), 3/23/99,
    to to_number 3/29/99 */
         sprintf (sql_stmt3.arr, "SELECT \
    B.TNDR_AGT_NO, \
    B.NY_AGT_NO, \
    TO_CHAR(A.TNDR_TENDER_DATE, 'YYMMDD'), \
    A.TNDR_PRICE, \
    to_number(A.TNDR_PRICE_QUAL), \
    A.TNDR_TE_SIZE, \
    TNDR_TE_TEXT_1 \
    FROM IDB.DDR_TENDERS A, IDB.DDR_TENDERS_2 B \
    WHERE TNDR_CUSIP_NO = :master_cusip_no \
    AND TNDR_CUSIP_NO = TNDR_ISSUE_NO(+) \
    AND A.TNDR_TENDER_DATE = B.TNDR_TENDER_DATE(+) ");
         strcat (sql_stmt3.arr, tenders_where_clause);
         sql_stmt3.len = strlen(sql_stmt3.arr);
         EXEC SQL PREPARE TENDERS FROM :sql_stmt3;
         if (sqlca.sqlcode)
              sql_error (SYSERR, sqlca.sqlcode,
                   "Error in preparing TENDERS");
         EXEC SQL DECLARE TENDERS_C CURSOR FOR TENDERS;
         if (sqlca.sqlcode)
              sql_error (SYSERR, sqlca.sqlcode,
                   "Error in declaring TENDERS");
         /* now the get_rights cursor */
         memset (sql_stmt4.arr, 0, sizeof(sql_stmt4.arr));
    /* ADD TO_CHAR(A.RGHT_DB_DATE, 'YYMMDD') */
         sprintf (sql_stmt4.arr, "SELECT \
    B.NO_RIGHTS_ISSUED, \
    B.SHS_REQ_FOR_PURCH, \
    B.RGHTS_REQUIRED, \
    B.QTY_SHS_PURCHASED, \
    B.TYPE_SHS_ELIGIBLE, \
    B.NEW_SHS_CUSIP_NO, \
    B.NEW_CO_ISSUER_DESCR, \
    TO_CHAR(A.RGHT_RECORD, 'YYMMDD'), \
    TO_CHAR(A.RGHT_EX_DATE, 'YYMMDD'), \
    TO_CHAR(B.NYC_RECORD_DATE, 'YYMMDD'), \
    TO_CHAR(A.RGHT_EXPIRE, 'YYMMDD'), \
    TO_CHAR(A.RGHT_DB_DATE, 'YYMMDD'), \
    A.RGHT_PRICE, \
    NVL(A.RGHT_RECORD_FNS,' '), \
    NVL(A.RGHT_EXPIRE_FNS,' '), \
    NVL(A.RGHT_EX_DATE_FNS,' '), \
    NVL(A.RGHT_PRICE_FNS,' '), \
    NVL(A.RGHT_BASIS_FNS,' '), \
    A.RGHT_FOOTNOTE, \
    B.US_INELIGIBILITY_IND, \
    B.RGHT_TRFR_IND \
    FROM IDB.DDR_RIGHTS A, IDB.DDR_RIGHTS_2 B \
    WHERE RGHT_CUSIP_NO = :master_cusip_no \
    AND RGHT_CUSIP_NO = RGHT_ISSUE_NO(+) \
    AND A.RGHT_RECORD = B.RGHT_RECORD_DATE(+) ");
         strcat (sql_stmt4.arr, rights_where_clause);
         sql_stmt4.len = strlen(sql_stmt4.arr);
         EXEC SQL PREPARE RIGHTS FROM :sql_stmt4;
         if (sqlca.sqlcode)
              sql_error (SYSERR, sqlca.sqlcode,
                   "Error in preparing RIGHTS");
         EXEC SQL DECLARE RIGHTS_C CURSOR FOR RIGHTS;
         if (sqlca.sqlcode)
              sql_error (SYSERR, sqlca.sqlcode,
                   "Error in declaring RIGHTS");
         /* ram - added logic on 7/18/95 */
         /* for the standard footnotes cursor */
         EXEC SQL DECLARE STANDARD_FOOTNOTES_C CURSOR
         FOR
         SELECT SFTN_S_F_TEXT, SFTN_S_F_TYPE
         FROM IDB.DDR_STANDARD_FOOTNOTES
         WHERE SFTN_S_F_TYPE = :standard_footnote_type;
         if (sqlca.sqlcode)
              sql_error (SYSERR, sqlca.sqlcode,
                   "Error in declaring STANDARD_FOOTNOTES");
         /* now the issue footnotes cursor */
         EXEC SQL DECLARE ISSUE_FOOTNOTES_C CURSOR
         FOR
         SELECT FTNT_F_TEXT, FTNT_F_TYPE
         FROM IDB.DDR_FOOTNOTES
         WHERE FTNT_CUSIP_NO = :master_cusip_no
         AND FTNT_SYMBOL = :footnote_symbol
         AND FTNT_YEAR IS NULL;
         if (sqlca.sqlcode)
              sql_error (SYSERR, sqlca.sqlcode,
                   "Error in declaring ISSUE_FOOTNOTES");
         /* now the payment footnotes cursor */
         EXEC SQL DECLARE PAYMENT_FOOTNOTES_C CURSOR
         FOR
         SELECT FTNT_F_TEXT, FTNT_F_TYPE
         FROM IDB.DDR_FOOTNOTES
         WHERE FTNT_CUSIP_NO = :master_cusip_no
         AND FTNT_SYMBOL = :footnote_symbol
         AND FTNT_YEAR = :footnote_year;
         if (sqlca.sqlcode)
              sql_error (SYSERR, sqlca.sqlcode,
                   "Error in declaring PAYMENT_FOOTNOTES");
         /* now the get_s_h_meetings cursor */
         /* ONLY for certain tape types. */
    /*     GR PARTial 5
         if (which_tape == 0 || which_tape == 3 || which_tape == 1 || which_tape == 5)
              memset (sql_stmt5.arr, 0, sizeof(sql_stmt5.arr));
              /* ram - 6/15/95 - changed ORigunal to smtg */
              /* TO_CHAR(ORIGINAL_REC_DATE, 'YYMMDD'), \ */
              sprintf (sql_stmt5.arr, "SELECT \
    TO_CHAR(SMTG_MTG_DATE, 'YYMMDD'), \
    TO_CHAR(SMTG_REC_DATE, 'YYMMDD'), \
    SMTG_FOOTNOTE \
    FROM IDB.DDR_S_H_MEETINGS \
    WHERE SMTG_CUSIP_NO = :master_cusip_no ");
              strcat (sql_stmt5.arr, s_h_meet_where_clause);
              sql_stmt5.len = strlen(sql_stmt5.arr);
              EXEC SQL PREPARE S_H_MEET FROM :sql_stmt5;
              if (sqlca.sqlcode)
                   sql_error (SYSERR, sqlca.sqlcode,
                        "Error in preparing S_H_MEET");
              EXEC SQL DECLARE S_H_MEET_C CURSOR FOR S_H_MEET;
              if (sqlca.sqlcode)
                   sql_error (SYSERR, sqlca.sqlcode,
                        "Error in declaring S_H_MEET");
         } /* end of if (which_tape == 0 || which_tape == 1 || which_tape == 5) */
    /* replaced get_calendar_dates function with use of PLSQL - ram - 5/24/95 */
    void get_calendar_dates() /* Modified by TCS */
         /* put first and last calendar dates into global ints */
         /* first_cal_date and last_cal_date (YYYYMMDD) using */
         /* ddr package function get_business_days. */
         /* The package object ddr is owned by idb, so I'll */
         /* specify this, just in case accounts other than idb */
         /* run this code. (EXECUTE priviledge is granted to */
         /* "idb_user" role.) */
    EXEC SQL BEGIN DECLARE SECTION;
              int          cal_start;
              int          cal_end;
              int          return_val;
    EXEC SQL END DECLARE SECTION;
         /* initialize destination globals */

    You actually need to run it with "check -access"; memuse and leaks won't help with the crash, which happens because of illegal memory access. Hopefully, "check -access" will help you to locate the bad guy, but that's not panacea either.
    To be precise:
    - start dbx
    $ dbx <your app>
    - issue
    (dbx) check -access
    (dbx) run
    and wait for dbx to stop and report suspicious memory access.

  • System Core Dumped after Oracle patch upgrade 9.2.0.6 to 9.2.0.8

    Hi,
    We are continously getting dumps on our BW Central instance server after we did an Oracle patch upgrade from 9.2.0.6 to 9.2.0.8.
    Following is our system environment
    SAP Release.............. "640"
    Application server....... "abci"
    Operating system......... "SunOS"
    Release.................. "5.10"
    Hardware type............ "sun4v"
    Database server.......... "abdb"
    Database type............ "ORACLE"
    Database name............ "ABP"
    Database owner........... "SAPABP"
    SAP kernel............... "640"
    Database version......... "OCI_920 "
    Patch level.............. "175"
    Following below is the Core Dump that is generated for any process chains that we schedule on our BW server
    Runtime Errors         SYSTEM_CORE_DUMPED
    Date and Time          14.04.2008 09:26:17
    ShrtText
         Process terminated by signal 11.
    What happened?
        The current ABAP program had to be terminated because the
        ABAP processor detected an internal system error.
        The current ABAP program "SAPMSSY2" had to be terminated because the ABAP
        processor discovered an invalid system state.
    What can you do?
        Make a note of the actions and input which caused the error.
        To resolve the problem, contact your SAP system administrator.
        You can use transaction ST22 (ABAP Dump Analysis) to view and administer
        termination messages, especially those beyond their normal deletion
        date.
    Error analysis
        An SAP System process was terminated by an operating system signal.
        Possible reasons for this are:
        1. Internal SAP System error.
        2. Process was terminated externally (by the system administrator).
                   Last error logged in SAP kernel
        Component............ "Taskhandler"
        Place................ "SAP-Server awci_ABP_00 on host awci (wp 5)"
        Version.............. 1
        Error code........... 11
        Error text........... "ThSigHandler: signal"
        Description.......... " "
        System call.......... " "
        Module............... "thxxhead.c"
        Line................. 9780
    How to correct the error
        The SAP System work directory (e.g. /usr/sap/c11/D00/work ) often
        contains a file called 'core'.
        Save this file under another name.
        If you cannot solve the problem yourself and you wish to send
        an error message to SAP, include the following documents:
        1. A printout of the problem description (short dump)
           To obtain this, select in the current display "System->List->
           Save->Local File (unconverted)".
        2. A suitable printout of the system log
           To obtain this, call the system log through transaction SM21.
           Limit the time interval to 10 minutes before and 5 minutes
           after the short dump. In the display, then select the function
           "System->List->Save->Local File (unconverted)".
        3. If the programs are your own programs or modified SAP programs,
           supply the source code.
           To do this, select the Editor function "Further Utilities->
           Upload/Download->Download".
        4. Details regarding the conditions under which the error occurred
           or which actions and input led to the error.
    Kindly help.
    Regards
    Sachin
    Edited by: Sachin N on Apr 14, 2008 12:26 PM

    No. If the environment would be wrong the system wouldn´t start up.
    Core dumps are in 99 % of the cases program errors (in the SAP kernel or in an interface (libdbora*)), misaligend accesses of data etc.
    If you encounter such an error have a look in the C-Stack. If you can´t see where the error is happening opening an OSS call. Most of those errors are fixed by installing the latest patches for the kernel and the database interface.
    Markus

  • MDM installation on AIX 5.3 core dumps

    Hi all,
    We installed MDM 5.5 SP4 on AIX 5.3 ML 5 (and the latest patches were applied last week-end).
    The MDM Server, Import and Syndication daemons are started.
    Database is Oracle 10.2 (corresponding Oracle client is used), installed on the same server.
    MDM client software is in sync with the server level.
    Since the installation, we get core dumps of the mds daemon (even when trying to perform the most basic operations). Consider it to be completely unusable for testing anything. You look at it, it breaks. Sorry, but that is how it is.
    MDM Patches and hotfixes to the patches have been applied up to the latest level The problem is reported at SAP Support and they have core dumps, logfiles, trace files for studying.  So far, the only feedback we got was to install MDM on its own server (it is a trial installation on a server where other applications are running - though I can hardly see that as a cause for core dumps). 
    My questions :
    - are we unique in running MDM on this software paltform ?
    - are others (if they exist experiencing the same problems on AIX 5.3 ?
    To be honest : for the moment we are thinking about reinstalling on a Windows server.
    Thanks in advance for any feedback,
    Frank Van Overloop

    Hello,
    we have finally made some progress on this issue.
    Basically, we suffered from a combination of :
    - wrong usage of the product
    - probably shaky exception handling in the AIX version
    The cause was found by SAP MDM support after we reconstructed the problem while using a special debug-version of the mds executable. This produced a usable dump.
    --- extract from the SAP reply -
    The core dump shows a crash in recalculating the family tree after the
    import. Family tree is being used only to create printed catalogs (which require the publisher and an additional license).
    1) Do you have any value in the categories table?
    2) Does the MDM server crash if you cancel the automatic family tree
    recalculation in the import map, and answer "no" in the dialog box which asks to recalculate the family tree?
    3) Do you intend to create a printed catalog?
    If the answer to any of the questions is "no", then this asserts that
    the recalculation of the family tree should not take place at all. In
    this case the family table could/should be deleted. And this should not
    reoccur.
    end extract -
    After we deleted this family table,  the tests are running stable.
    It's a pity that the program does not 'die' in a more elegant way or gives some understandable indication on what is going wrong.
    It also looks like this exception is handled better on the Windows implementation. The same 'functional mistake' was made there and this produced no dumps at all. Could be a porting issue from one platform to another.
    Regards,
    Frank

  • ST22 core dumps in a Linux 64bit environment

    Hello,
    I am running a combination ECC5.0/Oracle 9.2.07 on a Linux 4.0 64bit version. My CI and database are distributed. Since go live we have been experiencing core dumps that have been occuring every 2-3 weeks. So far we have analyzed that when this occurs the pxa buffer is being overwritten. It will start out as a number of 10 dumps and then becomes a monster where the coredumps are generated faster than I can remove them on the UNIX level. The only quick solution is to restart the app server. SAP has come back with a kernel upgrade but I am hesitant as that was the fix recommended when this first started to happen. I applied the upgrade but the coredumps arrive as scheduled. Does anyone else out there have the same combination that I have and if you do, are you experiencing these coredumps from hell?
    Does anyone else experience this on an HPUX or Solaris environment?
    Any and all input will be greatly appreciated.
    Thanks,
    Gary Manaoat

    Hi ,
    Send the short-dump extract so that it is possible to analyze the problem by all of the fellow SDN members.
    Anyways from the info in message I think its related to PXA related problem for abap/buffer_size parameter in the instance profile.
    Review the parameter.
    Kind Regards
    Neenad
    PS:Any rating given will be welcome

  • Dbx core dumping

    dbx core dumping when I debug my application with RTC enable (I'm truying to dectect some memory leaks in my code). and I'm getting the following
    RTC: Enabling Error Checking...
    RTC: Running program...
    (/opt/SUNWspro/bin/../WS6U2/bin/sparcv9/dbx) suppress rui
    (/opt/SUNWspro/bin/../WS6U2/bin/sparcv9/dbx) cont
    t@10 (l@10) signal SEGV (no mapping at the fault address) in __rtc_trap_handler at 0xff2e1148
    0xff2e1148: __rtc_trap_handler+0x0058: ld [%l5], %l0
    dbx: warning: undefined type number (0,158) at /export/home/husam/release/lib/libstorage_s.so.1:backend.c stab #207 sqlca:(0,158),
    assuming type `int {assumed}'
    dbx: warning: undefined type number (0,211) at /export/home/husam/release/lib/libstorage_s.so.1:backend.c stab #530 host:(0,211),
    assuming type `int {assumed}'
    dbx: warning: undefined type number (0,212) at /export/home/husam/release/lib/libstorage_s.so.1:backend.c stab #531 pwd:(0,212),
    assuming type `int {assumed}'
    dbx: warning: undefined type number (0,213) at /export/home/husam/release/lib/libstorage_s.so.1:backend.c stab #532 usrid:(0,213),
    assuming type `int {assumed}'
    dbx: warning: undefined type number (0,214) at /export/home/husam/release/lib/libstorage_s.so.1:backend.c stab #533 address:(0,214),
    assuming type `int {assumed}'
    dbx: warning: undefined type number (0,228) at /export/home/husam/release/lib/libstorage_s.so.1:backend.c stab #577 module:(0,228),
    assuming type `int {assumed}'
    dbx: warning: undefined type number (0,237) at /export/home/husam/release/lib/libstorage_s.so.1:backend.c stab #638 data:(0,237),
    assuming type `int {assumed}'
    dbx: warning: undefined type number (0,238) at /export/home/husam/release/lib/libstorage_s.so.1:backend.c stab #639 dest:(0,238),
    assuming type `int {assumed}'
    dbx: warning: undefined type number (0,846) at /export/home/husam/release/lib/libstorage_s.so.1:backend.c stab #1136 username:G(0,846),
    assuming type `int {assumed}'
    Current function is queue_message
    751 EXEC SQL CALL p_message.queue(:seq,:dest, :data, :notempty, :ret);
    (/opt/SUNWspro/bin/../WS6U2/bin/sparcv9/dbx) where
    current thread: t@10
    [1] sqlscht(0x48708, 0x47914, 0xa, 0x1, 0x3, 0xa), at 0xfe8cd0f8
    [2] sqldbid(0x48708, 0xfacf8aa8, 0x4dbf8, 0xff0d180c, 0x4, 0x390), at 0xfe8b0fec
    [3] sqlexp(0x48708, 0x1, 0x7a, 0x7a, 0xfacf8aa8, 0xfedecb18), at 0xfe8b4208
    [4] sqlcmex(0x0, 0x4dbf8, 0xfacf8aa8, 0xff0d18a6, 0xfedecafc, 0xfee1689c), at 0xfe8ab770
    [5] sqlcxt(0xfacf9cac, 0xff0e3d84, 0xfacf8aa8, 0xff0d18a6, 0xfacf9d48, 0xa), at 0xfe8abdbc
    Segmentation Fault (core dumped)
    Some iformation you might need:
    Compiler : code compiled with cc version 6.2
    Debugger : 6.2 patch 111683-03
    OS : Solaris 8 patch 108528-12
    Machine : E250
    Thanks

    /export/home/husam/release/lib/libstorage_s.so.1:backend.c stab #530 host:(0,211),The key to your problem is probably the stabs reading error.
    How was backend.c compiled?
    Normally dbx will load stabs information on demand as needed.
    You can start dbx and use the "module" command to load
    the stabs information right away without running the program or using RTC.
    Try this:
    (dbx) module backend.o
    Does that cause the stabs warnings?
    If you can "repair" or "normalize" the stabs information in that module,
    the crash will probably go away.

  • Getting Core dump on getting environment variable

    I first found this problem trying to display my GUI in jdk1.5.0_05. I have located it to be core dumping in the JNI C code for getting the envrionment, specifically Java_java_lang_ProcessEnvironment_environ.
    I wrote some test code to just call System.getenv() which is the java call that calls this piece of JNI code. If I run my Java code from the command line using the java command and it works just fine. Unfortunately the real code cannot be run this way since it is a plugin to a C++ application. The application starts up the JVM which I then retrieve and execute my Java code. They are using Sun's libjvm.so and libjava.so in the jre directory for the JVM. When I run my test code as a plugin to the app, I core dump.
    Can someone provide me insight into what the java_java_lang_ProcessEnvironment_environ function is doing so that I can further debug my problem. Is the source code for this function available? I am sure it is not a problem with Java, but I do not understand what is going on here to cause this to stop working within the other application as a plugin versus running on it's own.
    Kevin

    Well after doing more research I found that the environ extern variable is null. This is causing the core dump. If I set this variable to an environ[0][0] = '\0'; I no longer get my core dump in Java. I also though no longer get me GUI to appear. Is there something in the environment that is needed to display GUIs?

  • Linux Core Dump

    Today was the first time I have tried running a Java app from a script file within Red Hat Linux 6.2. I am using the 1.3.1 SDK SE. Before now, all classes were run in the JVM created by my servlet engine (Apache Tomcat). Now that I have an application to start and run in it's own JVM, I get an immediate core dump. Everything works fine in Windows using JBuilder. Copied the class files to Linux, created a shell script that sets the JAVA_HOME PATH and CLASSPATH correctly based on the one JBuilder uses. Call java and specify my class name. Immediate core dump. I have even tried to run it as root. What should I check? Is there a way to see what error it is running into? I am kind of stumped since there is no error on the screen and I wouldn't know what to do with a core file.

    To simplify matters, I have created a test class that all it does is System.out.println. I still get a core dump. Here is the shell file I use to run it.
    #!/bin/sh
    JAVA_HOME=/usr/java/jdk1.3.1
    PATH=.:$PATH:$JAVA_HOME/bin
    TOMCAT_HOME=/usr/jakarta-tomcat-3.2.2
    CLASSPATH=.:/home/web/HB/classes:/home/web/HD/WEB-INF/classes:$TOMCAT_HOME/lib/classes12.jar:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/jre/lib/i18n.jar:$JAVA_HOME/lib/tools.jar
    export JAVA_HOME PATH TOMCAT_HOME CLASSPATH
    java test.Test

  • Throws Core Dump for OCISessionBegin() on Linux for Oracle Client v10.2.0.2

    hi,
    The OCI method, OCISessionBegin() is throwing an core dump on 10g client in Linux on C++, but the same code works fine for 8i and 9i client. Core dumps for 10g Client. 10g tnsnames.ora file is same as of 9i. I just debeggued with the core and says failing in OCISessionBegin() method. I would like to know is there any problem with Oracle Client v10.2.0.2? or how does i can solve the issue? appriciate a quick help in this regard.
    Thanks,
    Sreeni

    Have you looked in the Knowledge Base information at metalink? That would be the place to start.
    If that does not work then the next step would be to remove this thread and post in the OCI - OCCI forum where there are people that can actually help you.

  • Weblogic 6.1 sp5 core dump by OCI driver

    I have encountered a core dump problem on weblogic server 6.1 SP5 the error message
    as below, I am using weblogic oci driver for oracle "libweblogicoci37.so" , anyone
    can help?
    An unexpected exception has been detected in native code outside the VM.
    Unexpected Signal : 4 occurred at PC=0x242795c
    Function name=(N/A)
    Library=(N/A)
    NOTE: We are unable to locate the function name symbol for the error
    just occurred. Please refer to release documentation for possible
    reason and solutions.

    Galen Boyer wrote:
    On Sun, 28 Mar 2004, [email protected] wrote:
    Galen Boyer wrote:
    On Sat, 27 Mar 2004, [email protected] wrote:
    One way to get a substantial boost in reliability is to switch
    to the latest appropriate Oracle thin driver.But then you can suffer performance losses.Actually, the latest oracle thin drivers are very fast. The 10g
    driver in particular. Well, we are on 9i here and we have lots of CLOB and BLOB
    operations. Understood. The latest should work. (How comfortable does that make you ;) )
    It is a sad choice we used to have to make between
    faster-but-buggy homicidal old OCI code (wherein a bug in one
    module can cause a segfault in an innocent unrelated module's
    execution, and bring down a whole JVM) and the reliability of
    Java. Fortunately, the future is at hand. The future is at hand? I do believe you are starting to sound a
    bit like an evangelist. :-)Yep. Back in '96 when we wrote and marketed all the first JDBC drivers
    for MS SQLServer, Oracle, Informix and Sybase, we did it solely
    so enable our application server to be able to do real work. We were all
    absolutely sure the driver market would dry up in 6 months as all the
    DBMS vendors made excellent free type-4 drivers. We were over-optimistic.
    Sybase's driver still requires you to install non-standard tables and
    procedures in the DBMS. Oracle drivers are sloutching toward sufficiency,
    but their first GA driver had a hard-wired value of READ_UNCOMMITTED
    for getTransactionIsolation, and if you tried setTransactionIsolation
    of either READ_COMMITTED or SERIALIZABLE, the driver would throw an
    exception! We actually had a weblogic workaround to intercept this
    jdbc call and send the "ALTER SESSION " to do what the customer wanted!
    At the same time we had a major struggle to get Oracle to admit that
    in spite of their documentation, OCI was not threadsafe (killing our
    OCI-based driver in weblogic applications) until 7.1.4 on solaris
    and NT, and 8.0.5 on other platforms. Did you know they had separate
    codelines for OCI on each platform? For a while each platform's OCI
    had a different hard-wired limit of the number of simultaneous connections
    on client could have? For a while that limited what our application server
    could do. OCI was written for simple teller-like client applications.
    The new thin drivers take on more of the possible client-side
    processing, and can do RAC failover etc. JoeOh well. I for one am a bit skeptical that Oracle is going to
    fix java driver bugs before OCI bugs and I don't have any reason
    to commit to any "platform independent" solution like java's thin
    driver. We are completely based on Oracle here and we have a
    J2EE solution for the app just cause we had to choose something.
    If thin is better, than we will go with that.The last highest-level talks I had with Oracle folks they indicated that
    they wanted everyone to go thin. OCI was a headache for them. Their
    OCI code was undocumented and all the original experts had left the company.
    That was in 2000 or so, so it is likely better now. They may well have
    invested a lot of reverse-documentation by now.
    One of the benefits of Java is the reliability. I think you'll
    ultimately be happier with the thin. We do want you successful.
    Joe

  • ORA-07445: exception encountered: core dump in Standby database

    Hello,
    This is Oracle 10.1.0 in a Logical Stanby database under Solaris9
    The apply stopped with these errors and then it started by itself:
    LOGSTDBY status: ORA-16226: DDL skipped due to lack of support
    <date>
    Errors in <trace file>
    ORA-07445: exception encountered: core dump [krvsmso()+812] [SIGSEGV] [Address not mapped to object] [0x000000004] [] []
    <date>
    Trace dumping is performing id=[cdmp_20100226210050]
    <date>
    Errors in <trace file>
    ORA-12805: parallel query server died unexpectedly
    LOGSTDBY Apply process P006 pid=67 OS id=10471 stopped
    The trace file is this one:
    *** SERVICE NAME:(SYS$BACKGROUND)
    *** SESSION ID:
    Exception signal: 11 (SIGSEGV), code: 1 (Address not mapped to object), addr: 0x4, PC: [0x101fb226c, krvsmso()+812]
    ksedmp: internal or fatal error
    ORA-07445: exception encountered: core dump [krvsmso()+812] [SIGSEGV] [Address not mapped to object] [0x000000004] [] []
    ----- Call Stack Trace -----
    calling call entry argument values in hex
    location type point (? means dubious value)
    ksedmp()+1008 CALL ksedst() 000000042 ? 104C02118 ?
    104C02128 ? 000000000 ?
    1052DCE18 ? 000000008 ?
    ssexhd()+992 CALL ksedmp() 000000002 ? 000105000 ?
    10512D000 ? 00010512D ?
    000105000 ? 000000001 ?
    Has someone faced the same problem or know why and how to solve it?
    Thanks!
    Edited by: lulon on 04-mar-2010 8:20

    Bug 4369756 Log apply may dump [krvsmso]

Maybe you are looking for