Exec behaviour

I'm trying to run a program that takes multiple arguments. I'm using
Process p = Runtime.getRuntime().exec("program -o" + f2.getAbsolutePath() + " " + f.getAbsolutePath());
System.err.println(p.waitFor());But it terminates with return code 1. If I run the same command from command prompt it executes fine. What could trigger the difference? On linux it never terminates even, but stops on a read call. It seems as if it doesn't file the files specified (the same return code), but I've checked their paths and there's nothing wrong with them. I can print out getAbsolutePath() paste it to prompt and it works.
Any hints? What are the differences executing from shell and from Java?

est_ie wrote:
Are you suggesting:Process p = Runtime.getRuntime().exec("cmd program -o" +
                         f2.getAbsolutePath() + " " + f.getAbsolutePath());for Windows? Or what did you mean by shellPath? Tried and it never returns, though there's no process for "program" running.Almost. To make cmd execute a process and terminate when the process does you would need to pass a /C switch to it.
>
Also tried Process p = Runtime.getRuntime().exec("notepad " + f.getAbsolutePath());and this one executed fine..Ok, so I guess it does search the path automatically without the help of the shell.
Is 'program' in the PATH? Or are you making an assumption about what your current working directory is perhaps?
The only other thing I'd suggest is reading the oft-quoted "traps" documentation:
[http://www.javaworld.com/javaworld/jw-12-2000/jw-1229-traps.html]

Similar Messages

  • Where can I find the description of the codes returned by exitValue()?

    Hi Everybody,
    I have a java porgram on HP/UX and this program executes the OS level commands and exe file on HP UNIX. When I supply "/usr/bin ls -l" as a param to this program it executes it very well.
    But if I pass the "/utils/Myapp/app arg1 arg2" as a parameter it returns some non zero codes
    I tried several ways to make it work and I even harcoded the "/utils/Myapp/app arg1 arg2" in the program but it never executes it properly and I got the following return Code return by exitvalue() during my hit and trial method.
    255,17,15,12
    Does any one have clue what are they.
    Note: When I executes /utils/Myapp/app arg1 arg2" from the UNIX prompt it works fine
    The java program is given below.
    Pl help
    Thanks
    Yatsomy.
    This is my first program in JAVA.
    import java.lang.Runtime;
    import java.lang.Process;
    import java.io.IOException;
    import java.lang.InterruptedException;
    class executecmd {
    public static void main(String args[]) {
    System.out.println("In main");
    try {
    /* Execute the command using the Runtime object and get the
    Process which controls this command */
    Process p = Runtime.getRuntime().exec(args[0]);
    /* Use the following code to wait for the process to finish
    and check the return code from the process */
    try {
    p.waitFor();
    /* Handle exceptions for waitFor() */
    } catch (InterruptedException intexc) {
    System.out.println("Interrupted Exception on waitFor: " + intexc.getMessage());
    System.out.println("Return code from process"+ p.exitValue());
    System.out.println("Done executing");
    /* Handle the exceptions for exec() */
    } catch (IOException e) {
    System.out.println("IO Exception from exec : " + e.getMessage());
    e.printStackTrace();

    1. exitValue() codes are the numeric codes returned by native applications you're calling: the meaning of this code is both application and platform dependant (it has nothing to do with java), so you should try to find those info in "app" documentation, or in HP Unix standard docs.
    2. I think you'd better "debug" the Runtime.exec() behaviour by capturing stdout and especially stderr of the spawned process: doing so, you will be able to see error messages printed out by called applications or commands...
    It's very simple using this small class:
    /** connects I/O streams, just like a pipe :-)
    * @author: Giorgio Maone
    class Pipe {
    private InputStream in;
    private OutputStream out;
    public Pipe(InputStream in, OutputStream out) {
       this.in=in; this.out=out;
    public void connect() {
       new Thread() {
        public void run() {
         try {
          for(int b;(b=in.read())!=-1;) {
            out.write(b);
          out.flush();
        } catch(IOException ex) {}
      }.start();
    }So you can do this:
    Process p = Runtime.getRuntime().exec(args[0]);
    new Pipe(p.getInputStream(),System.out).connect();
    new Pipe(p.getErrorStream(),System.out).connect();
    new Pipe(System.in,p.getOutputStream()).connect();
    try {
    System.out.println("Exit code: "+p.waitFor());
    } catch(InterruptedException ex) {}If you want to use a "smart wrapper" on Runtime.exec(), feel free to use my MultiExec class:
    /** executes multiple commands in one shell
    * @author: Giorgio Maone
    import java.io.*;
    public class MultiExec {
    static final boolean IS_WIN=System.getProperty("os.name").toLowerCase().indexOf("win")==0;
    protected String shell=IS_WIN?"":"sh";
    public void setShell(String s) {
       shell=s;
    public String getShell() {
       return shell;
    public Process exec(String cmds[]) throws IOException {
      File f=File.createTempFile("muexec",".bat");
      PrintWriter out=new PrintWriter(new FileWriter(f));
      if(IS_WIN) out.println("@echo off");
      for(int j=0,len=cmds.length; j<len; j++)
        out.println(cmds[j]);
      out.close();
      f.deleteOnExit();
      return Runtime.getRuntime().exec(shell+" "+f.getCanonicalPath());
    public int execAndWait(String cmds[]) throws IOException {
       Process p=exec(cmds);
      new Pipe(p.getInputStream(),System.out).connect();
      new Pipe(p.getErrorStream(),System.out).connect();
      new Pipe(System.in,p.getOutputStream()).connect();
      int exitCode=-1;
      try {
       exitCode=p.waitFor();
       } catch(InterruptedException ex) {}
      return exitCode;
    static class Pipe {
       private InputStream in;
      private OutputStream out;
      public Pipe(InputStream in, OutputStream out) {
        this.in=in; this.out=out;
      public void connect() {
        new Thread() {
         public void run() {
          try {
           for(int b;(b=in.read())!=-1;) {
             out.write(b);
           out.flush();
         } catch(IOException ex) {}
       }.start();

  • Strange behaviour of Runtime.getRuntime().exec(command)

    hello guys,
    i wrote a program which executes some commands in commandline (actually tried multiple stuff.)
    what did i try?
    open "cmd.exe" manually (administrator)
    type "echo %PROCESSOR_ARCHITECTURE%" and hit enter, which returns me
    "AMD64"
    type "java -version" and hit enter, which returns me:
    "java version "1.6.0_10-beta"
    Java(TM) SE Runtime Environment (build 1.6.0_10-beta-b25)
    Java HotSpot(TM) 64-Bit Server VM (build 11.0-b12, mixed mode)"
    type "reg query "HKLM\SOFTWARE\7-zip"" returns me:
    HKEY_LOCAL_MACHINE\SOFTWARE\7-zip
    Path REG_SZ C:\Program Files\7-Zip\
    i wrote two functions to execute an command
    1) simply calls exec and reads errin and stdout from the process started:
    public static String execute(String command) {
              String result = "";
              try {
                   // Execute a command
                   Process child = Runtime.getRuntime().exec(command);
                   // Read from an input stream
                   InputStream in = child.getInputStream();
                   int c;
                   while ((c = in.read()) != -1) {
                        result += ((char) c);
                   in.close();
                   in = child.getErrorStream();
                   while ((c = in.read()) != -1) {
                        result += ((char) c);
                   in.close();
              } catch (IOException e) {
              return result;
         }the second function allows me to send multiple commands to the cmd
    public static String exec(String[] commands) {
              String line;
              String result = "";
              OutputStream stdin = null;
              InputStream stderr = null;
              InputStream stdout = null;
              // launch EXE and grab stdin/stdout and stderr
              try {
                   Process process;
                   process = Runtime.getRuntime().exec("cmd.exe");
                   stdin = process.getOutputStream();
                   stderr = process.getErrorStream();
                   stdout = process.getInputStream();
                   // "write" the parms into stdin
                   for (int i = 0; i < commands.length; i++) {
                        line = commands[i] + "\n";
                        stdin.write(line.getBytes());
                        stdin.flush();
                   stdin.close();
                   // clean up if any output in stdout
                   BufferedReader brCleanUp = new BufferedReader(
                             new InputStreamReader(stdout));
                   while ((line = brCleanUp.readLine()) != null) {
                        result += line + "\n";
                   brCleanUp.close();
                   // clean up if any output in stderr
                   brCleanUp = new BufferedReader(new InputStreamReader(stderr));
                   while ((line = brCleanUp.readLine()) != null) {
                        result += "ERR: " + line + "\n";
                   brCleanUp.close();
              } catch (IOException e) {
                   // TODO Auto-generated catch block
                   e.printStackTrace();
              return result;
         }so i try to execute the commands from above (yes, i am using \\ and \" in java)
    (1) "echo %PROCESSOR_ARCHITECTURE%"
    (2) "java -version"
    (3) "reg query "HKLM\SOFTWARE\7-zip""
    the first function returns me (note that ALL results are different from the stuff above!):
    (1) "" <-- empty ?!
    (2) java version "1.6.0_11"
    Java(TM) SE Runtime Environment (build 1.6.0_11-b03)
    Java HotSpot(TM) Client VM (build 11.0-b16, mixed mode, sharing)
    (3) ERROR: The system was unable to find the specified registry key or value.
    the second function returns me:
    (1) x86 <-- huh? i have AMD64
    (2) java version "1.6.0_11"
    Java(TM) SE Runtime Environment (build 1.6.0_11-b03)
    Java HotSpot(TM) Client VM (build 11.0-b16, mixed mode, sharing)
    (3) ERROR: The system was unable to find the specified registry key or value.
    horray! in this version the java version is correct! processor architecture is not empty but totally incorrect and the reg query is still err.
    any help is wellcome
    note: i only put stuff here, which returns me strange behaviour, most things are working correct with my functions (using the Runtime.getRuntime().exec(command); code)
    note2: "reg query "HKLM\HARDWARE\DESCRIPTION\System\CentralProcessor\0" /t REG_SZ" IS working, so why are "some" queries result in ERR, while they are working if typed by hand in cmd.exe?

    ok, i exported a jar file and execute it from cmd:
    java -jar myjar.jar
    now the output is:
    (1) "" if called by version 1, possible to retrieve by version 2 (no clue why!)
    (2) "java version "1.6.0_10-beta"
    Java(TM) SE Runtime Environment (build 1.6.0_10-beta-b25)
    Java HotSpot(TM) 64-Bit Server VM (build 11.0-b12, mixed mode)"
    (3) C:\Program Files\7-Zip\
    so all three problems are gone! (but its a hard way, as i need both functions and parse a lot of text... :/ )
    thanks for the tip, that eclipse changes variables (i really did not knew this one...)

  • Runtime.exec() odd behaviour.

    String p = "smssend 118.sms " +username.trim() +" " +password.trim()
                                           +" " +jTextField1.getText().trim() +" \""
                                                +jTextArea1.getText().trim()+"\"";
                System.out.println(p);
                Runtime rt = Runtime.getRuntime();
                Process proc = rt.exec(p);This is in a try/catch block which also reads in the output from running it.
    If I copy and paste the println'd string from this into a shell it works, but when I run the code the program complains of too many arguments if the last one is a string with spaces. Yet in a bash script I use to call the program that's perfectly ok. This is the line in the bash script that would call it:
    smssend 118.sms $USERNAME $PASSWORD  $PHONE "$MSG" Any ideas? Thanks :)

    No one should use Runtime.exec without reading this first:
    http://www.javaworld.com/javaworld/jw-12-2000/jw-1229-traps.html
    %

  • Weird behaviour with Runtime.getRuntime.exec() attempting to start IE

    I have developed a sample scheduler that it a web page the user fill in and then create a process schedule by the Timer class. The process starts IE in order to automate data entry normally done by a user. The Java code run well but IE when start from the p = Runtime.getRuntime().exec() class freeze. Is anyone can tell if IE require special setting to run in background?
    Here the Java code but once again it work well but IE freeze and cause the forked process to hang.
    // The schedule task
    public void scheduleTask(Object o) throws ApplicationException {
    ScheduleBean sb = (ScheduleBean)o;
    try {
    Timer timer = new Timer(true);
    RunReslotting rr = new RunReslotting();
    timer.schedule(rr, sb.getSchedulingDate());
    catch(IllegalArgumentException iae) {
    throw new ApplicationException(iae.getMessage());
    catch(IllegalStateException ise) {
    throw new ApplicationException(ise.getMessage());
    public class RunReslotting extends TimerTask {
    protected RunReslotting() {
    public void run() {
    String[] cmdLineParam = transportProfile(2);
    cmdLineParam[0] = "location=" + wr.getLocation();
    cmdLineParam[1] = "loc_class=" + wr.getNewStrategy();
    forkProcess("runie.bat", cmdLineParam);
    private String[] transportProfile(int startAt) {
    envProf = System.getenv();
    profCmd = new String[envProf.size() + startAt];
    itr = envProf.entrySet().iterator();
    int i = startAt;
    while (itr.hasNext()) {
    entry = (Map.Entry)itr.next();
    profCmd[i] = (String)entry.getKey() + "=" + (String)entry.getValue();
    i++;
    return profCmd;
    private void forkProcess(String processName, String[] osParam) throws ApplicationException {
    // Lance un nouveau process
    p = null;
    int i=0;
    try {
    p = Runtime.getRuntime().exec(processName, osParam);
    // Vide les buffers du process pour eviter de geler
    mcError = new MessageCatcher(p.getErrorStream());
    mcOutput = new MessageCatcher(p.getInputStream());
    mcError.start();
    mcOutput.start();
    i = p.waitFor();
    if ( (i != 0) || (mcError.getMessage() != null) || (mcOutput.getMessage() != null) ) {
    System.err.println("*** Process failed RC:" + i + " *** ");
    if (mcOutput.getMessage() != null) {
    System.err.println("Output messages: " + mcOutput.getMessage());
    if (mcError.getMessage() != null) {
    System.err.println("Error messages: " + mcError.getMessage());
    throw new ApplicationException("*** Process failed *** ");
    catch(IOException ioe) {
    throw new ApplicationException(ioe.getMessage());
    catch(InterruptedException ie) {
    throw new ApplicationException(ie.getMessage());
    Any suggestion will be appreciate. I�m working on that scheduler for a while and i'm desperate
    Thanks
    Francis

    This starts IE for me, no problem
    String[] cmd = {"C:\\Program Files\\Internet Explorer\\iexplore.exe"};
    Runtime.getRuntime().exec(cmd);

  • Incomplete behaviour of System Exec VI when part of a LabVIEW web service

    Background
    I would like to execute arbitrary command line commands via a LabVIEW web service.
    Problem
    I have a LabVIEW project (attached) with a VI boot.vi that takes a string as an argument, which is handed over to the System Exec VI.
    This boot.vi works nicely: when I execute it with a string "test", it nicely executes my Ruby program "test.rb" because (i) I put the path of my the directory inside which test.rb resides into my PATH system variable and (ii) ".rb" endings are associated with Ruby programs on my PC. Similary, I can hand over the string "PATH", and it displays my PATH system variable.
    However, if I build and deplay boot.vi as a LabVIEW webservice, the situation looks differently:
    - the URL "http://localhost:8080/serviceManager/boot/PATH" works fine: the content of my PATH system variable is correctly displayed in the browser window as expected.
    - However, the URL "http://localhost:8080/serviceManager/boot/test" does not work as expected. The following error message (coming Standard Error output of the System Exec VI) is displayed: 'test' is not recognized as an internal or external command, operable program or batch file.
    My conclusion
    System Exec VI does make correct use of the search paths in the PATH system variable only when NOT executed as part of a web service. This is the case although even in a web service, the content the PATH system variable is KNOWN to the System Exec VI. Strange!
    Question
    Am I doing something wrong? Or is there a work-around?
    Attachments:
    serviceManager.zip ‏7 KB

    I just wanted to add my experiences to this thread.  We have a similar web application, and in fact it seems like we followed many of the same trials with the Internet Toolkit and G Web Server.
    As of today, I have migrated our GWS/cgi based application to use web services and the LabVIEW 2009 built-in web server.  It was a fairly straightforward move, though I did run into difficulties bridging the gap between our "normal" application instance and that of the web server that holds the web service VI's.
    Now I'm looking to move to LabVIEW 2010 and right away running into some problems.  While our web application has individual pages served depending on the web service called, it also uses a common pool of static web pages.  Typically these would install to the traditional "web root" folder and would be served from there.
    LabVIEW 2010 has the "Application Web Server" set up as a service that starts with the system.  That seems to work fine.  It also hosts its own configuration page through the "System Web Server" on port 3580.  This too seems to work, but has very few configuration options available.
    I have also spotted this article that discusses serving static pages from the Application Web Server:
    http://digital.ni.com/public.nsf/allkb/2D926638796FB20E8625778F00572966
    I believe I can drill down into the web server configuration (.conf) files and set things appropriately, but I think there should be more documentation available from NI describing the configuration options and how to support these in a deployed web application.
    James

  • How can I use terminal to make links open in same window the default behaviour, as it was in Safari 5.0, How can I use terminal to make links open in same window the default behaviour, as it was in Safari 5.0

    In Lion, the default of pressing a link on a web page, is to open the page in a new tab. In itself, I do like this because this is what I did for 19 out of any 20 links, which I command+clicked in previous Safari versions.
    However, there is a snag to this behaviour. Most (all?) secure site do not like links to be opened in a new tab. For example, when I am doing Web banking, The the linked page doesn’t open in new tab. Rather I get a page telling me my login session is expired. Probably a security measure instituted by my bank.
    I since found out, that a command-click opens lings in the same window. Theoretically that solves the problem, if I would think about this all the time. I don't. Old habits die slowly.
    Is there a terminal command to make links open in same window the default behaviour, as it was in Safari 5.0.

    Hi Eric,
    I got it figured out today, basically you have to load the Parallel Flash Loader first into FPGA ram. It is a special .sof file (pfl_epXXXX.sof) based on your FPGA. Code is actually pretty straight forward, using the Sys Exec VI. Use the windows based programmer to generate the .cdf file that identifies your FPGA, attached Flash and .pof file .
    Syntax was odd going into Sys Exec. Note the extra "C" in in front of the "quartus_prm.exe" I have no idea why that was needed, but I was getting an error until I just happened to put it in there (Blind Luck :-))
    I used a 2 element array going into a four loop
    cmd /cquartus_pgm.exe -c USB-BLASTER -m JTAG -o P;pfl_epXXXX.sof
    cmd /cquartus_pgm.exe -c USB-BLASTER -m JTAG S_FPGA.cdf
    Defining the working director C:\altera\12.1sp1\qprogrammer\bin
    And added match string with "Successfully performed operation" on the output in the loop to make sure everything loaded correctly then adding the array to give me a overall P/F
    To anyone doing this same thing Altera's documentation is poor to say the least. It took most of a week to figure this out Not allowed to upload code, so anyone wanting details just post here and I will try to help. This was painful, with lots of lessons learned.
    Thanks for the interest though
    Best regards John

  • Start Thread method behaviour

    I'm using Oracle 10
    Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
    With the Partitioning, OLAP and Data Mining optionsI created two Java classes and a wrapper procedure.
    1. The first class timeOutSAPEntry has a delay caused by sleep method of 10 sec. then updates a row in table sap_entry.
    2. The second class createMonitorSAPEntry creates an instance of timeOutSAPEntry, call start() method and ends.
    3. And the wrapper procedure just calls createMonitorSAPEntry.
    My problem: when I call the wrapper procedure, it hangs for 10 sec (consequence of sleep method). But, I expected that the thread could be created, started and then the control returns to procedure and finishes immediatelly. You can see in the execution below the sysdate before and after the procedure call.
    Is there any solution? I would like the same behaviour of others JVM, where the main thread continues the execution and not hangs out waiting for the started thread.
    create or replace
           and compile java source named "timeOutSAPEntry"
    as
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.PreparedStatement;
    public class timeOutSAPEntry
        extends Thread{
        public void run(){
            try{
                 this.sleep(10000);
                 Connection conn =
                        DriverManager.getConnection("jdbc:default:connection:");
                 PreparedStatement  st = conn.prepareStatement("update cmforna.sap_entry set status = 'Failed' where Status = 'Sent'");
                 st.executeUpdate();
                 st.close();
                 conn.commit();
                 conn.close();      
            }catch(Exception e){
                e.printStackTrace();
    create or replace
           and compile java source named "createMonitorSAPEntry"
    as
    public class createMonitorSAPEntry{
       public static void create(){
            timeOutSAPEntry to = new timeOutSAPEntry();
            to.start();
    create or replace procedure create_monitor_post
    as
    language java name 'createMonitorSAPEntry.create()';
    SQL> insert into sap_entry
      2  (id, posted_on, status)
      3  values
      4  (6, sysdate, 'Sent');
    1 row created.
    SQL>
    SQL> commit;
    Commit complete.
    SQL>
    SQL> select to_char(sysdate, 'hh24:mi:ss') Before_Time from dual;
    BEFORE_T
    16:27:04
    SQL>
    SQL> exec create_monitor_post;
    PL/SQL procedure successfully completed.
    SQL>
    SQL> select to_char(sysdate, 'hh24:mi:ss') After_Time from dual;
    AFTER_TI
    16:27:14
    SQL> Many tks,
    Miguel

    Add a KeyAdapter like this:
    addKeyListener(new KeyAdapter() {
      public void keyPressed(KeyEvent ke) {
        int key = ke.getKeyCode();
        if (key == KeyEvent.VK_LEFT) x1--;
        if (key == KeyEvent.VK_RIGHT) x1++;
    });*Note that I added this just after the bouncing = true; ... which is on about line 33.
    **Note that you will need to click in the Applet before the keys will function.
    ***Note that you will also likely want to slow down the balls.
    ~Bill

  • Strange behaviour in PL/SQL package - known bug or feature?

    On 10g (10.1.0.2.0/win32) we have some packages who behaves different than on 9i and 8.1.7. The problem is about a call to a procedure who clears a package record. The behaviour is strange because the result is wrong depending on the datatype of the elements in the record. The following example illustrates the problem:
    create or replace package p as
    type vc_type is record(f varchar2(10));
    type nl_type is record(f number(10));
    type nu_type is record(f number);
    vc_rec vc_type;
    nl_rec nl_type;
    nu_rec nu_type;
    procedure vc;
    procedure nl;
    procedure nu;
    end p;
    sho err
    create or replace package body p as
    procedure clr is
    begin
    vc_rec := null;
    nl_rec := null;
    nu_rec := null;
    end clr;
    procedure vc is
    w vc_rec.f%type;
    begin
    vc_rec.f := '5';
    w := vc_rec.f;
    dbms_output.put_line('vc, before clr. w: '||w||', vc_rec.f: '||vc_rec.f);
    p.clr;
    dbms_output.put_line('vc, after clr. w: '||w||', vc_rec.f: '||vc_rec.f);
    dbms_output.put_line('Expected: w = 5 and vc_rec.f = null');
    end vc;
    procedure nl is
    w nl_rec.f%type;
    begin
    nl_rec.f := 5;
    w := nl_rec.f;
    dbms_output.put_line('nl, before clr. w: '||w||', nl_rec.f: '||nl_rec.f);
    p.clr;
    dbms_output.put_line('nl, after clr. w: '||w||', nl_rec.f: '||nl_rec.f);
    dbms_output.put_line('Expected: w = 5 and nl_rec.f = null');
    end nl;
    procedure nu is
    w nu_rec.f%type;
    begin
    nu_rec.f := 5;
    w := nu_rec.f;
    dbms_output.put_line('nu, before clr. w: '||w||', nu_rec.f: '||nu_rec.f);
    p.clr;
    dbms_output.put_line('nu, after clr. w: '||w||', nu_rec.f: '||nu_rec.f);
    dbms_output.put_line('Expected: w = 5 and nu_rec.f = null');
    end nu;
    end p;
    sho err
    set serveroutput on size 1000000
    exec p.vc
    exec p.nl
    exec p.nu
    The output on my database is:
    vc, before clr. w: 5, vc_rec.f: 5
    vc, after clr. w: 5, vc_rec.f:
    Expected: w = 5 and vc_rec.f = null
    nl, before clr. w: 5, nl_rec.f: 5
    nl, after clr. w: , nl_rec.f:
    Expected: w = 5 and nl_rec.f = null
    nu, before clr. w: 5, nu_rec.f: 5
    nu, after clr. w: 5, nu_rec.f: 5
    Expected: w = 5 and nu_rec.f = null
    Whats going on here? Can anyone help?

    Looks like a bug to me. I reproduced the results in 10.1.0.3.0 (linux) as well. Obviously you should check on Metalink and log a TAR if you don't find it.

  • 11g upgrade - CBO Behaviour

    Hello Guys:
    We recently migrated from 9.2.0.7 RBO ( Sun sparc, Sol 9.0 ) to 11.2.0.1 CBO ( Sun Sparc, Sol 10). Our experience was really bad. To give a background about the application that uses this Database. It was a legacy application where business rules are driven by triggers. Our testing went perfectly. But once we upgraded the database to 11g in production we started seeing the following problems.
    1. More Physical reads ( Excessive I/O )
    2. DB File sequential read is the top most wait event.
    3. Some of the queries are super fast all of a sudden and super bad all of a sudden. ( Unpredictable Behaviour)
    4. Most of our SQR Reports ( Daily, monthly and weekly ) were consistently slow. Some from 10 - 20 minutes to hours delayed.
    Some of our observations...
    1. 11g consumes roughly double the memory as compared to 9i.
    2. More I/O as the optimizer feels FTS is the best plan.
    3. Bind peeking
    4. Improper use of Histograms by CBO on some tables.
    5. Server Hardware itself was a problem but we got that fixed with a patch. Problems 1 - 4 continued to exist even after fixing this but on a lesser magnitude. We collected the system statistics when the Server was broken and it is as given below.
    SNAME PNAME PVAL1
    SYSSTATS_INFO FLAGS 0
    SYSSTATS_MAIN CPUSPEEDNW 286.726
    SYSSTATS_MAIN IOSEEKTIM 5.942
    SYSSTATS_MAIN IOTFRSPEED 4227.454
    SYSSTATS_MAIN SREADTIM 52667.555
    SYSSTATS_MAIN MREADTIM 89819.59
    SYSSTATS_MAIN CPUSPEED 291
    SYSSTATS_MAIN MBRC 19
    P.S. : I know that this terribly bad. But we are unsure if this value is causing any problems now. May be our database is fixed if these statistics are collected again. At least our database performance acceptable if not best. We dont want to get a worst situation from where we are right now.
    At one point we felt that changing statistics is what is causing the problem and disabled publishing the statistics. Things look stable now.
    I am noticing that some of the critical tables are having stale_stats. Its been a week now and I don't see any performance problems in our system. Our stale_percent is set to default 10% . May be the existing statistics will go bad once once it reaches 30 or 40 % stale data.
    My only concern now is at some point we are going to have bad performance because of bad statistics..It might be within two months or after six months. But once we have that problem only possible option to come to our rescue is publishing the pending statistics that we have been collecting so far.But again there are no guarantees that the published statistics will completely solve the problem.
    Given this situation we are not quite sure as what is the best approach to manage the statistics in our production databases. All we know is that there are some tables where the optimizer thinks that the stats are good but in the actual case it is not. We have to identify these tables and manage statistics on them differently and let the automatic statistics collection get published regularly for the rest of the database.
    Is there a concrete approach to identify these objects? And how about the impact of bad statistics.
    Parameters for your reference:
    *._disable_fast_validate=TRUE
    *._log_archive_callout='LOCAL_FIRST=TRUE'
    *.background_core_dump='partial'
    *.compatible='11.2.0'
    *.control_files='/u03/oradata/PROD-RGW/control01.ctl','/u05/oradata/PROD-RGW/control02.ctl'
    *.core_dump_dest='/u01/app/oracle/admin/PROD-RGW/cdump'
    *.db_block_size=4096
    *.db_cache_size=2202009600
    *.db_domain='thecnrt.com'
    *.db_file_multiblock_read_count=32
    *.db_files=60
    *.db_name='PROD-RGW'
    *.diagnostic_dest='/u01/app/oracle'
    *.dml_locks=1000
    *.event='10499 trace name context forever,level 1'#return 0 for the scale if NUMBER created without specifying the scale
    *.fal_client='PROD-RGW2'
    *.fal_server='PROD-RGW'
    *.filesystemio_options='setall'
    *.instance_name='PROD-RGW'
    *.java_pool_size=157286400
    *.open_cursors=500
    *.optimizer_capture_sql_plan_baselines=FALSE
    *.optimizer_mode='ALL_ROWS'
    *.pga_aggregate_target=1610612736
    *.processes=3000
    *.remote_login_passwordfile='EXCLUSIVE'
    *.remote_os_authent=true
    *.sec_case_sensitive_logon=FALSE
    *.session_cached_cursors=500
    *.sessions=3000
    *.shadow_core_dump='none'
    *.shared_pool_size=1048576000
    *.sort_area_size=262144
    *.timed_statistics=true
    *.undo_management='AUTO'
    *.undo_retention=14400
    *.undo_tablespace='
    UNDOTBS'
    *.workarea_size_policy='AUTO'
    Best Regards,
    Bala

    Hello Srini:
    Thanks for your response. Please find the requested information. I am a good follower of your threads in OTN when ever I get time.
    Server Configuration:
    Host Name Platform CPUs Cores Sockets Memory(GB)
    CNRT Solaris[tm] OE (64-bit) 32 8 1 15.99
    Key stats:
    Cache Sizes Begin End
    ~~~~~~~~~~~ ---------- ----------
    Buffer Cache: 1,456M 1,456M Std Block Size: 4K
    Shared Pool Size: 1,664M 1,664M Log Buffer: 16,656K
    Load Profile Per Second Per Transaction Per Exec Per Call
    ~~~~~~~~~~~~ --------------- --------------- ---------- ----------
    DB Time(s): 12.6 0.4 0.01 0.01
    DB CPU(s): 3.7 0.1 0.00 0.00
    Redo size: 149,822.1 5,204.2
    Logical reads: 46,034.3 1,599.0
    Block changes: 886.7 30.8
    Physical reads: 2,239.2 77.8
    Physical writes: 339.9 11.8
    User calls: 1,552.4 53.9
    Parses: 368.8 12.8
    Hard parses: 2.5 0.1
    W/A MB processed: 10.2 0.4
    Logons: 3.4 0.1
    Executes: 952.5 33.1
    Rollbacks: 6.9 0.2
    Transactions: 28.8
    Instance Efficiency Percentages (Target 100%)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    Buffer Nowait %: 99.46 Redo NoWait %: 99.99
    Buffer Hit %: 97.74 In-memory Sort %: 100.00
    Library Hit %: 99.42 Soft Parse %: 99.33
    Execute to Parse %: 61.28 Latch Hit %: 99.81
    Parse CPU to Parse Elapsd %: 74.77 % Non-Parse CPU: 96.49
    Shared Pool Statistics Begin End
    Memory Usage %: 96.35 96.27
    % SQL with executions>1: 68.89 74.88
    % Memory for SQL w/exec>1: 68.21 76.37
    I am seeing that the tablespace I/O AVG Read < 10 ms. I will take a look at links that you have recommended.
    Regards,
    Bala

  • Memory leak under GNU/Linux when using exec()

    Hi,
    We detected that our application was taking all the free memory of the computer when we were using intensively and periodically the method exec() to execute some commands of the OS. The OS of the computer is a GNU/Linux based OS.
    So, in order to do some monitoring we decided to wrote a simple program that called exec() infinite number of times, and using the profiler tool of Netbeans we saw a memory leak in the program because the number of surviving generations increased during all the execution time. The classes that have more surviving generations are java.lang.ref.Finalizer, java.io.FileDescriptor and byte[].
    We also decided to test this simple program using Windows, and in that OS we saw that the memory leak disappeared: the number of surviving generations was almost stable.
    I attach you the code of the program.
    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    public class testExec
        public static void main(String args[]) throws IOException, InterruptedException
            Runtime runtime = Runtime.getRuntime();
            while (true)
                Process process = null;
                InputStream is = null;
                InputStreamReader isr = null;
                BufferedReader br = null;
                try
                    process = runtime.exec("ls");
                    //process = runtime.exec("cmd /c dir");
                    is = process.getInputStream();
                    isr = new InputStreamReader(is);
                    br = new BufferedReader(isr);
                    String line;
                    while ((line = br.readLine()) != null)
                        System.out.println(line);
                finally
                    process.waitFor();
                    if (is != null)
                        is.close();
                    if (isr != null)
                        isr.close();
                    if (br != null)
                        br.close();
                    if (process != null)
                        process.destroy();
    }¿Is anything wrong with the test program we wrote? (we know that is not usual to call infinite times the command ls/dir, but it's just a test)
    ¿Why do we have a memory leak in Linux but not in Windows?
    I will appreciate any help or ideas. Thanks in advance.

    Hi Joby,
    From our last profiling results, we haven't found yet a proper solution. We think that probably the problem is caused by the byte[]'s/FileInputStreams created by the class UNIXProcess that manage the stdin, stdout and stderr streams. It seems that these byte arrays cannot be removed correctly by the garbage collector and they become bigger and bigger, so at the end they took all the memory of the system.
    We downloaded the last version of OpenJDK 6 (build b19) and modified UNIXProcess.java.linux so when we call its method destroy(), we assign to null those streams. We did that because we wanted to indicate to the garbage collector that these objects could be removed, as we saw that the close() methods doesn't do anything on their implementation.
    public void destroy() {
         // There is a risk that pid will be recycled, causing us to
         // kill the wrong process!  So we only terminate processes
         // that appear to still be running.  Even with this check,
         // there is an unavoidable race condition here, but the window
         // is very small, and OSes try hard to not recycle pids too
         // soon, so this is quite safe.
         synchronized (this) {
             if (!hasExited)
              destroyProcess(pid);
            try {
                stdin_stream.close();
                stdout_stream.close();
                stderr_stream.close();
                // LINES WE ADDED
                stdin_stream = null;
                stdout_stream = null;
                stderr_stream = null;
            } catch (IOException e) {
                // ignore
                e.printStackTrace();
        }But this didn't work at all. We saw that we were able to execute for a long time our application and that the free memory of the system wasn't decreasing as before, but we did some profiling with this custom JVM and the test application and we still see more or less the same behaviour: lots of surviving generations, at some point increase of the used heap to the maximum allowed, and finally the crash of the test app.
    So sadly, we still don't have a solution for that problem. You could try to compile OpenJDK 6, modify it, and try it with your program to see if the last version works for you. Compiling OpenJDK 6 in Linux is quite easy: you just have to download the source and the binaries from here and configure your environment with something like this:
    export ANT_HOME=/opt/apache-ant-1.7.1/
    export ALT_BOOTDIR=/usr/lib/jvm/java-6-sun
    export ALT_OUTPUTDIR=/tmp/openjdk
    export ALT_BINARY_PLUGS_PATH=/opt/openjdk-binary-plugs/
    export ALT_JDK_IMPORT_PATH=/usr/lib/jvm/java-6-sun
    export LD_LIBRARY_PATH=
    export CLASSPATH=
    export JAVA_HOME=
    export LANG=C
    export CC=/usr/bin/gcc-4.3
    export CXX=/usr/bin/g++-4.3Hope it helps Joby :)
    Cheers.

  • Strange Oracle Behaviour - only month end or high load periods

    Hi SAP Gurus
    In one of our systems I am expreriencing a strange behaviour from Oracle, in that it seems to be in reconnect, but yet it is not, it resets and carries on but do produce Dump and SM21 log messages, the dump is not really helpfull as it is the same dump but with different program everytime.
    I have looked in oracle alert log and found no event tying back to the SM21 log message or dump.
    The following is what I found in the developer trace of one of these insident, but there are many, about 125 - 200 for the day during high load:
    Fri Nov 28 10:05:55 2008
    C  *** ERROR => Failed to register application info: orc=3113
    [dboci.c      3042]
    C  *** ERROR => Error 3114 in stmt_fetch()
    [dbsloci.c    13001]
    C  *** ERROR => ORA-3114 occurred when executing SQL statement (parse error offset=0)
    [dbsloci.c    13002]
    C  sc_p=045B18B4,no=29,idc_p=00000000,con=0,act=1,slen=1291,smax=1536,#vars=4,stmt=34DA78C8,table=CATSDB                       
    C  SELECT "MANDT" , "COUNTER" , "PERNR" , "WORKDATE" , "SKOSTL" , "LSTAR" , "SEBELN" , "SEBELP" , "SPRZ\
    C  NR" , "LSTNR" , "RKOSTL" , "RPROJ" , "RAUFNR" , "RNPLNR" , "RAUFPL" , "RAPLZL" , "RKDAUF" , "RKDPOS"\
    C   , "RKSTR" , "RPRZNR" , "PAOBJNR" , "FUND" , "FUNC_AREA" , "GRANT_NBR" , "S_FUND" , "S_FUNC_AREA" , \
    C  "S_GRANT_NBR" , "AWART" , "LGART" , "KAPID" , "SPLIT" , "REINR" , "WABLNR" , "VERSL" , "WTART" , "BW\
    C  GRL" , "WAERS" , "AUFKZ" , "TRFGR" , "TRFST" , "PRAKN" , "PRAKZ" , "OTYPE" , "PLANS" , "KOKRS" , "ME\
    C  INH" , "TCURR" , "PRICE" , "ARBID" , "WERKS" , "AUTYP" , "HRCOSTASG" , "HRKOSTL" , "HRLSTAR" , "HRFU\
    C  ND" , "HRFUNC_AREA" , "HRGRANT_NBR" , "BEMOT" , "UNIT" , "STATKEYFIG" , "TASKTYPE" , "TASKLEVEL" , "\
    C  TASKCOMPONENT" , "BUKRS" , "ERSDA" , "ERSTM" , "ERNAM" , "LAEDA" , "LAETM" , "AENAM" , "APNAM" , "AP\
    C  DAT" , "WORKITEMID" , "LOGSYS" , "STATUS" , "REFCOUNTER" , "REASON" , "BELNR" , "EXTSYSTEM" , "EXTAP\
    C  PLICATION" , "EXTDOCUMENTNO" , "TASKCOUNTER" , "CATSHOURS" , "BEGUZ" , "ENDUZ" , "VTKEN" , "ALLDF" ,\
    C   "OFMNW" , "PEDD" , "AUERU" , "LTXA1" , "LONGTEXT" , "ERUZU" , "CATSAMOUNT" , "CATSQUANTITY" , "ZCAT\
    C  SPLAN" , "ROUTE" , "KUNNR" , "MVGR1" , "GSBER" , "SNAME" , "MAKTX" , "ZAVGHRS" , "ZQANT" , "ZPERNR" \
    C  FROM "CATSDB" WHERE "MANDT" = :A0 AND "WORKDATE" = :A1 AND "WERKS" = :A2 AND "STATUS" < :A3;
    C  sc_p=045B18B4,no=29,idc_p=00000000,con=0,act=1,slen=1291,smax=1536,#vars=4,stmt=34DA78C8,table=CATSDB                       
    C  prep=0,lit=0,nsql=0,lobret=0,#exec=1,dbcnt=0,upsh_p=00000000,ocistmth_p=345E20EC
    C  IN : cols=4,rmax=1,xcnt=0,rpc=0,rowi=0,rtot=0,upto=-1,rsize=17,vmax=32,bound=1,iobuf_p=045DFFA8,vda_p=3470A8D8
    C       lobs=0,lmax=0,lpcnt=0,larr=00000000,lcurr_p=00000000,rret=0
    C  OUT: cols=105,rmax=58,xcnt=58,rpc=1,rowi=0,rtot=1,upto=-1,rsize=895,vmax=128,bound=1,iobuf_p=0E0A4EC8,vda_p=34F8F7E8
    C       lobs=0,lmax=0,lpcnt=0,larr=00000000,lcurr_p=00000000,rret=0
    C  SELECT "MANDT" , "COUNTER" , "PERNR" , "WORKDATE" , "SKOSTL" , "LSTAR" , "SEBELN" , "SEBELP" , "SPRZ\
    C  NR" , "LSTNR" , "RKOSTL" , "RPROJ" , "RAUFNR" , "RNPLNR" , "RAUFPL" , "RAPLZL" , "RKDAUF" , "RKDPOS"\
    C   , "RKSTR" , "RPRZNR" , "PAOBJNR" , "FUND" , "FUNC_AREA" , "GRANT_NBR" , "S_FUND" , "S_FUNC_AREA" , \
    C  "S_GRANT_NBR" , "AWART" , "LGART" , "KAPID" , "SPLIT" , "REINR" , "WABLNR" , "VERSL" , "WTART" , "BW\
    C  GRL" , "WAERS" , "AUFKZ" , "TRFGR" , "TRFST" , "PRAKN" , "PRAKZ" , "OTYPE" , "PLANS" , "KOKRS" , "ME\
    C  INH" , "TCURR" , "PRICE" , "ARBID" , "WERKS" , "AUTYP" , "HRCOSTASG" , "HRKOSTL" , "HRLSTAR" , "HRFU\
    C  ND" , "HRFUNC_AREA" , "HRGRANT_NBR" , "BEMOT" , "UNIT" , "STATKEYFIG" , "TASKTYPE" , "TASKLEVEL" , "\
    C  TASKCOMPONENT" , "BUKRS" , "ERSDA" , "ERSTM" , "ERNAM" , "LAEDA" , "LAETM" , "AENAM" , "APNAM" , "AP\
    C  DAT" , "WORKITEMID" , "LOGSYS" , "STATUS" , "REFCOUNTER" , "REASON" , "BELNR" , "EXTSYSTEM" , "EXTAP\
    C  PLICATION" , "EXTDOCUMENTNO" , "TASKCOUNTER" , "CATSHOURS" , "BEGUZ" , "ENDUZ" , "VTKEN" , "ALLDF" ,\
    C   "OFMNW" , "PEDD" , "AUERU" , "LTXA1" , "LONGTEXT" , "ERUZU" , "CATSAMOUNT" , "CATSQUANTITY" , "ZCAT\
    C  SPLAN" , "ROUTE" , "KUNNR" , "MVGR1" , "GSBER" , "SNAME" , "MAKTX" , "ZAVGHRS" , "ZQANT" , "ZPERNR" \
    C  FROM "CATSDB" WHERE "MANDT" = :A0 AND "WORKDATE" = :A1 AND "WERKS" = :A2 AND "STATUS" < :A3;
    B  ***LOG BYM=> severe DB error 3114      ; work process in reconnect status [dbsh#3 @ 1123] [dbsh    1123 ]
    B  ***LOG BY4=> sql error 3114   performing FET on table CATSDB     [dbtran#10 @ 7292] [dbtran  7292 ]
    B  ***LOG BY0=> ORA-03114: not connected to ORACLE [dbtran#10 @ 7292] [dbtran  7292 ]
    B  dbtran ERROR LOG (hdl_dbsl_error): DbSl 'FET'
    B   RSLT: {dbsl=99, tran=1}
    B   FHDR: {tab='CATSDB', fcode=225, mode=2, bpb=0, dbcnt=0, crsr=1,
    B          hold=0, keep=1, xfer=0, pkg=0, upto=0, init:b=0,
    B          init:p=00000000, init:#=871, wa:p=0XA000DC88, wa:#=871}
    B  dbtran ERROR LOG (hdl_dbsl_error): DbSl 'FET'
    B   STMT:
    B   CRSR: {tab='CATSDB', id=1, hold=0, prop=0x1000, max.in@0=1, fae:blk=1,
    B          con:id=0, con:vndr=5, val=2,
    B          key:#=4, xfer=0, xin:#=0, row:#=0, upto=0, wa:p=0XA000DC88}
    C  *** ERROR => Error 3114 in stmt_fetch()
    [dbsloci.c    13001]
    C  *** ERROR => ORA-3114 occurred when executing SQL statement (parse error offset=0)
    [dbsloci.c    13002]
    C  sc_p=045B52E4,no=225,idc_p=045C400C,con=0,act=1,slen=184,smax=2048,#vars=3,stmt=35BBB778,table=REPOLOAD                     
    C  SELECT "UNAM" , "UDAT" , "UTIME" , "L_DATALG" , "Q_DATALG" , "SDAT" , "STIME" , "MINOR_VERS" , "MAJO\
    C  R_VERS" FROM "REPOLOAD" WHERE "PROGNAME" = :A0 AND "R3STATE" = :A1 AND "MACH" = :A2 ;
    C  sc_p=045B52E4,no=225,idc_p=045C400C,con=0,act=1,slen=184,smax=2048,#vars=3,stmt=35BBB778,table=REPOLOAD                     
    C  prep=0,lit=0,nsql=0,lobret=0,#exec=29,dbcnt=0,upsh_p=00000000,ocistmth_p=34B9ADD4
    C  IN : cols=3,rmax=1,xcnt=0,rpc=0,rowi=0,rtot=0,upto=-1,rsize=45,vmax=32,bound=1,iobuf_p=0E0A4EC8,vda_p=31361B18
    C       lobs=0,lmax=0,lpcnt=0,larr=00000000,lcurr_p=00000000,rret=0
    C  OUT: cols=9,rmax=1,xcnt=1,rpc=1,rowi=0,rtot=1,upto=-1,rsize=56,vmax=32,bound=1,iobuf_p=045DFFA8,vda_p=345C39B8
    C       lobs=0,lmax=0,lpcnt=0,larr=00000000,lcurr_p=00000000,rret=0
    C  SELECT "UNAM" , "UDAT" , "UTIME" , "L_DATALG" , "Q_DATALG" , "SDAT" , "STIME" , "MINOR_VERS" , "MAJO\
    C  R_VERS" FROM "REPOLOAD" WHERE "PROGNAME" = :A0 AND "R3STATE" = :A1 AND "MACH" = :A2 ;
    B  ***LOG BYM=> severe DB error 3114      ; work process in reconnect status [dbsh#3 @ 1123] [dbsh    1123 ]
    B  ***LOG BY4=> sql error 3114   performing SEL on table REPOLOAD   [dbrepo#6 @ 2657] [dbrepo  2657 ]
    B  ***LOG BY0=> ORA-03114: not connected to ORACLE [dbrepo#6 @ 2657] [dbrepo  2657 ]
    A  TH VERBOSE LEVEL FULL
    A  ** RABAX: level LEV_RX_PXA_RELEASE_MTX entered.
    A  ** RABAX: level LEV_RX_PXA_RELEASE_MTX completed.
    A  ** RABAX: level LEV_RX_VMIT_CLEANUP entered.
    A  ** RABAX: level LEV_RX_VMIT_CLEANUP completed.
    A  ** RABAX: level LEV_RX_ROLLBACK entered.
    C  *** ERROR => OCI-call 'OCITransRollback' failed: rc = 3114
    [dboci.c      3127]
    B  ***LOG BYM=> severe DB error 3114      ; work process in reconnect status [dbsh#3 @ 1123] [dbsh    1123 ]
    B  Reconnect state is entered by connection:
    B  0: name = R/3, con_id = 000000000 state = ACTIVE      , perm = YES, reco = YES, timeout = 000, con_max = 255, con_opt = 255, occ = NO
    B  hdl_error_on_commit_rollback: DB-ROLLBACK detected RECONNECT state
    M  ThShortCommit: db unusable
    B  db_con_reconnect disconnecting connection:
    B  0: name = R/3, con_id = 000000000 state = INACTIVE    , perm = YES, reco = YES, timeout = 000, con_max = 255, con_opt = 255, occ = NO
    C  Disconnecting from connection 0 ...
    C  Close user session (con_hdl=0,svchp=045D7FA4,usrhp=345E67A0)
    C  Detaching from DB Server (con_hdl=0,svchp=045D7FA4,srvhp=045D0174)
    C  Now I'm disconnected from ORACLE
    B  db_con_reconnect performing the reconnect for con:
    B  0: name = R/3, con_id = 000000000 state = DISCONNECTED, perm = YES, reco = YES, timeout = 000, con_max = 255, con_opt = 255, occ = NO
    C  got NLS_LANG='AMERICAN_AMERICA.US7ASCII' from environment
    C  Client NLS settings:
    C  Logon as OPS$-user to get SAPR3's password
    C  Connecting as /@PRD on connection 0 (nls_hdl 0) ... (dbsl 640 250407)
    C  Nls CharacterSet                 NationalCharSet              C      EnvHp      ErrHp ErrHpBatch
    C    0 US7ASCII                                                  1   045CBB38   0E0A4648   0E0A40B0
    C  Attaching to DB Server PRD (con_hdl=0,svchp=045
    SM51 log entries:
         09:00:32     MS                         Q0I     Operating system call recv failed (error no. 10054)
         09:00:32     DP                         Q0K     Connection to message server (on FCMSPROD) established
         09:00:32     DIA     004     040     181JOLENES     VA02     BYM     SQL error 3114 . Work processes in reconnect status
         09:00:32     DP                         Q1C     MsgServer Hardware ID Was Determined
         09:00:32     DIA     001     040     181ANNELINEJ     VA42     BYY     Work process has left reconnect status
         09:00:32     DIA     001     040     181ANNELINEJ     VA42     AB0     Run-time error "DBIF_REPO_SQL_ERROR" occurred
         09:00:32     DIA     014     040     161ADRIV     VA02     BYY     Work process has left reconnect status
         09:00:32     DIA     013     040     140ELECIA          BYY     Work process has left reconnect status
         09:00:32     DIA     003     040     133MIRANDAV     KO88     BYY     Work process has left reconnect status
         09:00:32     DIA     003     040     133MIRANDAV     KO88     AB0     Run-time error "DBIF_REPO_SQL_ERROR" occurred
         09:00:32     DIA     001     040     181ANNELINEJ     VA42     AB1     > Short dump "081128 090032 FCMSPROD 181ANNELINEJ" generated
         09:00:32     DIA     003     040     133MIRANDAV     KO88     AB1     > Short dump "081128 090032 FCMSPROD 133MIRANDAV " generated
         09:00:32     DIA     009     040     120ELIZEP     FB01     BYY     Work process has left reconnect status
         09:00:33     DIA     009     040     120ELIZEP     FB01     AB0     Run-time error "DBIF_REPO_SQL_ERROR" occurred
         09:00:33     DIA     004     040     181JOLENES     VA02     BYY     Work process has left reconnect status
         09:00:33     DIA     002     040     133KOEKIEJ          BYY     Work process has left reconnect status
         09:00:33     DIA     002     040     133KOEKIEJ          AB0     Run-time error "DBIF_REPO_SQL_ERROR" occurred
         09:00:33     DIA     004     040     181JOLENES     VA02     AB0     Run-time error "DBIF_REPO_SQL_ERROR" occurred
         09:00:33     DIA     009     040     120ELIZEP     FB01     AB1     > Short dump "081128 090033 FCMSPROD 120ELIZEP " generated
         09:00:33     DIA     005     040     181CLIVEB     VA02     BYY     Work process has left reconnect status
         09:00:33     DIA     003                    R0Z     The update dispatch info was reset
         09:00:33     DIA     003                    R0Z     The update dispatch info was reset
    Please can you assist in maybe you have seen this before.
    Regards
    Pieter

    Hi
    Yes I have gone through the Oracle Alert log several time, It is huge, but I am pasting an extract for the entire day this was happening into this reply.  Oracle version is 9.2.0.8.0 with the only intrim path I can see being installed : 6130293.
    Following is the extract from Alert Log for the day this occurred, again I must stress that this happens only on high system load days like month end:
    Fri Nov 28 03:43:33 2008
    ALTER TABLESPACE "PSAPBTABI" END BACKUP
    Fri Nov 28 03:43:33 2008
    Completed: ALTER TABLESPACE "PSAPBTABI" END BACKUP
    Fri Nov 28 03:43:37 2008
    ALTER TABLESPACE "PSAPCLUD" BEGIN BACKUP
    Completed: ALTER TABLESPACE "PSAPCLUD" BEGIN BACKUP
    Fri Nov 28 03:53:38 2008
    ALTER TABLESPACE "PSAPCLUD" END BACKUP
    Fri Nov 28 03:53:38 2008
    Completed: ALTER TABLESPACE "PSAPCLUD" END BACKUP
    Fri Nov 28 03:53:42 2008
    ALTER TABLESPACE "PSAPCLUI" BEGIN BACKUP
    Completed: ALTER TABLESPACE "PSAPCLUI" BEGIN BACKUP
    Fri Nov 28 03:54:36 2008
    ALTER TABLESPACE "PSAPCLUI" END BACKUP
    Fri Nov 28 03:54:36 2008
    Completed: ALTER TABLESPACE "PSAPCLUI" END BACKUP
    Fri Nov 28 03:54:38 2008
    ALTER TABLESPACE "PSAPDDICD" BEGIN BACKUP
    Completed: ALTER TABLESPACE "PSAPDDICD" BEGIN BACKUP
    Fri Nov 28 03:55:47 2008
    ALTER TABLESPACE "PSAPDDICD" END BACKUP
    Fri Nov 28 03:55:47 2008
    Completed: ALTER TABLESPACE "PSAPDDICD" END BACKUP
    Fri Nov 28 03:55:50 2008
    ALTER TABLESPACE "PSAPDDICI" BEGIN BACKUP
    Completed: ALTER TABLESPACE "PSAPDDICI" BEGIN BACKUP
    Fri Nov 28 03:56:41 2008
    ALTER TABLESPACE "PSAPDDICI" END BACKUP
    Fri Nov 28 03:56:41 2008
    Completed: ALTER TABLESPACE "PSAPDDICI" END BACKUP
    Fri Nov 28 03:56:45 2008
    ALTER TABLESPACE "PSAPDOCUD" BEGIN BACKUP
    Completed: ALTER TABLESPACE "PSAPDOCUD" BEGIN BACKUP
    Fri Nov 28 03:56:49 2008
    ALTER TABLESPACE "PSAPDOCUD" END BACKUP
    Completed: ALTER TABLESPACE "PSAPDOCUD" END BACKUP
    Fri Nov 28 03:56:52 2008
    ALTER TABLESPACE "PSAPDOCUI" BEGIN BACKUP
    Completed: ALTER TABLESPACE "PSAPDOCUI" BEGIN BACKUP
    Fri Nov 28 03:56:55 2008
    ALTER TABLESPACE "PSAPDOCUI" END BACKUP
    Completed: ALTER TABLESPACE "PSAPDOCUI" END BACKUP
    Fri Nov 28 03:56:59 2008
    ALTER TABLESPACE "PSAPEL640D" BEGIN BACKUP
    Completed: ALTER TABLESPACE "PSAPEL640D" BEGIN BACKUP
    Fri Nov 28 04:03:46 2008
    ALTER TABLESPACE "PSAPEL640D" END BACKUP
    Fri Nov 28 04:03:46 2008
    Completed: ALTER TABLESPACE "PSAPEL640D" END BACKUP
    Fri Nov 28 04:03:50 2008
    ALTER TABLESPACE "PSAPEL640I" BEGIN BACKUP
    Completed: ALTER TABLESPACE "PSAPEL640I" BEGIN BACKUP
    Fri Nov 28 04:04:37 2008
    ALTER TABLESPACE "PSAPEL640I" END BACKUP
    Fri Nov 28 04:04:37 2008
    Completed: ALTER TABLESPACE "PSAPEL640I" END BACKUP
    Fri Nov 28 04:04:40 2008
    ALTER TABLESPACE "PSAPES640D" BEGIN BACKUP
    Completed: ALTER TABLESPACE "PSAPES640D" BEGIN BACKUP
    Fri Nov 28 04:20:17 2008
    ALTER TABLESPACE "PSAPES640D" END BACKUP
    Fri Nov 28 04:20:17 2008
    Completed: ALTER TABLESPACE "PSAPES640D" END BACKUP
    Fri Nov 28 04:20:20 2008
    ALTER TABLESPACE "PSAPES640I" BEGIN BACKUP
    Completed: ALTER TABLESPACE "PSAPES640I" BEGIN BACKUP
    Fri Nov 28 04:36:26 2008
    ALTER TABLESPACE "PSAPES640I" END BACKUP
    Fri Nov 28 04:36:26 2008
    Completed: ALTER TABLESPACE "PSAPES640I" END BACKUP
    Fri Nov 28 04:36:29 2008
    ALTER TABLESPACE "PSAPLOADD" BEGIN BACKUP
    Completed: ALTER TABLESPACE "PSAPLOADD" BEGIN BACKUP
    Fri Nov 28 04:36:40 2008
    ALTER TABLESPACE "PSAPLOADD" END BACKUP
    Fri Nov 28 04:36:40 2008
    Completed: ALTER TABLESPACE "PSAPLOADD" END BACKUP
    Fri Nov 28 04:36:43 2008
    ALTER TABLESPACE "PSAPLOADI" BEGIN BACKUP
    Completed: ALTER TABLESPACE "PSAPLOADI" BEGIN BACKUP
    Fri Nov 28 04:36:53 2008
    ALTER TABLESPACE "PSAPLOADI" END BACKUP
    Completed: ALTER TABLESPACE "PSAPLOADI" END BACKUP
    Fri Nov 28 04:36:56 2008
    ALTER TABLESPACE "PSAPPOOLD" BEGIN BACKUP
    Completed: ALTER TABLESPACE "PSAPPOOLD" BEGIN BACKUP
    Fri Nov 28 04:41:04 2008
    ALTER TABLESPACE "PSAPPOOLD" END BACKUP
    Fri Nov 28 04:41:04 2008
    Completed: ALTER TABLESPACE "PSAPPOOLD" END BACKUP
    Fri Nov 28 04:41:08 2008
    ALTER TABLESPACE "PSAPPOOLI" BEGIN BACKUP
    Completed: ALTER TABLESPACE "PSAPPOOLI" BEGIN BACKUP
    Fri Nov 28 04:45:17 2008
    ALTER TABLESPACE "PSAPPOOLI" END BACKUP
    Fri Nov 28 04:45:17 2008
    Completed: ALTER TABLESPACE "PSAPPOOLI" END BACKUP
    Fri Nov 28 04:45:21 2008
    ALTER TABLESPACE "PSAPPROTD" BEGIN BACKUP
    Completed: ALTER TABLESPACE "PSAPPROTD" BEGIN BACKUP
    Fri Nov 28 04:47:25 2008
    ALTER TABLESPACE "PSAPPROTD" END BACKUP
    Fri Nov 28 04:47:25 2008
    Completed: ALTER TABLESPACE "PSAPPROTD" END BACKUP
    Fri Nov 28 04:47:29 2008
    ALTER TABLESPACE "PSAPPROTI" BEGIN BACKUP
    Completed: ALTER TABLESPACE "PSAPPROTI" BEGIN BACKUP
    Fri Nov 28 04:48:09 2008
    ALTER TABLESPACE "PSAPPROTI" END BACKUP
    Fri Nov 28 04:48:09 2008
    Completed: ALTER TABLESPACE "PSAPPROTI" END BACKUP
    Fri Nov 28 04:48:13 2008
    ALTER TABLESPACE "PSAPSOURCED" BEGIN BACKUP
    Completed: ALTER TABLESPACE "PSAPSOURCED" BEGIN BACKUP
    Fri Nov 28 04:48:46 2008
    ALTER TABLESPACE "PSAPSOURCED" END BACKUP
    Fri Nov 28 04:48:46 2008
    Completed: ALTER TABLESPACE "PSAPSOURCED" END BACKUP
    Fri Nov 28 04:48:49 2008
    ALTER TABLESPACE "PSAPSOURCEI" BEGIN BACKUP
    Completed: ALTER TABLESPACE "PSAPSOURCEI" BEGIN BACKUP
    Fri Nov 28 04:49:29 2008
    ALTER TABLESPACE "PSAPSOURCEI" END BACKUP
    Fri Nov 28 04:49:29 2008
    Completed: ALTER TABLESPACE "PSAPSOURCEI" END BACKUP
    Fri Nov 28 04:49:34 2008
    ALTER TABLESPACE "PSAPSTABD" BEGIN BACKUP
    Completed: ALTER TABLESPACE "PSAPSTABD" BEGIN BACKUP
    Fri Nov 28 05:05:16 2008
    ALTER TABLESPACE "PSAPSTABD" END BACKUP
    Fri Nov 28 05:05:16 2008
    Completed: ALTER TABLESPACE "PSAPSTABD" END BACKUP
    Fri Nov 28 05:05:23 2008
    ALTER TABLESPACE "PSAPSTABI" BEGIN BACKUP
    Completed: ALTER TABLESPACE "PSAPSTABI" BEGIN BACKUP
    Fri Nov 28 05:21:15 2008
    ALTER TABLESPACE "PSAPSTABI" END BACKUP
    Fri Nov 28 05:21:15 2008
    Completed: ALTER TABLESPACE "PSAPSTABI" END BACKUP
    Fri Nov 28 05:21:19 2008
    ALTER TABLESPACE "PSAPUSER1D" BEGIN BACKUP
    Completed: ALTER TABLESPACE "PSAPUSER1D" BEGIN BACKUP
    Fri Nov 28 05:21:42 2008
    ALTER TABLESPACE "PSAPUSER1D" END BACKUP
    Fri Nov 28 05:21:42 2008
    Completed: ALTER TABLESPACE "PSAPUSER1D" END BACKUP
    Fri Nov 28 05:21:46 2008
    ALTER TABLESPACE "PSAPUSER1I" BEGIN BACKUP
    Completed: ALTER TABLESPACE "PSAPUSER1I" BEGIN BACKUP
    Fri Nov 28 05:23:03 2008
    ALTER TABLESPACE "PSAPUSER1I" END BACKUP
    Fri Nov 28 05:23:03 2008
    Completed: ALTER TABLESPACE "PSAPUSER1I" END BACKUP
    Fri Nov 28 05:23:06 2008
    ALTER TABLESPACE "SYSTEM" BEGIN BACKUP
    Completed: ALTER TABLESPACE "SYSTEM" BEGIN BACKUP
    Fri Nov 28 05:24:03 2008
    ALTER TABLESPACE "SYSTEM" END BACKUP
    Fri Nov 28 05:24:03 2008
    Completed: ALTER TABLESPACE "SYSTEM" END BACKUP
    Fri Nov 28 05:24:07 2008
    ALTER TABLESPACE "UNDOTBS1" BEGIN BACKUP
    Completed: ALTER TABLESPACE "UNDOTBS1" BEGIN BACKUP
    Fri Nov 28 05:42:06 2008
    ALTER TABLESPACE "UNDOTBS1" END BACKUP
    Fri Nov 28 05:42:06 2008
    Completed: ALTER TABLESPACE "UNDOTBS1" END BACKUP
    Fri Nov 28 05:42:07 2008
    ALTER DATABASE BACKUP CONTROLFILE TO 'C:\Program Files\CA\BrightStor ARCserve Backup Enterprise Option for SAP R3 for Oracle\CONTROL.PRD' REUSE
    Completed: ALTER DATABASE BACKUP CONTROLFILE TO 'C:\Program F
    Fri Nov 28 05:42:14 2008
    Beginning log switch checkpoint up to RBA [0x77f2.2.10], SCN: 0x0000.3c0ae436
    Thread 1 advanced to log sequence 30706
      Current log# 2 seq# 30706 mem# 0: C:\ORACLE\PRD\ORIGLOGB\LOGPRD02_M1.ORA
      Current log# 2 seq# 30706 mem# 1: F:\ORACLE\PRD\MIRRLOGB\LOGPRD02_M2.ORA
    Fri Nov 28 05:42:14 2008
    ARC0: Evaluating archive   log 3 thread 1 sequence 30705
    ARC0: Beginning to archive log 3 thread 1 sequence 30705
    Creating archive destination LOG_ARCHIVE_DEST_1: 'F:\ORACLE\PRD\SAPARCH\ARC30705.001'
    Fri Nov 28 05:42:27 2008
    ARC1: Evaluating archive   log 3 thread 1 sequence 30705
    ARC1: Unable to archive log 3 thread 1 sequence 30705
          Log actively being archived by another process
    Fri Nov 28 05:42:29 2008
    ARC0: Completed archiving  log 3 thread 1 sequence 30705
    Fri Nov 28 06:11:26 2008
    Completed checkpoint up to RBA [0x77f2.2.10], SCN: 0x0000.3c0ae436
    Fri Nov 28 09:20:59 2008
    Beginning log switch checkpoint up to RBA [0x77f3.2.10], SCN: 0x0000.3c0b739c
    Thread 1 advanced to log sequence 30707
      Current log# 1 seq# 30707 mem# 0: C:\ORACLE\PRD\ORIGLOGA\LOGPRD01_M1.ORA
      Current log# 1 seq# 30707 mem# 1: F:\ORACLE\PRD\MIRRLOGA\LOGPRD01_M2.ORA
    Fri Nov 28 09:20:59 2008
    ARC0: Evaluating archive   log 2 thread 1 sequence 30706
    ARC0: Beginning to archive log 2 thread 1 sequence 30706
    Creating archive destination LOG_ARCHIVE_DEST_1: 'F:\ORACLE\PRD\SAPARCH\ARC30706.001'
    Fri Nov 28 09:21:18 2008
    ARC0: Completed archiving  log 2 thread 1 sequence 30706
    Fri Nov 28 09:51:06 2008
    Completed checkpoint up to RBA [0x77f3.2.10], SCN: 0x0000.3c0b739c
    Fri Nov 28 10:44:43 2008
    Beginning log switch checkpoint up to RBA [0x77f4.2.10], SCN: 0x0000.3c0bb876
    Thread 1 advanced to log sequence 30708
      Current log# 4 seq# 30708 mem# 0: C:\ORACLE\PRD\ORIGLOGB\LOGPRD04_M1.ORA
      Current log# 4 seq# 30708 mem# 1: F:\ORACLE\PRD\MIRRLOGB\LOGPRD04_M2.ORA
    Fri Nov 28 10:44:43 2008
    ARC0: Evaluating archive   log 1 thread 1 sequence 30707
    ARC0: Beginning to archive log 1 thread 1 sequence 30707
    Creating archive destination LOG_ARCHIVE_DEST_1: 'F:\ORACLE\PRD\SAPARCH\ARC30707.001'
    Fri Nov 28 10:45:07 2008
    ARC1: Evaluating archive   log 1 thread 1 sequence 30707
    ARC1: Unable to archive log 1 thread 1 sequence 30707
          Log actively being archived by another process
    Fri Nov 28 10:45:09 2008
    ARC0: Completed archiving  log 1 thread 1 sequence 30707
    Fri Nov 28 11:13:20 2008
    Completed checkpoint up to RBA [0x77f4.2.10], SCN: 0x0000.3c0bb876
    Fri Nov 28 11:45:09 2008
    Beginning log switch checkpoint up to RBA [0x77f5.2.10], SCN: 0x0000.3c0bfc29
    Thread 1 advanced to log sequence 30709
      Current log# 3 seq# 30709 mem# 0: C:\ORACLE\PRD\ORIGLOGA\LOGPRD03_M1.ORA
      Current log# 3 seq# 30709 mem# 1: F:\ORACLE\PRD\MIRRLOGA\LOGPRD03_M2.ORA
    Fri Nov 28 11:45:09 2008
    ARC0: Evaluating archive   log 4 thread 1 sequence 30708
    ARC0: Beginning to archive log 4 thread 1 sequence 30708
    Creating archive destination LOG_ARCHIVE_DEST_1: 'F:\ORACLE\PRD\SAPARCH\ARC30708.001'
    Fri Nov 28 11:45:13 2008
    ARC1: Evaluating archive   log 4 thread 1 sequence 30708
    ARC1: Unable to archive log 4 thread 1 sequence 30708
          Log actively being archived by another process
    Fri Nov 28 11:45:29 2008
    ARC0: Completed archiving  log 4 thread 1 sequence 30708
    Fri Nov 28 12:15:17 2008
    Completed checkpoint up to RBA [0x77f5.2.10], SCN: 0x0000.3c0bfc29
    Fri Nov 28 12:50:23 2008
    Beginning log switch checkpoint up to RBA [0x77f6.2.10], SCN: 0x0000.3c0c3298
    Thread 1 advanced to log sequence 30710
      Current log# 2 seq# 30710 mem# 0: C:\ORACLE\PRD\ORIGLOGB\LOGPRD02_M1.ORA
      Current log# 2 seq# 30710 mem# 1: F:\ORACLE\PRD\MIRRLOGB\LOGPRD02_M2.ORA
    Fri Nov 28 12:50:24 2008
    ARC0: Evaluating archive   log 3 thread 1 sequence 30709
    ARC0: Beginning to archive log 3 thread 1 sequence 30709
    Creating archive destination LOG_ARCHIVE_DEST_1: 'F:\ORACLE\PRD\SAPARCH\ARC30709.001'
    Fri Nov 28 12:50:40 2008
    ARC0: Completed archiving  log 3 thread 1 sequence 30709
    Fri Nov 28 13:20:29 2008
    Completed checkpoint up to RBA [0x77f6.2.10], SCN: 0x0000.3c0c3298
    Fri Nov 28 14:27:01 2008
    Beginning log switch checkpoint up to RBA [0x77f7.2.10], SCN: 0x0000.3c0c75c1
    Thread 1 advanced to log sequence 30711
      Current log# 1 seq# 30711 mem# 0: C:\ORACLE\PRD\ORIGLOGA\LOGPRD01_M1.ORA
      Current log# 1 seq# 30711 mem# 1: F:\ORACLE\PRD\MIRRLOGA\LOGPRD01_M2.ORA
    Fri Nov 28 14:27:01 2008
    ARC0: Evaluating archive   log 2 thread 1 sequence 30710
    ARC0: Beginning to archive log 2 thread 1 sequence 30710
    Creating archive destination LOG_ARCHIVE_DEST_1: 'F:\ORACLE\PRD\SAPARCH\ARC30710.001'
    Fri Nov 28 14:27:25 2008
    ARC0: Completed archiving  log 2 thread 1 sequence 30710
    Fri Nov 28 14:57:08 2008
    Completed checkpoint up to RBA [0x77f7.2.10], SCN: 0x0000.3c0c75c1
    Fri Nov 28 15:57:26 2008
    Beginning log switch checkpoint up to RBA [0x77f8.2.10], SCN: 0x0000.3c0cb34a
    Thread 1 advanced to log sequence 30712
      Current log# 4 seq# 30712 mem# 0: C:\ORACLE\PRD\ORIGLOGB\LOGPRD04_M1.ORA
      Current log# 4 seq# 30712 mem# 1: F:\ORACLE\PRD\MIRRLOGB\LOGPRD04_M2.ORA
    Fri Nov 28 15:57:26 2008
    ARC0: Evaluating archive   log 1 thread 1 sequence 30711
    ARC0: Beginning to archive log 1 thread 1 sequence 30711
    Creating archive destination LOG_ARCHIVE_DEST_1: 'F:\ORACLE\PRD\SAPARCH\ARC30711.001'
    Fri Nov 28 15:57:40 2008
    ARC1: Evaluating archive   log 1 thread 1 sequence 30711
    ARC1: Unable to archive log 1 thread 1 sequence 30711
          Log actively being archived by another process
    Fri Nov 28 15:57:40 2008
    ARC0: Completed archiving  log 1 thread 1 sequence 30711
    Fri Nov 28 16:27:31 2008
    Completed checkpoint up to RBA [0x77f8.2.10], SCN: 0x0000.3c0cb34a
    Fri Nov 28 17:02:12 2008
    Beginning log switch checkpoint up to RBA [0x77f9.2.10], SCN: 0x0000.3c0cc245
    Thread 1 advanced to log sequence 30713
      Current log# 3 seq# 30713 mem# 0: C:\ORACLE\PRD\ORIGLOGA\LOGPRD03_M1.ORA
      Current log# 3 seq# 30713 mem# 1: F:\ORACLE\PRD\MIRRLOGA\LOGPRD03_M2.ORA
    Fri Nov 28 17:02:12 2008
    ARC0: Evaluating archive   log 4 thread 1 sequence 30712
    ARC0: Beginning to archive log 4 thread 1 sequence 30712
    Creating archive destination LOG_ARCHIVE_DEST_1: 'F:\ORACLE\PRD\SAPARCH\ARC30712.001'
    Fri Nov 28 17:02:25 2008
    ARC0: Completed archiving  log 4 thread 1 sequence 30712
    Fri Nov 28 17:32:17 2008
    Completed checkpoint up to RBA [0x77f9.2.10], SCN: 0x0000.3c0cc245
    Fri Nov 28 18:00:19 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPBTABD" COALESCE
    Fri Nov 28 18:00:19 2008
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPBTABD" COALE
    Fri Nov 28 18:00:19 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPBTABI" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPBTABI" COALE
    Fri Nov 28 18:00:19 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPCLUD" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPCLUD" COALES
    Fri Nov 28 18:00:20 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPCLUI" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPCLUI" COALES
    Fri Nov 28 18:00:21 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPDDICD" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPDDICD" COALE
    Fri Nov 28 18:00:23 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPDDICI" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPDDICI" COALE
    Fri Nov 28 18:00:23 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPDOCUD" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPDOCUD" COALE
    Fri Nov 28 18:00:23 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPDOCUI" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPDOCUI" COALE
    Fri Nov 28 18:00:24 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPEL640D" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPEL640D" COAL
    Fri Nov 28 18:00:26 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPEL640I" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPEL640I" COAL
    Fri Nov 28 18:00:27 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPES640D" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPES640D" COAL
    Fri Nov 28 18:00:27 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPES640I" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPES640I" COAL
    Fri Nov 28 18:00:27 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPLOADD" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPLOADD" COALE
    Fri Nov 28 18:00:27 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPLOADI" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPLOADI" COALE
    Fri Nov 28 18:00:27 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPPOOLD" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPPOOLD" COALE
    Fri Nov 28 18:00:28 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPPOOLI" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPPOOLI" COALE
    Fri Nov 28 18:00:28 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPPROTD" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPPROTD" COALE
    Fri Nov 28 18:00:28 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPPROTI" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPPROTI" COALE
    Fri Nov 28 18:00:28 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPSOURCED" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPSOURCED" COA
    Fri Nov 28 18:00:28 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPSOURCEI" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPSOURCEI" COA
    Fri Nov 28 18:00:28 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPSTABD" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPSTABD" COALE
    Fri Nov 28 18:00:28 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPSTABI" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPSTABI" COALE
    Fri Nov 28 18:00:28 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPUSER1D" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPUSER1D" COAL
    Fri Nov 28 18:00:28 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPUSER1I" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPUSER1I" COAL
    Fri Nov 28 18:00:28 2008
    /* BRCONNECT */ ALTER TABLESPACE "SYSTEM" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "SYSTEM" COALESCE
    Fri Nov 28 20:00:17 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPBTABD" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPBTABD" COALE
    Fri Nov 28 20:00:18 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPBTABI" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPBTABI" COALE
    Fri Nov 28 20:00:18 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPCLUD" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPCLUD" COALES
    Fri Nov 28 20:00:18 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPCLUI" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPCLUI" COALES
    Fri Nov 28 20:00:18 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPDDICD" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPDDICD" COALE
    Fri Nov 28 20:00:18 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPDDICI" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPDDICI" COALE
    Fri Nov 28 20:00:18 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPDOCUD" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPDOCUD" COALE
    Fri Nov 28 20:00:18 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPDOCUI" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPDOCUI" COALE
    Fri Nov 28 20:00:18 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPEL640D" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPEL640D" COAL
    Fri Nov 28 20:00:18 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPEL640I" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPEL640I" COAL
    Fri Nov 28 20:00:18 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPES640D" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPES640D" COAL
    Fri Nov 28 20:00:18 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPES640I" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPES640I" COAL
    Fri Nov 28 20:00:18 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPLOADD" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPLOADD" COALE
    Fri Nov 28 20:00:18 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPLOADI" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPLOADI" COALE
    Fri Nov 28 20:00:18 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPPOOLD" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPPOOLD" COALE
    Fri Nov 28 20:00:18 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPPOOLI" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPPOOLI" COALE
    Fri Nov 28 20:00:18 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPPROTD" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPPROTD" COALE
    Fri Nov 28 20:00:18 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPPROTI" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPPROTI" COALE
    Fri Nov 28 20:00:18 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPSOURCED" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPSOURCED" COA
    Fri Nov 28 20:00:18 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPSOURCEI" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPSOURCEI" COA
    Fri Nov 28 20:00:18 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPSTABD" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPSTABD" COALE
    Fri Nov 28 20:00:18 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPSTABI" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPSTABI" COALE
    Fri Nov 28 20:00:18 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPUSER1D" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPUSER1D" COAL
    Fri Nov 28 20:00:18 2008
    /* BRCONNECT */ ALTER TABLESPACE "PSAPUSER1I" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "PSAPUSER1I" COAL
    Fri Nov 28 20:00:18 2008
    /* BRCONNECT */ ALTER TABLESPACE "SYSTEM" COALESCE
    Completed: /* BRCONNECT */ ALTER TABLESPACE "SYSTEM" COALESCE
    Fri Nov 28 20:00:36 2008
    Beginning log switch checkpoint up to RBA [0x77fa.2.10], SCN: 0x0000.3c0cf8e3
    Thread 1 advanced to log sequence 30714
      Current log# 2 seq# 30714 mem# 0: C:\ORACLE\PRD\ORIGLOGB\LOGPRD02_M1.ORA
      Current log# 2 seq# 30714 mem# 1: F:\ORACLE\PRD\MIRRLOGB\LOGPRD02_M2.ORA
    Fri Nov 28 20:00:36 2008
    ARC0: Evaluating archive   log 3 thread 1 sequence 30713
    ARC0: Beginning to archive log 3 thread 1 sequence 30713
    Creating archive destination LOG_ARCHIVE_DEST_1: 'F:\ORACLE\PRD\SAPARCH\ARC30713.001'
    Fri Nov 28 20:00:44 2008
    ARC1: Evaluating archive   log 3 thread 1 sequence 30713
    ARC1: Unable to archive log 3 thread 1 sequence 30713
          Log actively being archived by another process
    Fri Nov 28 20:00:47 2008
    ARC0: Completed archiving  log 3 thread 1 sequence 30713
    Dump file f:\oracle\prd\saptrace\background\alert_prd.log
    Mon Dec 01 09:03:16 2008
    ORACLE V9.2.0.8.0 - Production vsnsta=0
    vsnsql=12 vsnxtr=3
    Windows 2000 Version 5.2 Service Pack 2, CPU type 586
    Mon Dec 01 09:03:16 2008
    Starting ORACLE instance (normal)
    LICENSE_MAX_SESSION = 0
    LICENSE_SESSIONS_WARNING = 0
    SCN scheme 2
    LICENSE_MAX_USERS = 0
    SYS auditing is disabled
    Starting up ORACLE RDBMS Version: 9.2.0.8.0.
    System parameters with non-default values:
      processes                = 120
      sessions                 = 150
      timed_statistics         = TRUE
      shared_pool_size         = 822083584
      large_pool_size          = 8388608
      java_pool_size           = 8388608
      enqueue_resources        = 8000
      filesystemio_options     = SETALL
      control_files            = C:\oracle\PRD\origlogA\ctrlPRD.ctl, F:\oracle\PRD\saparch\ctrlPRD.ctl, E:\oracle\PRD\sapdata1\ctrlPRD.ctl
      db_block_checksum        = FALSE
      db_block_size            = 8192
      db_cache_size            = 1073741824
      compatible               = 9.2.0
      log_archive_start        = TRUE
      log_archive_dest         = F:\oracle\PRD\saparch
      log_buffer               = 4194304
      log_checkpoint_interval  = 0
      db_files                 = 254
      db_file_multiblock_read_count= 8
      log_checkpoints_to_alert = TRUE
      control_file_record_keep_time= 30
      dml_locks                = 2500
      row_locking              = always
      replication_dependency_tracking= FALSE
      transactions_per_rollback_segment= 20
      transaction_auditing     = FALSE
      undo_management          = AUTO
      undo_tablespace          = UNDOTBS1
      undo_retention           = 43200
      remote_os_authent        = TRUE
      db_domain                = world
      service_names            = PRD.world, PRD.WORLD
      hash_join_enabled        = FALSE
      background_dump_dest     = F:\Oracle\PRD\saptrace\background
      user_dump_dest           = F:\Oracle\PRD\saptrace\usertrace
      max_dump_file_size       = 1240
      core_dump_dest           = F:\Oracle\PRD\saptrace\background
      optimizer_features_enable= 9.2.0
      sort_area_size           = 0
      sort_area_retained_size  = 0
      db_name                  = PRD
      open_cursors             = 800
      optimizer_mode           = CHOOSE
      sortelimination_cost_ratio= 10
      btree_bitmap_plans     = FALSE
      eliminatecommon_subexpr= FALSE
      pushjoin_predicate     = FALSE
      optimizerjoin_sel_sanity_check= TRUE
      parallel_threads_per_cpu = 4
      optimizer_index_cost_adj = 10
      optimizer_index_caching  = 50
      optimpeek_user_binds   = FALSE
      pga_aggregate_target     = 536870912
      optimizeror_expansion  = DEPTH
    PMON started with pid=2, OS id=17336
    DBW0 started with pid=3, OS id=16972
    LGWR started with pid=4, OS id=16900
    CKPT started with pid=5, OS id=17236
    SMON started with pid=6, OS id=17436
    Regards
    Pieter

  • Exec.State and Start Asynchrono​us Call

    In my application I like to start a VI asynchronously by pressing a button control. I just want to have one instance of the VI running so I let the caller test if the VI is already running. Unfortunately there seems to be a bug in the Exec.State property if you use it with a VI reference that has been built with a type specifier. It returns always "Running" as state.
    I found a workaround by first openening a "normal" reference to the VI, questioning the Exec.State property, closing the reference and opening the "typed" reference. That works like I think it should.
    My question: Is this difference in behaviour of the "VI" property node and the "VI Interface Type 1" property node by design or is this a bug in LV 2012 (I have not tested it with another version) ?
    Matthias

    I just wanted to point out about the very reason of the situation:
    These are the options you can read by the Execution State property. As already marked, "Running" indicates that the VI is (at least) reserved for execcution. It does not necessarily mean that the VI is actually executing!
    That being said, opening a typified reference to the VI already reserves the VI for running, hence your property node returns this value.
    Your workaround seems to be well-thought out and should work in any case. Y already gave another option of handling this situation.
    I doubt that there is another, better solution other to these two.
    Norbert
    CEO: What exactly is stopping us from doing this?
    Expert: Geometry
    Marketing Manager: Just ignore it.

  • Urgent Help Required : Java Runtime.exec

    Hello,
    We are using the java Runtime.exec in the AIX 4.3.3 environment. Java version 1.1.8. We are consuming the output of the Runtime.exec without using the threads. i.e we are doing a readline on the output stream of the runtime and printing it to th standard output in a loop. When this is over we take the error stream and do the same.
    We have two problems.
    1. A ksh that is run using the java Runtime.exec is showing up multiple processes with the same as a tree structurre when we do a ps.
    Why is this ?
    2. Also whatever we consume from the standard output/error of runtime and print it to system.out is not being output/error. Any pointers on this ?
    Thanks in advance,
    Raj.

    thanks !
    1. we have single thread executing the command. And there are no multiple processes spawned inside the shell script also.
    2. I am sorry about the phrasing. Eventhough we are catching the output stream and error stream and dumping the output correspondingly, the process ( the shell script ) hangs ! And this behaviour is sporadic. Please let us know why the process should hang !
    Thanks,
    rajesh.

  • File lock during exec() use

    Hi, thanks for your attention.
    I'm having the following problem: (using Java 6 and Windows XP)
    I want to open an image tools from my java program, using an image file already existing, during my java program execution.
    But when I try to save the edited image on the same file, the image tool cannot do it, apparently because of a file write lock on the original file.
    I do not keep any lock or stream open on the file (dont even open the file), and the problem does not happen every time. Can anybody tell my if this is a normal behaviour, and a possible workaround if it exists?
    Here is my code
                     java.io.File executable = "c:/windows/system32/mspaint";
                     String order =   executable.getAbsolutePath() + c:/temp/image1.jpg";
                    Process proc= Runtime.getRuntime().exec(order,
                            null,executable.getParentFile());
                    proc.waitFor();
      // ....

    By the way, I have the same problem if I try to use java.awt.Desktop or JDIC to open the file: if I try to save the edited file, I get (almost always, but not always) a "shared access violation" warning, and I cannot save it.
    Curious, isn't it?

Maybe you are looking for