Settlement job is held up on JEST table

Hi ,
A settlement job is held up in JEST table and is shown in SM66.There are many hits of this JEST table which is in sequential read status .The job which is related to this table is running inconsistently since 3 days ie the duration for completion of job is increasing gradually.
So can anyone help in understanding as why the JEST table gives these many hits and is in sequential read status. This is found everyday.
Thanks,
Amber

First: don't rely on the "sequential read" what you see in SM50/SM66 (see Note 825653 - Oracle: Common errors, point 15).
Check ST04/DBACOCKPIT what the database is actually doing and which access plan is used for that statement. Also check that your database statistics are up-to-date for that table.
Markus

Similar Messages

  • Scheduled Job to gather stats for multiple tables - Oracle 11.2.0.1.0

    Hi,
    My Oracle DB Version is:
    BANNER Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
    PL/SQL Release 11.2.0.1.0 - Production
    CORE 11.2.0.1.0 Production
    TNS for Linux: Version 11.2.0.1.0 - Production
    NLSRTL Version 11.2.0.1.0 - Production
    In our application, we have users uploading files resulting in insert of records into a table. file could contain records ranging from 10000 to 1 million records.
    I have written a procedure to bulk insert these records into this table using limit clause. After the insert, i noticed my queries run slow against these tables if huge files are uploaded simultaneously. After gathering stats, the cost reduces and the queries executed faster.
    We have 2 such tables which grow based on user file uploads. I would like to schedule a job to gather stats during a non peak hour apart from the nightly automated oracle job for these two tables.
    Is there a better way to do this?
    I plan to execute the below procedure as a scheduled job using DBMS_SCHEDULER.
    --Procedure
    create or replace
    PROCEDURE p_manual_gather_table_stats AS
    TYPE ttab
    IS
        TABLE OF VARCHAR2(30) INDEX BY PLS_INTEGER;
        ltab ttab;
    BEGIN
        ltab(1) := 'TAB1';
        ltab(2) := 'TAB2';
        FOR i IN ltab.first .. ltab.last
        LOOP
            dbms_stats.gather_table_stats(ownname => USER, tabname => ltab(i) , estimate_percent => dbms_stats.auto_sample_size,
            method_opt => 'for all indexed columns size auto', degree =>
            dbms_stats.auto_degree ,CASCADE => TRUE );
        END LOOP;
    END p_manual_gather_table_stats;
    --Scheduled Job
    BEGIN
        -- Job defined entirely by the CREATE JOB procedure.
        DBMS_SCHEDULER.create_job ( job_name => 'MANUAL_GATHER_TABLE_STATS',
        job_type => 'PLSQL_BLOCK',
        job_action => 'BEGIN p_manual_gather_table_stats; END;',
        start_date => SYSTIMESTAMP,
        repeat_interval => 'FREQ=DAILY; BYHOUR=12;BYMINUTE=45;BYSECOND=0',
        end_date => NULL,
        enabled => TRUE,
        comments => 'Job to manually gather stats for tables: TAB1,TAB2. Runs at 12:45 Daily.');
    END;Thanks,
    Somiya

    The question was, is there a better way, and you partly answered it.
    Somiya, you have to be sure the queries have appropriate statistics when the queries are being run. In addition, if the queries are being run while data is being loaded, that is going to slow things down regardless, for several possible reasons, such as resource contention, inappropriate statistics, and having to maintain a read consistent view for each query.
    The default collection job decides for each table based on changes it perceives in the data. You probably don't want the default collection job to deal with those tables. You probably do want to do what Dan suggested with the statistics. But it's hard to tell from your description. Is the data volume and distribution volatile? You surely want representative statistics available when each query is started. You may want to use all the plan stability features available to tell the optimizer to do the right thing (see for example http://jonathanlewis.wordpress.com/2011/01/12/fake-baselines/ ). You may want to just give up and use dynamic sampling, I don't know, entire books, blogs and papers have been written on the subject. It's sufficiently advanced technology to appear as magic.

  • Update system status in JEST table

    Hi Experts,
    I need to update the system status TECO as inactive in table JEST based on some condition from program manually. It might not be suggested to directly modify the database table. I got one BAPI function module BAPI_ALM_ORDER_MAINTAIN, but could not find how to use it.
    Can you please let me know whether there are any BADIs or BAPIs to update the system status in JEST table.
    Thanks in advance for you help.
    regards,
    Lakshmi.

    Hi ,,
    Thank you for your suggestion. but I got a FM which exactly updates the system status in JEST and JCDS tables.
    The function module STATUS_CHANGE_INTERN and can be used as follows. We always need to follow one condition that, when the system status TECO is changing to inactive the REL status should be made Active.
        DATA: i_stat TYPE STANDARD TABLE OF jstat.
        DATA: wa_stat TYPE jstat.
        wa_stat-stat = 'I0045'.
        wa_stat-inact = 'X'.
        APPEND wa_stat TO i_stat.
        wa_stat-stat = 'I0002'.
        wa_stat-inact = ' '.
        APPEND wa_stat TO i_stat.
        CALL FUNCTION 'STATUS_CHANGE_INTERN'
          EXPORTING
            client              = sy-mandt
            objnr               = lv_objnr
          TABLES
            status              = i_stat
          EXCEPTIONS
            object_not_found    = 1
            status_inconsistent = 2
            status_not_allowed  = 3
            OTHERS              = 4.
    COMMIT WORK.

  • Significance of STAT field in JEST table

    In one of my report I need to extract the status of a equipment from JEST table, the field is STAT. Incidentally the table contains other two fields INACT and CHGNR.
    I am not getting the meaning and significance of each of the fields in this JEST table. Can anyone tell me the significance of this STAT field and its possible set of values.
    Please help me. It is a bit urgent.
    Thanks in advance.

    If you need to extract the status of a particular object, you can try using FM: STATUS_READ with the object number and 'X' for Only Active.
    Coming to your question, Field INACT of table JEST identifies whether the status is currently active or inactive. Field CHGNR determines the sequence in which the status'es are changed.
    Possible set of values determines on the Status Profile which is configurable and differs from System to System.
    Check in table TJ30 with the status profile to know the various status'es defined for the profile. For their descriptions you can check table: TJ30T or alternatively you can try view V_TJ30T.
    So for your sequence i would advice:
    1. Execute FM: STATUS_OBJECT_READ with Object Number to retreive the status profile.
    2. Execute FM: STATUS_READ to extract the active status of the object.
    3. Extract the description of the status from table TJ30T with the status profile and status.
    Hope that helps.

  • JEST table and status change document OPL8

    Hi Experts,
    1. I created a prod order and released it and saved. went to AUFK and got the object number to pass in JEST  table. System shows no values found.I was expecting a record for the same. do I need to do something to populate JEST table?
    2. In OPL8 under implementation tab, there is something called status change documents. do I need to configure OCM to use these change documents? if the answer is no, then what is the difference between these change documents and OCM change documents?
    thx in advance

    swathi.rege wrote:
    2. In OPL8 under implementation tab, there is something called status change documents. do I need to configure OCM to use these change documents? if the answer is no, then what is the difference between these change documents and OCM change
    The settings in OPL8 will just determine if system should write the change logs of status to table tables CDHDR and CDPOS (for audit trail). Entries will appear here CO03 >> Header >> Status changes
    I think you opened up different windows of different boxes (DEV, QAS etc) and probably created in production order in DEV and checking status in QAS.
    Edited by: Jeevan Sagar on Feb 12, 2012 10:09 PM

  • Update the JEST table

    Hi,
    Is there a BAPI that updates the JEST table - status of scheduling agreements?
    Thanks,
    Leon

    Hi,
    I want to insert new user status in JEST table but I can't find any suitable function. I have tried all function listed above, but it not works. Did anyone know what function module to insert new user status in JEST table?
    example:
    MANDT OBJNR                         STAT       CHGNR
    140   NV000000097200000007     E0004       001 
    140   NV000000097200000007     E0006       001 
    140   NV000000097200000007     I0001       001 
    140   NV000000097200000007     I0028       001 
    I would like to add stat = 'E0007' in JEST table. Thanks.

  • Updating JEST table

    Hi,
    I want to update user fields in JEST table .
    I should not use MODIFY and INSERT commands to update directly as it is not preferred.
    Please give me FM's/BAPIs which are used to update JEST table if anybody knows.
    Any pointers in this regard are very much helpful.

    try this...
    MAP2I_BAPI2054_OBJECTSTATUS_AL

  • JEST Table Data Extraction

    Hi Gurus,
    I am using Z transactional datasource (ZJEST) created on JEST Table with Full Load.JEST Table has only 4 fields:
    CHGNR     Change number
    INACT     Indicator: Status Is Inactive
    OBJNR     Object number
    STAT     Object status
    This table has around 18 million records.Each time i load data i have to extract around 18 million records.
    Is there any alternate way to avoid loading these huge data every time.Also this table has no date field not extract data based on time.
    Can anyone suggest me with ur valuable inputs.
    Thank in Advance
    Surya.

    Hi ,
    Hi All, If you check the JEST table there is uniqueness for the Records are updated at the table level.
    I think we can't use  OBJNR .May be we can with STAT field.
    Other way:
    From JEST you can extract Full load bacuse there is no delta specific field.
    Create a custom table as ZTEST with additional field timestamp.So that you can fetch only updated data into DS level.
    Now the issue is how the ZTable will be populated:
    Easiest way is with the help of ABAP we can populate from standard to ZJEST every day but when updating we will maniantain Timestamp.So you can extract only those records.
    (or)
    Check How the JEST table is populating by the Functional consultants is there any idention for how many records updated today.But the issue is u r is FULL even though you know the logic no useful.So u need to convert into Delta.
    Regards
    Ram.
    Edited by: Ramakanth Deepak Gandepalli on Dec 10, 2009 11:05 AM

  • Performance issue with JEST table

    Moved to correct forum by moderator
    Hi all,
    I have a report which is giving performance issue.
    It hits the function module "status_read", which in turn hits the table JEST..
    The select query is:
    SELECT SINGLE * FROM JSTO CLIENT SPECIFIED
    WHERE MANDT = MANDT
    AND   OBJNR = OBJNR.
    I know we should not use client specified,  but this is a SAP standard code..
    Since this query is hit many times, it results in TIME_OUT error..
    I observed that the table JEST has 133,523,962 entries in production and in technical details, the size catagory is metnioned as 3 - (Data records expected: 280,000 to 1,100,000).
    Since here, the data size is exceeded, if i change the size catagory to 4 would improve the performance?
    Or should I request Client to archive this table? If yes, please guide me how to go for it? I have heard there are archiving objects.. please specify which objects should be considered for archiving...
    I could only think of above two solutions, please let me know if there is any other workaround...
    thanks!
    Edited by: Matt on Jan 27, 2009 11:12 AM

    Hi,
    I'm not sure the exact archiving object for this, here are some archiving objects related to tabel JEST
    MM_EBAN
    MM_EKKO
    MM_MATNR
    PP_ORDER
    PR_ORDER
    PM_NET
    pl. go thru them using tcode: SARA
    thanks\
    Mahesh

  • Event job with dbms_scheduler after dml on table

    is is possible to start an event job using dbms_schduler every time a record is inserted or updated in a table?
    After a dml statement that job has to start an external command (a shell script).
    In few words, a dml statment can be the event?

    It would scale badly, but yes, when you are looking for methods to develop a disaster application, this is one of the ways to do it. It is definitely possible. But it has BAD IDEA inscribed all over it.
    When you insist on misusing Oracle for things it was not designed for you may want to consider calling O/S commands using Java. Examples on http://asktom.oracle.com
    Sybrand Bakker
    Senior Oracle DBA

  • Inserting job completion time stamp to another table

    Hi - I've a requirement where i need to insert job completion timestamp to another table.
    I'm loading data from oracle table to Sql server table. this job is running fine. Once this is done i need to insert the completion timestamp to another Sql server table.
    Here is waht I did..
    1) created a package with interface which loads the data from oracle table to Sql server table1.
    2) created a refresh variable which gets the timestamp.
    i wanna know if there is any ODI tool which loads this timestamp to another SQL server table once the data is loaded to the first SQL server table.
    Appreciate your input.
    thanks

    Just create a procedure which inserts the timestamp to the relevant sql table passing the variable as the the value and call this as the last step in your package.

  • Apex_plsql_job.submit_process job not showing up in apex_plsql_jobs table

    Hello ghurus,
    I am running APEX 3.1 on Oracle 10g 10.2.0.1 and am trying to run a potentially long running procedure in the background so the user doesn't have to sit and watch the hourglass.
    The button process has the following code:
    DECLARE
    return_code NUMBER;
    exec_stg VARCHAR2(4000);
    squote VARCHAR2(1) := chr(39);
    edit_cnt NUMBER;
    BEGIN
    SELECT COUNT(*)
    INTO edit_cnt
    FROM edit_history eh
    WHERE eh.rept_inst = :f104_curinst
    AND eh.rept_time_frame = :f104_curterm
    AND eh.submission = :f104_cursubm
    AND eh.edit_complete_dtm IS NULL;
    univdb.exception_logging.insert_log(0, 'NO SQL ERROR', 'apex_editsubm','count=' || to_char(edit_cnt));
    IF edit_cnt = 0
    THEN
    INSERT INTO univdb.edit_history
    (rept_inst,
    rept_time_frame,
    submission,
    audit_id)
    VALUES
    (:f104_curinst,
    :f104_curterm,
    :f104_cursubm,
    :app_user);
    COMMIT;
    univdb.exception_logging.insert_log(0, 'NO SQL ERROR', 'apex_editsubm',
    'insert row successful');
    exec_stg := 'univdb.edit_any_submission(' || squote || :f104_curinst ||
    squote || ', ' || squote || :f104_curterm || squote || ', ' ||
    squote || :f104_cursubm || squote || ', ' || squote ||
    :app_user || squote || ');';
    univdb.exception_logging.insert_log(0, 'NO SQL ERROR', 'apex_editsubm',exec_stg);
    return_code := apex_plsql_job.submit_process(exec_stg);
    univdb.exception_logging.insert_log(0, 'NO SQL ERROR', 'apex_editsubm','return_code=' || to_char(return_code));
    commit;
    END IF;
    END;
    The calls to exception_logging write a row to a table so I can see what's happening in the process and I get the following rows writte:
    count=0
    insert row successful
    univdb.edit_any_submission('UNIV', '200701', 'TEF', 'ELSA_LESLIE');
    return_code=103
    The last message implies to me that the job was successfully submitted but when I query the apex_plsql_jobs table, job 103 does not exist and the procedure never gets executed. The procedure does work when tested outside of APEX.
    I checked all of my grants according to the post in this thread and they are all there:
    Re: Missing apex_plsql_job in 3.1
    Does anyone have a suggestion?
    ...elsa

    Hi Elsa
    I am also having similar problems calling the APEX_PLSQL_JOB.SUBMIT_PROCESS as well where it doesn't insert into the APEX_PLSQL_JOBS table.
    I also noticed that you used SCHEDULER. One of the challenges we are having is when the user presses the submit button, the browser hangs and doesn't return the result set until the process is complete. This process can take 20 mins before the screen loads saying the process was finished. I have tried used DBMS_JOB as we aren't on 10g and can not use SCHEDULER, but still having that issue where the user has to wait 20 mins before the process finishes.
    Did you ever solve that problem where the user clicks the button and then a page is returned immediately while the job is firing away with scheduler
    Any help would be great and much appreciated.
    Thanks

  • Billing Set up - Parallel jobs and size of set up table

    Hello All,
    I want to do a billing (13) set up using comp code, sales org and document number range as selection criteria.
    Would it be okay to to run jobs in parallel. I will be setting up jobs for different variants containing different document ranges. Would there be a conflict in running parallel jobs if they belong to same company codes/ sales org?
    Q.2 Is there a limit to which we can fill up the set up table and will need to empty it after transferring the data into BI?
    Thanks!
    Edited by: BI Quest on Oct 7, 2009 6:22 PM

    You can run multiple concurrent setup jobs without an issue. I'd recommend that you only execute 4 concurrently, however, unless you have a huge amount of memory on your source R3/ECC server(s). If you're using the Billing Document as part of the selection criteria, there shouldn't be a conflict. In fact, if you're using Billing Document as the selection criteria for your multiple setups, the Company Code and Sales Org designations really aren't necessary, unless the Billing Document numbering in your source R3/ECC environment has been configured to number based on Company Code and/or Sales Org, whereby you could have duplicate Billing Document numbers and the way to distinguish between them is to further qualify by Company Code and/or Sales Org.

  • I need to Clarify "JEST " table

    Hi All,
    I need to know the meaning of data stored in the column "STAT" of table JEST.
    Example:-
    I0001 - ?
    I0002 - ?
    I0010 - ?
    I0016 - ?
    I0028 - ?
    I0045 - ?
    I0056 - ?
    I0074 - ?
    I0118 - ?
    I0215 - ?
    I0321 - ?
    I0361 - ?
    I0369 - ?
    I0420 - ?
    These are some of the information stored how could I get the meaning of the rest stored in "STAT" column? AND what do they mean by "CHGNR" column?
    Thanks,
    Kishan

    Hi,
    These are not the texts but the status indicators what you have specified in the earlier post. These are customizing settings and can vary.
    TJ30T stores the long texts for these status indicators. for ex. 'I001',etc .
    To use the table TJ30T you need to know the Status Profile which is again a customzing done by Functional Consultant.
    Have a look at following sample code.
    Get the User Status of the Equipment.
        select single objnr from equi into z_objnr
                            where equnr = t_equnr-equnr.
        if sy-subrc = 0.
          select single stat from jest into z_stat where
                           objnr = z_objnr and inact <> 'X'.
          if sy-subrc = 0.
            select single txt30 from tj30t into z_txt04
                                where estat = z_stat
                                and stsma = 'ZEQUIP'.
            if sy-subrc = 0.
              t_pnwtyh_alv-stat = z_txt04.
            endif.
          endif.
        endif.
    Hope it helps.
    Regards,
    Shashank

  • Problem with jest table

    Hi,
    I want featch the data in jast table by using for all entries of aufk table.
    But just table object number have 22 characters and aufk table order number is 12 characters.
    in just table object number value is stroed like this   '00000000or23456789123' . but aufk table have order nuber is '23456789123'.
    how to compare it both.
    please  any one tell that one.

    Hi Anitha,
    The best way to approach this problem is to append the leading spaces with 0's in the search field. Actually you need to convert the Char 12 field into char 22 field. Then only this will work. You can use the function module :
    CONVERSION_EXIT_ALPHA_INPUT. But again there are some other Alphabetic Values then you need to make the changes manually in the field. And then prepare the search string and pass it to the table for search.
    Hope this will help.
    Thanks,
    Samantak.

Maybe you are looking for

  • Is it possible to install a non HP Branded Windows 7 OS on a HPE h8-1360t.

    Hi. I would like a clean install of Windows 7 Professional. I have a new OEM copy of it just waiting to be installed without any unnecessary HP branded software. Will it work? TIA

  • Custom Icon Frustration

    I built an AS3 component and designed a custom icon. Right-clicked symbol in library, selected component definition and clicked on the icon button (under description) to set an icon. When I select custom... my finder pops up and I can navigate to any

  • C3-01 Memory Card

    I purchased this phone 2 months ago and have had a problem with the memory from new.  I can only use the phone memory.  I tried 2 different memory cards 1gb and a 4gb (which was brand new).  The phone keeps telling me the cards are not formatted and 

  • Add SC Item Detail View as an usage in my own WDA?Can you guide me?

    As the title,I want to add SC detail view in my own WDA Viewcontainer. And use the item GUID to control the data. I tried to add the componet '/SAPSRM/WDC_UI_SC_OIF_CA' in the 'Used componet' and bind the 'IV_L_FPC_OIF_CA' in the view container. But

  • SAP USERS ROLE TABLE

    Can some one tell me the SAP USERS ROLE TABLE I Will assign point to any input. Balance Roll forward      Change Vendor Line Items Change Parked Vendor Document Change/ Reverse Vendor Invoice      Check Processing Clear Accounts Payable Items Display