Trace1

On windows Oracle server in dedicated mode-
I have session 1 using sqlplus as sys
I have session 2 using sqlplus as sys and traced the first session using EXECUTE DBMS_SUPPORT.start_trace_in_session(SID, SERIAL, TRUE, TRUE);
- I execute select name from v$database in session 1.
- Then in session I stop the trace.
- I exit from session 1
Using tkprof I create output file from the trace. The output file has select name from v$database and other OEM sqls logged which I did not issue. Where are the other OEM SQL's comming from and why are they logged in the trace of session 1?
I expected to see only 1 SQL issued in session 1. Can you help understand this behaviour.
Edited by: rman_guru on Aug 5, 2011 3:57 AM

By OEM i meant, i see multiple SQL's with tag /* OracleOEM */
Following is part of tkprof output(though I issued only 1 SQL):
And at the bottom of tkprof it has a summary:
1 session in tracefile.
24 user SQL statements in trace file.
14 internal SQL statements in trace file.
38 SQL statements in trace file.
11 unique SQL statements in trace file.
2777 lines in trace file.
24 user SQL statement (!!!) I issued only 1 SQL (this was login-session1, start trace from session2, run 1 sql in session1, sopped trace from session2, logout from session1)
select s.sid session_id, s.serial# serial_number
from
v$session s where s.audsid=userenv('SESSIONID')
call     count       cpu    elapsed       disk      query    current        rows
Parse       12      0.01       0.58          0          0          0           0
Execute     12      0.00       0.06          0          0          0           0
Fetch       12      0.00       0.15          0          0          0         228
total       36      0.01       0.79          0          0          0         228
Misses in library cache during parse: 0
Optimizer goal: RULE
Parsing user id: SYS
/* OracleOEM */
SELECT event, count(1)
  FROM v$session_wait
WHERE wait_time = 0
   AND event NOT IN
      ('ARCH random i/o',
       'ARCH sequential i/o',
       'KXFX: execution message dequeue - Slaves',
       'LGWR random i/o',
       'LGWR sequential i/o',
       'LGWR wait for redo copy',
       'Null event',
       'PL/SQL lock timer',
       'PX Deq Credit: need buffer',
       'PX Deq: Execute Reply',
       'PX Deq: Execution Msg',
       'PX Deq: Index Merge Close',
       'PX Deq: Index Merge Execute',
       'PX Deq: Index Merge Reply',
       'PX Deq: Join ACK',
       'PX Deq: Msg Fragment',
       'PX Deq: Par Recov Change Vector',
       'PX Deq: Par Recov Execute',
       'PX Deq: Par Recov Reply',
       'PX Deq: Parse Reply',
       'PX Deq: Table Q Normal',
       'PX Deq: Table Q Sample',
       'PX Deq: Txn Recovery Reply',
       'PX Deq: Txn Recovery Start',
       'PX Deque wait',
       'PX Idle Wait',
       'Queue Monitor Shutdown Wait',
       'Queue Monitor Slave Wait',
       'Queue Monitor Wait',
       'RFS random i/o',
       'RFS sequential i/o',
       'RFS write',
       'SQL*Net message from client',
       'SQL*Net message from dblink',
       'STREAMS apply coord waiting for slave message',
       'STREAMS apply coord waiting for some work to finish',
       'STREAMS apply slave idle wait',
       'STREAMS capture process filter callback wait for ruleset',
       'STREAMS fetch slave waiting for txns',
       'WMON goes to sleep',
       'async disk IO',
       'client message',
       'control file parallel write',
       'control file sequential read',
       'control file single write',
       'db file single write',
       'db file parallel write',
       'dispatcher timer',
       'gcs log flush sync',
       'gcs remote message',
       'ges reconfiguration to start',
       'ges remote message',
       'io done',
       'jobq slave wait',
       'lock manager wait for remote message',
       'log file parallel write',
       'log file sequential read',
       'log file single write',
       'parallel dequeue wait',
       'parallel recovery coordinator waits for cleanup of slaves',
       'parallel query dequeue',
       'parallel query idle wait - Slaves',
       'pipe get',
       'pmon timer',
       'queue messages',
       'rdbms ipc message',
       'recovery read',
       'single-task message',
       'slave wait',
       'smon timer',
       'statement suspended, wait error to be cleared',
       'unread message',
       'virtual circuit',
       'virtual circuit status',
       'wait for activate message',
       'wait for transaction',
       'wait for unread message on broadcast channel',
       'wait for unread message on multiple broadcast channels',
       'wakeup event for builder',
       'wakeup event for preparer',
       'wakeup event for reader',
       'wakeup time manager')
GROUP BY event
call     count       cpu    elapsed       disk      query    current        rows
Parse        8      0.20       9.95          0          0          0           0
Execute      8      0.00       0.02          0          0          0           0
Fetch        8      0.00       0.00          0          0          0           0
total       24      0.20       9.97          0          0          0           0
Misses in library cache during parse: 0
Optimizer goal: RULE
Parsing user id: SYS
********************************************************************************

Similar Messages

  • Issue in RFCLookup UDF

    Hi All,
    Requesting your help in fixing an UDF issue.
    This UDF is to check for a table entry and if not found it will create an alert with some source values.
    Now the problem is, alert mails are getting created but the values are not getting passed.
    Here is the source code:
    AbstractTrace trace;
    trace = container.getTrace();
    MappingTrace trace1;
    trace1 = container.getTrace();
    Object cachedValue = null;
    String result = null;
    String sender = null;
    String receiver = null;
    //Check if source is null or blank. If so then pass blank value to target 
    if(((sourceValue1.trim()).equals("")) ||  ((sourceValue2.trim()).equals("")) || ((sourceValue3.trim()).equals("")))
      result="";
    else
                                 Map map = container.getTransformationParameters();
    //Sender System name which is the same as the Sender Business System name in Integration Directory
    sender = (String) map.get(StreamTransformationConstants.SENDER_SYSTEM);
    //Receiver System name which is the same as the Receiver Business System name in Integration Directory
    receiver = (String) map.get(StreamTransformationConstants.RECEIVER_SYSTEM);
    // Parameter for cache value. A semicolon is used as a separator between keys
    String CONTAINER_PARAMETER = subCat.trim() + UDFReader.getString("PARAMETER_DELIMETER") +sourceValue1.trim() + UDFReader.getString("PARAMETER_DELIMETER") +sourceValue2.trim() + UDFReader.getString("PARAMETER_DELIMETER") +sourceValue3.trim();
    trace1.addWarning("CONTAINER PARAMETER: " + CONTAINER_PARAMETER + "\n");
    trace.addDebugMessage(UDFReader.getString("CACHE_CONTAINER_PARAMETER_TEXT") + CONTAINER_PARAMETER);
    // Retrieve cached value
    cachedValue = container.getParameter(CONTAINER_PARAMETER);
    if(cachedValue!=null)
      // Cached value found
      result = cachedValue.toString();
      trace.addDebugMessage(UDFReader.getString("CACHE_RESULT_TEXT") + result);
    else
      // Cached value not present. Fetch value from database
      // Build key column names array to be passed to java class
      String keyColNames[] =new String[6];
      keyColNames[0]=UDFReader.getString("SAP_SYSTEM_COLUMN_NAME");
      keyColNames[1]=UDFReader.getString("LEGACY_SYSTEM_COLUMN_NAME");
      keyColNames[2]=UDFReader.getString("SUBCATEGORY_COLUMN_NAME");
      keyColNames[3]=sourceField1;
      keyColNames[4]=sourceField2;
      keyColNames[5]=sourceField3;
      trace1.addWarning("KeyColNames" + keyColNames[0] + "\n" + keyColNames[1] + "\n" + keyColNames[2] + "\n" + keyColNames[3] + "\n" + keyColNames[4] + "\n" + keyColNames[5] + "\n");
      // Build key column values array to be passed to java class
      String keyColValues[] = new String[6];
       //Check whether sender system is SAP or Legacy
                             if(sourceField1.startsWith(UDFReader.getString("SAP_SYSTEM_PREFIX")))
       //Sender system is SAP
       keyColValues[0]=sender;
       //Receiver system is Legacy
       keyColValues[1]=receiver;
                             else
       //Receiver system is SAP    
       keyColValues[0]=receiver;
       //Sender system is Legacy
       keyColValues[1]=sender;
      keyColValues[2]=subCat.trim();
      keyColValues[3]=sourceValue1.trim();
      keyColValues[4]=sourceValue2.trim();
      keyColValues[5]=sourceValue3.trim();
      // Fetch result using java class
      result=RfcLookupHandler.RFCLookup(table,keyColNames, 
    keyColValues,targetField,trace);
    trace1.addWarning("Result:" + result);
      if(!result.equals(RfcLookupHandler.VALNOTFOUND))
       // Record found in database
       container.setParameter(CONTAINER_PARAMETER,result);
      else
       // Record not found in database
                                              //Autogenerated message id generated at runtime
       String msgId = (String) map.get ( StreamTransformationConstants.MESSAGE_ID);
       //Dynamic alert message details-Trigerred through RFC SALERT_CREATE
       String element[] = new String[9];
       String tabIndex[] = new String[9];
       String elementLength[] = new String[9];
       String type[] = new String[9];
       String value[] = new String[9];
       //Container names for alert message
       element[0] = UDFReader.getString("CONTAINER_NAME_MESSAGE_ID");
       element[1] =UDFReader.getString("CONTAINER_NAME_INTERFACE_NAME");
       element[2] =UDFReader.getString("CONTAINER_NAME_OBJECT_TYPE");
            //element[2]="SAP_MAT_NO";
       element[3] =UDFReader.getString("CONTAINER_NAME_OBJECT_TYPE"); ;
       element[4] =UDFReader.getString("CONTAINER_NAME_OBJECT_TYPE");
            //element[4]="PLANT";
       element[5] = UDFReader.getString("CONTAINER_NAME_OBJECT_VALUE");
       element[6] = UDFReader.getString("CONTAINER_NAME_OBJECT_VALUE");
       element[7] =UDFReader.getString("CONTAINER_NAME_OBJECT_VALUE");
       element[8] ="TABLE";
       trace1.addWarning("Warning: \n" + element[0]  + "\n" + element[1]  + "\n" + element[2]  + "\n" + element[3]  + "\n" + element[4]  + "\n" + element[5]  + "\n" + element[6]  + "\n" + element[7]  + "\n" + element[8]);
       //Tab index of container variables in alert message
       tabIndex[0] = "000001";
       tabIndex[1] = "000002";
       tabIndex[2] = "000003";
       tabIndex[3] = "000004";  
       tabIndex[4] = "000005";  
       tabIndex[5] = "000006";  
       tabIndex[6] = "000007";  
       tabIndex[7] = "000008";
       tabIndex[8] = "000009";
       //Length of containers
       elementLength[0] = elementLength[1] = elementLength[2] =elementLength[3] = elementLength[4] = elementLength[5] = elementLength[6] =  elementLength[7]=elementLength[8]=UDFReader.getString("CONTAINER_VALUE_LENGTH");
       //Data type of containers
       type[0] = type[1] = type[2]  = type[3] = type[4]=type[5]  = type[6]  =type[7]  ="C";
       //Values supplied to containers
       value[0] =msgId;
       value[1] =interfaceName;
       value[2] =  sourceField1;
       value[3] = UDFReader.getString("MESSAGE_SEPARATOR_HYPHEN") + sourceValue1.trim();
       value[4] = UDFReader.getString("MESSAGE_SEPARATOR_COMMA")  + sourceField2;
       value[5] = UDFReader.getString("MESSAGE_SEPARATOR_HYPHEN") + sourceValue2.trim();
       value[6] = UDFReader.getString("MESSAGE_SEPARATOR_COMMA")  + sourceField3;
       value[7] = UDFReader.getString("MESSAGE_SEPARATOR_HYPHEN") + sourceValue3.trim();
       value[8] =table;
    trace1.addWarning("Table: "+table);
       // Check error handling flag
       if(errorHandlingFlag.equalsIgnoreCase("E"))
       //Throw Error and generate alert message
       trace.addInfo(UDFReader.getString("NO_RESULT_FLAG_E_TRACE"));
    trace1.addWarning("Error Flag: E");
    for (int i=0; i<9; i++){
    trace1.addWarning("Parameters["+i+"]: " +value[i]);
       result = SUPPRESS;
       RfcAlertHandler.RFCAlert(alertCat,element,tabIndex,elementLength,type,value,trace);
       throw new ValueMappingException(UDFReader.getString("NO_RESULT_FLAG_E_EXCEPTION"));
       else if(errorHandlingFlag.equalsIgnoreCase("N"))
        //Pass 'NA' value to target
        result=UDFReader.getString("NO_RESULT_FLAG_N_VALUE_PASSED");
        trace.addInfo(UDFReader.getString("NO_RESULT_FLAG_N_TRACE"));
    trace1.addWarning("Error Flag: N");
       else if(errorHandlingFlag.equalsIgnoreCase("B"))
        //Pass blank value to target
        result="";
        trace.addInfo(UDFReader.getString("NO_RESULT_FLAG_B_TRACE"));
    trace1.addWarning("Error Flag: B");
       else
        //Incorrect Error Handling Flag
        trace.addInfo(UDFReader.getString("INCORRECT_FLAG_TRACE"));
    trace1.addWarning("Error Flag: INCORRECT");
        result = SUPPRESS;
        throw new ValueMappingException(UDFReader.getString("INCORRECT_FLAG_EXCEPTION"));
    return result;
    Can someone check where could be the problem?
    Thanks,
    Glory.

    What is RfcLookupHandler? And where is RFC channel settings?

  • How to determine the number of rows of data in a datatable?

    I have a datatable that I fill from an SQL query.  I do not know exactly how many rows of data it will return (due to my selection criteria) but will be somewhere between 100 and 300 rows.  I send this data into a report but need to determine the length of the report (panel height data member) programatically based on how much data the query has returned.  So, I need a way to count how many rows are filled in the data table.
    I tried doing a nested "if" statement checking the value of each cell but when I tested the expression at 59 "if" statements (will need 300+) I got a parser error in lookout when I tried to accept the connection.  I also tried a type of loop by assigning cursor.2 either to its own value (circular) or to its own value plus one depending on the value of the cell at cursor.2.  It was close but overshot by one row or more (much more sometimes).
    Any clever ideas?  Perhaps I have just been looking at this problem too long.  Thanks, in advance, for your help.

    Since the datatable gets the data from the SQL query, you can also use the SQL statement to count the number of rows in the query result.  
    For example, in datatable you do "select localtime, trace1 from intdata where xxx". You can get the count by "select count(trace1) from intdata where xxx". Use the same condition in order to get the same number of rows.
    Maybe another SQLExec object is needed to do the count.
    Whenever the datatable executes the SQL, the SQLExec executes and return the count.
    Ryan Shi
    National Instruments

  • How to create an excel spreadsheet?

    Hello,
    Im interested how to create the *.xls file with NI Library. I cant find the right function. Usually, Im using following code (ODBC):
    CDatabase database;
      CString sDriver = "MICROSOFT EXCEL DRIVER (*.XLS)"; // exactly the same name as in the ODBC-Manager
      CString sExcelFile = "c:\\demo.xls";                // Filename and path for the file to be created
      CString sSql;
      TRY
        // Build the creation string for access without DSN
        sSql.Format("DRIVER={%s};DSN='';FIRSTROWHASNAMES=1;READONLY=FALSE;CREATE_DB=\"%s\";DBQ=%s", sDriver,sExcelFile,sExcelFile);
        // Create the database (i.e. Excel sheet)
        if( database.OpenEx(sSql,CDatabase::noOdbcDialog) )
          // Create table structure
          sSql = "CREATE TABLE demo (Name TEXT,Age NUMBER)";
          database.ExecuteSQL(sSql);
          // Insert data
          sSql = "INSERT INTO demo (Name,Age) VALUES ('Bruno Brutalinsky',45)";
          database.ExecuteSQL(sSql);
          sSql = "INSERT INTO demo (Name,Age) VALUES ('Fritz Pappenheimer',30)";
          database.ExecuteSQL(sSql);
          sSql = "INSERT INTO demo (Name,Age) VALUES ('Hella Wahnsinn',28)";
          database.ExecuteSQL(sSql);
        // Close database
        database.Close();
      CATCH_ALL(e)
        TRACE1("Driver not installed: %s",sDriver);
      END_CATCH_ALL;
    I looked for the function with parameters like sExcelFile but i cant find the right. Do You have any idea How to work with NI Library and Excel files. If it will be possible, send me a procedure or example.... Thank you very much for help and advice.
    emta

    There are two examples that ship with Measurement Studio that demonstrate how to use the Measurement Studio C++ classes to interface to Excel. The examples are installed to the following locations by default:
    C:\Program Files\National Instruments\MeasurementStudioVS2003\VCNET\Examples\Office\ExcelAdvanced
    C:\Program Files\National Instruments\MeasurementStudioVS2003\VCNET\Examples\Office\ExcelReport
    The top level class that you use in this API is CNiExcelApplication. You should be able to find this through the Index in the Measurement Studio help.
    One point to note that this API controls the Excel application through its ActiveX automation interface. This is different than the approach you are using above and so will require that you write different code to accomplish your task.

  • PNA Guided Calibration: GPIB write error in for loop

    Hi,
    I have a LabVIEW program that creates a Guided Power Calibration on a PNA.
    After initializing everything properly, I have a for loop that loops through all the manual steps that the user must go through (ex: Connect Channel A of Power meter to Port 1" "Connect male Short to port 1" etc).
    The problem is, the program displays an error at the first command: sens:corr:coll:guid:acq STAN1
    I says there is an error with the GPIB Write function.
    Here are the commands I send:
    SYSTRES
    DISPlay:WINDow2TATE ON
    CALCulate2ARameterEFine:EXT 'MyMeas',S21
    DISPlay:WINDow2:TRACe1:FEED 'MyMeas'
    CALC1AREL 'CH1_S11_1'
    SENS:FREQTAR 2e9
    SENS:FREQTOP 4e9
    SENSWEOINTS 3
    SENS:CORR:COLL:GUID:CONNORT1 'APC 2.4 male'
    SENS:CORR:COLL:GUID:CONNORT2 'APC 2.4 male'
    SENS:CORR:COLL:GUID:CKITORT1 '85056D'
    SENS:CORR:COLL:GUID:CKITORT2 '85056D' 
    SENSe:CORRection:COLLect:GUIDedSENsor1 ON
    SYSTem:COMMunicateSENsor gpib, "13"   
    SENSe:CORRection:COLLect:GUIDedSENsor1OWer:LEVel -20
    sens:corr:coll:guid:init
    sens:corr:coll:guid:steps?
    //for loop from 1 to total_number_of_steps
    sens:corr:coll:guid:desc? <step#>
    sens:corr:coll:guid:acq STAN<step#>
    The program quits right at the first step, when I send "sens:corr:coll:guid:acq STAN1", although the command is executed.
    Also, the VBScript with the same commands works fine.
    Can anybody help me? I've been stuck for a while now.
    I attached the block diagram of the for loop.
    Thanks in advance,
    Nicolas
    Attachments:
    Guided cal for loop.vi ‏27 KB

    Sending SENS:corr:coll:guid:acq STAN1 \n gives me a different error: -101 "Invalid Character".
    From my different attempts at figuring this out, I thought the problem would come from LabVIEW, since the vbscript with the same commands works on the PNA.
    I also modified the for loop because I thought each iteration should be linked to the previous one with the error wire (see attached).
    I still have the same issue, only the first iteration is executed, then the program quits.
    Attachments:
    Guided cal for loop.vi ‏28 KB

  • [newbie Q]What am I doing wrong...

    I'm totally a newbie to Oracle and pro*C.
    It's my first 3rd day of working on Oracle, and Pro*C precompiler and pl/sql concept looks very obscure to me. (Although I'm rather familiar to RDBMS jobs.)
    I've added "sqlcheck=full" option to compiler and below is my code.
    ///From here...
    EXEC SQL EXECUTE
    EXEC SQL
    SELECT LPAD(a.PK, 10, '0'),a.USER_NO, b.NAT_NAME,
    l.CD_NAME,
    NVL(a.KOR_NM, ' '), NVL(a.ENG_NM, ' '), NVL(a.CHN_NM, ' '),
    a.RES_NO, NVL(a.USER_ID, ' '), DECODE(a.SEX, '0', '32<:', '?)<:'),
    c.CD_NAME, d.CD_NAME, e.CD_NAME,
    f.CD_NAME, g.DEPT_NM, h.CD_NAME,
    a.EMP_DT, i.CD_NAME, j.CD_NAME,
    a.UPGRD_DT, a.NEXTUPGRD, a.CHNG_DT,
    a.RET_DT, NVL(k.CD_NAME, ' '), a.RET_START,
    NVL(a.MEDI_NO, ' '),NVL(a.REMOTE_MEDI, 0)
    INTO :out.m_szPK, :out.m_szUserNo, :out.m_varNatCd,
    :out.m_varStat,
    :out.m_varKorNm, :out.m_varEngNm, :out.m_varChnNm,
    :out.m_szResNo, :out.m_varUserId, :out.m_szSex,
    :out.m_varJikchak, :out.m_varJikwi, :out.m_varJikjong,
    :out.m_varBiz, :out.m_varDept, :out.m_varWkArea,
    :out.m_dtEmpDt, :out.m_varEmpGbn, :out.m_varEmpAcacd,
    :out.m_dtUpgrdDt, :out.m_dtNextUpgrd, :out.m_dtChngDt,
    :out.m_dtRetDt, :out.m_varRetDest, :out.m_dtRetStart,
    :out.m_szMediNo, :out.m_lRemoteMedi
    FROM TH_ABPNL a, TC_ABNATION b, TC_ABCODE c, TC_ABCODE d,
    TC_ABCODE e, TC_ABCODE f, TH_ABDEPT g, TC_ABCODE h,
    TC_ABCODE i, TC_ABCODE j, TC_ABCODE k, TC_ABCODE l
    WHERE a.PK = TO_NUMBER(LTRIM(:in.m_szPK, '0'))
    AND a.USE_GBN = 0 AND b.USE_GBN = 0
    AND c.USE_GBN = 0 AND d.USE_GBN = 0
    AND e.USE_GBN = 0 AND f.USE_GBN = 0
    AND g.USE_GBN = 0 AND h.USE_GBN = 0
    AND i.USE_GBN = 0 AND j.USE_GBN = 0
    AND k.USE_GBN = 0 AND l.USE_GBN = 0
    AND b.NAT_CD = RTRIM(a.NAT_CD)
    AND c.CD_GRP = 'HAB003' AND a.JIKCHAK = c.CODE
    AND d.CD_GRP = 'HAB027' AND a.JIKWI = d.CODE
    AND e.CD_GRP = 'HAB005' AND a.JIKJONG = e.CODE
    AND f.CD_GRP = 'HAB006' AND a.BIZ_CD = f.CODE
    AND a.DEPT_CD = g.DEPT_CD
    AND h.CD_GRP = 'HAB007' AND a.WK_AREA = h.CODE
    AND i.CD_GRP = 'HAB008' AND a.EMP_GBN = i.CODE
    AND j.CD_GRP = 'HAB009' AND a.EMP_ACACD = j.CODE
    AND k.CD_GRP = 'HAB014' AND a.RET_DEST = k.CODE
    AND l.CD_GRP = 'HAB034' AND a.STAT = l.CODE;
    l_lCode = dbconn.ErrorCode();
    TRACE1("l_lCode =[%d]\n", l_lCode);
    if(l_lCode != 0)
    sprintf(l_sErrMsg, "Pnl Select1 Error[%d]", l_lCode);
    return Error.DSOError(-1, l_sErrMsg);
    end-EXEC;
    //End of code.
    I've added EXEC SQL EXECUTE AND END-EXEC as I want to use pl/sql in my pc source.
    After adding this and the compile option, it makes a compile error.
    This code was compiled well and worked well without compile option and "EXEC SQL EXECUTE" ,"END-EXEC" declration.
    I mean just using "EXEC SQL SELECT ... INTO ... FROM...WHERE..." works well..
    So my questions are...
    1. When compile without option and declaration(EXEC SQL EXECUTE AND END-EXEC), am I using pl/sql or not?
    2. How can just using "EXEC SQL SELECT ... INTO ... FROM...WHERE..." works well?
    At this time, am I using pl/sql or not?
    3. How can I fetch every column value from all selected rows?
    I've searched all orcle.com only to fail.
    Is there any good pointing about this sample?
    Thanks in advance....
    I know that I should work on basics first, but I've got no time..:(
    So..so...project term and my bosses runs that way...
    Thanks again.
    Regards,
    Ryan

    <BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica">quote:</font><HR>Originally posted by Michael Kleiser ([email protected]):
    You have to put "EXEC SQL EXECTE" "END-EXEC" only arround your PL/SQL-Block.
    Look at this site
    http://otn.oracle.com/docs/products/oracle8i/doc_library/817_doc/appdev.81 7/a76942/pc_07pls.htm#1283
    for an example.
    ( Search for "A More Complex Example" in the site )
    I hope it helps <HR></BLOCKQUOTE>
    Thanks for the info. :-)

  • Yosemite Server: Apache shm errors with proxy_balancer | SASL errors using user alias

    Dear OSX Server Ninjas,
    I recently upgraded my 10.9.5 Mac mini running Server 3.2.2 to Yosemite + Server v4, directly to v4.0.3. The box serves the whole Mail/Cal/Contacts/VPN palette as well as some websites, Git repos and some custom software. See below for network setup.
    After battling the most blatant issues (some easy to fix but hard to find, others hard on both), I'm almost back to a working server setup … but some things keep bugging me even after days of log-reading and OD tricks. In the last days, I have read countless discussions here as well as on stackoverflow/serverfault/apple.stackexchange and blogs, so I'll try to be as thorough and precise as possible to show what I have tried so far – sorry in advance for the long post
    … and since you might not read to the bottom: Thanks in advance for any help, especially with the Apache problem!
    My setup
    OSX Server v4.0.3 running on Yosemite 10.10.1 ➞ both latest official releases
    host + DNS
    Hostname configured for public domain mydomain.net, web traffic on selected ports comes in through router NAT
    Server has a static IP on the local subnet 192.168.178.0/24
    Server running local DNS and performing lookups for all clients in the local subnet, forwarding to the router at 192.168.178.1
    Primary zone for mydomain.net with records (A, NS, MX) pointing to said static IP
    changeip -checkhostname is successful
    Public IP is currently configured at the domain registrar through his name servers
    SSL
    Trusted third-party certificate installed for host.mydomain.net (Common Name + SAN for two subdomains)
    Used to secure all services
    Qualys SSL Test Grade B (capped due to OSX's openssl 0.9.x not being capable of TLS1.2 and Intermediate CA SHA-1 )
    TLS working both inbound and outbound according to CheckTLS.com
    OpenDirectory
    Recreated after upgrade (probably not necessary, since issue persists), re-imported groups + users from WGM backup files
    Only the server itself is bound to the directory, other devices just access services through network accounts (CRAM-MD5, MD5-Digest)
    Problems
    Apache shm errors: Apache fails to create slot memory when proxy module is enabled
    As soon as I start a service which requires the Apache proxy_balancer module (e.g. Cal/Contacts, ProfileManager), this starts filling up my Apache's error log:
    [Mon Jan 12 01:41:17.979882 2015] [proxy_balancer:emerg] [pid 2949] (28)No space left on device: AH01179: balancer slotmem_create failed for p26d9e669--1011640492
    [Mon Jan 12 01:41:17.979894 2015] [:emerg] [pid 2949] AH00020: Configuration Failed, exiting
    [Mon Jan 12 01:41:28.297127 2015] [slotmem_shm:error] [pid 3026] (28)No space left on device: AH02611: create: apr_shm_create(/private/var/run/slotmem-shm-p26d9e669--1001322955.shm) failed
    [Mon Jan 12 01:41:28.297347 2015] [proxy_balancer:emerg] [pid 3026] (28)No space left on device: AH01179: balancer slotmem_create failed for p26d9e669--1001322955
    [Mon Jan 12 01:41:28.297355 2015] [:emerg] [pid 3026] AH00020: Configuration Failed, exiting
    When I increase the Apache LogLevel to trace1, I get this as well:
    [Mon Jan 12 02:11:43.190303 2015] [slotmem_shm:debug] [pid 5501] mod_slotmem_shm.c(367): AH02602: create didn't find /private/var/run/slotmem-shm-p26d9e669-813569972.shm in global list
    This causes the Apache to crash constantly, which is … unnerving. After googling around for a while, I tried the following steps:
    Stop Services that use the Apache (Web, *DAV, ProfileManager)
    sudo apachectl stop
    Remove all orphan cache/slot files (.shm, ssl-cache, proxy.*) from /private/var/run
    Reboot the server
    Start up the Services again
    Curiously enough, this worked for a while! But I was getting several log messages about dropped proxy connections, and sometimes the ProfileManager page would time out. Then, the issue started to reappear and does not seem to be fixed again with the steps above. I looked through the Apache config files and config plists for the Services in question, as well as the default config files. The only thing I have so far is that as long as there are no active proxy connections, the Apache runs smoothly – but all goes awry when slotmem files are created (a lot of them). Sometimes, I am able to turn on the Calendar service, but switching on Contacts produces the error … one time, I even got Calendar + Contacts running, and all went well until I enabled Profile Manager.
    I found several error reports with similar or identical errors from other Apache 2.4.x users, but most of those were developer talk on mailing lists, or suggested steps that did not work for me (or were inapplicable on the OS X Server Apache environment).
    SASL errors using user alias for WebDAV-Digest authentication
    Short version: I am unable to authenticate through WebDAV-Digest with a user's alias (defined in Server Admin > Users > Context Menu > Advanced Options or WGM). Using the main short name of the same user works flawlessly. Password Server Error log just shows:
    AUTH2: {234023578237md5hash2384234, mainshortname} WEBDAV-DIGEST authentication failed, SASL error -13 (password incorrect).
    The password is 100% correct: When I set up a test CalDAV account and put in alias+PW, it did not work (OS X Dialog showed “could not be verified”, Server log as above). Leaving the password field filled and just switching the user to the main short name went through instantaneously, with the Server log showing
    AUTH2: {234023578237md5hash2384234, mainshortname} WEBDAV-DIGEST authentication succeeded.
    Notice the same MD5 hash and canonical short name, yet different results. I don't know if this is a new “feature”, a result of mail aliases being handled differently (at least I read that somewhere) …
    Additional Questions
    Should I configure the DNS for public use, instead of the Split-Brain configuration (local network gets local IP, outside traffic is directed by registrar NS)? I read several articles explaining that Split-Brain is common in large organizations, but might introduce weird networking issues. Entering the external IP as a Round Robin alternative for the internal does not seem sensible to me.
    I also have a question concerning LDAP log entries like this one below, but I'll put that in this already open discussion:
    => bdb_idl_delete_key: c_get failed: DB_LOCK_DEADLOCK: Locker killed to resolve a deadlock (-30994)

    Today the same error occurred on a customers server.
    We don't use Calendar or Contacts.
    We only have some websites configured and want use NetInstall for deployments.
    As soon as I disable the Profilemanager the httpd starts over and other websites and NetInstall via HTTP are working fine.
    When I reenable Profilemanager the httpd processes are gone and I see the same stuff in Apache's error log...

  • Example-- Call RFC from external Java Application

    Update: I need code example to call RFC from External Java application. Can onybody help me?                                                      
    RGDS
    RP
    hi all.
    i want to create my own log for each interface.
    i saw this blog:
    /people/michal.krawczyk2/blog/2006/09/20/xi-abap-mapping-logs--more-standard-better-visibility
    my doubt is how to catch the error that i see in SXI_MONITOR y put it in a Sub-Objetc.
    For example: in sxi_monitor i get the error for my interface NMUCustomer: "No receiver could not be found" or "Error Mapping Traformation".
    I created an Object called ZNMUCUSTOMER and a Sub-Objetc called ZERROR.
    what i must do to get the error I see in monitor and assign it to Sub-Object??
    Rgds.
    Message was edited by:
            Rodrigo Pertierra
    Message was edited by:
            Rodrigo Pertierra
    Message was edited by:
            Rodrigo Pertierra

    Hi,
    Oh, you are using ABAP mapping ......
    then use the following in ABAP mapping ..
    TRACE1,TRACE2,TRACE3.... for trace level 1,2,3......
    http://help.sap.com/saphelp_nw04/helpdata/en/ba/e18b1a0fc14f1faf884ae50cece51b/content.htm
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/5c46ab90-0201-0010-42bd-9d0302591383
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/866ce290-0201-0010-338f-b8c3553aaa0f
    Regards
    Chilla

  • Oracle Database 10g Express Edition installing on win2003 SP2

    We are trying to install oracleXE on W2k3 SP2 and getting failed after diplaying "Publishing product information" at final stage. Noting is prompted after this step.

    Many Thanks for the response. These are the few lines. Please let me know if you wish to view the complete log. plz share you mail id, so that i can share the complete log.
    Property(S): RESOURCES = C:\oraclexe\app\oracle\product\10.2.0\server\ODP.NET\Resources\
    Property(S): DE = C:\oraclexe\app\oracle\product\10.2.0\server\ODP.NET\Resources\de\
    Property(S): DEFAULTS = C:\oraclexe\app\oracle\product\10.2.0\server\ctx\admin\defaults\
    Property(S): DELX = C:\oraclexe\app\oracle\product\10.2.0\server\ctx\data\delx\
    Property(S): DEMO = C:\oraclexe\app\oracle\product\10.2.0\server\demo\
    Property(S): DEMO1 = C:\oraclexe\app\oracle\product\10.2.0\server\nls\demo\
    Property(S): DIRPROPERTY1 = D:\
    Property(S): DOC1 = C:\oraclexe\app\oracle\product\10.2.0\server\doc\
    Property(S): DOC3 = C:\oraclexe\app\oracle\product\10.2.0\server\precomp\doc\
    Property(S): ODP.NET1 = C:\oraclexe\app\oracle\product\10.2.0\server\ODP.NET\
    Property(S): DOC6 = C:\oraclexe\app\oracle\product\10.2.0\server\ODP.NET\doc\
    Property(S): DesktopFolder = C:\Documents and Settings\All Users\Desktop\
    Property(S): ENLX = C:\oraclexe\app\oracle\product\10.2.0\server\ctx\data\enlx\
    Property(S): ES = C:\oraclexe\app\oracle\product\10.2.0\server\ODP.NET\Resources\es\
    Property(S): ESLX = C:\oraclexe\app\oracle\product\10.2.0\server\ctx\data\eslx\
    Property(S): FLASH_RECOVERY_AREA = C:\oraclexe\app\oracle\flash_recovery_area\
    Property(S): FR = C:\oraclexe\app\oracle\product\10.2.0\server\ODP.NET\Resources\fr\
    Property(S): FRLX = C:\oraclexe\app\oracle\product\10.2.0\server\ctx\data\frlx\
    Property(S): FavoritesFolder = C:\Documents and Settings\-oper-lrajesh\Favorites\
    Property(S): FontsFolder = C:\WINDOWS\Fonts\
    Property(S): GIFS = C:\oraclexe\app\oracle\doc\dcommon\gifs\
    Property(S): GlobalAssemblyCache = D:\
    Property(S): HELP = C:\oraclexe\app\oracle\product\10.2.0\server\precomp\help\
    Property(S): HELP1 = C:\oraclexe\app\oracle\product\10.2.0\server\sqlplus\admin\help\
    Property(S): HELP2 = C:\oraclexe\app\oracle\product\10.2.0\server\ODP.NET\help\
    Property(S): ODBC = C:\oraclexe\app\oracle\product\10.2.0\server\odbc\
    Property(S): HELP3 = C:\oraclexe\app\oracle\product\10.2.0\server\odbc\help\
    Property(S): HTML = C:\oraclexe\app\oracle\doc\dcommon\html\
    Property(S): HTML2 = C:\oraclexe\app\oracle\product\10.2.0\server\odbc\html\
    Property(S): SCHEMA1 = C:\oraclexe\app\oracle\product\10.2.0\server\demo\schema\
    Property(S): HUMAN_RESOURCES = C:\oraclexe\app\oracle\product\10.2.0\server\demo\schema\human_resources\
    Property(S): IMG = C:\oraclexe\app\oracle\doc\img\
    Property(S): IMG_TEXT = C:\oraclexe\app\oracle\doc\img_text\
    Property(S): INCLUDE = C:\oraclexe\app\oracle\product\10.2.0\server\plsql\include\
    Property(S): OCI = C:\oraclexe\app\oracle\product\10.2.0\server\OCI\
    Property(S): INCLUDE2 = C:\oraclexe\app\oracle\product\10.2.0\server\OCI\include\
    Property(S): OLEDB = C:\oraclexe\app\oracle\product\10.2.0\server\oledb\
    Property(S): INCLUDE3 = C:\oraclexe\app\oracle\product\10.2.0\server\oledb\include\
    Property(S): INSTALL3 = C:\oraclexe\app\oracle\product\10.2.0\server\RDBMS\install\
    Property(S): ORACLEXE = C:\oraclexe\
    Property(S): ProgramFilesFolder = C:\Program Files\
    Property(S): ISMyCompanyDir = C:\Program Files\My Company Name\
    Property(S): ISMyProductDir = C:\Program Files\My Company Name\My Product Name\
    Property(S): IT = C:\oraclexe\app\oracle\product\10.2.0\server\ODP.NET\Resources\it\
    Property(S): ITLX = C:\oraclexe\app\oracle\product\10.2.0\server\ctx\data\itlx\
    Property(S): LOG1 = C:\oraclexe\app\oracle\product\10.2.0\server\log\
    Property(S): IWINRBB09 = C:\oraclexe\app\oracle\product\10.2.0\server\log\iwinrbb09\
    Property(S): JA = C:\oraclexe\app\oracle\product\10.2.0\server\ODP.NET\help\ja\
    Property(S): JA1 = C:\oraclexe\app\oracle\product\10.2.0\server\ODP.NET\Resources\ja\
    Property(S): JA2 = C:\oraclexe\app\oracle\product\10.2.0\server\ODP.NET\help\ja\
    Property(S): JALX = C:\oraclexe\app\oracle\product\10.2.0\server\ctx\data\jalx\
    Property(S): JDBC = C:\oraclexe\app\oracle\product\10.2.0\server\jdbc\
    Property(S): JLIB = C:\oraclexe\app\oracle\product\10.2.0\server\jlib\
    Property(S): JLIB1 = C:\oraclexe\app\oracle\product\10.2.0\server\RDBMS\jlib\
    Property(S): KO = C:\oraclexe\app\oracle\product\10.2.0\server\ODP.NET\Resources\ko\
    Property(S): KOLX = C:\oraclexe\app\oracle\product\10.2.0\server\ctx\data\kolx\
    Property(S): LDAP = C:\oraclexe\app\oracle\product\10.2.0\server\ldap\
    Property(S): LIB = C:\oraclexe\app\oracle\product\10.2.0\server\OCI\lib\
    Property(S): LIB1 = C:\oraclexe\app\oracle\product\10.2.0\server\precomp\lib\
    Property(S): LIB2 = C:\oraclexe\app\oracle\product\10.2.0\server\opmn\lib\
    Property(S): LIB3 = C:\oraclexe\app\oracle\product\10.2.0\server\RDBMS\lib\
    Property(S): LIB4 = C:\oraclexe\app\oracle\product\10.2.0\server\LIB\
    Property(S): LIB5 = C:\oraclexe\app\oracle\product\10.2.0\server\jdbc\lib\
    Property(S): LIB6 = C:\oraclexe\app\oracle\product\10.2.0\server\oledb\lib\
    Property(S): LOG = C:\oraclexe\app\oracle\product\10.2.0\server\NETWORK\log\
    Property(S): LOG2 = C:\oraclexe\app\oracle\product\10.2.0\server\config\log\
    Property(S): LocalAppDataFolder = C:\Documents and Settings\-oper-lrajesh\Local Settings\Application Data\
    Property(S): SLAX = C:\oraclexe\app\oracle\product\10.2.0\server\slax\
    Property(S): MESG = C:\oraclexe\app\oracle\product\10.2.0\server\slax\mesg\
    Property(S): MESG1 = C:\oraclexe\app\oracle\product\10.2.0\server\oledb\mesg\
    Property(S): MESG10 = C:\oraclexe\app\oracle\product\10.2.0\server\opmn\mesg\
    Property(S): MESG11 = C:\oraclexe\app\oracle\product\10.2.0\server\ctx\mesg\
    Property(S): MESG13 = C:\oraclexe\app\oracle\product\10.2.0\server\sqlplus\mesg\
    Property(S): MESG15 = C:\oraclexe\app\oracle\product\10.2.0\server\RDBMS\mesg\
    Property(S): MESG2 = C:\oraclexe\app\oracle\product\10.2.0\server\plsql\mesg\
    Property(S): MESG3 = C:\oraclexe\app\oracle\product\10.2.0\server\nls\mesg\
    Property(S): MESG4 = C:\oraclexe\app\oracle\product\10.2.0\server\NETWORK\mesg\
    Property(S): MESG5 = C:\oraclexe\app\oracle\product\10.2.0\server\odbc\mesg\
    Property(S): XDK = C:\oraclexe\app\oracle\product\10.2.0\server\xdk\
    Property(S): MESG6 = C:\oraclexe\app\oracle\product\10.2.0\server\xdk\mesg\
    Property(S): ORACORE = C:\oraclexe\app\oracle\product\10.2.0\server\oracore\
    Property(S): MESG7 = C:\oraclexe\app\oracle\product\10.2.0\server\oracore\mesg\
    Property(S): MESG8 = C:\oraclexe\app\oracle\product\10.2.0\server\ldap\mesg\
    Property(S): MIGRATE_DIR = C:\oraclexe\app\oracle\product\10.2.0\server\ctx\migrate\
    Property(S): MSVC = C:\oraclexe\app\oracle\product\10.2.0\server\OCI\lib\MSVC\
    Property(S): ORACLE_CORPORATION = C:\Program Files\Oracle Corporation\
    Property(S): MY_PRODUCT_NAME = C:\Program Files\Oracle Corporation\My Product Name\
    Property(S): MyPicturesFolder = C:\Documents and Settings\-oper-lrajesh\My Documents\My Pictures\
    Property(S): NLLX = C:\oraclexe\app\oracle\product\10.2.0\server\ctx\data\nllx\
    Property(S): ODE = C:\oraclexe\app\oracle\product\10.2.0\server\ODE\
    Property(S): _0.2.0 = C:\oraclexe\app\oracle\product\10.2.0\
    Property(S): WindowsVolume = C:\
    Property(S): ORACLE_XE = C:\Program Files\Oracle Corporation\Oracle XE\
    Property(S): OUI = C:\oraclexe\app\oracle\product\10.2.0\server\cfgtoollogs\oui\
    Property(S): OWM = C:\oraclexe\app\oracle\product\10.2.0\server\owm\
    Property(S): PRODUCT = C:\oraclexe\app\oracle\product\
    Property(S): PT_BR = C:\oraclexe\app\oracle\product\10.2.0\server\ODP.NET\Resources\pt-BR\
    Property(S): PUBLIC3 = C:\oraclexe\app\oracle\product\10.2.0\server\oramts\public\
    Property(S): PUBLISHERPOLICY = C:\oraclexe\app\oracle\product\10.2.0\server\ODP.NET\PublisherPolicy\
    Property(S): PersonalFolder = C:\Documents and Settings\-oper-lrajesh\My Documents\
    Property(S): PrimaryVolumePath = D:\
    Property(S): ProgramFiles64Folder = D:\
    Property(S): ProgramMenuFolder = C:\Documents and Settings\All Users\Start Menu\Programs\
    Property(S): SAMPLE = C:\oraclexe\app\oracle\product\10.2.0\server\NETWORK\ADMIN\SAMPLE\
    Property(S): SAMPLE2 = C:\oraclexe\app\oracle\product\10.2.0\server\admin\sample\
    Property(S): SAMPLES = C:\oraclexe\app\oracle\product\10.2.0\server\OCI\samples\
    Property(S): SCRIPTS1 = C:\oraclexe\app\oracle\product\10.2.0\server\config\scripts\
    Property(S): SEEDDB = C:\oraclexe\app\oracle\product\10.2.0\server\config\seeddb\
    Property(S): SRVM = C:\oraclexe\app\oracle\product\10.2.0\server\srvm\
    Property(S): SendToFolder = C:\Documents and Settings\-oper-lrajesh\SendTo\
    Property(S): StartMenuFolder = C:\Documents and Settings\All Users\Start Menu\
    Property(S): StartupFolder = C:\Documents and Settings\All Users\Start Menu\Programs\Startup\
    Property(S): System16Folder = C:\WINDOWS\system\
    Property(S): System64Folder = D:\
    Property(S): SystemFolder = C:\WINDOWS\system32\
    Property(S): SourceDir = C:\DOCUME~1\-oper-lrajesh\Local Settings\Temp\1\_is15\
    Property(S): TRACE = C:\oraclexe\app\oracle\product\10.2.0\server\RDBMS\trace\
    Property(S): TRACE1 = C:\oraclexe\app\oracle\product\10.2.0\server\oramts\trace\
    Property(S): TRACE2 = C:\oraclexe\app\oracle\product\10.2.0\server\NETWORK\trace\
    Property(S): TempFolder = C:\DOCUME~1\-oper-lrajesh\Local Settings\Temp\
    Property(S): TemplateFolder = C:\Documents and Settings\All Users\Templates\
    Property(S): USERPROFILE = C:\Documents and Settings\-oper-lrajesh\
    Property(S): VC71 = C:\oraclexe\app\oracle\product\10.2.0\server\OCI\lib\MSVC\vc71\
    Property(S): WindowsFolder = C:\WINDOWS\
    Property(S): XA = C:\oraclexe\app\oracle\product\10.2.0\server\RDBMS\XA\
    Property(S): XE2 = C:\oraclexe\app\oracle\flash_recovery_area\XE\
    Property(S): XML = C:\oraclexe\app\oracle\product\10.2.0\server\RDBMS\xml\
    Property(S): XXLX = C:\oraclexe\app\oracle\product\10.2.0\server\ctx\data\xxlx\
    Property(S): ZHLX = C:\oraclexe\app\oracle\product\10.2.0\server\ctx\data\zhlx\
    Property(S): ZONEINFO = C:\oraclexe\app\oracle\product\10.2.0\server\oracore\zoneinfo\
    Property(S): newfolder1 = C:\Documents and Settings\All Users\Start Menu\Programs\Oracle Database 10g Express Edition\
    Property(S): newfolder2 = C:\Documents and Settings\All Users\Start Menu\Programs\Oracle Database 10g Express Edition\Get Help\
    Property(S): _781042AB71DC4D58AEFDC83AFA6603C3 = C:\oraclexe\app\oracle\product\10.2.0\server\ctx\data\delx\
    Property(S): _7DB1B2C8944C4054BCC8C4500F37049C = C:\oraclexe\app\oracle\product\10.2.0\server\ctx\data\enlx\
    Property(S): _C47544281E2F4507BDADF8C3ECB1568E = C:\oraclexe\app\oracle\product\10.2.0\server\ctx\data\eslx\
    Property(S): _91B054F49ECC497AB485FC09F4A586A2 = C:\oraclexe\app\oracle\product\10.2.0\server\ctx\data\frlx\
    Property(S): _33DB7C9A5200482CB2F5310F002805A1 = C:\oraclexe\app\oracle\product\10.2.0\server\ctx\data\itlx\
    Property(S): _7CD34E90D6F04BC88D98DE349DFF3CFD = C:\oraclexe\app\oracle\product\10.2.0\server\ctx\data\jalx\
    Property(S): _4394EB4FE2AD4AC3977E96E14A074BE8 = C:\oraclexe\app\oracle\product\10.2.0\server\ctx\data\kolx\
    Property(S): _B93C978070284B47AB72A0BBF9AE0206 = C:\oraclexe\app\oracle\product\10.2.0\server\ctx\data\nllx\
    Property(S): _4CBEF1293D584608B7C996039CB10472 = C:\oraclexe\app\oracle\product\10.2.0\server\ctx\data\xxlx\
    Property(S): _35AF789A79614E4FB411E8DD5E191A99 = C:\oraclexe\app\oracle\product\10.2.0\server\ctx\data\zhlx\
    Property(S): _125D15172A3E408AB30DF25DFACDA298 = C:\oraclexe\app\oracle\product\10.2.0\server\ODP.NET\help\ja\
    Property(S): _1D715EB43CA34692A8A7182FA7817BEC = C:\oraclexe\app\oracle\product\10.2.0\server\ODP.NET\Resources\de\
    Property(S): _2CAB3BBCB9354C9387FC313D7A2C1EEB = C:\oraclexe\app\oracle\product\10.2.0\server\ODP.NET\Resources\es\
    Property(S): _3904DD47B9F6426CAAC171797F64E1B3 = C:\oraclexe\app\oracle\product\10.2.0\server\ODP.NET\Resources\fr\
    Property(S): _DF56685F21CB4558BCD9A5B88ED4151E = C:\oraclexe\app\oracle\product\10.2.0\server\ODP.NET\Resources\it\
    Property(S): _C5DE329B16584BAE9DE223D4510192D7 = C:\oraclexe\app\oracle\product\10.2.0\server\ODP.NET\Resources\ja\
    Property(S): _12900F77D1294A7EAFA13ADF5B599D1C = C:\oraclexe\app\oracle\product\10.2.0\server\ODP.NET\Resources\ko\
    Property(S): _863AA42463B64FC2B896AE7A2D729BA1 = C:\oraclexe\app\oracle\product\10.2.0\server\ODP.NET\Resources\pt-BR\
    Property(S): _A62C1E6B40CC4EAB83EF4114BE8F5533 = C:\oraclexe\app\oracle\product\10.2.0\server\ODP.NET\Resources\zh-CHS\
    Property(S): _2AD8F73997334D64A411704F544084F7 = C:\oraclexe\app\oracle\product\10.2.0\server\ODP.NET\Resources\zh-CHT\
    Property(S): ProductState = -1
    Property(S): TRANSFORMSATSOURCE = 1
    Property(S): TRANSFORMSSECURE = 1
    Property(S): TRANSFORMS = |C:\DOCUME~1\-oper-lrajesh\Local Settings\Temp\1\_is15\1033.MST
    Property(S): RecacheTransforms = C:\DOCUME~1\-oper-lrajesh\Local Settings\Temp\1\_is15\1033.MST
    Property(S): PackageCode = {32D9C15A-C7C5-4D45-AAE0-B5DB53447098}
    Property(S): ___________3 = ?,?????????
    Property(S): ________p_3 = ?,???? %p?
    Property(S): _Modify = &Modify
    Property(S): ARPNOMODIFY = 1
    Property(S): ARPPRODUCTICON = ARPPRODUCTICON.exe
    Property(S): ARPURLINFOABOUT = http://www.oracle.com
    Property(S): AvailableSpaceInDrive = 0
    Property(S): Avvia__p_adesso. = Avvia %p adesso.
    Property(S): Avvia__p_adesso.1 = Avvia %p adesso.
    Property(S): BUILDTYPE = 87
    Property(S): DWUSINTERVAL = 30
    Property(S): DWUSLINK = CE9C27889E6CD79FFEACD0AF1EFB978FE98BA78FCE1CC08FCEABB7D8FE3CF788DECCE0FFD9AC
    Property(S): DefaultUIFont = Tahoma8
    Property(S): HOSTNAME = localhost
    Property(S): ISSCRIPT_ENGINE_VERSION = 11.0.0.28844
    Property(S): ISSCRIPT_VERSION_MISSING = The InstallScript engine is missing from this machine. If available, please run ISScript.msi, or contact your support personnel for further assistance.
    Property(S): ISSCRIPT_VERSION_OLD = The InstallScript engine on this machine is older than the version required to run this setup. If available, please install the latest version of ISScript.msi, or contact your support personnel for further assistance.
    Property(S): ISVROOT_PORT_NO = 0
    Property(S): IS_COMPLUS_PROGRESSTEXT_COST = Costing COM+ application: [1]
    Property(S): IS_COMPLUS_PROGRESSTEXT_INSTALL = Installing COM+ application: [1]
    Property(S): IS_COMPLUS_PROGRESSTEXT_UNINSTALL = Uninstalling COM+ application: [1]
    Property(S): IS_PROGMSG_XML_COSTING = Costing XML files...
    Property(S): IS_PROGMSG_XML_CREATE_FILE = Creating XML file %s...
    Property(S): IS_PROGMSG_XML_FILES = Performing XML file changes...
    Property(S): IS_PROGMSG_XML_REMOVE_FILE = Removing XML file %s...
    Property(S): IS_PROGMSG_XML_ROLLBACK_FILES = Rolling back XML file changes...
    Property(S): IS_PROGMSG_XML_UPDATE_FILE = Updating XML file %s...
    Property(S): IS_SQLSERVER_AUTHENTICATION = 0
    Property(S): IS_SQLSERVER_USERNAME = sa
    Property(S): Ja__ReadMe_Datei_jetzt_anzeigen. = Ja, ReadMe-Datei jetzt anzeigen.
    Property(S): Ja__ReadMe_Datei_jetzt_anzeigen.1 = Ja, ReadMe-Datei jetzt anzeigen.
    Property(S): Ja___p_jetzt_starten. = Ja, %p jetzt starten.
    Property(S): Ja___p_jetzt_starten.1 = Ja, %p jetzt starten.
    Property(S): MTSNOI = 1
    Property(S): MTSPORTNUM = 2030
    Property(S): Manufacturer = Oracle Corporation
    Property(S): NLS_LANG = ENGLISH_UNITED KINGDOM.WE8MSWIN1252
    Property(S): NewProperty1 = 0
    Property(S): NewProperty10 = 0
    Property(S): NewProperty11 = 0
    Property(S): NewProperty12 = 0
    Property(S): NewProperty13 = 0
    Property(S): NewProperty14 = 0
    Property(S): NewProperty15 = 0
    Property(S): NewProperty16 = 0
    Property(S): NewProperty17 = 0
    Property(S): NewProperty18 = 0
    Property(S): NewProperty19 = 0
    Property(S): NewProperty2 = 0
    Property(S): NewProperty3 = 0
    Property(S): NewProperty4 = 0
    Property(S): NewProperty5 = 0
    Property(S): NewProperty6 = 0
    Property(S): NewProperty7 = 0
    Property(S): NewProperty8 = 0
    Property(S): NewProperty9 = 0
    Property(S): Oui__je_d_sire_lancer__p_maintenant. = Oui, je désire lancer %p maintenant.
    Property(S): Oui__je_d_sire_lancer__p_maintenant.1 = Oui, je désire lancer %p maintenant.
    Property(S): Oui__je_souhaite_lire_le_fichier_Lisez_moi. = Oui, je souhaite lire le fichier Lisez-moi.
    Property(S): Oui__je_souhaite_lire_le_fichier_Lisez_moi.1 = Oui, je souhaite lire le fichier Lisez-moi.
    Property(S): PROGMSG_IIS_CREATEAPPPOOL = Creating application pool %s
    Property(S): PROGMSG_IIS_CREATEAPPPOOLS = Creating application Pools...
    Property(S): PROGMSG_IIS_CREATEVROOT = Creating IIS virtual directory %s
    Property(S): PROGMSG_IIS_CREATEVROOTS = Creating IIS virtual directories...
    Property(S): PROGMSG_IIS_CREATEWEBSERVICEEXTENSION = Creating web service extension
    Property(S): PROGMSG_IIS_CREATEWEBSERVICEEXTENSIONS = Creating web service extensions...
    Property(S): PROGMSG_IIS_EXTRACT = Extracting information for IIS virtual directories...
    Property(S): PROGMSG_IIS_EXTRACTDONE = Extracted information for IIS virtual directories...
    Property(S): PROGMSG_IIS_EXTRACTDONEz = Extracted information for IIS virtual directories...
    Property(S): PROGMSG_IIS_EXTRACTzDONE = Extracted information for IIS virtual directories...
    Property(S): PROGMSG_IIS_REMOVEAPPPOOL = Removing application pool
    Property(S): PROGMSG_IIS_REMOVEAPPPOOLS = Removing application pools...
    Property(S): PROGMSG_IIS_REMOVESITE = Removing web site at port %d
    Property(S): PROGMSG_IIS_REMOVEVROOT = Removing IIS virtual directory %s
    Property(S): PROGMSG_IIS_REMOVEVROOTS = Removing IIS virtual directories...
    Property(S): PROGMSG_IIS_REMOVEWEBSERVICEEXTENSION = Removing web service extension
    Property(S): PROGMSG_IIS_REMOVEWEBSERVICEEXTENSIONS = Removing web service extensions...
    Property(S): PROGMSG_IIS_ROLLBACKAPPPOOLS = Rolling back application pools...
    Property(S): PROGMSG_IIS_ROLLBACKVROOTS = Rolling back virtual directory and web site changes...
    Property(S): PROGMSG_IIS_ROLLBACKWEBSERVICEEXTENSIONS = Rolling back web service extensions...
    Property(S): ProductCode = {F0BC0F9E-C4A8-485C-93ED-424DB9EA3F75}
    Property(S): ProductName = Oracle Database 10g Express Edition
    Property(S): ProductVersion = 10.2.1015
    Property(S): REBOOT = Suppress
    Property(S): RequiredSpaceInDrive = 0
    Property(S): STANDARD_USE_SETUPEXE = This installation cannot be run by directly launching the MSI package. You must run setup.exe.
    Property(S): S___deseo_consultar_el_archivo_L_ame. = Sí, deseo consultar el archivo Léame.
    Property(S): S___deseo_consultar_el_archivo_L_ame.1 = Sí, deseo consultar el archivo Léame.
    Property(S): S___deseo_lanzar__p_ahora. = Sí, deseo lanzar %p ahora.
    Property(S): S___deseo_lanzar__p_ahora.1 = Sí, deseo lanzar %p ahora.
    Property(S): SecureCustomProperties = ISALWAYSINSTALLELEVATED;ISSETUPDRIVEN;ARPSYSTEMCOMPONENT;ARPNOMODIFY;ARPNOREMOVE;INSTALLDIR
    Property(S): Sim__desejo_executar_o__p_agora. = Sim, desejo executar o %p agora.
    Property(S): Sim__desejo_executar_o__p_agora.1 = Sim, desejo executar o %p agora.
    Property(S): Sim__quero_visualizar_o_arquivo_Leiame. = Sim, quero visualizar o arquivo Leiame.
    Property(S): Sim__quero_visualizar_o_arquivo_Leiame.1 = Sim, quero visualizar o arquivo Leiame.
    Property(S): Visualizza_il_file_Leggimi. = Visualizza il file Leggimi.
    Property(S): Visualizza_il_file_Leggimi.1 = Visualizza il file Leggimi.
    Property(S): Yes__I_want_to_launch__p_now. = Yes, I want to launch %p now.
    Property(S): Yes__I_want_to_launch__p_now.1 = Yes, I want to launch %p now.
    Property(S): Yes__I_want_to_launch__p_now.2 = Yes, I want to launch %p now.
    Property(S): Yes__I_want_to_launch__p_now.3 = Yes, I want to launch %p now.
    Property(S): Yes__I_want_to_launch__p_now.4 = Yes, I want to launch %p now.
    Property(S): Yes__I_want_to_launch__p_now.5 = Yes, I want to launch %p now.
    Property(S): Yes__I_want_to_view_the_ReadMe_file. = Yes, I want to view the ReadMe file.
    Property(S): Yes__I_want_to_view_the_ReadMe_file.1 = Yes, I want to view the ReadMe file.
    Property(S): Yes__I_want_to_view_the_ReadMe_file.2 = Yes, I want to view the ReadMe file.
    Property(S): Yes__I_want_to_view_the_ReadMe_file.3 = Yes, I want to view the ReadMe file.
    Property(S): Yes__I_want_to_view_the_ReadMe_file.4 = Yes, I want to view the ReadMe file.
    Property(S): Yes__I_want_to_view_the_ReadMe_file.5 = Yes, I want to view the ReadMe file.
    Property(S): ___ReadMe__________. = ?, ReadMe ??? ?????.
    Property(S): ___ReadMe__________.1 = ?, ReadMe ??? ?????.
    Property(S): ___ReadMe____________ = ???ReadMe ???????????
    Property(S): ___ReadMe____________1 = ???ReadMe ???????????
    Property(S): ___________ = ?,?????????
    Property(S): ___________1 = ?,?????????
    Property(S): ___________2 = ?,?????????
    Property(S): ________p_ = ?,???? %p?
    Property(S): ________p_1 = ?,???? %p?
    Property(S): ________p_2 = ?,???? %p?
    Property(S): ________p________ = ?????? %p ???????
    Property(S): ________p________1 = ?????? %p ???????
    Property(S): ________p_____________. = ?, ?? '%p'?(?) ???????.
    Property(S): ________p_____________.1 = ?, ?? '%p'?(?) ???????.
    Property(S): ARPINSTALLLOCATION = C:\oraclexe\
    Property(S): ProductLanguage = 1033
    Property(S): COMPANYNAME = KPMG
    Property(S): INSTALLLEVEL = 1
    Property(S): INSTALLSHIELDSETUPLANGUAGE = 1033
    Property(S): ISSETUPDRIVEN = 1
    Property(S): ISSETUPFILESCOMPLETED = Completed
    Property(S): ISSETUP_UISEQUENCE_PROCESSED = 1
    Property(S): ROOTDRIVE = D:\
    Property(S): SETUPEXEDIR = C:\temp\fabric manager
    Property(S): SUPPORTDIR = C:\DOCUME~1\-oper-lrajesh\Local Settings\Temp\{F0BC0F9E-C4A8-485C-93ED-424DB9EA3F75}
    Property(S): USERNAME = KPMG
    Property(S): ARPSYSTEMCOMPONENT = 1
    Property(S): ARPNOREMOVE = 1
    Property(S): CURRENTDIRECTORY = C:\WINDOWS\system32
    Property(S): CLIENTUILEVEL = 3
    Property(S): CLIENTPROCESSID = 4636
    Property(S): VersionDatabase = 200
    Property(S): VersionMsi = 3.01
    Property(S): WindowsBuild = 3790
    Property(S): ServicePackLevel = 2
    Property(S): ServicePackLevelMinor = 0
    Property(S): MsiNTProductType = 3
    Property(S): RemoteAdminTS = 1
    Property(S): NetHoodFolder = C:\Documents and Settings\-oper-lrajesh\NetHood\
    Property(S): PrintHoodFolder = C:\Documents and Settings\-oper-lrajesh\PrintHood\
    Property(S): RecentFolder = C:\Documents and Settings\-oper-lrajesh\Recent\
    Property(S): GPTSupport = 1
    Property(S): OLEAdvtSupport = 1
    Property(S): ShellAdvtSupport = 1
    Property(S): Intel = 15
    Property(S): PhysicalMemory = 2047
    Property(S): VirtualMemory = 3152
    Property(S): AdminUser = 1
    Property(S): LogonUser = -oper-lrajesh
    Property(S): UserSID = S-1-5-21-1965243242-631715425-1848903544-213045
    Property(S): UserLanguageID = 2057
    Property(S): ComputerName = UKWATAPP29
    Property(S): SystemLanguageID = 2057
    Property(S): ScreenX = 1024
    Property(S): ScreenY = 768
    Property(S): CaptionHeight = 19
    Property(S): BorderTop = 1
    Property(S): BorderSide = 1
    Property(S): TextHeight = 16
    Property(S): ColorBits = 16
    Property(S): TTCSupport = 1
    Property(S): Time = 10:45:57
    Property(S): Date = 07/05/2009
    Property(S): MsiNetAssemblySupport = 1.1.4322.2300
    Property(S): MsiWin32AssemblySupport = 5.2.3790.3959
    Property(S): RedirectedDllSupport = 2
    Property(S): Privileged = 1
    Property(S): DATABASE = C:\WINDOWS\Installer\3d91347.msi
    Property(S): OriginalDatabase = C:\DOCUME~1\-oper-lrajesh\Local Settings\Temp\1\_is15\Oracle Database 10g Express Edition.msi
    Property(S): UILevel = 2
    Property(S): Preselected = 1
    Property(S): ACTION = INSTALL
    Property(S): ISStartupEvent = E4351944
    Property(S): ff9ef67406aa11d5ab9800b0d02332eb = g
    Property(S): CLEANUPUNINSTALLROLLBACK = Waiting
    Property(S): CostingComplete = 1
    Property(S): OutOfDiskSpace = 0
    Property(S): OutOfNoRbDiskSpace = 0
    Property(S): PrimaryVolumeSpaceAvailable = 0
    Property(S): PrimaryVolumeSpaceRequired = 0
    Property(S): PrimaryVolumeSpaceRemaining = 0
    Property(S): SOURCEDIR = C:\DOCUME~1\-oper-lrajesh\Local Settings\Temp\1\_is15\
    Property(S): SourcedirProduct = {F0BC0F9E-C4A8-485C-93ED-424DB9EA3F75}
    Property(S): ProductToBeRegistered = 1
    MSI (s) (DC:0C) [10:45:57:884]: Note: 1: 1708
    MSI (s) (DC:0C) [10:45:57:884]: Product: Oracle Database 10g Express Edition -- Installation operation failed.
    MSI (s) (DC:0C) [10:45:57:884]: Attempting to delete file C:\WINDOWS\Installer\3d91348.mst
    MSI (s) (DC:0C) [10:45:57:884]: Unable to delete the file. LastError = 32
    MSI (s) (DC:0C) [10:45:57:900]: Cleaning up uninstalled install packages, if any exist
    MSI (s) (DC:0C) [10:45:57:900]: MainEngineThread is returning 1602
    MSI (s) (DC:D4) [10:45:57:916]: Destroying RemoteAPI object.
    MSI (s) (DC:AC) [10:45:57:916]: Custom Action Manager thread ending.
    === Logging stopped: 07/05/2009 10:45:57 ===
    MSI (c) (1C:40) [10:45:58:150]: Decrementing counter to disable shutdown. If counter >= 0, shutdown will be denied. Counter after decrement: -1
    MSI (c) (1C:40) [10:45:58:150]: MainEngineThread is returning 1602
    === Verbose logging stopped: 07/05/2009 10:45:58 ===

  • DSC Log Insert Names To Spreadsheet Header

    Hello,
    I'm using DSC to log, and use a "Write Traces to Spreadsheet File.vi" to export to a spreadsheet.  My question is, is there a way I can include only the trace name in the header of the spreadsheet?  Right now when I include names in the header it's the entire path where the trace is on my computer (i.e. C://mydocuments/user/labview/folder/folder/folder/Trace1) which is huge, I just need Trace1... just the name.
    If there's no autamated way to do it with the "Write Traces to Spreadsheet File.vi" I can create my own header on the side and insert it, or write every name individually, it's just nice that it can automatically pull the whole path, so it would be great if it could pull just the names,
    much thanks!

    Fibo,
    I did a bit of research and found that the headers that you currently see are the default format in LabVIEW. If you would like to change the format (i.e. show only the trace name rather than the path) you will have to do so after the fact. Thus, you would have to create the spreadsheet file with the full path as the header, then use a "read spreadsheet file VI" to programmatically make changes. As for using your own header, yes you can do that as well. But again, you would have to do so after the fact. I have included link to an example of creating a simple header for you to use as a starting point.
    Go to: www.ni.com/community
    Search for: Add a Simple Header to a Spreadsheet
    Kareem W.
    National Instruments
    Web Product Manager

  • Tkprof in client

    This is what i do in my server to see the tkprof
    -- setting user_dump_dest
    alter system set user_dump_dest="/home/oracle/trace";
    alter session set tracefile_identifier ="trace1";
    ALTER SESSION SET SQL_TRACE = TRUE;
    tkprof /home/oracle/trace/ora_16095_trace1.trc /home/oracle/trace/out.prf explain=scott/tiger SYS=NO
    How can i do this same in my client .where i wont be having any idea about the server folders
    need help on this or any articles

    Hi
    I need an user trace whenever he connects or whatever he does either by hitting
    database through an application or running it using sqlplus.At page 69 of TOP I wrote the following...
    The simplest approach is to create a logon trigger at the database level. To avoid enabling
    SQL trace for all users, I usually suggest creating a role (named sql_trace in the following
    example) and temporarily granting it only to the user utilized for the test. Naturally, it is also
    possible to define the trigger for a single schema or perform other checks based, for example,
    on the userenv context. Note that in addition to enabling SQL trace, it is good practice to set the
    other parameters related to SQL trace as well (more about them later in this chapter).
    CREATE ROLE sql_trace;
    CREATE OR REPLACE TRIGGER enable_sql_trace AFTER LOGON ON DATABASE
    BEGIN
      IF (dbms_session.is_role_enabled('SQL_TRACE'))
      THEN
        EXECUTE IMMEDIATE 'ALTER SESSION SET timed_statistics = TRUE';
        EXECUTE IMMEDIATE 'ALTER SESSION SET max_dump_file_size = unlimited';
       dbms_monitor.session_trace_enable;
      END IF;
    END;
    /HTH
    Chris Antognini
    Troubleshooting Oracle Performance, Apress 2008
    http://top.antognini.ch

  • A really simple XML Question

    i want to use XML to save some configuration for elements in my app.
    in my example i want to add 6 additional configuration sets to one "main" XML. each set can be config1 or config2.
    In this case i added 3x config1 and 3x config2. if i trace my results i do not only get the wrong order of elements but also some "strange" binding behavior.
    Of course this is a simplified example. my configuration sets are more complex (this is why i use seperate xml-objects for each config).
    Can someone tell me how this is supposed to work ?
    thanks,
    quadword
    <?xml version="1.0" encoding="utf-8"?>
    <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
                                     xmlns:s="library://ns.adobe.com/flex/spark" applicationDPI="160" creationComplete="init();">
      <fx:Declarations>
      <fx:XML id="mainConfig" format="e4x">
              <allConfigSets>
                        <viewconfig>Baseconfig</viewconfig>
              </allConfigSets>
      </fx:XML>
      <fx:XML id="configSet1" format="e4x">
              <configSet><viewconfig>Set1</viewconfig></configSet>
      </fx:XML>
      <fx:XML id="configSet2" format="e4x">
              <configSet><viewconfig>Set2</viewconfig></configSet>
      </fx:XML>
      </fx:Declarations>
      <fx:Script>
                        <![CDATA[
                                  private function init(): void {
                                            mainConfig.appendChild(configSet1.viewconfig);
                                            mainConfig.appendChild(configSet1.viewconfig);
                                            mainConfig.appendChild(configSet1.viewconfig);
                                            mainConfig.appendChild(configSet2.viewconfig);
                                            mainConfig.appendChild(configSet2.viewconfig);
                                            mainConfig.appendChild(configSet2.viewconfig);
                                            // trace1 (see below): trace shows wrong order of elements
                                            trace (mainConfig);
                                            // trace2:(see below): changing data on original configSet seems to bind into mainConfig
                                            configSet1.viewconfig = "-";
                                            trace (mainConfig);
                        ]]>
      </fx:Script>
    </s:Application>
    Trace1:
    <allConfigSets>
      <viewconfig>Baseconfig</viewconfig>
      <viewconfig>Set1</viewconfig>
      <viewconfig>Set2</viewconfig>
      <viewconfig>Set2</viewconfig>
      <viewconfig>Set2</viewconfig>
      <viewconfig>Set1</viewconfig>
      <viewconfig>Set1</viewconfig>
    </allConfigSets>
    Trace2:
    <allConfigSets>
      <viewconfig>Baseconfig</viewconfig>
      <viewconfig>-</viewconfig>
      <viewconfig>Set2</viewconfig>
      <viewconfig>Set2</viewconfig>
      <viewconfig>Set2</viewconfig>
      <viewconfig>-</viewconfig>
      <viewconfig>-</viewconfig>
    </allConfigSets>

    mainConfig.appendChild(configSet1.viewconfig.toString());
    This will make it work.

  • Private construtor, public static method

    Hi,
    I'm having a problem trying to use a class' method. The class' constructor is private, and the methods are public static....
    I created an object that belongs to the class, but then when I try to apply the methods to the object, the do not appear (qhen I write the period). Does anybody know why this happens...
    Thanks and regards

    Ok,
    I'll show you the code I'm trying to use. In case you want to see more from it, I downloaded it from http://info.synapse.ru/software/jpitsa/
    Just to give you a more clear idea, I unzipped the jar file which contained the code, and I got two classes with the same name on the same folder (one is a read-only file). The class I'm trying to use is called "Methods". The particular method I'm trying to use from that class is the one called hilbert, which does the Hilbert Transform (which is a Mathematical transformartion for signal processing).
    Thanks for your help. Here comes my code:
    * Spectral Analysis Module
    * @author Denis Mishin ([email protected])
    package jpitsa.core;
    import java.util.LinkedList;
    public final class Methods implements Params {
        private Methods() { }
         * Discrete Fourier Transform. <BR>
         * This method can be applied to data with any data points, not only a power of 2,
         * but works significantly slower then DFFT algorithm
         * @param source the data to transform
         * @param direct true if transform is direct, false for inverse
         * @param fullSpectrum  as fourier transform is symmetrical, it is possible to use only one part of it.\
         *      then the spectrum is created for 1/2 N points. reverse transform will work pretty well.
         * @see jpitsa.core.ComplexVector
        public static ComplexVector DFT (ComplexVector source, boolean direct) {
            ComplexVector result;
            float[] resIm, resRe;
            float[] srcIm, srcRe;
            float isign = (direct == true) ? 1f : -1f;
            srcIm = source.getDataImaginaryPart();
            srcRe = source.getDataRealPart();
            int N = srcIm.length;
            float mf = (direct == true) ? 1f : 1f/(float)N;
            resIm = new float[N];
            resRe = new float[N];
            double fac;
            double f1, fCos, fSin;
            f1 = isign*2*Math.PI/(float)N;
            for (int n=0; n < N/2; n++) {
                for (int k=0; k < (N-1); k++) {
                    fac = (float)(f1*(double)(k*n));
                    fCos = Math.cos(fac);
                    fSin = Math.sin(fac);
                    resRe[n] += srcRe[k]*fCos - srcIm[k]*fSin;
                    resIm[n] += srcRe[k]*fSin + srcIm[k]*fCos;
                resRe[n] *= mf;
                resIm[n] *= mf;
                resRe[N-1-n] = resRe[n];
                resIm[N-1-n] = resIm[n];
            return new ComplexVector(resRe, resIm);
         * This method computes Discrete Fast Fourier Transform from a given
         * complex array. Return type is also a complex array.
         * Objectives: only data of 2^n points can be processed. Thus providing number of aliasing effects.
         * @see jpitsa.core.ComplexVector
        public static ComplexVector DFFT (ComplexVector source, boolean direct) {
            ComplexVector   result;
            float[] data;
            int isign, ndat;
            isign = (direct == true) ? 1 : -1;
            data = source.getPackedData();
            ndat = (data.length-1)/2;
            four1 (data, ndat, isign);
            //System.out.println("ndat="+ndat);
            // too big values .... [mar-99]
            if(!direct) {
                for(int i=0; i < ndat*2-1; i++)
                    data[i] /= ndat;
            result = new ComplexVector();
            result.setPackedData(data);
            return result;
         * Computes a spectrum of TimeSeries
         * @return spectrum truncated to Nyquist frequency
        public static ComplexVector spectrum(TimeSeries source) {
          float sampfreq = source.getSamplingFrequency();
          ComplexVector spec = DFFT(new ComplexVector(source.getData(),null), true);
          float[] srcReal, srcImag, tgtReal, tgtImag;
          srcReal = spec.getDataRealPart();
          srcImag = spec.getDataImaginaryPart();
          tgtReal = new float[srcReal.length/2];
          tgtImag = new float[srcImag.length/2];
          System.arraycopy(srcReal, 0, tgtReal, 0, tgtReal.length);
          System.arraycopy(srcImag, 0, tgtImag, 0, tgtImag.length);
          return new ComplexVector(tgtReal, tgtImag);
         * Return given spectrum part of time series object
         * @param source source data
         * @param part defines which part of transform to extract (AMPLITUDE, PHASE, REAL, IMAGINARY)
         * @return spectrum (FrequencySeries) object
        public static FrequencySeries spectrum(TimeSeries source, int part) {
            ComplexVector spec = spectrum(source);
            float sPart[] = extractPart(spec, part);
            sPart[0] = sPart[1];
            return new FrequencySeries(sPart,source.getSamplingFrequency()/((float)(2*sPart.length)));
        public static FrequencySeries spectrum(TimeSeries source, int part, int smooth_win) {
            ComplexVector spec = spectrum(source);
            float sPart[] = extractPart(spec, part);
            sPart[0] = sPart[1];
            sPart = smooth(sPart, smooth_win);
            return new FrequencySeries(sPart, source.getSamplingFrequency()/((float)(2*sPart.length)));
    public static FrequencySeries power_spectrum(TimeSeries src)
        float tr_wrk[];              /* pntr to work trace                   */
        float tr_tap[];              /* pntr to taper                        */
        float tr_ans[];              /* pntr to answer                       */
    //    float *tr_src[];                /* pntr to source trace               */
        float t_samp;               /* sampling rate of trace               */
        float delta_f;          /* delta f of resulting power spec     */
        float wss;               /* window squared and summed          */
        float sumsq;          /* sum of the input trace squared     */
        float avesq;          /* ave of the input trace squared     */
        float pow_sum;          /* PSD Sum                    */
        int i1, i2;                 /* index of the zoom in spr_zoom        */
        int n1, n2, n3, n4;         /* taper window size                    */
        int i,j;                    /* loop vars                            */
        int index;                  /* index into data from cha_list        */
        int n_dat;                  /* size of trace                        */
        int done;                   /* tells us if we are done with io      */
        int io_res;                 /* result of an io operation            */
        int n_fft;                  /* number of points in fft window       */      
        int n_chk;                  /* temp to check that n_fft is pwr of 2 */
        int i_st;               /* start of window for fft          */
        int ask_each;               /* see if we ask for input each loop    */
        int io_taper;               /* taper method we are going to use     */
        boolean zero_pad;               /* true when we have to zero pad window */
        int sc_type;          /* type of scale ie lin-lin          */
        int selection_method;     /* selection used for zoom          */
        int status;               /* status of zoom               */
        int n;               /* number of fft's used for answer     */
          get the size of the trace
         float[] tr_src = src.getData();
         n_dat = tr_src.length;
         i1 = 0; i2 = tr_src.length-1;
         n_fft = next2power(n_dat); // check!!!!
         dt_copy_header(buffer[0],data[index]);
         dt_copy_header(buffer[1],data[index]);
         dt_copy_header(buffer[2],data[index]);
         dt_head_access(buffer[0],RCD_NDAT,(void *)&n_fft);
         dt_head_access(buffer[1],RCD_NDAT,(void *)&n_fft);
         n = n_fft/2 + 1;
    //     dt_head_access(buffer[2],RCD_NDAT,(void *)&n);
         tr_wrk = new float[n_fft+1];
         System.arraycopy(tr_src, 0, tr_wrk, 0, tr_src.length);
         tr_tap = new float[tr_wrk.length];
         System.arraycopy(tr_wrk, 0, tr_tap, 0, tr_wrk.length);
         //tr_wrk = dt_trace_access(buffer,0,    0);
         //tr_tap = dt_trace_access(buffer,1    ,0);
         //tr_tap = // taper_it
         tr_ans = new float[n];
         //tr_ans = dt_trace_access(buffer,2    ,0);
         //tr_src = dt_trace_access(data  ,index,0);
          calculate the mean squared amplitude
         sumsq = 0f;
         for (j=i1; j<i2; j++) {
             sumsq += tr_src[j] * tr_src[j];
         avesq = sumsq / (float)(n_dat);
          get the taper values.  Buffer 0 gets tapered even thought there is nothing there
         n1 = 0;
         n2 = n3 = n_fft/2 - 1;
         n4 = n_fft - 1;
         Taper.doTapering(tr_tap, n1, n2, n3, n4, n_fft, WELCH_WINDOW);
          init the result
         for (j=0; j<n_fft/2; j++) {
             tr_ans[j] = 0;
          calculate wss (window squared and summed)
         wss = 0f;
         for (j=0; j<n_fft; j++) {
             wss += tr_tap[j] * tr_tap[j];
         wss *= (float)n_fft;
          calculate fft's until we need to pad with zeros
         t_samp = src.getSamplingInterval();
         zero_pad = false;
         i_st = i1;
         n = 0;
         while (!zero_pad) {
              load work array and taper
             for (j=0; j<n_fft; j++) {
              if ((i_st + j) > i2) {
                  tr_wrk[j] = 0f;
                  zero_pad = true;
              } else {
                  tr_wrk[j] = tr_src[i_st+j] * tr_tap[j];
              calculate fft
             n++;
             realft(tr_wrk,n_fft/2,1);
              accum results
             tr_ans[0] += tr_wrk[0]*tr_wrk[0];
             for (j=2; j<n_fft; j+=2) {
              tr_ans[j/2] += 2.0 * (tr_wrk[j]*tr_wrk[j] + tr_wrk[j+1]*tr_wrk[j+1]);
             tr_ans[n_fft/2] += tr_wrk[1]*tr_wrk[1];
             i_st += n_fft/2;
          normalize
         for (j=0; j<=n_fft/2; j++) {
             tr_ans[j] /= ((float)n*wss);
          integrate result
         delta_f = t_samp*n_fft;
         pow_sum = tr_ans[0];
         for (j=1; j<n_fft/2; j++) {
             pow_sum += tr_ans[j];
         pow_sum += tr_ans[n_fft/2];
          convert to units^2/Hz
         for (j=0; j<n_fft/2; j++) {
             tr_ans[j] = tr_ans[j]/delta_f;
         //delta_f = (t_samp*n_fft);
        return new FrequencySeries(tr_ans, src.getSamplingFrequency()/ (float) tr_ans.length);
        //source.getSamplingFrequency()/((float)(2*sPart.length))
        public static FrequencySeries powspec1(TimeSeries src, int m) {
            float[] rawdata = src.getData();
            float[] res = PowSpec.spctrm(rawdata, m, rawdata.length/2, true);
            return new FrequencySeries(res, src.getSamplingFrequency()/2f);
         * returns coherence spectrum of two traces
         * result is a complex vector truncated to Nyquist frequency
        public static ComplexVector coherenceSpectrum (TimeSeries trace1, TimeSeries trace2) {
          if (trace1.getSamplingFrequency() != trace2.getSamplingFrequency())
            throw new IllegalArgumentException("Sampling freqs do not match");
          if (trace1.getDataLength() != trace2.getDataLength())
            throw new IllegalArgumentException("vectors length do not match");
          ComplexVector spec1, spec2, cohSpec;
          spec1 = spectrum(trace1);
          spec2 = spectrum(trace2);
          return (ComplexVector)spec1.mul(spec2.conjugate());
         * returns a given part of coherence spectrum of two traces
        public static FrequencySeries coherenceSpectrum (TimeSeries trace1, TimeSeries trace2, int part) {
          float[] res = extractPart(coherenceSpectrum(trace1,trace2), part);
          return new FrequencySeries(res, trace1.getSamplingFrequency()/(float)(2*res.length));
         * XCorellation of two vectors
         * @param v1 first vector
         * @param v2 second vector
        public static Vector1D corellation(Vector1D v1, Vector1D v2) {
          if (v1.getDataLength() != v2.getDataLength())
            throw new IllegalArgumentException("vectors length do not match");
          ComplexVector sp1, sp2, res;
          sp1 = DFFT(new ComplexVector(v1.getData(),null), true);
          sp2 = DFFT(new ComplexVector(v2.getData(),null), true);
          res = DFFT((ComplexVector)sp1.mul(sp2.conjugate()), false);
          float[] data = res.getDataAmplitudePart();
          float[] data2 = new float[data.length/2];
          System.arraycopy(data,0, data2, 0, data2.length); data2[0] = data2[1];     
          return new Vector1D(data2);
         * Computes a sonogram for a trace
         * This is an optimized algorithm,
        public static Matrix sonogram(TimeSeries data, float stepSec, float window, int taperType, float taperFraction) {
          LinkedList frq = new LinkedList();
          float sampling = data.getSamplingFrequency();
          int step = Math.round(sampling*stepSec);
          DataWindow currentWindow = data.getWindow();
          data.setMessagesAllowed(false);
          DataWindow win = new DataWindow();
          win.startOffset = currentWindow.startOffset;
          win.length      = Math.round(window*sampling);
          boolean computing = true;
          float[] tgt = null;
          int leng = 0;
          if (step < 1)
            step = 1;
          System.err.println("COMPUTING SONOGRAM: step="+stepSec+" ("+step+") length="+window+" ("+win.length+")");
          while (computing) {
            data.setWindow(win);
            ComplexVector spec;
            float[] src = taper(data, taperFraction, taperType).getTotalData();
            spec = DFFT(new ComplexVector(src,null), DIRECT);
            leng = spec.getDataPointsNumber() / 2;
            tgt = new float[leng];
            spec.getDataAmplitudePart(tgt);
            src = extractPart(spec, AMPLITUDE, tgt);
            tgt = new float[ftlen];
            System.arraycopy(src,0,tgt,0,tgt.length);
            tgt = src;
            // --- THIS CODE SHOULD BE REMOVED
            for (int i=0; i < tgt.length; i++)
                tgt[i] = (tgt[i] > 0) ? (float)Math.log(tgt) : tgt[i];
    //tgt = smooth(tgt, Math.round(.05f*tgt.length));
    // --- THIS CODE SHOULD BE REMOVED
    //System.err.println("Step: "+win.startOffset+":"+win.length);
    frq.add(tgt);
    win.startOffset += step;
    if (win.getEnd() > currentWindow.getEnd())
    computing = false;
    data.setWindow(currentWindow);
    data.setMessagesAllowed(true);
    Matrix m;
    m = new Matrix(frq.size(), leng);
    for (int i=0; i < frq.size(); i++)
    m.setColumn(i,(float[])frq.get(i));
    m.setBounds(data.getActiveRegionOffsetSeconds(), data.getActiveRegionOffsetSeconds()+data.getDuration(),
    0f, data.getSamplingFrequency()/2f);
    return m;
    public static double[] toDouble(float[] data) {
    double[] ret = new double[data.length];
    for (int i=0; i < data.length; i++)
    ret[i] = data[i];
    return ret;
    * Differentiate a trace
    public static TimeSeries differentiate (TimeSeries src) {
    int ndat;
    float t_samp;
    int i;
    float[] tr;
    float buff;
    float buff0;
    ndat = src.getDataLength();
    t_samp = 1f/src.getSamplingFrequency();
    tr = src.getData();
    buff0 = tr[0];
    tr[0] *= 2f/t_samp;
    for(i=1;i<ndat;i++)
    buff = tr[i];
    tr[i] = (tr[i] - buff0)/t_samp;
    buff0 = buff;
    return (TimeSeries)src.newInstance(tr);
    * Integrate a trace
    * @param source source trace
    * @param method method to use: Trapezoid or Tick rule
    * @return integrated trace
    public static TimeSeries integrate(TimeSeries source, int method) {
    if (method == Params.TRAPEZOID)
    return Integrate.trapRule(source);
    else if (method == Params.TICK)
    return Integrate.tickRule(source);
    else
    throw new IllegalArgumentException("Invalid method "+method);
    * Integrates a trace using Tick's rule
    * @param source source trace
    * @return integrated trace
    public static TimeSeries integrate(TimeSeries source) {
    return integrate(source, Params.TICK);
    * Trace resampling
    * @param data source trace
    * @param newSampFreq new sampling frequency
    * @return new resampled trace
    public static TimeSeries resample(TimeSeries data, float newSampFreq) {
    float sampFreq = data.getSamplingFrequency();
    float[] newdata = interpolate(data.getData(), sampFreq, newSampFreq);
    TimeSeries res = (TimeSeries)data.newInstance(newdata);
    res.samplingFrequency = newSampFreq;
    return res;
    * Generic moving average window smoothing. <BR>
    * @param src source array
    * @param nx2 half window length
    public static Vector1D smooth(Vector1D src, int nx2) {
    return src.newInstance( smooth(src.getData(), nx2) );
    * Generic moving average window smoothing
    * @param src source array
    * @param nx2 half window length
    public static float[] smooth(float[] src, int nx2) {
    int ndat = src.length;
    float[] res = new float[ndat];
    //System.arraycopy(src, 0, res, 0, ndat);
    float sum1, sum2;
    int i, j, k;
    //System.err.println("NX2 = "+nx2);
    jpitsa.Out.cerr.println("data = "+src.length+"NX2 = "+nx2);
    for(i=nx2;i<=ndat-(nx2+1);i++) {
    sum1=0f; sum2=0f;
    for(j=1;j<=nx2;j++) {
    sum1 = sum1 + src[i-j];
    sum2 = sum2 + src[i+j];
    res[i] = (sum1+sum2+src[i])/(float)(2*nx2+1);
    for(i=1;i<=nx2-1;i++) {
    sum1=0f;
    sum2=0f;
    k = 0;
    for(j=1;j<=i;j++) {
    sum1 = sum1+ src[i-j];
    sum2 = sum2+ src[i+j];
    k = j;
    res[i] = (sum1+sum2+src[i])/(float)(2*k+1);
    for(i=1;i<=nx2-1;i++) {
    sum1 = sum2 = 0f;
    k = 0;
    for(j=1;j<=i;j++) {
    sum1 = sum1+ src[ndat-1-i-j];
    sum2 = sum2+ src[ndat-1-i+j];
    k = j;
    res[ndat-1-i] = (sum1+sum2+src[ndat-1-i])/(float)(2*k+1);
    res[ndat-1] = src[ndat-1];
    res[0] = src[0];
    return res;
    * Generic 4-point spline interpolation method.
    * @param data source data
    * @param oldSampFreq source sampling frequency (1/sampling interval)
    * @param newSampFreq target sampling frequency
    public static float[] interpolate(float[] data, // source data
    float oldSampFreq, // old sampling freq. [Hz]
    float newSampFreq) // new samp. freq. [Hz]
    int n_int = 4; /* degree of polynomial for interpoltion */
    float xa[]= new float[n_int+1]; /* interpolation buffer */
    float ya[]= new float[n_int+1]; /* interpolation buffer */
    int closest_sample=-1, int_start_sample=-1;
    float delta_value = 0f; /* error estimate for interpolated value */
    // this is because PITSA and JPITSA use different schemes for sampling freq. storing
    float t_samp_old = 1f / oldSampFreq;
    float t_samp_new = 1f / newSampFreq;
    int ndat = data.length;
    float x1=t_samp_old/t_samp_new;
    x1 *= (float)ndat;
    int ndat2 = Math.round(x1+5e-1f); // Number of data in new arrary
    float[] tr1 = data;
    float[] b1 = new float[ndat2];
    float[] prom_res= new float[2]; // temp. buffer for polint() procedure
    // 4-point Spline interpolation procedure
    float new_x;
    for (int j = 0; j < ndat2;j++){
    new_x = (float)j*t_samp_new;
    /* determine index of closest sample in trace */
    closest_sample = (int)(new_x/t_samp_old);
    if ((closest_sample >= (int)((float)n_int/2.)) &&
    (closest_sample <= ndat - (int)((float)n_int/2.) - 1))
    int_start_sample = closest_sample - (int)((float)n_int/2.) - 1;
    }else if (closest_sample < (int)((float)n_int/2.)) {
    int_start_sample = -1;
    }else if (closest_sample > ndat - (int)((float)n_int/2.) - 1) {
    int_start_sample = ndat -1 - n_int;
    for (int jj = 1;jj <= n_int; jj++) {
    ya[jj] = tr1[int_start_sample + jj];
    xa[jj] = (int_start_sample + jj)*t_samp_old;
    prom_res[0] = x1; prom_res[1] = delta_value;
    polint(xa,ya,n_int,new_x, prom_res);
    b1[j] = x1 = prom_res[0]; delta_value = prom_res[1];
    return b1;
    * Generic 4-point spline interpolation method.
    * @param data source data
    * @param newLength number of points in a new array
    public static float[] interpolate(float[] data, int newLength) {
    int n_int = 4; /* degree of polynomial for interpoltion */
    float xa[]= new float[n_int+1]; /* interpolation buffer */
    float ya[]= new float[n_int+1]; /* interpolation buffer */
    int closest_sample=-1, int_start_sample=-1;
    float delta_value = 0f; /* error estimate for interpolated value */
    // this is because PITSA and JPITSA use different schemes for sampling freq. storing
    float t_samp_old = 1f / oldSampFreq;
    float t_samp_new = 1f / newSampFreq;
    int ndat = data.length;
    float x1=t_samp_old/t_samp_new;
    x1 *= (float)ndat;
    int ndat2 = Math.round(x1+5e-1f); // Number of data in new arrary
    int ndat = data.length;
    int ndat2 = newLength;
    float t_samp_old = 1f;
    float t_samp_new = ((float)ndat)/((float)ndat2);
    float x1 = (float)ndat2;
    float[] tr1 = data;
    float[] b1 = new float[ndat2];
    float[] prom_res= new float[2]; // temp. buffer for polint() procedure
    // 4-point Spline interpolation procedure
    float new_x;
    for (int j = 0; j < ndat2;j++){
    new_x = (float)j*t_samp_new;
    /* determine index of closest sample in trace */
    closest_sample = (int)(new_x/t_samp_old);
    if ((closest_sample >= (int)((float)n_int/2.)) &&
    (closest_sample <= ndat - (int)((float)n_int/2.) - 1))
    int_start_sample = closest_sample - (int)((float)n_int/2.) - 1;
    }else if (closest_sample < (int)((float)n_int/2.)) {
    int_start_sample = -1;
    }else if (closest_sample > ndat - (int)((float)n_int/2.) - 1) {
    int_start_sample = ndat -1 - n_int;
    for (int jj = 1;jj <= n_int; jj++) {
    ya[jj] = tr1[int_start_sample + jj];
    xa[jj] = (int_start_sample + jj)*t_samp_old;
    prom_res[0] = x1; prom_res[1] = delta_value;
    polint(xa,ya,n_int,new_x, prom_res);
    b1[j] = x1 = prom_res[0]; delta_value = prom_res[1];
    return b1;
    * Butterworth Band Pass Filter
    * implements Band, Low and High Pass filters
    * All three Butterworth filters are recursive time domain filters
    * using the bilinear z-transform design after Stearns (1984)
    * They are applied in section of 30 dB/decade or 12 Db/octave for
    * the slope of the transition band. They may be given zero phase
    * characteristic by filterin the reversed filtered time seris
    * again (forwards-backwards filtering)
    * Finally, the trace is reversed to its original orientation
    * based on spr_bp_bworth (spr/spr_bpbt.c)
    * @author Denis Mishin ([email protected]) - Java code
    * @author PITSA team - original C code
    * @param trace input trace
    * @param flo low cut corner frequency [Hz]
    * @param fhi high cut corner frequency [Hz]
    * @param ns number of filter passes [Hz]
    * @param is_zph TRUE -> zero phase filter
    * @return new filtered trace
    public static TimeSeries bandpassFilter(TimeSeries trace,
    float flo,
    float fhi,
    int ns,
    boolean is_zph)
    final int MAX_SEC = 10;
    int i, k; /* index */
    int n,m,mm;
    int ndat; /* number of points in trace */
    double tsa;
    double a[] = new double[MAX_SEC+1];
    double b[] = new double[MAX_SEC+1];
    double c[] = new double[MAX_SEC+1];
    double d[] = new double[MAX_SEC+1];
    double e[] = new double[MAX_SEC+1];
    double f[][] = new double[MAX_SEC+1][6];
    double temp;
    double c1,c2,c3;
    double w1,w2,wc,q,p,r,s,cs,x;
    float tr[];
    ndat = trace.getDataLength();
    tsa = 1f / trace.getSamplingFrequency();
    tr = trace.getData();
    // remove mean
    float mean = mean(tr);
    for (i=0; i < tr.length; i++)
    tr[i] -= mean;
    /* design filter weights */
    /* bandpass */
    w1 = java.lang.Math.sin(flo*java.lang.Math.PI*tsa)/java.lang.Math.cos(flo*java.lang.Math.PI*tsa);
    w2 = java.lang.Math.sin(fhi*java.lang.Math.PI*tsa)/java.lang.Math.cos(fhi*java.lang.Math.PI*tsa);
    wc=w2-w1;
    q=wc*wc +2.0*w1*w2;
    s=w1*w1*w2*w2;
    for (k=1;k<=ns;k++)
    c1 = (float)(k+ns);
    c2 = (float)(4*ns);
    c3 = (2.0*c1-1.0)*java.lang.Math.PI/c2;
    cs = java.lang.Math.cos(c3);
    p = -2.0*wc*cs;
    r = p*w1*w2;
    x = 1.0+p+q+r+s;
    a[k]= wc*wc/x;
    b[k]= (-4.0 -2.0*p+ 2.0*r+4.0*s)/x;
    c[k]= (6.0 - 2.0*q +6.0*s)/x;
    d[k]= (-4.0 +2.0*p -2.0*r +4.0*s)/x;
    e[k]= (1.0 - p q-r s)/x;
    /* set initial values to 0 */
    for(n=0;n<=MAX_SEC;n++)
    for(m=0;m<=5;m++)
    f[n][m]=0.0;
    /* filtering */
    for (m=1;m<=ndat;m++) {
    f[1][5]= tr[m-1];
    /* go thru ns filter sections */
    for(n=1;n<=ns;n++)
    temp=a[n]*(f[n][5]-2.0*f[n][3] +f[n][1]);
    temp=temp-b[n]*f[n+1][4]-c[n]*f[n+1][3];
    f[n+1][5]=temp-d[n]*f[n+1][2]-e[n]*f[n+1][1];
    /* update past values */
    for(n=1;n<=ns+1;n++)
    for(mm=1;mm<=4;mm++)
    f[n][mm]=f[n][mm+1];
    /* set present data value and continue */
    tr[m-1] = (float)f[ns+1][5];
    // System.out.println("tr ["+(m-1)+"] = "+tr[m-1]);
    if (is_zph == true) {
    /* filtering reverse signal*/
    for (m=ndat;m>=1;m--) {
    f[1][5]= (double)tr[m-1];
    /* go thru ns filter sections */
    for(n=1;n<=ns;n++)
    temp=a[n]*(f[n][5]-2.0*f[n][3] +f[n][1]);
    temp=temp-b[n]*f[n+1][4]-c[n]*f[n+1][3];
    f[n+1][5]=temp-d[n]*f[n+1][2]-e[n]*f[n+1][1];
    /* update past values */
    for(n=1;n<=ns+1;n++)
    for(mm=1;mm<=4;mm++)
    f[n][mm]=f[n][mm+1];
    /* set present data value and continue */
    tr[m-1] = (float)f[ns+1][5];
    // restore mean
    for (i=0; i < tr.length; i++)
    tr[i] += mean;
    return (TimeSeries)trace.newInstance(tr);
    * Gaussian filter. <BR>
    * Removes mean by default
    public static TimeSeries gaussianFilter(TimeSeries src, float fCent, float alpha) {
    return gaussianFilter(src, fCent, alpha, true);
    * Gaussian bandpass filter
    * @param src source trace
    * @param fCent central frequency value
    * @param alpha bandwidth
    * @param rmean remove mean first flag
    * @return new filtered vector
    public static TimeSeries gaussianFilter(TimeSeries src, float fCent, float alpha, boolean rmean) {
    float[] fc = new float[1]; fc[0] = fCent;
    float[] al = new float[1]; al[0] = alpha;
    return gaussianFilter(src, fc, al, rmean);
    * Gaussian bandpass filter
    * @param src source trace
    * @param fCent central frequency values
    * @param alpha bandwidths
    public static TimeSeries gaussianFilter(TimeSeries src, float fCent[], float alpha[], boolean rmean) {
    float[] sourceData = src.getData();
    float mean = 0f;
    int i;
    if (rmean) {
    mean = mean(sourceData);
    for (i=0; i < sourceData.length; i++)
    sourceData[i] -= mean;
    ComplexVector spec = DFFT(new ComplexVector(src.getData(),null), true);
    int npoints = spec.getDataPointsNumber();
    float nyq = src.getSamplingFrequency()/2f;
    // ---- computing the Gaussian distribution function
    float[] gaus = new float[npoints];
    float freqIncrement = (2f*nyq)/((float)npoints);
    int cp = 0; float f = 0f;
    while (f <= nyq && cp < (npoints/2) ) {
    gaus[cp] = Filter.gaussianWindow(f,fCent,alpha);
    cp++; f += freqIncrement;
    int last_index = gaus.length-1;
    for (cp=0; cp < (npoints/2); cp++)
         gaus[last_index - 1] = gaus[cp];
    float[] real = extractPart(spec,Params.REAL);
    float[] imag = extractPart(spec,Params.IMAGINARY);
    //System.out.println("Gaus: real.length="+real.length+" spec.length="+npoints+
    //     " stop at "+f+" nyq="+nyq);
    real = multiplicate(real,gaus);
    imag = multiplicate(imag,gaus);
    //real = glue(real, invert(real));
    //imag = glue(imag, invert(imag));
    ComplexVector inv = DFFT(new ComplexVector(real,imag), Params.INVERSE);
    real = extractPart(inv, Params.REAL);
    float[] data = new float[real.length/2];
    System.arraycopy(real,0,data,0,data.length);
    TimeSeries result = new TimeSeries(data, nyq*2f);
    float[] data = sourceData;
    System.arraycopy(real,0,data,0,data.length);
    if (rmean) {
    for (i=0; i < data.length; i++)
    data[i] += mean;
    TimeSeries result = (TimeSeries)src.newInstance(data);
    return result;
    * Discretisation of source trace data
    * Discretization will treat the input trace as a pseudo-continuous trace from which

  • Dynamic reference for movieclips

    I have read several examples both on the web and in the Adobe
    help files regarding dynamic referencing.
    I cannot get Actionscript to recognize a dynamically named
    clip such as in the attached for loop.
    Any suggestions as to why thumbCan[thumbMC+i] returns
    undefined and therfore doesn't allow anything to be loaded?

    trace("trace1= "+thumbCan["thumbMC"+i]);

  • Xbootmgr Gave up waiting for Win7RTM physical prefetcher after 300 seconds.

    Hello,
    I have a problem with slow boot on a Windows 7 x64.
    It boots in 5 min.
    I have discovered an error regarding ReadyBoot log size and maked it unlimited.
    I've then installed Windows Performance Toolkit and attempted to do a prepSystem.
    It failed with:
    Waiting for prefetcher...
    Gave up waiting for Win7RTM physical prefetcher after 300 seconds.
    I've attempted to do a boot trace without prepSystem. It also failed.
    After google search I've noticed a problem with many system restore points.
    I've made a fresh system restore point and deleted the rest.
    This caused trace1.fx file to appear in ReadyBoot directory.
    I've also did a Rundll32.exe advapi32.dll,ProcessIdleTasks which performed a defrag /B c: and caused Layout.ini to appear in Prefetch directory.
    After all this xbootmgr -trace boot -numruns 6 -traceflags Diag+FileIO+ResidentSet+ReferenceSet -postBootDelay 300 -verboseReadyBoot worked without waiting for prefetcher error.
    But xbootmgr -trace boot -prepSystem -verboseReadyBoot wiped Layout.ini and ReadyBoot directory and failed with waiting for prefetcher.
    I've found KB2728738,KB2732673,KB2878378,KB2775511 fixes might apply to this but they were not fully tested by Microsoft and not released for Windows Update. Also I have only one restore point and did a sfc /scannow and boot trace without prepsystem works!
    Do you have any suggestion what to try to make this work?
    My HDDs speeds are cca. 100 MB/s serial and 50 MB/s random access.
    I have avast antivirus, skype, adobe reader, flash player, google chrome, nvidia backend and raid service,  matlab accelerator, a few apple tasks, and creative (soundblaster) tasks but they don't take too much to run. 
    5 min to boot are too long.
    I've also accidentally discovered that scripts put in Startup folder for a user with common folders redirected to another drive don't get launched.

    Refer the link. This link may help you to resolve the issue.
    http://social.msdn.microsoft.com/Forums/en-US/447f8512-9a33-43bd-a1cf-f0ca25b4b33a/unable-to-get-past-second-boot-when-preparing-system-or-otherwise-obtaining-traces-with-xbootmgrexe?forum=wptk_v4
    http://www.sevenforums.com/performance-maintenance/283057-solution-gave-up-waiting-win7rtm-physical-prefetcher-problem.html
    Mark as Answer if it's worked. Thanks. Balamurugan_Subramaniyan

Maybe you are looking for

  • My Imac is locked with apple symbol and loading sign, how i do fix this?

    my iMac is locked with apple symbol and loading sing since last night, how i do fix this?

  • AR aging report customization

    current in standard AR aging report, we can put buckets 30 days, 60 days, 90 days, but we want aging by month end, for example, today is April.21, we want to know by end of calendar month, what are the open AR item, so instead of 30, 60, 90 days, we

  • Opening new window in xMII Portal navigation tree

    I'm doing a 5-level deep drilldown where each drilldown needs a new window (browser page). I do it with JavaScript and window.open(strURL); and xMII 11.5. This works well with "standalone" pages, but I would like to use xMII Portal navigation tree al

  • Exclude schema grants - impdp

    Hi Experts, I am getting the following error during import using impdp Failing sql is: GRANT SELECT ON "CM_DBA"."PARTY" TO "CM_USR" ORA-39083: Object type OBJECT_GRANT failed to create with error: ORA-01917: user or role 'CM_USR' does not exist Faili

  • Secured network

    How do I set up my secured wireless network with my linksys sytem?  I just have one labtop connected to my PC but I have a neighbor that get on my network and hyjacks my homepage? Any help is appreciated. BAT