Creating a PL/SQL-Block with Boolean-Return and Check

Hello folks,
I have some kind of tricky problem. Actually, I want to integrate a small Task-System on my Apex 2.2 installation. Every task is intended to have a field with a anonymous PL/SQL-block in the shape of:
Declare
Begin
return true/false;
End;
It is comparable to the condition-PL/SQL-block you can set for almost ev'ry item.
It's not the problem to write this block half-automated, but how do I check it? Is there any kind of Database-Function?
Thanks for your replies.
Matthias.

I believe Struct is basically used for SQL types , and your 'T_NACHRICHT' is a type of Objects so please pass the objects array to STRUCT.
For example if type is :
CREATE OR REPLACE TYPE T_NACHRICHT AS OBJECT
ID_Nachricht NUMBER,
ID_Vorgang NUMBER,
--datum                 TIMESTAMP(6),
Betreff VARCHAR2(400),
-- Nachricht CLOB,
ID_Antwort NUMBER,
ist_neu VARCHAR2(5),
CONSTRUCTOR FUNCTION T_NACHRICHT(
p_ID_Vorgang NUMBER,
p_Betreff VARCHAR2) RETURN SELF AS RESULT
then call the struct in below way:
STRUCT nachrichtSTRUCT = null;
StructDescriptor structDesc = StructDescriptor.createDescriptor("T_NACHRICHT", conn);
          Object [] obj = {123456,123456,"ABC",123456,"ABCD"};
nachrichtSTRUCT = new STRUCT(structDesc, conn, obj);

Similar Messages

  • Pl/sql block with "insert into" and schema qualified table throws "error"

    Simplified test case:
    Oracle9i EE Release 9.2.0.3.0
    Oracle JDeveloper 9.0.3.2 Build 1145
    create user u1 identified by u1
    default tablespace users
    quota unlimited on users;
    grant connect, resource to u1;
    revoke unlimited tablespace from u1;
    create user u2 identified by u2
    default tablespace users
    quota unlimited on users;
    grant connect, resource to u2;
    revoke unlimited tablespace from u2;
    As user u2:
    create table u2.t
    c1 number
    grant select, update, insert, delete on u2.t to u1;
    As user u1:
    create or replace package test_pkg as
    procedure do_insert (p_in number);
    end;
    create or replace package body test_pkg as
    procedure do_insert (p_in number) is
    begin
    insert into u2.t values (p_in);
    commit;
    end;
    end;
    All of the above works fine using command-line sql*plus, and is clearly a simplified version of the actual code to demonstrate the issue at hand. Using JDeveloper, it complains about 'expected ;' at the 'values' keyword in the insert statement. Removing the schema qualification from the table name allows JDeveloper to not flag the statement as an error, but I do not want to create synonyms (private or public) to point to all the tables in the real packages. Since JDeveloper flags the insert statement as an error, I can not browse the package structure etc, even though it compiles with no problems. What gives?
    Thanks in advance for any suggestions, etc...

    Hi Bryan,
    Thanks for following up on this. I will look for the bug fix to be published.
    - Mark

  • Cell Offload will Happen for pl/sql Block with variables

    Hello Experts,
    i am working on procedures on exadata now. i was confused with cell offload in exadata. somehow offload is not happening when i ran the sql statement in in pl/sql block with variables.
    here are my findings.
    when i ran insert into from select with values at toad, my query response time is very good. the total process is completed in less than a minute.
    i checked offload is happening.
    same sql statement is placed in plsql block with variable, procedure is taking lot of time and it is not completing. this case offload is not happening.
    is it true, if i use variables in pl/sql block will not use cell offload and smart scan?
    if yes, what is the work around.
    Thanks
    #! Pavan

    Hello Marc,
    Thanks for quick response.
    when i ran the query with literals in toad session i am getting response.
    when i run it with pl/sql block , block is not completing at all.
    here is the plsql block:
    My Apologies for sending big code,with out proper format.
    DECLARE
    P_BUSINESS_DATE DATE;
    P_BATCH_ID NUMBER;
    UTC_OFFSET NUMBER;
    BEGIN
    P_BUSINESS_DATE := to_date('02/01/2012', 'MM/DD/YYYY');
    P_BATCH_ID := 1;
    UTC_OFFSET := 0;
    INSERT /*+ APPEND */ INTO UPL_CLIENT_tbl
    ( reportdate,
    LastName,
    FirstName,
    MiddleInitial,
    AccountNumber,
    Address,
    City,
    State,
    Zip,
    HomePhone,
    WorkPhone,
    BirthDate,
    Age,
    Sex,
    NumberOfChildren,
    Occupation,
    LeadSource,
    Consultant,
    ProgramDirector,
    CallTaker,
    LeadDate,
    FirstVisitDate,
    LastVisitDate,
    BillType,
    ClientType,
    PreviousClientType,
    AppointmentDate,
    DoctorLetterRequired,
    OneYearPermStabilizationDate,
    UnlimitedPermStabilizationDate,
    MaritalStatus,
    ReferrerName,
    ReferrerCentreID,
    CentreID,
    PaymentDateOne,
    PaymentAmountOne,
    PaymentDateTwo,
    PaymentAmountTwo,
    PaymentDateThree,
    PaymentAmountThree,
    PaymentDateFour,
    PaymentAmountFour,
    LibraryPurchased,
    BalanceDue,
    FoodNSFBalance,
    ProductNSFBalance,
    ProgramNSFBalance,
    StartWeight,
    CurrentWeight,
    GoalWeight,
    Height,
    DateGoalWeightAchieved,
    DateSuccessPlusPurchased,
    ReturnToActiveDate,
    VersionNumber,
    HalfWayDate,
    LastLSCDate,
    LastUpdatedDate,
    VitaminWaiverSigned,
    LastSupplementPurchaseDate,
    LastSupplementCodePurchased,
    LastTotalSupplementSupplyCycle,
    LastAddtlSupplPurchaseDate,
    LastAddtlSupplCodePurchased,
    LastAddtlSupplSupplyCycle,
    DiabetesClient,
    DietControlled,
    TakingOralMed,
    TakingInsulin,
    EmailId,
    CTADate,
    RWLDate,
    Address2)
    (SELECT /*+ full(S_CONTACT) full(REFERRER) full(Consultant) full(ProgramDirector) full(CallTaker) full(S_CONTACT_X) full(a) full(a2) full (a3) */ distinct p_business_date reportdate,
    SUBSTR(S_CONTACT.LAST_NAME,1,25) AS LastName,
    SUBSTR(S_CONTACT.FST_NAME,1,25) AS FirstName,
    SUBSTR(S_CONTACT.MID_NAME,1,1) AS MiddleInitial,
    S_CONTACT.X_JC_ACNT_NUM + 900000000 AS AccountNumber,
    SUBSTR(S_ADDR_PER.ADDR,1,40) AS ADDRESS,
    SUBSTR(S_ADDR_PER.CITY,1,20) AS City,
    S_ADDR_PER.STATE AS State,
    SUBSTR(S_ADDR_PER.ZIPCODE,1,15) AS Zip,
    SUBSTR(REPLACE(S_CONTACT.HOME_PH_NUM,'-',''),1,10) AS HomePhone,
    SUBSTR(REPLACE(S_CONTACT.WORK_PH_NUM,'-',''),1,10) AS WorkPhone,
    S_CONTACT.BIRTH_DT AS BirthDate,
    CASE WHEN FLOOR((p_business_date - S_CONTACT.BIRTH_DT)/360) < 0 THEN NULL ELSE FLOOR((p_business_date - S_CONTACT.BIRTH_DT)/360) END AS AGE,
    S_CONTACT.SEX_MF AS SEX,
    NULL AS NumberOfChildren,
    S_CONTACT_X.ATTRIB_34 AS OCCUPATION,
    CASE WHEN SUBSTR(S_CONTACT_X.ATTRIB_37,1,4)='Othe' THEN 'Othr'
    WHEN SUBSTR(S_CONTACT_X.ATTRIB_37,1,4)='Inte' THEN 'Intr'
    WHEN SUBSTR(S_CONTACT_X.ATTRIB_37,1,4)='Prin' THEN 'News'
    WHEN SUBSTR(S_CONTACT_X.ATTRIB_37,1,4)='Gues' THEN 'Gst'
    ELSE SUBSTR(S_CONTACT_X.ATTRIB_37,1,4) END AS LeadSource,
    SUBSTR(Consultant.EMP_NUM,1,10) AS CONSULTANT,
    ProgramDirector.EMP_NUM AS ProgramDirector,
    CallTaker.EMP_NUM CallTaker,
    S_CONTACT.X_LEAD_DT AS LeadDate,
    LEAST(nvl(S_CONTACT.X_LAST_CONSULTATION_DATE,O.FirstPurchaseDate ), nvl(O.FirstPurchaseDate,S_CONTACT.X_LAST_CONSULTATION_DATE+1) ) AS FirstVisitDate, --X_LAST_CONSULTATION_DATE stores the performed date or the legacy client firstvisitdate
    GREATEST(nvl(S_CONTACT_XM.X_CONSULTATION_DT ,S_CONTACT_X.ATTRIB_29), nvl(S_CONTACT_X.ATTRIB_29, S_CONTACT_XM.X_CONSULTATION_DT-1) ) AS LastVisitDate,
    CASE WHEN S_CONTACT.X_INSTALLMENT_BALANCE > 0 THEN 'B' ELSE NULL END AS BillType,
    ct.current_client_type ClientType,
    SUBSTR(ct.saved_client_type,1,1) PreviousClientType,
    S_CONTACT.LAST_CREDIT_DT AS AppointmentDate,
    CASE WHEN a.X_DR_LETTER_STATUS IS NOT NULL THEN 'Y' ELSE 'N' END AS DoctorLetterRequired,
    NULL AS OneYearPermStabilizationDate,
    DECODE(S_PROD_INT.X_PROGRAM_CLASSIFICATION,'Premium',a.START_DT ,NULL) AS UnlimitedPermStabilizationDate,
    SUBSTR(S_CONTACT.MARITAL_STAT_CD,1,1) AS MaritalStatus,
    SUBSTR(REFERRER.FST_NAME ||' '|| REFERRER.LAST_NAME,1,34) AS ReferrerName,
    ORGEXT_REF.LOC AS ReferrerCentreID,
    S_ORG_EXT.LOC AS CentreID,
    NULL AS PaymentDateOne,
    NULL AS PaymentAmountOne,
    NULL AS PaymentDateTwo,
    NULL AS PaymentAmountTwo,
    NULL AS PaymentDateThree,
    NULL AS PaymentAmountThree,
    NULL AS PaymentDateFour,
    NULL AS PaymentAmountFour,
    NULL AS LibraryPurchased,
    nvl(S_CONTACT.X_INSTALLMENT_BALANCE,0) + nvl(S_CONTACT.X_PREPAID_BALANCE,0) AS BalanceDue, -- Changed operation from (-) prepaid to (+) prepaid since the sign was flipped in OLTP.
    NULL AS FoodNSFBalance,
    NULL AS ProductNSFBalance,
    NULL AS ProgramNSFBalance,
    a2.X_START_WEIGHT AS StartWeight,
    a2.X_CURRENT_WEIGHT AS CurrentWeight,
    a2.X_GOAL_WEIGHT AS GoalWeight,
    a3.X_HEIGHT AS Height,
    a2.X_FAXSENT_DATETIME DateGoalWeightAchieved,
    DECODE(S_PROD_INT.X_PROGRAM_CLASSIFICATION,'Premium',a.START_DT,NULL) AS DateSuccessPlusPurchased,
    CASE WHEN A2.ARCHIVE_FLG = 'N' THEN a2.START_DT ELSE NULL END AS ReturnToActiveDate,
    600 VersionNumber,
    a2.X_FAXRECV_DATETIME AS HalfWayDate,
    NULL AS LastLSCDate,
    TRUNC(S_CONTACT.LAST_UPD-UTC_OFFSET/24) AS LastUpdatedDate,
    NULL AS VitaminWaiverSigned,
    LastSupplementPurchaseDate,
    LastSupplementCodePurchased,
    LastTotalSupplementSupplyCycle,
    LastAddtlSupplPurchaseDate,
    LastAddtlSupplCodePurchased,
    LastAddtlSupplSupplyCycle,
    CASE WHEN (a.X_DIABETES_NO_MEDS_FLG='Y' OR a.X_DIABETES_ORAL_MEDS_FLG = 'Y' OR a.X_DIABETES_ON_INSULIN_FLG = 'Y') THEN 'Y' ELSE 'N' END AS DiabetesClient,
    DECODE(a.X_DIABETES_NO_MEDS_FLG,'Y','Y','N') AS DietControlled,
    a.X_DIABETES_ORAL_MEDS_FLG AS TakingOralMed,
    a.X_DIABETES_ON_INSULIN_FLG AS TakingInsulin,
    S_CONTACT.EMAIL_ADDR AS EmailId,
    NULL CTADATE,
    NULL RWLDATE,
    SUBSTR(S_ADDR_PER.ADDR_LINE_2,1,40) AS Address2
    FROM S_CONTACT,
    S_CONTACT REFERRER,
    S_CONTACT Consultant,
    S_CONTACT ProgramDirector,
    S_CONTACT CallTaker,
    S_CONTACT_X,
    (SELECT /*+ parallel full(S_CONTACT_XM) */ PAR_ROW_ID, attrib_05, MAX(X_CONSULTATION_DT) AS X_CONSULTATION_DT FROM S_CONTACT_XM
    WHERE (S_CONTACT_XM.last_upd_by < '1-14WD'
    or S_CONTACT_XM.last_upd_by > '1-14WD')
    AND S_CONTACT_XM.ATTRIB_05 IN (SELECT row_id FROM S_ORG_EXT WHERE S_ORG_EXT.ACCNT_TYPE_CD IN ('Corporate Centre','Franchise Centre')) LOC IN (SELECT centreid FROM UPL_LIVE_CENTRES WHERE LIVE = 'Y' AND BATCHID = p_batch_id)) where S_ORG_EXT.ACCNT_TYPE_CD IN ('Corporate Centre','Franchise Centre')) --
    GROUP BY PAR_ROW_ID, attrib_05) S_CONTACT_XM,
    (SELECT CONTACT_ID, ACCNT_ID,
    MAX(LastSupplementPurchaseDate) AS LastSupplementPurchaseDate,
    MAX(LastSupplementCodePurchased) AS LastSupplementCodePurchased,
    MAX(LastTotalSupplementSupplyCycle) AS LastTotalSupplementSupplyCycle,
    MAX(LastAddtlSupplPurchaseDate) AS LastAddtlSupplPurchaseDate,
    MAX(LastAddtlSupplCodePurchased) AS LastAddtlSupplCodePurchased,
    MAX(LastAddtlSupplSupplyCycle) AS LastAddtlSupplSupplyCycle,
    MIN(FirstPurchaseDate) AS FirstPurchaseDate,
    MAX(LastPurchaseDate) AS LastPurchaseDate
              FROM (
              SELECT /*+ parallel full(S_ORDER) full(S_ORDER_XM) */ S_ORDER.CONTACT_ID AS CONTACT_ID,S_ORDER.ACCNT_ID,
    NULL AS LastSupplementPurchaseDate,
    NULL AS LastSupplementCodePurchased,
    NULL AS LastTotalSupplementSupplyCycle,
    NULL AS LastAddtlSupplPurchaseDate,
    NULL AS LastAddtlSupplCodePurchased,
    NULL AS LastAddtlSupplSupplyCycle,
    (S_ORDER_XM.X_BUSINESS_DATE) FirstPurchaseDate,
    (S_ORDER_XM.X_BUSINESS_DATE) LastPurchaseDate
              FROM S_ORDER,S_ORDER_XM
              WHERE S_ORDER.ROW_ID = S_ORDER_XM.PAR_ROW_ID
              AND S_ORDER.STATUS_CD IN ('Complete', 'Submitted', 'Ready')
              AND TRUNC(S_ORDER_XM.X_BUSINESS_DATE - UTC_OFFSET/24) <= (p_business_date)
              --GROUP BY S_ORDER.CONTACT_ID
              UNION ALL
              SELECT /*+ parallel full(S_ORDER) full (S_ORDER_ITEM) */ S_ORDER.CONTACT_ID AS CONTACT_ID,S_ORDER.ACCNT_ID,
              (CASE WHEN SUBSTR(SUBSTR(S_PROD_INT.PART_NUM,1,INSTR(S_PROD_INT.PART_NUM,'-',1,1)-1),2,4) = '931' THEN S_ORDER.CREATED ELSE NULL END) AS LastSupplementPurchaseDate,
              (CASE WHEN SUBSTR(SUBSTR(S_PROD_INT.PART_NUM,1,INSTR(S_PROD_INT.PART_NUM,'-',1,1)-1),2,4) = '931' THEN 931 ELSE NULL END) AS LastSupplementCodePurchased,
              (CASE WHEN SUBSTR(SUBSTR(S_PROD_INT.PART_NUM,1,INSTR(S_PROD_INT.PART_NUM,'-',1,1)-1),2,4) = '931' THEN 7 ELSE NULL END) AS LastTotalSupplementSupplyCycle,
              (CASE WHEN SUBSTR(SUBSTR(S_PROD_INT.PART_NUM,1,INSTR(S_PROD_INT.PART_NUM,'-',1,1)-1),2,4) = '920' THEN S_ORDER.CREATED ELSE NULL END) AS LastAddtlSupplPurchaseDate,
              (CASE WHEN SUBSTR(SUBSTR(S_PROD_INT.PART_NUM,1,INSTR(S_PROD_INT.PART_NUM,'-',1,1)-1),2,4) = '920' THEN 920 ELSE NULL END) AS LastAddtlSupplCodePurchased,
              (CASE WHEN SUBSTR(SUBSTR(S_PROD_INT.PART_NUM,1,INSTR(S_PROD_INT.PART_NUM,'-',1,1)-1),2,4) = '920' THEN 28 ELSE NULL END) AS LastAddtlSupplSupplyCycle,
              NULL FirstPurchaseDate,
              NULL LastPurchaseDate
              FROM S_ORDER,S_ORDER_ITEM, S_PROD_INT
              WHERE S_ORDER_ITEM.PROD_ID = S_PROD_INT.ROW_ID
                   AND S_ORDER.ROW_ID = S_ORDER_ITEM.ORDER_ID
                   AND S_ORDER_ITEM.qty_req <> 0
                   AND s_order.created_by <> '1-14WD'
                   AND S_ORDER_ITEM.PAR_ORDER_ITEM_ID is null
                   AND (S_ORDER_ITEM.PAR_ORDER_ITEM_ID is null
                   OR EXISTS (select 1 from S_ORDER_ITEM i2,s_prod_int p
    where i2.row_id = S_ORDER_ITEM.PAR_ORDER_ITEM_ID
    and SUBSTR(SUBSTR(S_PROD_INT.PART_NUM,1,INSTR(S_PROD_INT.PART_NUM,'-',1,1)-1),2,4) IN ('931','920')
    and i2.prod_id = p.row_id
                   AND S_ORDER.status_cd in ('Complete', 'Submitted', 'Ready')
                   and SUBSTR(SUBSTR(S_PROD_INT.PART_NUM,1,INSTR(S_PROD_INT.PART_NUM,'-',1,1)-1),2,4) IN ('931','920')
    GROUP BY CONTACT_ID,ACCNT_ID) O,
    S_CONTACT_TNTX,
    S_ORG_EXT,
    S_ORG_EXT ORGEXT_REF,
    S_ADDR_PER,
    S_ASSET a,
    S_PROD_INT,
    S_ASSET a2,
    S_ASSET a3,
    UPL_CLIENT_TYPES ct,
    (select /*+ parallel */ o.contact_id, o.accnt_id
    from S_ORDER o, S_ORDER_XM oxm
    where o.row_id = oxm.par_row_id
    and trunc(oxm.X_BUSINESS_DATE - (UTC_OFFSET/24)) = trunc(p_business_date)
    group by o.contact_id, o.accnt_id) oxm2
    WHERE S_CONTACT.ROW_ID = S_CONTACT_X.PAR_ROW_ID
    AND S_CONTACT_X.ROW_ID = S_CONTACT_XM.PAR_ROW_ID (+)
    AND (S_ORG_EXT.ROW_ID = S_CONTACT.PR_DEPT_OU_ID
    OR S_ORG_EXT.ROW_ID = oxm2.accnt_id
    OR S_ORG_EXT.ROW_ID = S_CONTACT_XM.attrib_05)
    AND ORGEXT_REF.ROW_ID(+) = REFERRER.PR_DEPT_OU_ID
    AND S_CONTACT.CON_ASST_PER_ID = Consultant.ROW_ID
    AND S_ORG_EXT.X_DIRECTOR_ID = ProgramDirector.ROW_ID (+)
    AND S_CONTACT.CREATED_BY = CallTaker.ROW_ID
    AND S_CONTACT.ROW_ID = a.PR_CON_ID (+)
    AND S_CONTACT.PR_PER_ADDR_ID = S_ADDR_PER.ROW_ID (+)
    AND S_CONTACT_TNTX.PAR_ROW_ID (+) = S_CONTACT.ROW_ID
    AND REFERRER.ROW_ID(+) = S_CONTACT_TNTX.REFERRED_BY_ID
    AND a.PROD_ID = S_PROD_INT.ROW_ID (+)
    AND O.CONTACT_ID (+) = S_CONTACT.ROW_ID
    AND a.STATUS_CD (+) = 'Active'
    AND a.TYPE_CD (+) ='Program'
    AND S_CONTACT.ROW_ID = a2.PR_CON_ID (+)
    AND a2.STATUS_CD (+) = 'Active'
    AND a2.TYPE_CD (+) = 'Lifecycle'
    AND a3.PR_CON_ID(+) = S_CONTACT.ROW_ID
    AND a3.STATUS_CD (+) = 'Active'
    AND a3.TYPE_CD (+) = 'HealthSheet'
    AND S_CONTACT.X_JC_ACNT_NUM = ct.CLIENT_NUMBER (+)
    --AND S_ORG_EXT.LOC NOT LIKE 'F%'
    AND S_ORG_EXT.ACCNT_TYPE_CD NOT IN 'Division'
    --AND S_ORG_EXT.Loc in (select to_char(centreid) from UPL_LIVE_CENTRES where LIVE = 'Y')
    AND (trunc(S_CONTACT.LAST_UPD - (UTC_OFFSET/24)) = trunc(p_business_date) or trunc(S_CONTACT_X.LAST_UPD - (UTC_OFFSET/24)) = trunc(p_business_date) OR (S_CONTACT_XM.X_CONSULTATION_DT = p_business_date) OR oxm2.CONTACT_ID IS NOT NULL)
    AND S_CONTACT.last_upd_by not in ('1-14WD')
    AND oxm2.CONTACT_ID (+) = o.CONTACT_ID
    AND S_ORG_EXT.LOC <> 'CW_846'
    AND (a.pr_accnt_id in (select row_id from S_ORG_EXT where S_ORG_EXT.LOC IN (Select CentreID from UPL_Live_Centres where BATCHID = p_batch_id)) or a.pr_accnt_id is null)
    AND (a2.pr_accnt_id in (select row_id from S_ORG_EXT where S_ORG_EXT.LOC IN (Select CentreID from UPL_Live_Centres where BATCHID = p_batch_id)) or a2.pr_accnt_id is null)
    AND (a3.pr_accnt_id in (select row_id from S_ORG_EXT where S_ORG_EXT.LOC IN (Select CentreID from UPL_Live_Centres where BATCHID = p_batch_id)) or a3.pr_accnt_id is null));
    rollback;
    END;
    --------------------------------------------------------------------------------------------------

  • PL/SQL Block with Cursor

    I was trying to create a PL/SQL block where I am trying to call all the SQL Plans and then drop them one by one. Here is how I am doung -
    SET SERVEROUT ON;
    DECLARE
    EXECSTR VARCHAR2(50);
    v_plans_dropped pls_integer;
    CURSOR C1 IS SELECT SQL_HANDLE FROM DBA_SQL_PLAN_BASELINES;
    BEGIN
    FOR I IN C1 LOOP
    EXECSTR := ''''||I.SQL_HANDLE||'''';
    v_plans_dropped:=dbms_spm.drop_sql_plan_baseline(sql_handle=>EXECSTR);
    END LOOP;
    EXCEPTION
    WHEN OTHERS THEN
    DBMS_OUTPUT.PUT_LINE('ERROR while dropping SQL PLAN: ' || SQLCODE || ' : ' || SQLERRM);
    END;
    This is giving me error like - ERROR while dropping SQL PLAN: -38131 : ORA-38131: specified SQL handle
    'SYS_SQL_1470897e7b72c982' does not exist
    Whereas this SQL Plan is there in the baseline - SELECT sql_handle FROM dba_sql_plan_baselines;
    SQL_HANDLE
    SYS_SQL_1470897e7b72c982
    SYS_SQL_75ac336a8071cb06
    SYS_SQL_269cdcd4862f8685
    SYS_SQL_269cdcd4862f8685
    SYS_SQL_0ffdb3bddbe422e2
    SYS_SQL_14d81bbae4a7cc93
    SYS_SQL_5c512b58e7795ba2
    SYS_SQL_33515785e80b75d0
    Above PL/SQL block should be same as like deleting it one by one -
    DECLARE
    v_plans_dropped pls_integer;
    BEGIN
    v_plans_dropped:=dbms_spm.drop_sql_plan_baseline(sql_handle=>'SYS_SQL_1470897e7b72c982');
    END;
    If I run this then it will be sucessul but when I run under a PL/SQL block using cursor then it is giving me error ORA-38131.
    Can you please tell me where I am going wrong here.
    Thanks for your time!

    I have this PL/SQL block -
    DECLARE
    v_plans_dropped pls_integer;
    CURSOR C1 IS SELECT SQL_HANDLE FROM DBA_SQL_PLAN_BASELINES;
    BEGIN
    FOR I IN C1 LOOP
    v_plans_dropped:=dbms_spm.drop_sql_plan_baseline(sql_handle=>I.SQL_HANDLE);
    END LOOP;
    END;
    Requirement - This PL/SQL block should read all the records from DBA_SQL_PLAN_BASELINES table and drop all the plans one by one.
    Problem - It gives me error like this -
    SQL> 2 3 4 5 6 7 8 9 DECLARE
    ERROR at line 1:
    ORA-38131: specified SQL handle SYS_SQL_45c1170505dda9a9 does not exist
    ORA-06512: at "SYS.DBMS_SPM", line 2444
    ORA-06512: at line 6
    Analysis: When I ran it 4 times, it showed me that the remaining records after the pl/sql run was like -
    SQL> SELECT COUNT(*) FROM DBA_SQL_PLAN_BASELINES;
    After First Run -
    COUNT(*)
    33429
    After Second Run -
    COUNT(*)
    33255
    After Third Run -
    COUNT(*)
    33228
    After Fourth Run -
    COUNT(*)
    32988
    So, it deletes records but errors out in between. Is it because the PL/SQL block/cursor is not structured properly?
    Thanks for your advice!

  • Tune the PL/SQL block with SQL_ID

    Hi There,
    I have found some recommendation in ADDM report as follows.
    "" Action
    Tune the PL/SQL block with SQL_ID "48trcns4mx5bk". Refer to the "Tuning
    PL/SQL Applications" chapter of Oracle's "PL/SQL User's Guide and
    Reference".
    Related Object ""
    can any one let me how to Tune the PL/SQL block with SQL_ID?
    looking forward.
    Db: 11.1.0.7
    OS: OracleLinux5-86*64
    Regards,
    Mohsin

    Hi,
    you can't tune a PL/SQL block directly. Instead, you'll need to profile it first (i.e. see how much time SQL statements inside it consume) using dbms_profiler or some other tool. If you find that the problem is that some SQL is called too frequently because of flawed PL/SQL logic, then you'll need to address that. Otherwise, you'll need to take the top time consuming statement(s) and tune it (them).
    Best regards,
    Nikolay

  • Hot Data Block with concurrent read and write

    Hi,
    This is from ADDM Report.
    FINDING 8: 2% impact (159 seconds)
    A hot data block with concurrent read and write activity was found. The block
    belongs to segment "SIEBEL.S_SRM_REQUEST" and is block 8138 in file 7.
    RECOMMENDATION 1: Application Analysis, 2% benefit (159 seconds)
    ACTION: Investigate application logic to find the cause of high
    concurrent read and write activity to the data present in this block.
    RELEVANT OBJECT: database block with object# 73759, file# 7 and
    block# 8138
    RATIONALE: The SQL statement with SQL_ID "f1dhpm6pnmmzq" spent
    significant time on "buffer busy" waits for the hot block.
    RELEVANT OBJECT: SQL statement with SQL_ID f1dhpm6pnmmzq
    DELETE FROM SIEBEL.S_SRM_REQUEST WHERE ROW_ID = :B1
    RECOMMENDATION 2: Schema, 2% benefit (159 seconds)
    ACTION: Consider rebuilding the TABLE "SIEBEL.S_SRM_REQUEST" with object
    id 73759 using a higher value for PCTFREE.
    RELEVANT OBJECT: database object with id 73759
    SYMPTOMS THAT LED TO THE FINDING:
    SYMPTOM: Wait class "Concurrency" was consuming significant database
    time. (4% impact [322 seconds])
    what does it mean by hot block with concurrent read and write??
    is rebuilding the table solves the problem as per addm report?

    Hi,
    You must suffer from buffer busy waits.
    When a buffer is updated, the buffer will be latched, and other sessions can not read it or write it.
    You must have multiple sessions reading and writing that one block.
    Recommendation 2 results in fewer records per block, so less chance multiple sessions are modifying and reading 1 block. It will also result in a bigger table.
    The recommendation doesn't make sense for tablespaces with segment storage management auto, as for those tablespaces pctfree does not apply.
    Buffer busy waits will also occur if the blocksize of your database is set too high.
    Sybrand Bakker
    Senior Oracle DBA

  • My macbook pro has a virus/trojan that is resetting the EFI via apci and it is getting root access privileges. It seems to be creating multiple aliases that bundle with rogue apps and preferences so it is very difficult to control or fix. Please help..

    My macbook pro has a virus/trojan that is resetting the EFI via apci and it is getting root access privileges. It seems to be creating multiple aliases that bundle with rogue apps and preferences so it is very difficult to control or fix. Please help..It all stems from the "about donwloads" PDF which kicks off the restructuring of the OS..

    Well given the fact that it is not just myself who is infected and also that this is my 3rd macbook in 1 year because the other 2 efi's were compromised to the point where they were unusable, and also that I must've been to the mac store no less than 100 times in a year for these issues, I beg to differ. Here is what I can show you. This has been ongoing for over a year now.
    I will try and show you as much as I can.
    1) Here is what I see when I run mount from terminal:
    /dev/disk0s2 on / (hfs, local, journaled)
    devfs on /dev (devfs, local, nobrowse)
    map -hosts on /net (autofs, nosuid, automounted, nobrowse)
    map auto_home on /home (autofs, automounted, nobrowse)
    localhost:/4zOta2Q9FMiMnRjTROIbhU on /Volumes/MobileBackups (mtmfs, nosuid, read-only, nobrowse)
    Why on earth is /Volumes/MobildBackups my localhost is beyond me. I don't use iCloud and Mobile me is obsolete.
    2) Here is what I show when I run ls -al /*/*/*/*.efi from root
    -rw-r--r--  1 root  wheel  994464 May  1 00:33 /System/Library/CoreServices/boot.efi
    -rw-r--r--  1 root  wheel  994464 Oct  2  2012 /usr/standalone/i386/boot.efi
    -rwxr-xr-x  1 root  wheel  115716 Dec 13 14:08 /usr/standalone/i386/tmbootpicker.efi
    As far as I know my boot.efi should not change everytime I boot my machine.
    3) Here is something very interesting. When I run cd /dev followed by ls -al look what I have;
    total 9
    dr-xr-xr-x   3 root  wheel         4597 May  6 08:48 .
    drwxrwxr-t  32 root  admin         1156 May  6 01:20 ..
    crw-------   1 root  wheel      14,   1 May  6 08:48 afsc_type5
    crw-------   1 root  wheel       8,   0 May  6 08:48 auditpipe
    crw-r--r--   1 root  wheel       7,   1 May  6 08:48 auditsessions
    crw-------   1 root  wheel      18,   0 May  6 08:48 autofs
    crw-------   1 root  wheel      31,   0 May  6 08:48 autofs_control
    crw-rw-rw-   1 root  wheel      22,   0 May  6 08:48 autofs_homedirmounter
    crw-rw-rw-   1 root  wheel      21,   0 May  6 08:48 autofs_notrigger
    crw-rw-rw-   1 root  wheel      19,  13 May  6 08:48 autofs_nowait
    crw-------   1 root  wheel      23,   0 May  6 08:48 bpf0
    crw-------   1 root  wheel      23,   1 May  7 13:16 bpf1
    crw-------   1 root  wheel      23,   2 May  7 13:16 bpf2
    crw-------   1 root  wheel      23,   3 May  6 08:48 bpf3
    crw-------   1 MP    staff       0,   0 May  7 13:16 console
    crw-rw-rw-   1 root  wheel      33,   1 May  6 08:49 cu.Bluetooth-Modem
    crw-rw-rw-   1 root  wheel      33,   3 May  6 08:49 cu.SerialPort
    brw-r-----   1 root  operator    1,   0 May  6 08:48 disk0
    brw-r-----   1 root  operator    1,   2 May  6 08:48 disk0s1
    brw-r-----   1 root  operator    1,   1 May  6 08:48 disk0s2
    brw-r-----   1 root  operator    1,   3 May  6 08:48 disk0s3
    crw-rw-rw-   1 root  wheel      24,   2 May  6 08:48 dtrace
    crw-rw-rw-   1 root  wheel      25,   0 May  6 08:48 dtracehelper
    crw-rw-rw-   1 root  wheel       0,   0 May  6 08:48 fbt
    dr-xr-xr-x   1 root  wheel            0 May  6 08:48 fd
    crw-r--r--   1 root  wheel      11,   0 May  6 08:48 fsevents
    crw-rw-rw-   1 root  wheel      17,   7 May  7 13:16 io8log
    cr--r--r--   1 root  wheel      17,   2 May  6 08:48 io8logmt
    crw-------   1 root  wheel       6,   0 May  6 08:48 klog
    crw-rw-rw-   1 root  wheel       0,   0 May  6 08:48 lockstat
    crw-rw-rw-   1 root  wheel       0,   0 May  6 08:48 machtrace
    crw-rw-rw-   1 root  wheel       3,   2 May  7 13:16 null
    crw-------   1 root  wheel       9,   0 May  6 08:48 pf
    crw-------   1 root  wheel       9,   1 May  6 08:48 pfm
    crw-------   1 root  operator   20,   0 May  6 08:48 pmCPU
    crw-rw-rw-   1 root  wheel       0,   0 May  6 08:48 profile
    crw-rw-rw-   1 root  tty        15,   3 May  7 13:35 ptmx
    crw-rw-rw-   1 root  wheel       5,   0 May  6 08:48 ptyp0
    crw-rw-rw-   1 root  wheel       5,   1 May  6 08:48 ptyp1
    crw-rw-rw-   1 root  wheel       5,   2 May  6 08:48 ptyp2
    crw-rw-rw-   1 root  wheel       5,   3 May  6 08:48 ptyp3
    crw-rw-rw-   1 root  wheel       5,   4 May  6 08:48 ptyp4
    crw-rw-rw-   1 root  wheel       5,   5 May  6 08:48 ptyp5
    crw-rw-rw-   1 root  wheel       5,   6 May  6 08:48 ptyp6
    crw-rw-rw-   1 root  wheel       5,   7 May  6 08:48 ptyp7
    crw-rw-rw-   1 root  wheel       5,   8 May  6 08:48 ptyp8
    crw-rw-rw-   1 root  wheel       5,   9 May  6 08:48 ptyp9
    crw-rw-rw-   1 root  wheel       5,  10 May  6 08:48 ptypa
    crw-rw-rw-   1 root  wheel       5,  11 May  6 08:48 ptypb
    crw-rw-rw-   1 root  wheel       5,  12 May  6 08:48 ptypc
    crw-rw-rw-   1 root  wheel       5,  13 May  6 08:48 ptypd
    crw-rw-rw-   1 root  wheel       5,  14 May  6 08:48 ptype
    crw-rw-rw-   1 root  wheel       5,  15 May  6 08:48 ptypf
    crw-rw-rw-   1 root  wheel       5,  16 May  6 08:48 ptyq0
    crw-rw-rw-   1 root  wheel       5,  17 May  6 08:48 ptyq1
    crw-rw-rw-   1 root  wheel       5,  18 May  6 08:48 ptyq2
    crw-rw-rw-   1 root  wheel       5,  19 May  6 08:48 ptyq3
    crw-rw-rw-   1 root  wheel       5,  20 May  6 08:48 ptyq4
    crw-rw-rw-   1 root  wheel       5,  21 May  6 08:48 ptyq5
    crw-rw-rw-   1 root  wheel       5,  22 May  6 08:48 ptyq6
    crw-rw-rw-   1 root  wheel       5,  23 May  6 08:48 ptyq7
    crw-rw-rw-   1 root  wheel       5,  24 May  6 08:48 ptyq8
    crw-rw-rw-   1 root  wheel       5,  25 May  6 08:48 ptyq9
    crw-rw-rw-   1 root  wheel       5,  26 May  6 08:48 ptyqa
    crw-rw-rw-   1 root  wheel       5,  27 May  6 08:48 ptyqb
    crw-rw-rw-   1 root  wheel       5,  28 May  6 08:48 ptyqc
    crw-rw-rw-   1 root  wheel       5,  29 May  6 08:48 ptyqd
    crw-rw-rw-   1 root  wheel       5,  30 May  6 08:48 ptyqe
    crw-rw-rw-   1 root  wheel       5,  31 May  6 08:48 ptyqf
    crw-rw-rw-   1 root  wheel       5,  32 May  6 08:48 ptyr0
    crw-rw-rw-   1 root  wheel       5,  33 May  6 08:48 ptyr1
    crw-rw-rw-   1 root  wheel       5,  34 May  6 08:48 ptyr2
    crw-rw-rw-   1 root  wheel       5,  35 May  6 08:48 ptyr3
    crw-rw-rw-   1 root  wheel       5,  36 May  6 08:48 ptyr4
    crw-rw-rw-   1 root  wheel       5,  37 May  6 08:48 ptyr5
    crw-rw-rw-   1 root  wheel       5,  38 May  6 08:48 ptyr6
    crw-rw-rw-   1 root  wheel       5,  39 May  6 08:48 ptyr7
    crw-rw-rw-   1 root  wheel       5,  40 May  6 08:48 ptyr8
    crw-rw-rw-   1 root  wheel       5,  41 May  6 08:48 ptyr9
    crw-rw-rw-   1 root  wheel       5,  42 May  6 08:48 ptyra
    crw-rw-rw-   1 root  wheel       5,  43 May  6 08:48 ptyrb
    crw-rw-rw-   1 root  wheel       5,  44 May  6 08:48 ptyrc
    crw-rw-rw-   1 root  wheel       5,  45 May  6 08:48 ptyrd
    crw-rw-rw-   1 root  wheel       5,  46 May  6 08:48 ptyre
    crw-rw-rw-   1 root  wheel       5,  47 May  6 08:48 ptyrf
    crw-rw-rw-   1 root  wheel       5,  48 May  6 08:48 ptys0
    crw-rw-rw-   1 root  wheel       5,  49 May  6 08:48 ptys1
    crw-rw-rw-   1 root  wheel       5,  50 May  6 08:48 ptys2
    crw-rw-rw-   1 root  wheel       5,  51 May  6 08:48 ptys3
    crw-rw-rw-   1 root  wheel       5,  52 May  6 08:48 ptys4
    crw-rw-rw-   1 root  wheel       5,  53 May  6 08:48 ptys5
    crw-rw-rw-   1 root  wheel       5,  54 May  6 08:48 ptys6
    crw-rw-rw-   1 root  wheel       5,  55 May  6 08:48 ptys7
    crw-rw-rw-   1 root  wheel       5,  56 May  6 08:48 ptys8
    crw-rw-rw-   1 root  wheel       5,  57 May  6 08:48 ptys9
    crw-rw-rw-   1 root  wheel       5,  58 May  6 08:48 ptysa
    crw-rw-rw-   1 root  wheel       5,  59 May  6 08:48 ptysb
    crw-rw-rw-   1 root  wheel       5,  60 May  6 08:48 ptysc
    crw-rw-rw-   1 root  wheel       5,  61 May  6 08:48 ptysd
    crw-rw-rw-   1 root  wheel       5,  62 May  6 08:48 ptyse
    crw-rw-rw-   1 root  wheel       5,  63 May  6 08:48 ptysf
    crw-rw-rw-   1 root  wheel       5,  64 May  6 08:48 ptyt0
    crw-rw-rw-   1 root  wheel       5,  65 May  6 08:48 ptyt1
    crw-rw-rw-   1 root  wheel       5,  66 May  6 08:48 ptyt2
    crw-rw-rw-   1 root  wheel       5,  67 May  6 08:48 ptyt3
    crw-rw-rw-   1 root  wheel       5,  68 May  6 08:48 ptyt4
    crw-rw-rw-   1 root  wheel       5,  69 May  6 08:48 ptyt5
    crw-rw-rw-   1 root  wheel       5,  70 May  6 08:48 ptyt6
    crw-rw-rw-   1 root  wheel       5,  71 May  6 08:48 ptyt7
    crw-rw-rw-   1 root  wheel       5,  72 May  6 08:48 ptyt8
    crw-rw-rw-   1 root  wheel       5,  73 May  6 08:48 ptyt9
    crw-rw-rw-   1 root  wheel       5,  74 May  6 08:48 ptyta
    crw-rw-rw-   1 root  wheel       5,  75 May  6 08:48 ptytb
    crw-rw-rw-   1 root  wheel       5,  76 May  6 08:48 ptytc
    crw-rw-rw-   1 root  wheel       5,  77 May  6 08:48 ptytd
    crw-rw-rw-   1 root  wheel       5,  78 May  6 08:48 ptyte
    crw-rw-rw-   1 root  wheel       5,  79 May  6 08:48 ptytf
    crw-rw-rw-   1 root  wheel       5,  80 May  6 08:48 ptyu0
    crw-rw-rw-   1 root  wheel       5,  81 May  6 08:48 ptyu1
    crw-rw-rw-   1 root  wheel       5,  82 May  6 08:48 ptyu2
    crw-rw-rw-   1 root  wheel       5,  83 May  6 08:48 ptyu3
    crw-rw-rw-   1 root  wheel       5,  84 May  6 08:48 ptyu4
    crw-rw-rw-   1 root  wheel       5,  85 May  6 08:48 ptyu5
    crw-rw-rw-   1 root  wheel       5,  86 May  6 08:48 ptyu6
    crw-rw-rw-   1 root  wheel       5,  87 May  6 08:48 ptyu7
    crw-rw-rw-   1 root  wheel       5,  88 May  6 08:48 ptyu8
    crw-rw-rw-   1 root  wheel       5,  89 May  6 08:48 ptyu9
    crw-rw-rw-   1 root  wheel       5,  90 May  6 08:48 ptyua
    crw-rw-rw-   1 root  wheel       5,  91 May  6 08:48 ptyub
    crw-rw-rw-   1 root  wheel       5,  92 May  6 08:48 ptyuc
    crw-rw-rw-   1 root  wheel       5,  93 May  6 08:48 ptyud
    crw-rw-rw-   1 root  wheel       5,  94 May  6 08:48 ptyue
    crw-rw-rw-   1 root  wheel       5,  95 May  6 08:48 ptyuf
    crw-rw-rw-   1 root  wheel       5,  96 May  6 08:48 ptyv0
    crw-rw-rw-   1 root  wheel       5,  97 May  6 08:48 ptyv1
    crw-rw-rw-   1 root  wheel       5,  98 May  6 08:48 ptyv2
    crw-rw-rw-   1 root  wheel       5,  99 May  6 08:48 ptyv3
    crw-rw-rw-   1 root  wheel       5, 100 May  6 08:48 ptyv4
    crw-rw-rw-   1 root  wheel       5, 101 May  6 08:48 ptyv5
    crw-rw-rw-   1 root  wheel       5, 102 May  6 08:48 ptyv6
    crw-rw-rw-   1 root  wheel       5, 103 May  6 08:48 ptyv7
    crw-rw-rw-   1 root  wheel       5, 104 May  6 08:48 ptyv8
    crw-rw-rw-   1 root  wheel       5, 105 May  6 08:48 ptyv9
    crw-rw-rw-   1 root  wheel       5, 106 May  6 08:48 ptyva
    crw-rw-rw-   1 root  wheel       5, 107 May  6 08:48 ptyvb
    crw-rw-rw-   1 root  wheel       5, 108 May  6 08:48 ptyvc
    crw-rw-rw-   1 root  wheel       5, 109 May  6 08:48 ptyvd
    crw-rw-rw-   1 root  wheel       5, 110 May  6 08:48 ptyve
    crw-rw-rw-   1 root  wheel       5, 111 May  6 08:48 ptyvf
    crw-rw-rw-   1 root  wheel       5, 112 May  6 08:48 ptyw0
    crw-rw-rw-   1 root  wheel       5, 113 May  6 08:48 ptyw1
    crw-rw-rw-   1 root  wheel       5, 114 May  6 08:48 ptyw2
    crw-rw-rw-   1 root  wheel       5, 115 May  6 08:48 ptyw3
    crw-rw-rw-   1 root  wheel       5, 116 May  6 08:48 ptyw4
    crw-rw-rw-   1 root  wheel       5, 117 May  6 08:48 ptyw5
    crw-rw-rw-   1 root  wheel       5, 118 May  6 08:48 ptyw6
    crw-rw-rw-   1 root  wheel       5, 119 May  6 08:48 ptyw7
    crw-rw-rw-   1 root  wheel       5, 120 May  6 08:48 ptyw8
    crw-rw-rw-   1 root  wheel       5, 121 May  6 08:48 ptyw9
    crw-rw-rw-   1 root  wheel       5, 122 May  6 08:48 ptywa
    crw-rw-rw-   1 root  wheel       5, 123 May  6 08:48 ptywb
    crw-rw-rw-   1 root  wheel       5, 124 May  6 08:48 ptywc
    crw-rw-rw-   1 root  wheel       5, 125 May  6 08:48 ptywd
    crw-rw-rw-   1 root  wheel       5, 126 May  6 08:48 ptywe
    crw-rw-rw-   1 root  wheel       5, 127 May  6 08:48 ptywf
    crw-rw-rw-   1 root  wheel      13,   0 May  7 13:26 random
    crw-r-----   1 root  operator    1,   0 May  6 08:48 rdisk0
    crw-r-----   1 root  operator    1,   2 May  6 08:48 rdisk0s1
    crw-r-----   1 root  operator    1,   1 May  6 08:48 rdisk0s2
    crw-r-----   1 root  operator    1,   3 May  6 08:48 rdisk0s3
    crw-rw-rw-   1 root  wheel       0,   0 May  6 08:48 sdt
    lr-xr-xr-x   1 root  wheel            0 May  6 08:48 stderr -> fd/2
    lr-xr-xr-x   1 root  wheel            0 May  6 08:48 stdin -> fd/0
    lr-xr-xr-x   1 root  wheel            0 May  6 08:48 stdout -> fd/1
    crw-rw-rw-   1 root  wheel       0,   0 May  6 08:48 systrace
    crw-rw----   1 root  wheel      34,   0 May  7 06:18 tap0
    crw-rw----   1 root  wheel      34,   1 May  7 06:18 tap1
    crw-rw----   1 root  wheel      34,  10 May  7 06:18 tap10
    crw-rw----   1 root  wheel      34,  11 May  7 06:18 tap11
    crw-rw----   1 root  wheel      34,  12 May  7 06:18 tap12
    crw-rw----   1 root  wheel      34,  13 May  7 06:18 tap13
    crw-rw----   1 root  wheel      34,  14 May  7 06:18 tap14
    crw-rw----   1 root  wheel      34,  15 May  7 06:18 tap15
    crw-rw----   1 root  wheel      34,   2 May  7 06:18 tap2
    crw-rw----   1 root  wheel      34,   3 May  7 06:18 tap3
    crw-rw----   1 root  wheel      34,   4 May  7 06:18 tap4
    crw-rw----   1 root  wheel      34,   5 May  7 06:18 tap5
    crw-rw----   1 root  wheel      34,   6 May  7 06:18 tap6
    crw-rw----   1 root  wheel      34,   7 May  7 06:18 tap7
    crw-rw----   1 root  wheel      34,   8 May  7 06:18 tap8
    crw-rw----   1 root  wheel      34,   9 May  7 06:18 tap9
    crw-rw-rw-   1 root  wheel       2,   0 May  6 08:48 tty
    crw-rw-rw-   1 root  wheel      33,   0 May  6 08:49 tty.Bluetooth-Modem
    crw-rw-rw-   1 root  wheel      33,   2 May  6 08:49 tty.SerialPort
    crw-rw-rw-   1 root  wheel       4,   0 May  6 08:48 ttyp0
    crw-rw-rw-   1 root  wheel       4,   1 May  6 08:48 ttyp1
    crw-rw-rw-   1 root  wheel       4,   2 May  6 08:48 ttyp2
    crw-rw-rw-   1 root  wheel       4,   3 May  6 08:48 ttyp3
    crw-rw-rw-   1 root  wheel       4,   4 May  6 08:48 ttyp4
    crw-rw-rw-   1 root  wheel       4,   5 May  6 08:48 ttyp5
    crw-rw-rw-   1 root  wheel       4,   6 May  6 08:48 ttyp6
    crw-rw-rw-   1 root  wheel       4,   7 May  6 08:48 ttyp7
    crw-rw-rw-   1 root  wheel       4,   8 May  6 08:48 ttyp8
    crw-rw-rw-   1 root  wheel       4,   9 May  6 08:48 ttyp9
    crw-rw-rw-   1 root  wheel       4,  10 May  6 08:48 ttypa
    crw-rw-rw-   1 root  wheel       4,  11 May  6 08:48 ttypb
    crw-rw-rw-   1 root  wheel       4,  12 May  6 08:48 ttypc
    crw-rw-rw-   1 root  wheel       4,  13 May  6 08:48 ttypd
    crw-rw-rw-   1 root  wheel       4,  14 May  6 08:48 ttype
    crw-rw-rw-   1 root  wheel       4,  15 May  6 08:48 ttypf
    crw-rw-rw-   1 root  wheel       4,  16 May  6 08:48 ttyq0
    crw-rw-rw-   1 root  wheel       4,  17 May  6 08:48 ttyq1
    crw-rw-rw-   1 root  wheel       4,  18 May  6 08:48 ttyq2
    crw-rw-rw-   1 root  wheel       4,  19 May  6 08:48 ttyq3
    crw-rw-rw-   1 root  wheel       4,  20 May  6 08:48 ttyq4
    crw-rw-rw-   1 root  wheel       4,  21 May  6 08:48 ttyq5
    crw-rw-rw-   1 root  wheel       4,  22 May  6 08:48 ttyq6
    crw-rw-rw-   1 root  wheel       4,  23 May  6 08:48 ttyq7
    crw-rw-rw-   1 root  wheel       4,  24 May  6 08:48 ttyq8
    crw-rw-rw-   1 root  wheel       4,  25 May  6 08:48 ttyq9
    crw-rw-rw-   1 root  wheel       4,  26 May  6 08:48 ttyqa
    crw-rw-rw-   1 root  wheel       4,  27 May  6 08:48 ttyqb
    crw-rw-rw-   1 root  wheel       4,  28 May  6 08:48 ttyqc
    crw-rw-rw-   1 root  wheel       4,  29 May  6 08:48 ttyqd
    crw-rw-rw-   1 root  wheel       4,  30 May  6 08:48 ttyqe
    crw-rw-rw-   1 root  wheel       4,  31 May  6 08:48 ttyqf
    crw-rw-rw-   1 root  wheel       4,  32 May  6 08:48 ttyr0
    crw-rw-rw-   1 root  wheel       4,  33 May  6 08:48 ttyr1
    crw-rw-rw-   1 root  wheel       4,  34 May  6 08:48 ttyr2
    crw-rw-rw-   1 root  wheel       4,  35 May  6 08:48 ttyr3
    crw-rw-rw-   1 root  wheel       4,  36 May  6 08:48 ttyr4
    crw-rw-rw-   1 root  wheel       4,  37 May  6 08:48 ttyr5
    crw-rw-rw-   1 root  wheel       4,  38 May  6 08:48 ttyr6
    crw-rw-rw-   1 root  wheel       4,  39 May  6 08:48 ttyr7
    crw-rw-rw-   1 root  wheel       4,  40 May  6 08:48 ttyr8
    crw-rw-rw-   1 root  wheel       4,  41 May  6 08:48 ttyr9
    crw-rw-rw-   1 root  wheel       4,  42 May  6 08:48 ttyra
    crw-rw-rw-   1 root  wheel       4,  43 May  6 08:48 ttyrb
    crw-rw-rw-   1 root  wheel       4,  44 May  6 08:48 ttyrc
    crw-rw-rw-   1 root  wheel       4,  45 May  6 08:48 ttyrd
    crw-rw-rw-   1 root  wheel       4,  46 May  6 08:48 ttyre
    crw-rw-rw-   1 root  wheel       4,  47 May  6 08:48 ttyrf
    crw-rw-rw-   1 root  wheel       4,  48 May  6 08:48 ttys0
    crw--w----   1 MP    tty        16,   0 May  7 13:34 ttys000
    crw--w----   1 MP    tty        16,   1 May  7 13:34 ttys001
    crw--w----   1 MP    tty        16,   2 May  7 13:35 ttys002
    crw-rw-rw-   1 root  wheel       4,  49 May  6 08:48 ttys1
    crw-rw-rw-   1 root  wheel       4,  50 May  6 08:48 ttys2
    crw-rw-rw-   1 root  wheel       4,  51 May  6 08:48 ttys3
    crw-rw-rw-   1 root  wheel       4,  52 May  6 08:48 ttys4
    crw-rw-rw-   1 root  wheel       4,  53 May  6 08:48 ttys5
    crw-rw-rw-   1 root  wheel       4,  54 May  6 08:48 ttys6
    crw-rw-rw-   1 root  wheel       4,  55 May  6 08:48 ttys7
    crw-rw-rw-   1 root  wheel       4,  56 May  6 08:48 ttys8
    crw-rw-rw-   1 root  wheel       4,  57 May  6 08:48 ttys9
    crw-rw-rw-   1 root  wheel       4,  58 May  6 08:48 ttysa
    crw-rw-rw-   1 root  wheel       4,  59 May  6 08:48 ttysb
    crw-rw-rw-   1 root  wheel       4,  60 May  6 08:48 ttysc
    crw-rw-rw-   1 root  wheel       4,  61 May  6 08:48 ttysd
    crw-rw-rw-   1 root  wheel       4,  62 May  6 08:48 ttyse
    crw-rw-rw-   1 root  wheel       4,  63 May  6 08:48 ttysf
    crw-rw-rw-   1 root  wheel       4,  64 May  6 08:48 ttyt0
    crw-rw-rw-   1 root  wheel       4,  65 May  6 08:48 ttyt1
    crw-rw-rw-   1 root  wheel       4,  66 May  6 08:48 ttyt2
    crw-rw-rw-   1 root  wheel       4,  67 May  6 08:48 ttyt3
    crw-rw-rw-   1 root  wheel       4,  68 May  6 08:48 ttyt4
    crw-rw-rw-   1 root  wheel       4,  69 May  6 08:48 ttyt5
    crw-rw-rw-   1 root  wheel       4,  70 May  6 08:48 ttyt6
    crw-rw-rw-   1 root  wheel       4,  71 May  6 08:48 ttyt7
    crw-rw-rw-   1 root  wheel       4,  72 May  6 08:48 ttyt8
    crw-rw-rw-   1 root  wheel       4,  73 May  6 08:48 ttyt9
    crw-rw-rw-   1 root  wheel       4,  74 May  6 08:48 ttyta
    crw-rw-rw-   1 root  wheel       4,  75 May  6 08:48 ttytb
    crw-rw-rw-   1 root  wheel       4,  76 May  6 08:48 ttytc
    crw-rw-rw-   1 root  wheel       4,  77 May  6 08:48 ttytd
    crw-rw-rw-   1 root  wheel       4,  78 May  6 08:48 ttyte
    crw-rw-rw-   1 root  wheel       4,  79 May  6 08:48 ttytf
    crw-rw-rw-   1 root  wheel       4,  80 May  6 08:48 ttyu0
    crw-rw-rw-   1 root  wheel       4,  81 May  6 08:48 ttyu1
    crw-rw-rw-   1 root  wheel       4,  82 May  6 08:48 ttyu2
    crw-rw-rw-   1 root  wheel       4,  83 May  6 08:48 ttyu3
    crw-rw-rw-   1 root  wheel       4,  84 May  6 08:48 ttyu4
    crw-rw-rw-   1 root  wheel       4,  85 May  6 08:48 ttyu5
    crw-rw-rw-   1 root  wheel       4,  86 May  6 08:48 ttyu6
    crw-rw-rw-   1 root  wheel       4,  87 May  6 08:48 ttyu7
    crw-rw-rw-   1 root  wheel       4,  88 May  6 08:48 ttyu8
    crw-rw-rw-   1 root  wheel       4,  89 May  6 08:48 ttyu9
    crw-rw-rw-   1 root  wheel       4,  90 May  6 08:48 ttyua
    crw-rw-rw-   1 root  wheel       4,  91 May  6 08:48 ttyub
    crw-rw-rw-   1 root  wheel       4,  92 May  6 08:48 ttyuc
    crw-rw-rw-   1 root  wheel       4,  93 May  6 08:48 ttyud
    crw-rw-rw-   1 root  wheel       4,  94 May  6 08:48 ttyue
    crw-rw-rw-   1 root  wheel       4,  95 May  6 08:48 ttyuf
    crw-rw-rw-   1 root  wheel       4,  96 May  6 08:48 ttyv0
    crw-rw-rw-   1 root  wheel       4,  97 May  6 08:48 ttyv1
    crw-rw-rw-   1 root  wheel       4,  98 May  6 08:48 ttyv2
    crw-rw-rw-   1 root  wheel       4,  99 May  6 08:48 ttyv3
    crw-rw-rw-   1 root  wheel       4, 100 May  6 08:48 ttyv4
    crw-rw-rw-   1 root  wheel       4, 101 May  6 08:48 ttyv5
    crw-rw-rw-   1 root  wheel       4, 102 May  6 08:48 ttyv6
    crw-rw-rw-   1 root  wheel       4, 103 May  6 08:48 ttyv7
    crw-rw-rw-   1 root  wheel       4, 104 May  6 08:48 ttyv8
    crw-rw-rw-   1 root  wheel       4, 105 May  6 08:48 ttyv9
    crw-rw-rw-   1 root  wheel       4, 106 May  6 08:48 ttyva
    crw-rw-rw-   1 root  wheel       4, 107 May  6 08:48 ttyvb
    crw-rw-rw-   1 root  wheel       4, 108 May  6 08:48 ttyvc
    crw-rw-rw-   1 root  wheel       4, 109 May  6 08:48 ttyvd
    crw-rw-rw-   1 root  wheel       4, 110 May  6 08:48 ttyve
    crw-rw-rw-   1 root  wheel       4, 111 May  6 08:48 ttyvf
    crw-rw-rw-   1 root  wheel       4, 112 May  6 08:48 ttyw0
    crw-rw-rw-   1 root  wheel       4, 113 May  6 08:48 ttyw1
    crw-rw-rw-   1 root  wheel       4, 114 May  6 08:48 ttyw2
    crw-rw-rw-   1 root  wheel       4, 115 May  6 08:48 ttyw3
    crw-rw-rw-   1 root  wheel       4, 116 May  6 08:48 ttyw4
    crw-rw-rw-   1 root  wheel       4, 117 May  6 08:48 ttyw5
    crw-rw-rw-   1 root  wheel       4, 118 May  6 08:48 ttyw6
    crw-rw-rw-   1 root  wheel       4, 119 May  6 08:48 ttyw7
    crw-rw-rw-   1 root  wheel       4, 120 May  6 08:48 ttyw8
    crw-rw-rw-   1 root  wheel       4, 121 May  6 08:48 ttyw9
    crw-rw-rw-   1 root  wheel       4, 122 May  6 08:48 ttywa
    crw-rw-rw-   1 root  wheel       4, 123 May  6 08:48 ttywb
    crw-rw-rw-   1 root  wheel       4, 124 May  6 08:48 ttywc
    crw-rw-rw-   1 root  wheel       4, 125 May  6 08:48 ttywd
    crw-rw-rw-   1 root  wheel       4, 126 May  6 08:48 ttywe
    crw-rw-rw-   1 root  wheel       4, 127 May  6 08:48 ttywf
    crw-rw----   1 root  wheel      35,   0 May  7 13:35 tun0
    crw-rw----   1 root  wheel      35,   1 May  7 06:18 tun1
    crw-rw----   1 root  wheel      35,  10 May  7 06:18 tun10
    crw-rw----   1 root  wheel      35,  11 May  7 06:18 tun11
    crw-rw----   1 root  wheel      35,  12 May  7 06:18 tun12
    crw-rw----   1 root  wheel      35,  13 May  7 06:18 tun13
    crw-rw----   1 root  wheel      35,  14 May  7 06:18 tun14
    crw-rw----   1 root  wheel      35,  15 May  7 06:18 tun15
    crw-rw----   1 root  wheel      35,   2 May  7 06:18 tun2
    crw-rw----   1 root  wheel      35,   3 May  7 06:18 tun3
    crw-rw----   1 root  wheel      35,   4 May  7 06:18 tun4
    crw-rw----   1 root  wheel      35,   5 May  7 06:18 tun5
    crw-rw----   1 root  wheel      35,   6 May  7 06:18 tun6
    crw-rw----   1 root  wheel      35,   7 May  7 06:18 tun7
    crw-rw----   1 root  wheel      35,   8 May  7 06:18 tun8
    crw-rw----   1 root  wheel      35,   9 May  7 06:18 tun9
    crw-rw-rw-   1 root  wheel      13,   1 May  6 08:48 urandom
    brw-------   1 root  operator    2,   0 May  6 08:48 vn0
    brw-------   1 root  operator    2,   1 May  6 08:48 vn1
    brw-------   1 root  operator    2,   2 May  6 08:48 vn2
    brw-------   1 root  operator    2,   3 May  6 08:48 vn3
    crw-rw-rw-   1 root  wheel       3,   3 May  6 08:48 zero
    4) ioreg -w 120
    Please take note of everything that is unregistered (!registered)
    +-o Root  <class IORegistryEntry, id 0x100000100, retain 12>
      +-o MacBookPro9,1  <class IOPlatformExpertDevice, id 0x100000110, registered, matched, active, busy 0 (16654 ms), ret$
        +-o AppleACPIPlatformExpert  <class AppleACPIPlatformExpert, id 0x100000111, registered, matched, active, busy 0 (5$
        | +-o IOPMrootDomain  <class IOPMrootDomain, id 0x100000114, registered, matched, active, busy 0 (14 ms), retain 47$
        | | +-o IORootParent  <class IORootParent, id 0x100000115, !registered, !matched, active, busy 0, retain 7>
        | | +-o RootDomainUserClient  <class RootDomainUserClient, id 0x1000002e3, !registered, !matched, active, busy 0, r$
        | | +-o RootDomainUserClient  <class RootDomainUserClient, id 0x1000002e4, !registered, !matched, active, busy 0, r$
        | | +-o RootDomainUserClient  <class RootDomainUserClient, id 0x1000002e5, !registered, !matched, active, busy 0, r$
        | | +-o RootDomainUserClient  <class RootDomainUserClient, id 0x1000002e6, !registered, !matched, active, busy 0, r$
        | | +-o RootDomainUserClient  <class RootDomainUserClient, id 0x1000002e8, !registered, !matched, active, busy 0, r$
        | | +-o RootDomainUserClient  <class RootDomainUserClient, id 0x1000002eb, !registered, !matched, active, busy 0, r$
        | | +-o RootDomainUserClient  <class RootDomainUserClient, id 0x1000002ee, !registered, !matched, active, busy 0, r$
        | | +-o RootDomainUserClient  <class RootDomainUserClient, id 0x1000002f2, !registered, !matched, active, busy 0, r$
        | | +-o RootDomainUserClient  <class RootDomainUserClient, id 0x1000003df, !registered, !matched, active, busy 0, r$
        | | +-o RootDomainUserClient  <class RootDomainUserClient, id 0x100000428, !registered, !matched, active, busy 0, r$
        | | +-o RootDomainUserClient  <class RootDomainUserClient, id 0x100000448, !registered, !matched, active, busy 0, r$
        | | +-o RootDomainUserClient  <class RootDomainUserClient, id 0x10000058f, !registered, !matched, active, busy 0, r$
        | | +-o RootDomainUserClient  <class RootDomainUserClient, id 0x100002cef, !registered, !matched, active, busy 0, r$
        | | +-o RootDomainUserClient  <class RootDomainUserClient, id 0x100002cf7, !registered, !matched, active, busy 0, r$
        | | +-o RootDomainUserClient  <class RootDomainUserClient, id 0x100002d1d, !registered, !matched, active, busy 0, r$
        | | +-o RootDomainUserClient  <class RootDomainUserClient, id 0x100002d1e, !registered, !matched, active, busy 0, r$
        | | +-o RootDomainUserClient  <class RootDomainUserClient, id 0x100002d24, !registered, !matched, active, busy 0, r$
        | | +-o RootDomainUserClient  <class RootDomainUserClient, id 0x100002d25, !registered, !matched, active, busy 0, r$
        | | +-o RootDomainUserClient  <class RootDomainUserClient, id 0x100002d26, !registered, !matched, active, busy 0, r$
        | | +-o RootDomainUserClient  <class RootDomainUserClient, id 0x100002d29, !registered, !matched, active, busy 0, r$
        | | +-o RootDomainUserClient  <class RootDomainUserClient, id 0x100002d2a, !registered, !matched, active, busy 0, r$
        | | +-o RootDomainUserClient  <class RootDomainUserClient, id 0x100002d2b, !registered, !matched, active, busy 0, r$
        | | +-o RootDomainUserClient  <class RootDomainUserClient, id 0x100002d2d, !registered, !matched, active, busy 0, r$
        | | +-o RootDomainUserClient  <class RootDomainUserClient, id 0x100002d2f, !registered, !matched, active, busy 0, r$
        | | +-o RootDomainUserClient  <class RootDomainUserClient, id 0x100002d39, !registered, !matched, active, busy 0, r$
        | | +-o RootDomainUserClient  <class RootDomainUserClient, id 0x100002d3a, !registered, !matched, active, busy 0, r$
        | | +-o RootDomainUserClient  <class RootDomainUserClient, id 0x100002d42, !registered, !matched, active, busy 0, r$
        | | +-o RootDomainUserClient  <class RootDomainUserClient, id 0x100002d59, !registered, !matched, active, busy 0, r$
        | | +-o RootDomainUserClient  <class RootDomainUserClient, id 0x100002d5b, !registered, !matched, active, busy 0, r$
        | +-o cpus  <class IOPlatformDevice, id 0x100000117, registered, matched, active, busy 0 (0 ms), retain 14>
        | +-o CPU0@0  <class IOACPIPlatformDevice, id 0x100000118, registered, matched, active, busy 0 (412 ms), retain 8>
        | | +-o AppleACPICPU  <class AppleACPICPU, id 0x100000125, registered, matched, active, busy 0 (406 ms), retain 8>
        | |   +-o AppleACPICPUInterruptController  <class AppleACPICPUInterruptController, id 0x10000012d, registered, matc$
        | |   +-o X86PlatformPlugin  <class X86PlatformPlugin, id 0x100000301, registered, matched, active, busy 0 (309 ms)$
        | |     +-o IOPlatformEnabler  <class IOPlatformPluginDevice, id 0x10000036f, registered, matched, active, busy 0 ($
        | |     +-o AGPMEnabler  <class IOPlatformPluginDevice, id 0x100000370, registered, matched, active, busy 0 (8 ms),$
        | |     | +-o AGPMController  <class AGPMController, id 0x100000373, !registered, !matched, active, busy 0, retain $
        | |     +-o X86PlatformShim  <class X86PlatformShim, id 0x100000371, !registered, !matched, active, busy 0, retain $
        | +-o CPU1@2  <class IOACPIPlatformDevice, id 0x100000119, registered, matched, active, busy 0 (6 ms), retain 8>
        | | +-o AppleACPICPU  <class AppleACPICPU, id 0x100000126, registered, matched, active, busy 0 (0 ms), retain 6>
        | +-o CPU2@4  <class IOACPIPlatformDevice, id 0x10000011a, registered, matched, active, busy 0 (7 ms), retain 8>
        | | +-o AppleACPICPU  <class AppleACPICPU, id 0x100000127, registered, matched, active, busy 0 (0 ms), retain 6>
        | +-o CPU3@6  <class IOACPIPlatformDevice, id 0x10000011b, registered, matched, active, busy 0 (8 ms), retain 8>
        | | +-o AppleACPICPU  <class AppleACPICPU, id 0x100000128, registered, matched, active, busy 0 (0 ms), retain 6>
        | +-o CPU4@1  <class IOACPIPlatformDevice, id 0x10000011c, registered, matched, active, busy 0 (9 ms), retain 8>
        | | +-o AppleACPICPU  <class AppleACPICPU, id 0x100000129, registered, matched, active, busy 0 (0 ms), retain 6>
        | +-o CPU5@3  <class IOACPIPlatformDevice, id 0x10000011d, registered, matched, active, busy 0 (10 ms), retain 8>
        | | +-o AppleACPICPU  <class AppleACPICPU, id 0x10000012a, registered, matched, active, busy 0 (0 ms), retain 6>
        | +-o CPU6@5  <class IOACPIPlatformDevice, id 0x10000011e, registered, matched, active, busy 0 (11 ms), retain 8>
        | | +-o AppleACPICPU  <class AppleACPICPU, id 0x10000012b, registered, matched, active, busy 0 (0 ms), retain 6>
        | +-o CPU7@7  <class IOACPIPlatformDevice, id 0x10000011f, registered, matched, active, busy 0 (12 ms), retain 8>
        | | +-o AppleACPICPU  <class AppleACPICPU, id 0x10000012c, registered, matched, active, busy 0 (0 ms), retain 6>
        | +-o io-apic@fec00000  <class IOACPIPlatformDevice, id 0x100000120, registered, matched, active, busy 0 (0 ms), re$
        | | +-o AppleAPICInterruptController  <class AppleAPICInterruptController, id 0x10000012f, registered, matched, act$
        | +-o AppleACPIEventController  <class AppleACPIEventController, id 0x100000130, !registered, !matched, active, bus$
        | +-o boot-ec  <class IOACPIPlatformDevice, id 0x100000131, registered, matched, active, busy 0 (1 ms), retain 7>
        | | +-o AppleACPIEC  <class AppleACPIEC, id 0x100000132, !registered, !matched, active, busy 0, retain 5>
        | +-o bios  <class IOPlatformDevice, id 0x100000133, registered, matched, active, busy 0 (0 ms), retain 6>
        | | +-o AppleSMBIOS  <class AppleSMBIOS, id 0x100000134, registered, matched, active, busy 0 (0 ms), retain 5>
        | +-o PCI0@0  <class IOACPIPlatformDevice, id 0x100000138, registered, matched, active, busy 0 (5300 ms), retain 43$
        | | +-o AppleACPIPCI  <class AppleACPIPCI, id 0x1000001d5, registered, matched, active, busy 0 (5288 ms), retain 37$
        | | | +-o MCHC@0  <class IOPCIDevice, id 0x100000196, registered, matched, active, busy 0 (215 ms), retain 10>
        | | | | +-o AppleSMCPDRC  <class AppleSMCPDRC, id 0x100000306, registered, matched, active, busy 0 (0 ms), retain 5$
        | | | +-o P0P2@1  <class IOPCIDevice, id 0x100000197, registered, matched, active, busy 0 (203 ms), retain 13>
        | | | | +-o IOPCI2PCIBridge  <class IOPCI2PCIBridge, id 0x1000001f5, registered, matched, active, busy 0 (198 ms), $
        | | | |   +-o GFX0@0  <class IOPCIDevice, id 0x100000198, registered, matched, active, busy 0 (109 ms), retain 27>
        | | | |   | +-o NVDAHal  <class IOService, id 0x10000032b, registered, matched, active, busy 0 (4 ms), retain 6>
        | | | |   | +-o NVDAgl  <class IOService, id 0x10000032c, registered, matched, active, busy 0 (4 ms), retain 6>
        | | | |   | +-o NVDA,Display-A@0  <class IONDRVDevice, id 0x10000032f, registered, matched, active, busy 0 (47 ms),$
        | | | |   | | +-o NVDA  <class NVDA, id 0x10000033d, registered, matched, active, busy 0 (40 ms), retain 16>
        | | | |   | |   +-o AppleMCCSControlModule  <class AppleMCCSControlModule, id 0x100000341, registered, matched, act$
        | | | |   | |   | +-o AppleMCCSParameterHandler  <class AppleMCCSParameterHandler, id 0x100000343, registered, matc$
        | | | |   | |   +-o AppleUpstreamUserClientDriver  <class AppleUpstreamUserClientDriver, id 0x100000342, registered$
        | | | |   | |   +-o AGPM  <class AGPM, id 0x100000375, registered, matched, active, busy 0 (2 ms), retain 8>
        | | | |   | |   +-o AppleGraphicsControlBacklightNub  <class AppleGraphicsControlBacklightNub, id 0x10000038b, !reg$
        | | | |   | |   +-o gpu-sensor  <class IOService, id 0x1000003b3, registered, matched, active, busy 0 (23 ms), reta$
        | | | |   | |   +-o IOFramebufferI2CInterface  <class IOFramebufferI2CInterface, id 0x1000003b6, registered, matche$
        | | | |   | |   +-o IOFramebufferSharedUserClient  <class IOFramebufferSharedUserClient, id 0x1000003eb, !registere$
        | | | |   | |   +-o IOFramebufferUserClient  <class IOFramebufferUserClient, id 0x100002ce4, !registered, !matched,$
        | | | |   | +-o NVKernel  <class NVKernel, id 0x100000336, registered, matched, active, busy 0 (0 ms), retain 19>
        | | | |   | | +-o NV2DContextTesla  <class NV2DContextTesla, id 0x100002ce9, !registered, !matched, active, busy 0,$
        | | | |   | | +-o NV2DContextTesla  <class NV2DContextTesla, id 0x100002cea, !registered, !matched, active, busy 0,$
        | | | |   | | +-o NV2DContextTesla  <class NV2DContextTesla, id 0x100002ceb, !registered, !matched, active, busy 0,$
        | | | |   | | +-o NV2DContextTesla  <class NV2DContextTesla, id 0x100002cec, !registered, !matched, active, busy 0,$
        | | | |   | | +-o nvDeviceTesla  <class nvDeviceTesla, id 0x100002cf2, !registered, !matched, active, busy 0, retai$
        | | | |   | | +-o nvFermiGLContextTesla  <class nvFermiGLContextTesla, id 0x100002cf4, !registered, !matched, activ$
        | | | |   | | +-o nvDeviceTesla  <class nvDeviceTesla, id 0x100002d47, !registered, !matched, active, busy 0, retai$
        | | | |   | | +-o nvFermiGLContextTesla  <class nvFermiGLContextTesla, id 0x100002d49, !registered, !matched, activ$
        | | | |   | | +-o nvFermiGLContextTesla  <class nvFermiGLContextTesla, id 0x100002d4b, !registered, !matched, activ$
        | | | |   | | +-o nvDeviceTesla  <class nvDeviceTesla, id 0x100002d60, !registered, !matched, active, busy 0, retai$
        | | | |   | | +-o nvFermiGLContextTesla  <class nvFermiGLContextTesla, id 0x100002d62, !registered, !matched, activ$
        | | | |   | | +-o nvFermiGLContextTesla  <class nvFermiGLContextTesla, id 0x100002d64, !registered, !matched, activ$
        | | | |   | | +-o nvFermiGLContextTesla  <class nvFermiGLContextTesla, id 0x100002d6c, !registered, !matched, activ$
        | | | |   | | +-o nvFermiGLContextTesla  <class nvFermiGLContextTesla, id 0x100002d6f, !registered, !matched, activ$
        | | | |   | +-o NVDA,Display-B@1  <class IONDRVDevice, id 0x100000330, registered, matched, active, busy 0 (1 ms), $
        | | | |   | | +-o NVDA  <class NVDA, id 0x100000345, registered, matched, active, busy 0 (1 ms), retain 12>
        | | | |   | |   +-o AppleMCCSControlModule  <class AppleMCCSControlModule, id 0x100000349, registered, matched, act$
        | | | |   | |   | +-o AppleMCCSParameterHandler  <class AppleMCCSParameterHandler, id 0x10000034c, registered, matc$
        | | | |   | |   +-o AppleUpstreamUserClientDriver  <class AppleUpstreamUserClientDriver, id 0x10000034a, registered$
        | | | |   | |   +-o IOFramebufferI2CInterface  <class IOFramebufferI2CInterface, id 0x1000003bb, registered, matche$
        | | | |   | |   +-o IOFramebufferUserClient  <class IOFramebufferUserClient, id 0x100002ce5, !registered, !matched,$
        | | | |   | +-o NVDA,Display-C@2  <class IONDRVDevice, id 0x100000331, registered, matched, active, busy 0 (6 ms), $
        | | | |   | | +-o NVDA  <class NVDA, id 0x10000034e, registered, matched, active, busy 0 (1 ms), retain 12>
        | | | |   | |   +-o AppleMCCSControlModule  <class AppleMCCSControlModule, id 0x100000351, registered, matched, act$
        | | | |   | |   | +-o AppleMCCSParameterHandler  <class AppleMCCSParameterHandler, id 0x100000354, registered, matc$
        | | | |   | |   +-o AppleUpstreamUserClientDriver  <class AppleUpstreamUserClientDriver, id 0x100000352, registered$
        | | | |   | |   +-o IOFramebufferI2CInterface  <class IOFramebufferI2CInterface, id 0x1000003bd, registered, matche$
        | | | |   | |   +-o IOFramebufferUserClient  <class IOFramebufferUserClient, id 0x100002ce6, !registered, !matched,$
        | | | |   | +-o NVDA,Display-D@3  <class IONDRVDevice, id 0x100000332, registered, matched, active, busy 0 (2 ms), $
        | | | |   | | +-o NVDA  <class NVDA, id 0x100000356, registered, matched, active, busy 0 (0 ms), retain 12>
        | | | |   | |   +-o AppleMCCSControlModule  <class AppleMCCSControlModule, id 0x100000359, registered, matched, act$
        | | | |   | |   | +-o AppleMCCSParameterHandler  <class AppleMCCSParameterHandler, id 0x10000035b, registered, matc$
        | | | |   | |   +-o AppleUpstreamUserClientDriver  <class AppleUpstreamUserClientDriver, id 0x10000035a, registered$
        | | | |   | |   +-o IOFramebufferI2CInterface  <class IOFramebufferI2CInterface, id 0x1000003be, registered, matche$
        | | | |   | |   +-o IOFramebufferUserClient  <class IOFramebufferUserClient, id 0x100002ce7, !registered, !matched,$
        | | | |   | +-o NVDAinitgl  <class IOService, id 0x1000003b4, registered, matched, active, busy 0 (0 ms), retain 6>
        | | | |   +-o HDAU@0,1  <class IOPCIDevice, id 0x10000019a, registered, matched, active, busy 0 (159 ms), retain 12$
        | | | |     +-o AppleHDAController@0,1  <class AppleHDAController, id 0x100000307, registered, matched, active, bus$
        | | | |       +-o IOHDACodecDevice@0,1,0  <class IOHDACodecDevice, id 0x100000366, registered, matched, active, bus$
        | | | |         +-o IOHDACodecDriver  <class IOHDACodecDriver, id 0x100000368, !registered, !matched, active, busy $
        | | | |           +-o IOHDACodecFunction@0,1,0,1  <class IOHDACodecFunction, id 0x100000369, registered, matched, a$
        | | | |             +-o AppleHDACodecGeneric  <class AppleHDACodecGeneric, id 0x10000036a, registered, matched, act$
        | | | |               +-o AppleHDADriver  <class AppleHDADriver, id 0x10000036e, registered, matched, active, busy $
        | | | +-o PEG1@1,1  <class IOPCIDevice, id 0x10000019b, registered, matched, active, busy 0 (1133 ms), retain 12>
        | | | | +-o IOPCI2PCIBridge  <class IOPCI2PCIBridge, id 0x1000001f2, registered, matched, active, busy 0 (1129 ms),$
        | | | |   +-o UPSB@0  <class IOPCIDevice, id 0x10000019c, registered, matched, active, busy 0 (1129 ms), retain 16>
        | | | |     +-o IOPCI2PCIBridge  <class IOPCI2PCIBridge, id 0x100000205, registered, matched, active, busy 0 (1122 $
        | | | |       +-o DSB0@0  <class IOPCIDevice, id 0x10000019d, registered, matched, active, busy 0 (1122 ms), retain$
        | | | |       | +-o IOPCI2PCIBridge  <class IOPCI2PCIBridge, id 0x10000022b, registered, matched, active, busy 0 (1$
        | | | |       |   +-o NHI0@0  <class IOPCIDevice, id 0x10000019e, registered, matched, active, busy 0 (1111 ms), re$
        | | | |       |     +-o AppleThunderboltHAL  <class AppleThunderboltHAL, id 0x100000241, registered, matched, activ$
        | | | |       |       +-o AppleThunderboltNHIType1  <class AppleThunderboltNHIType1, id 0x10000024e, registered, ma$
        | | | |       |         +-o IOThunderboltController  <class IOThunderboltController, id 0x10000024f, registered, ma$
        | | | |       |           +-o IOThunderboltLocalNode  <class IOThunderboltLocalNode, id 0x100000252, registered, ma$
        | | | |       |           +-o IOThunderboltPort@6  <class IOThunderboltPort, id 0x100000255, registered, matched, a$
        | | | |       |             +-o IOThunderboltSwitchType1  <class IOThunderboltSwitchType1, id 0x100000257, register$
        | | | |       |               +-o IOThunderboltPort@1  <class IOThunderboltPort, id 0x10000029a, registered, matche$
        | | | |       |               +-o IOThunderboltPort@2  <class IOThunderboltPort, id 0x10000029b, registered, matche$
        | | | |       |               +-o IOThunderboltPort@7  <class IOThunderboltPort, id 0x10000029c, registered, matche$
        | | | |       |               | +-o AppleThunderboltPCIDownAdapter  <class AppleThunderboltPCIDownAdapter, id 0x100$
        | | | |       |               +-o IOThunderboltPort@8  <class IOThunderboltPort, id 0x10000029d, registered, matche$
        | | | |       |               | +-o AppleThunderboltPCIDownAdapter  <class AppleThunderboltPCIDownAdapter, id 0x100$
        | | | |       |               +-o IOThunderboltPort@9  <class IOThunderboltPort, id 0x10000029e, registered, matche$
        | | | |       |               | +-o AppleThunderboltPCIDownAdapter  <class AppleThunderboltPCIDownAdapter, id 0x100$
        | | | |       |               +-o IOThunderboltPort@A  <class IOThunderboltPort, id 0x10000029f, registered, matche$
        | | | |       |               | +-o AppleThunderboltPCIDownAdapter  <class AppleThunderboltPCIDownAdapter, id 0x100$
        | | | |       |               +-o IOThunderboltPort@C  <class IOThunderboltPort, id 0x1000002a0, registered, matche$
        | | | |       |               | +-o AppleThunderboltDPInAdapter  <class AppleThunderboltDPInAdapter, id 0x1000002aa$
        | | | |       |               +-o IOThunderboltPort@D  <class IOThunderboltPort, id 0x1000002a1, registered, matche$
        | | | |       |                 +-o AppleThunderboltDPInAdapter  <class AppleThunderboltDPInAdapter, id 0x1000002ab$
        | | | |       +-o DSB1@3  <class IOPCIDevice, id 0x10000019f, registered, matched, active, busy 0 (10 ms), retain 1$
        | | | |       | +-o IOPCI2PCIBridge  <class IOPCI2PCIBridge, id 0x100000236, registered, matched, active, busy 0 (0$
        | | | |       +-o DSB2@4  <class IOPCIDevice, id 0x1000001a0, registered, matched, active, busy 0 (8 ms), retain 12$
        | | | |       | +-o IOPCI2PCIBridge  <class IOPCI2PCIBridge, id 0x100000228, registered, matched, active, busy 0 (0$
        | | | |       +-o DSB3@5  <class IOPCIDevice, id 0x1000001a2, registered, matched, active, busy 0 (8 ms), retain 12$
        | | | |       | +-o IOPCI2PCIBridge  <class IOPCI2PCIBridge, id 0x100000231, registered, matched, active, busy 0 (0$
        | | | |       +-o DSB4@6  <class IOPCIDevice, id 0x1000001a4, registered, matched, active, busy 0 (7 ms), retain 11$
        | | | |         +-o IOPCI2PCIBridge  <class IOPCI2PCIBridge, id 0x10000022f, registered, matched, active, busy 0 (0$
        | | | +-o IGPU@2  <class IOPCIDevice, id 0x1000001a5, registered, matched, active, busy 0 (1903 ms), retain 22>
        | | | | +-o AppleIntelCapriController  <class AppleIntelCapriController, id 0x100000326, registered, matched, activ$
        | | | | | +-o AppleMEClientController  <class AppleMEClientController, id 0x100000339, registered, matched, active,$
        | | | | +-o AppleIntelFramebuffer@0  <class AppleIntelFramebuffer, id 0x100000334, registered, matched, active, bus$
        | | | | | +-o AppleMCCSControlModule  <class AppleMCCSControlModule, id 0x10000033b, registered, matched, active, b$
        | | | | | | +-o AppleMCCSParameterHandler  <class AppleMCCSParameterHandler, id 0x10000033f, registered, matched, a$
        | | | | | +-o AppleUpstreamUserClientDriver  <class AppleUpstreamUserClientDriver, id 0x10000033c, registered, matc$
        | | | | | +-o AGPM  <class AGPM, id 0x100000374, registered, matched, active, busy 0 (1339 ms), retain 8>
        | | | | | +-o AppleGraphicsControlBacklightNub  <class AppleGraphicsControlBacklightNub, id 0x10000038c, !registere$
        | | | | | +-o IOFramebufferI2CInterface  <class IOFramebufferI2CInterface, id 0x1000003ae, registered, matched, act$
        | | | | | +-o IOFramebufferSharedUserClient  <class IOFramebufferSharedUserClient, id 0x1000003ec, !registered, !ma$
        | | | | | +-o display0  <class IODisplayConnect, id 0x100002774, registered, matched, active, busy 0 (0 ms), retain$
        | | | | | | +-o AppleBacklightDisplay  <class AppleBacklightDisplay, id 0x100002775, registered, matched, active, b$
        | | | | | +-o IOFramebufferUserClient  <class IOFramebufferUserClient, id 0x100002ce3, !registered, !matched, activ$
        | | | | +-o IntelAccelerator  <class IntelAccelerator, id 0x100000328, registered, matched, active, busy 0 (0 ms), $
        | | | |   +-o IGAccel2DContext  <class IGAccel2DContext, id 0x100002ce8, !registered, !matched, active, busy 0, ret$
        | | | |   +-o IGAccelDevice  <class IGAccelDevice, id 0x100002cf1, !registered, !matched, active, busy 0, retain 6>
        | | | |   +-o IOAccelSharedUserClient  <class IOAccelSharedUserClient, id 0x100002cf3, !registered, !matched, activ$
        | | | |   +-o IGAccelGLContext  <class IGAccelGLContext, id 0x100002cf5, !registered, !matched, active, busy 0, ret$
        | | | |   +-o IGAccelSurface  <class IGAccelSurface, id 0x100002d00, !registered, !matched, active, busy 0, retain $
        | | | |   +-o IGAccelSurface  <class IGAccelSurface, id 0x100002d01, !registered, !matched, active, busy 0, retain $
        | | | |   +-o IGAccelDevice  <class IGAccelDevice, id 0x100002d16, !registered, !matched, active, busy 0, retain 6>
        | | | |   +-o IGAccelSurface  <class IGAccelSurface, id 0x100002d2e, !registered, !matched, active, busy 0, retain $
        | | | |   +-o IGAccelSurface  <class IGAccelSurface, id 0x100002d41, !registered, !matched, active, busy 0, retain $
        | | | |   +-o IGAccelDevice  <class IGAccelDevice, id 0x100002d45, !registered, !matched, active, busy 0, retain 6>
        | | | |   +-o IOAccelSharedUserClient  <class IOAccelSharedUserClient, id 0x100002d46, !registered, !matched, activ$
        | | | |   +-o IGAccelGLContext  <class IGAccelGLContext, id 0x100002d48, !registered, !matched, active, busy 0, ret$
        | | | |   +-o IGAccelGLContext  <class IGAccelGLContext, id 0x100002d4a, !registered, !matched, active, busy 0, ret$
        | | | |   +-o IGAccelSurface  <class IGAccelSurface, id 0x100002d4d, !registered, !matched, active, busy 0, retain $
        | | | |   +-o IGAccelDevice  <class IGAccelDevice, id 0x100002d5e, !registered, !matched, active, busy 0, retain 6>
        | | | |   +-o IOAccelSharedUserClient  <class IOAccelSharedUserClient, id 0x100002d5f, !registered, !matched, activ$
        | | | |   +-o IGAccelGLContext  <class IGAccelGLContext, id 0x100002d61, !registered, !matched, active, busy 0, ret$
        | | | |   +-o IGAccelGLContext  <class IGAccelGLContext, id 0x100002d63, !registered, !matched, active, busy 0, ret$
        | | | |   +-o IGAccelSurface  <class IGAccelSurface, id 0x100002d65, !registered, !matched, active, busy 0, retain $
        | | | |   +-o IGAccelGLContext  <class IGAccelGLContext, id 0x100002d6d, !registered, !matched, active, busy 0, ret$
        | | | |   +-o IGAccelGLContext  <class IGAccelGLContext, id 0x100002d70, !registered, !matched, active, busy 0, ret$
        | | | +-o XHC1@14  <class IOPCIDevice, id 0x1000001cf, registered, matched, active, busy 0 (29 ms), retain 12>
        | | | | +-o AppleUSBXHCI  <class AppleUSBXHCI, id 0x100000200, registered, matched, active, busy 0 (21 ms), retain $
        | | | |   +-o XHCI Root Hub SS Simulation@14  <class IOUSBRootHubDevice, id 0x100000204, registered, matched, activ$
        | | | |   | +-o AppleUSBHub  <class AppleUSBHub, id 0x10000023e, registered, matched, active, busy 0 (0 ms), retain$
        | | | |   | +-o IOUSBInterface@0  <class IOUSBInterface, id 0x100000240, !registered, !matched, active, busy 0, ret$
        | | | |   +-o XHCI Root Hub USB 2.0 Simulation@14  <class IOUSBRootHubDevice, id 0x100000243, registered, matched, $
        | | | |     +-o AppleUSBHub  <class AppleUSBHub, id 0x10000025a, registered, matched, active, busy 0 (0 ms), retain$
        | | | |     +-o IOUSBInterface@0  <class IOUSBInterface, id 0x10000025c, !registered, !matched, active, busy 0, ret$
        | | | +-o pci8086,1e3a@16  <class IOPCIDevice, id 0x1000001e6, registered, matched, active, busy 0 (27 ms), retain $
        | | | | +-o AppleIntelMEIDriver  <class AppleIntelMEIDriver, id 0x100000304, registered, matched, active, busy 0 (0$
        | | | +-o EHC2@1A  <class IOPCIDevice, id 0x1000001c9, registered, matched, active, busy 0 (121 ms), retain 12>
        | | | | +-o AppleUSBEHCI  <class AppleUSBEHCI, id 0x100000202, registered, matched, active, busy 0 (106 ms), retain$
        | | | |   +-o EHCI Root Hub Simulation@1A  <class IOUSBRootHubDevice, id 0x100000220, registered, matched, active, $
        | | | |   | +-o AppleUSBHub  <class AppleUSBHub, id 0x100000245, registered, matched, active, busy 0 (0 ms), retain$
        | | | |   | +-o IOUSBInterface@0  <class IOUSBInterface, id 0x100000247, !registered, !matched, active, busy 0, ret$
        | | | |   +-o HubDevice@1a100000  <class IOUSBHubDevice, id 0x100000271, registered, matched, active, busy 0 (4 ms)$
        | | | |   | +-o AppleUSBHub  <class AppleUSBHub, id 0x100000273, registered, matched, active, busy 0 (0 ms), retain$
        | | | |   | +-o IOUSBInterface@0  <class IOUSBInterface, id 0x100000275, !registered, !matched, active, busy 0, ret$
        | | | |   +-o FaceTime HD Camera (Built-in)@1a110000  <class IOUSBDevice, id 0x10000028b, registered, matched, acti$
        | | | |     +-o IOUSBCompositeDriver  <class IOUSBCompositeDriver, id 0x10000028e, !registered, !matched, active, b$
        | | | |     +-o FaceTime HD Camera (Built-in)@0  <class IOUSBInterface, id 0x10000028f, registered, matched, active$
        | | | |     +-o IOUSBInterface@1  <class IOUSBInterface, id 0x100000290, registered, matched, active, busy 0 (16 ms$
        | | | |     +-o IOUSBInterface@2  <class IOUSBInterface, id 0x100000291, registered, matched, active, busy 0 (6 ms)$
        | | | +-o HDEF@1B  <class IOPCIDevice, id 0x1000001b7, registered, matched, active, busy 0 (300 ms), retain 12>
        | | | | +-o AppleHDAController@1B  <class AppleHDAController, id 0x100000314, registered, matched, active, busy 0 ($
        | | | |   +-o IOHDACodecDevice@1B,0  <class IOHDACodecDevice, id 0x10000033a, registered, matched, active, busy 0 ($
        | | | |     +-o IOHDACodecDriver  <class IOHDACodecDriver, id 0x100000348, !registered, !matched, active, busy 0 (2$
        | | | |       +-o IOHDACodecFunction@1B,0,1  <class IOHDACodecFunction, id 0x10000034b, registered, matched, active$
        | | | |         +-o AppleHDACodecGeneric  <class AppleHDACodecGeneric, id 0x10000034d, registered, matched, active,$
        | | | |           +-o AppleHDADriver  <class AppleHDADriver, id 0x10000035e, registered, matched, active, busy 0 (2$
        | | | |             +-o AppleHDAEngineInput@1B,0,1,0  <class AppleHDAEngineInput, id 0x100000381, registered, match$
        | | | |             | +-o AppleHDAStream  <class AppleHDAStream, id 0x100000382, registered, matched, active, busy $
        | | | |             | +-o IOAudioSelectorControl  <class IOAudioSelectorControl, id 0x100000383, !registered, !matc$
        | | | |             | | +-o IOAudioControlUserClient  <class IOAudioControlUserClient, id 0x10000043b, !registered,$
        | | | |             | +-o IOAudioLevelControl  <class IOAudioLevelControl, id 0x100000384, !registered, !matched, a$
        | | | |             | | +-o IOAudioControlUserClient  <class IOAudioControlUserClient, id 0x10000043c, !registered,$
        | | | |             | +-o IOAudioToggleControl  <class IOAudioToggleControl, id 0x100000385, !registered, !matched,$
        | | | |             | | +-o IOAudioControlUserClient  <class IOAudioControlUserClient, id 0x10000043d, !registered,$
        | | | |             | +-o IOAudioToggleControl  <class IOAudioToggleControl, id 0x100000386, !registered, !matched,$
        | | | |             | | +-o IOAudioControlUserClient  <class IOAudioControlUserClient, id 0x10000043e, !registered,$
        | | | |             | +-o IOAudioEngineUserClient  <class IOAudioEngineUserClient, id 0x100000439, !registered, !ma$
        | | | |             | +-o IOAudioEngineUserClient  <class IOAudioEngineUserClient, id 0x100000444, !registered, !ma$
        | | | |             | +-o IOAudioEngineUserClient  <class IOAudioEngineUserClient, id 0x100002d22, !registered, !ma$
        | | | |             | +-o IOAudioEngineUserClient  <class IOAudioEngineUserClient, id 0x100002d35, !registered, !ma$
        | | | |             | +-o IOAudioEngineUserClient  <class IOAudioEngineUserClient, id 0x100002d6a, !registered, !ma$
        | | | |             | +-o IOAudioToggleControl  <class IOAudioToggleControl, id 0x100002def, !registered, !matched,$
        | | | |             |   +-o IOAudioControlUserClient  <class IOAudioControlUserClient, id 0x100002df0, !registered,$
        | | | |             |   +-o IOAudioControlUserClient  <class IOAudioControlUserClient, id 0x100002df1, !registered,$
        | | | |             |   +-o IOAudioControlUserClient  <class IOAudioControlUserClient, id 0x100002df2, !registered,$
        | | | |             |   +-o IOAudioControlUserClient  <class IOAudioControlUserClient, id 0x100002df3, !registered,$
        | | | |             |   +-o IOAudioControlUserClient  <class IOAudioControlUserClient, id 0x100002df4, !registered,$
        | | | |             +-o AppleHDAEngineInput@1B,0,1,1  <class AppleHDAEngineInput, id 0x100000387, registered, match$
        | | | |             | +-o AppleHDAStream  <class AppleHDAStream, id 0x100000389, registered, matched, active, busy $
        | | | |             | +-o IOAudioSelectorControl  <class IOAudioSelectorControl, id 0x100000393, !registered, !matc$
        | | | |             | | +-o IOAudioControlUserClient  <class IOAudioControlUserClient, id 0x100000431, !registered,$
        | | | |             | +-o IOAudioLevelControl  <class IOAudioLevelControl, id 0x100000394, !registered, !matched, a$
        | | | |             | | +-o IOAudioControlUserClient  <class IOAudioControlUserClient, id 0x100000432, !registered,$
        | | | |             | +-o IOAudioLevelControl  <class IOAudioLevelControl, id 0x100000395, !registered, !matched, a$
        | | | |             | | +-o IOAudioControlUserClient  <class IOAudioControlUserClient, id 0x100000433, !registered,$
        | | | |             | +-o IOAudioToggleControl  <class IOAudioToggleControl, id 0x100000396, !registered, !matched,$
        | | | |             | | +-o IOAudioControlUserClient  <class IOAudioControlUserClient, id 0x100000434, !registered,$
        | | | |             | +-o IOAudioToggleControl  <class IOAudioToggleControl, id 0x100000397, !registered, !matched,$
        | | | |             | | +-o IOAudioControlUserClient  <class IOAudioControlUserClient, id 0x100000435, !registered,$
        | | | |             | +-o IOAudioToggleControl  <class IOAudioToggleControl, id 0x100000398, !registered, !matched,$
        | | | |             | | +-o IOAudioControlUserClient  <class IOAudioControlUserClient, id 0x100000436, !registered,$
        | | | |             | +-o IOAudioSelectorControl  <class IOAudioSelectorControl, id 0x100000399, !registered, !matc$
        | | | |             | | +-o IOAudioControlUserClient  <class IOAudioControlUserClient, id 0x100000437, !registered,$
        | | | |             | | +-o IOAudioControlUserClient  <class IOAudioControlUserClient, id 0x100002df5, !registered,$
        | | | |             | | +-o IOAudioControlUserClient  <class IOAudioControlUserClient, id 0x100002df6, !registered,$
        | | | |             | | +-o IOAudioControlUserClient  <class IOAudioControlUserClient, id 0x100002df7, !registered,$
        | | | |             | | +-o IOAudioControlUserClient  <class IOAudioControlUserClient, id 0x100002df8, !registered,$
        | | | |             | +-o IOAudioToggleControl  <class IOAudioToggleControl, id 0x10000039b, !registered, !matched,$
        | | | |             | | +-o IOAudioControlUserClient  <class IOAudioControlUserClient, id 0x100000438, !registered,$
        | | | |             | +-

  • Can't create a sequence within a pl/sql block with execute immediate.

    Hi All. I created a user and granted it the 'create sequence' privilege though a role. In a pl/sql block I try to create a sequence using 'execute immediate' but get a 1031-insufficient privileges error. If I grant create sequence directly to the user, the pl/sql block completes successfully. Can anyone explain this behavior? We're running 11.2 Enterprise Editon.
    Thanks,
    Mark

    In a definer's rights stored procedure (the default), you only have access to privileges that have been granted directly, not via a role.
    There are two basic reasons for that. First, roles can be enabled or disabled, default and non-default, password-protected, etc. so the set of roles a particular user actually has is session-specific. Oracle needs to know at compile time what privileges the owner of the procedure has. The only way to do that (without deferring the privilege check) is to ignore privileges granted through roles.
    Second, since 99% of privilege management DBAs do involves granting and revoking roles, it's helpful that changing role privileges will never cause objects to be marked invalid and recompiled which can have side-effects on applications. DBAs only need to worry about causing problems on those rare cases where they are granting or revoking direct privileges to users.
    You can create an invoker's rights stored procedure by adding the clause (AUTHID CURRENT_USER). That defer's the security check to run-time but allows the procedure to see privileges granted through roles in the current session. But that means that the caller of the procedure would need to have the CREATE SEQUENCE privilege through the role, not the owner of the procedure.
    And just to make the point, dynamic object creation in PL/SQL is almost always a red flag that there is something problematic in your design. If you are creating sequences dynamically, that means that you'd have to refer to them dynamically throughout your code which means that your inserts would need to use dynamic SQL. That's not a particularly easy or safe way to develop code.
    Justin

  • How to create services for sql querry with joint 2 tables ?

    Hi all,
    I start to learn the php services function for mysql querry in flex 4.5 and all seam to be ok.
    But i don't find anny help or tutorial to create service that call a sql querry with joint to tables, like this :
    Select table01.fieldA table02.fieldA WHERE table01.fieldC LIKE table02.fieldC
    Are there a way to do that in flashBuilder creation services interfaces, or not ?
    Does we make a special value Object and all the AS3  classes and not use the template opperations ?
    Thank's for your help or link
    fbm

    Hi Fabien,
    I'm afraid you'll have to learn a bit more about PHP...
    Joined tables is a relational database feature. It has nothing to do with PHP, and PHP has nothing to do with Flex...
    The "magic" of the flex framework is that it can plug itself into any backend (.Net, Java, PHP...)
    The new way Flash Builder interacts with PHP is through AMF (Actionscript Messaging Format) with the help of Zend and Zend_Amf. You've been able to do it on your own for a while, but it was a bit tricky to set up... The new IDE helps you doing those mapping with wizards. What it does is that it serializes and deserializes objects from PHP to Actionscript, and also generates Actionscript value objects.
    So what you'll have to do is to write your own PHP services to retrieve your data from joined tables in MySQL. Those services will return simple arrays. Then start the wizard, select your services. Flash Builder will then map the objects contained in the PHP arrays into Actionscript typed objects.
    I suggest you have a deep look into Zend_Tables...
    Hope it'll help.
    Julien.

  • SQL Loader - CSV Data file with carraige returns and line fields

    Hi,
    I have a CSV data file with occasional carraige returns and line feeds in between, which throws my SQL loader script off. Sql loader, takes the characters following the carraige return as a new record and gives me error. Is there a way I could handle carraige returns and linefeeds in SQL Loader.
    Please help. Thank you for your time.
    This is my Sql Loader script.
    load data
    infile 'D:\Documents and Settings\user1\My Documents\infile.csv' "str '\r\n'"
    append
    into table MYSCHEMA.TABLE1
    fields terminated by ','
    OPTIONALLY ENCLOSED BY '"'
    trailing nullcols
    ( NAME CHAR(4000),
    field2 FILLER,
    field3 FILLER,
    TEST DEPT CHAR(4000)
    )

    You can "regexp_replace" the columns for special characters

  • Creating an SRM Purchase Order with a Return Line

    Is it possible within standard SRM to create a purchase order with a 'Returns Item' line?
    I know it's possible in R/3 but really need to create it via SRM.
    Regards
    Keith

    Ganesh
    We are using the Extended Classic Scenario of SRM (and the Sourcing Cockpit) which therefore means that we won't be creating requisitions within R/3.
    In the R/3 PO you can create a line item as a 'Returns Line' (MEPO1211-RETPO)
    The standard help text is as follows:
    Logistics - General (LO)
    The returned goods from a customer to an internal or external vendor.
    Returns can be divided into the following types, according to vendor and recipient:
    Customer returns
    Returns to vendor
    Returns for stock transfers
    I know we can use a BADI to mark this flag in R/3 but for completeness really want to show this as a returns line in SRM too.
    Keith

  • Execute PL/SQL block with named binds from within java code?

    Hi guys,
    Is there any good way to execute my PL/SQL code, for example
    BEGIN         :x := :x+1; END;
    from my Java code? I need nothing complicated, just static code block with named binds.
    I have tried the Oracle exetnded JDBC (setXXXbyName methods):
      public static void main(String[] args){     try {     Class.forName("oracle.jdbc.driver.OracleConnection");     Connection conn=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:xe","user","password"); String SQL="begin :x:=:x+1; end;"; OracleCallableStatement stmt; stmt=(OracleCallableStatement)conn.prepareCall(SQL); stmt.setIntAtName("x", 5); stmt.registerOutParameter("x", Types.INTEGER); stmt.execute(); System.out.println(stmt.getInt("x"));     } catch (Exception x) { x.printStackTrace();    }   }
    And get the java.sql.SQLException: operation not allowed: Ordinal binding and Named binding cannot be combined!
    Then i've tried SQLJ appoach:
      public static void main(String[] args){     try {     Class.forName("oracle.jdbc.driver.OracleConnection");     Connection conn=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:xe","user","password");       Oracle.connect(conn);       System.out.println("Connected!");           int x=3;       #sql { BEGIN         :x := :x+1;       END; };           System.out.println("x=" + x);     } catch (Exception x) { x.printStackTrace();    }   }
    And x=3 had retuned... Although 4 expected.
    Then, I've set parameter sqlj.bind-by-identifier=true
    And result is another exception! java.sql.SQLException: Missing IN or OUT parameter at index:: 2
    Can you please mark my mistakes/point to correct solution?
    Thanks in advance,
    Alexey

    Found another solution, this time working at least...
      public void testPLSQL() {
           String dynamicSQL=
                "declare\n" +
                "  v_CursorID  INTEGER;\n" +
                "  v_BlockStr  VARCHAR2(500);\n" +
                "  v_Dummy     INTEGER;\n" +
                "  v_x         String(18);\n" +
                "BEGIN\n" +
                "  v_CursorID := DBMS_SQL.OPEN_CURSOR;\n" +
                "  v_BlockStr :=?;" +
                "  DBMS_SQL.PARSE(v_CursorID, v_BlockStr, DBMS_SQL.V7);\n" +
                "  v_x:=?;"+
                "  DBMS_SQL.BIND_VARIABLE(v_CursorID, ':x', v_x,18);\n" +
                "  v_Dummy := DBMS_SQL.EXECUTE(v_CursorID);\n" +
                "  DBMS_SQL.VARIABLE_VALUE(v_CursorID, ':x', v_x);\n" +
                "  DBMS_SQL.CLOSE_CURSOR(v_CursorID);\n" +
                "  ?:=v_x;"+
                "  COMMIT;\n" +
                "EXCEPTION\n" +
                "  WHEN OTHERS THEN\n" +
                "    DBMS_SQL.CLOSE_CURSOR(v_CursorID);\n" +
                "    RAISE;\n" +
                "END DynamicPLSQL;";
             try {
                   Class.forName("oracle.jdbc.driver.OracleConnection");
                   Connection conn=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:xe","user", "password");
                   System.out.println("Profit");
         String SQL="begin :x:=:x+1; end;";
         OracleCallableStatement stmt;
         stmt=(OracleCallableStatement)conn.prepareCall(dynamicSQL);
         stmt.setString(1, SQL);
         int x=3;
         stmt.setInt(2, x);
         stmt.registerOutParameter(3,     Types.INTEGER);
         stmt.execute();
         x=stmt.getInt(3);
         System.out.println(x);
         assertEquals(4, x);
             } catch (Exception ex) {
                  ex.printStackTrace();
                  assertTrue(false);
      }Now the only thing I need is to code some kind of preprocessor of SQL block, to prepare the dynamicSQL lair for SQL critter...
    Please please please show me something less complicated! :8}

  • Create a Procedural ALV Report with editable fields and save the changes

    Hi,
    I am new to ABAP. I have created a Procedural ALV Report with 3 fields. I want to make 2 fields editable. When executed, if the fields are modified, I want to save the changes. All this I want to do without using OO concepts. Please help . Also, I checked out the forum and also the examples
    BCALV_TEST_GRID_EDIT_01
    BCALV_TEST_GRID_EDIT_02
    BCALV_TEST_GRID_EDIT_04_FORMS
    BCALV_TEST_GRID_EDITABLE
    BCALV_EDIT_01
    BCALV_EDIT_02
    BCALV_EDIT_03
    BCALV_EDIT_04
    BCALV_EDIT_05
    BCALV_EDIT_06
    BCALV_EDIT_07
    BCALV_EDIT_08
    BCALV_FULLSCREEN_GRID_EDIT
    But all these are using OO Concepts.
    Please help.
    Regards,
    Smruthi

    TABLES:     ekko.
    TYPE-POOLS: slis.                                 "ALV Declarations
    *Data Declaration
    TYPES: BEGIN OF t_ekko,
      ebeln TYPE ekpo-ebeln,
      ebelp TYPE ekpo-ebelp,
      statu TYPE ekpo-statu,
      aedat TYPE ekpo-aedat,
      matnr TYPE ekpo-matnr,
      menge TYPE ekpo-menge,
      meins TYPE ekpo-meins,
      netpr TYPE ekpo-netpr,
      peinh TYPE ekpo-peinh,
      line_color(4) TYPE c,     "Used to store row color attributes
    END OF t_ekko.
    DATA: it_ekko TYPE STANDARD TABLE OF t_ekko INITIAL SIZE 0,
          wa_ekko TYPE t_ekko.
    *ALV data declarations
    DATA: fieldcatalog TYPE slis_t_fieldcat_alv WITH HEADER LINE,
          gd_tab_group TYPE slis_t_sp_group_alv,
          gd_layout    TYPE slis_layout_alv,
          gd_repid     LIKE sy-repid.
    START-OF-SELECTION.
      PERFORM data_retrieval.
      PERFORM build_fieldcatalog.
      PERFORM build_layout.
      PERFORM display_alv_report.
    *&      Form  BUILD_FIELDCATALOG
          Build Fieldcatalog for ALV Report
    FORM build_fieldcatalog.
      fieldcatalog-fieldname   = 'EBELN'.
      fieldcatalog-seltext_m   = 'Purchase Order'.
      fieldcatalog-col_pos     = 0.
      fieldcatalog-outputlen   = 10.
      fieldcatalog-emphasize   = 'X'.
      fieldcatalog-key         = 'X'.
    fieldcatalog-do_sum      = 'X'.
    fieldcatalog-no_zero     = 'X'.
      APPEND fieldcatalog TO fieldcatalog.
      CLEAR  fieldcatalog.
      fieldcatalog-fieldname   = 'EBELP'.
      fieldcatalog-seltext_m   = 'PO Item'.
      fieldcatalog-col_pos     = 1.
      APPEND fieldcatalog TO fieldcatalog.
      CLEAR  fieldcatalog.
      fieldcatalog-fieldname   = 'STATU'.
      fieldcatalog-seltext_m   = 'Status'.
      fieldcatalog-col_pos     = 2.
      APPEND fieldcatalog TO fieldcatalog.
      CLEAR  fieldcatalog.
      fieldcatalog-fieldname   = 'AEDAT'.
      fieldcatalog-seltext_m   = 'Item change date'.
      fieldcatalog-col_pos     = 3.
      APPEND fieldcatalog TO fieldcatalog.
      CLEAR  fieldcatalog.
      fieldcatalog-fieldname   = 'MATNR'.
      fieldcatalog-seltext_m   = 'Material Number'.
      fieldcatalog-col_pos     = 4.
      APPEND fieldcatalog TO fieldcatalog.
      CLEAR  fieldcatalog.
      fieldcatalog-fieldname   = 'MENGE'.
      fieldcatalog-seltext_m   = 'PO quantity'.
    fieldcatalog-edit             = 'X'
      fieldcatalog-col_pos     = 5.
      APPEND fieldcatalog TO fieldcatalog.
      CLEAR  fieldcatalog.
      fieldcatalog-fieldname   = 'MEINS'.
      fieldcatalog-seltext_m   = 'Order Unit'.
      fieldcatalog-col_pos     = 6.
      APPEND fieldcatalog TO fieldcatalog.
      CLEAR  fieldcatalog.
      fieldcatalog-fieldname   = 'NETPR'.
      fieldcatalog-seltext_m   = 'Net Price'.
      fieldcatalog-col_pos     = 7.
      fieldcatalog-outputlen   = 15.
      fieldcatalog-datatype     = 'CURR'.
      APPEND fieldcatalog TO fieldcatalog.
      CLEAR  fieldcatalog.
      fieldcatalog-fieldname   = 'PEINH'.
      fieldcatalog-seltext_m   = 'Price Unit'.
      fieldcatalog-col_pos     = 8.
      APPEND fieldcatalog TO fieldcatalog.
      CLEAR  fieldcatalog.
    ENDFORM.                    " BUILD_FIELDCATALOG
    *&      Form  BUILD_LAYOUT
          Build layout for ALV grid report
    FORM build_layout.
      gd_layout-no_input          = 'X'.
      gd_layout-colwidth_optimize = 'X'.
      gd_layout-totals_text       = 'Totals'(201).
      gd_layout-info_fieldname =      'LINE_COLOR'.
    ENDFORM.                    " BUILD_LAYOUT
    *&      Form  DISPLAY_ALV_REPORT
          Display report using ALV grid
    FORM display_alv_report.
      gd_repid = sy-repid.
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
           EXPORTING
                i_callback_program      = gd_repid
                i_callback_pf_status_set = 'STATUS'
                i_callback_top_of_page   = 'TOP-OF-PAGE'
               i_callback_user_command = 'USER_COMMAND'
               i_grid_title           = outtext
                is_layout               = gd_layout
                it_fieldcat             = fieldcatalog[]
               it_special_groups       = gd_tabgroup
               IT_EVENTS                = GT_XEVENTS
                i_save                  = 'X'
               is_variant              = z_template
           TABLES
                t_outtab                = it_ekko
           EXCEPTIONS
                program_error           = 1
                OTHERS                  = 2.
    ENDFORM.                    " DISPLAY_ALV_REPORT
    *&      Form  DATA_RETRIEVAL
          Retrieve data form EKPO table and populate itab it_ekko
    FORM data_retrieval.
      DATA: ld_color(1) TYPE c.
      SELECT ebeln ebelp statu aedat matnr menge meins netpr peinh
       UP TO 10 ROWS
        FROM ekpo
        INTO TABLE it_ekko.
      LOOP AT it_ekko INTO wa_ekko.
        ld_color = ld_color + 1.
        IF ld_color = 8.
          ld_color = 1.
        ENDIF.
        CONCATENATE 'C' ld_color '10' INTO wa_ekko-line_color.
        MODIFY it_ekko FROM wa_ekko.
      ENDLOOP.
    ENDFORM.                    " DATA_RETRIEVAL
          FORM top-of-page                                              *
    FORM top-of-page.
      WRITE:/ 'This is First Line of the Page'.
    ENDFORM.
          FORM status                                                   *
    FORM status USING rt_extab TYPE slis_t_extab.  .
      SET PF-STATUS 'ALV'.
    ENDFORM.
          FORM USER_COMMAND                                          *
    -->  RF_UCOMM                                                      *
    -->  RS                                                            *
    FORM user_command USING rf_ucomm LIKE sy-ucomm
                             rs TYPE slis_selfield.            
      DATA ref1 TYPE REF TO cl_gui_alv_grid.
      CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'
        IMPORTING
          e_grid = ref1.
      CALL METHOD ref1->check_changed_data.
      CASE rf_ucomm.
    when 'SAVE'.
    get all the modified entries and store them in an internal table and udpate them in to the required transaction or your custom table.
    endcase.
    endform.
    ENDFORM.
    here u need to 2 performs for PF status and USER_COMMAND in the ALV parameters.
    create a custom PF status and create push buttons and assign your ok codes in your PF status.
    if the field has to be edited in the ALV then pass EDIT = 'X' for that field in the fieldcatlog preparation.
    Hope this will help you.
    Regards,
    phani.

  • Usage of java.sql.Timestamp with classes12.zip and ojdbc14.jar  ?

    Hi all,
    If i'm using java.sql.Timestamp with classes12 it is functioning perfectly,
    if i'm using ojdbc14 and java.sql.Timestamp it is functioning in different way and failing to do the action..
    Example : update set xxx=yy where time = my Timestamp object set in Prepared statement
    Hope to see the answer

    http://forum.java.sun.com/thread.jspa?threadID=460615&messageID=2116517
    Timestamp insert problem
    Using the "classes12.zip" file that comes with the distribution for Oracle versions 8.1.6.x and 8.1.7.x, Oracle's DATE datatype is mapped to the "java.sql.Timestamp" class. However, the "ojdbc14.jar" driver maps DATE to "java.sql.Date", and "java.sql.Date" only holds a date (without a time), whereas "java.sql.Timestamp" holds both a date and a time.

  • Corrupt blocks with RH6.2 and 8.1.7

    Hi
    We have following problem: while running Oracle 8.1.7 on a Compqa DL580 with Smartarray controller 5304 on RedHat 6.2 system we encounter corrupt data blocks after a certain time.
    We can see corrupt data blocks e.g after reboot, but also during normal operation. This happens again and again after some weeks after we had reinstalled the database. Oracle support lead us to install RH6.2 (after having the problems on 7.1), but it crashed again ...
    Any tips?
    System details:
    kernel 2.2.19-6.2.7
    glibc 2.1.3-22
    mount 2.10r-0.6.x
    fs.file-max=8192 (in /etc/sysctl.conf)
    Dietmar

    Hi
    I work with linux RH (6.2, 7.0, 7.1) and 8i (8.1.5 since 8.1.7.0.1) and 9i and I only two times I find just a block corruption warning, but database keeps working fine.
    This data corruption affects only Oracle? You can turn extra CRC check into oracle data blocks (of course it slows all process ;)
    Maybe the linux RAID drivers have some bug, a simple solution is to install one datafile of the tablespace in a nother disk (IDE for example) and check if this datafile is corrupted too.
    Anyway just make a simple script (using dd or random) or C, Perl.. program that writes/reads intensively (one week ir more) "1" on a big file (at least 1G) and check if you get some error. Oracle just calls system I/O, so if one crashes, other must too.
    A10!

Maybe you are looking for

  • How to create WEBGUI interface for own-created program

    Hi experts! Could you please suggest me: Some of our end-users have to work with WEBGUI interface. In T-code VL02N we have our userexit SAPLZSDEXIT (Screen 0110). And in WEBGUI we don't see this tab in VL02N. I think I have to generate web-interface

  • How do I roll back to iphoto 08

    I just upgraded to iphoto 09, so disappointed. How can I roll back to iphoto 08 using time machine backup? Thanks Alex

  • SWF Decompiler Question

    Hello, I'm trying to get a working .fla file of the .swf at the bottom of this page... http://www.fsip.biz/About.html I tried the free version of SoThink's decompiler, but all I got was a black box with lots of layers. I'm using Flash CS3. Any advice

  • Converting multiple records to a single "Y" on a report?

    Okay, here's one for the experts. I have a table that's a many-to-one relation to each line of detail on my report. For example, a hard drive, Part Number 1234, might be assigned to multiple types of servers, i.e. it was assigned to 6 PE-C servers, 3

  • Flex 2-15: How to access BIOS

    I purchased a new Flex 2-15 online the past week. The model name shown on the back is "20405". Manufacture date is May 12, 2014. The User Guide refers to a "Novo Button", which is shown in diagrams as being on both the left edge and the right edge ne