First package size is bigger then others

Hi,
I am using a data source based on a function module to extract the data from R/3 to BW.
The issue is that the data pulls the data correctly and everything is fine.
But its the first data package which is always half the size of the all the data loads.
So suppose if the total number of records in one of the deltas is 800000 then the first data package will be of the size 400000 and the rest packages will be fine and of the equal and small size and defined in the system setting.
I tried changing the settings in infopackage but it has no effect on this first data package and issue remains.
We are using the same code as used by standard SAP function module code and we give the parameter MAXSIZE when opening the cursor at the desired table.
If any can point me out on how to reduce the size of first data package??
Thanks for the help
Ajeet

Dear Siggi,
You are write we are pulling lot of data during the datapackid=0
I just wnated to know if we can do something so that data is distributed to the other data packages equally.
Thanks for your answer
Ajeet

Similar Messages

  • Package Size parameter in Partner Profile

    Hello guys,
    I'd need your advice. We have 2 systems (SAP and Non-SAP) and we need to connect them by mean of HR-PDC interface (IDoc communication is supported). We can create new Partner Profile in SAP and we can add a few IDoc types as Inbound Parameters of the partner profile. Then it is possible to define maximal package size for several IDoc types. I suppose that the Non-SAP system reads the Partner Profile and the "Package Size" parameter for the particular IDoc type before it sends some IDoc to SAP system. IDoc's size is limited by the parameter.
    And now our problem. We need to insert XI between these 2 systems. XI should only forward IDocs and nothing else. How could I set up limitation of IDoc's size? Do you thing that following scenarion could be working?
    I would define Partner Profile in XI same way as in the previous case in SAP. XI is configured to process IDocs in Integration Server by means of IDoc adapter. My expectation is that the Non-SAP system would read the partner profile in XI (including "Package Size" parameter) and then it would send IDoc to XI. Then XI would process the received IDocs in IDoc adapter.
    How can be "Package Size" parameter useful for inbound IDocs?
    Best Regards,
    Zbynek

    Hello ,
                Check the blog below
    /people/michal.krawczyk2/blog/2007/12/02/xipi-sender-idoc-adapter-packaging
    Rajesh

  • Why Index size is bigger than table size?

    Dear All,
    I found in my database my tables sizes is coming around 30TB (All Tables in Database). and my index size for the same is 60TB. This is data ware housing environment.
    How the index size and table size are differing?
    Why they are differing? why index size is bigger than table size?
    How to manage the size?
    Please give me clear explanation and required information on the above.
    Regards
    Suresh

    There are many reasons why the total space allocated indexes could be larger than the total space allocated to tables. Sometimes it's a mark of good design, sometimes it indicates a problem. In your position your first move is to spend as little time as possible in deciding whether your high-level summary is indicative of a problem, so you need to look at a little more detail.
    As someone else pointed out - are you looking at the sizes because you are running out of space, or because you have a perceived performance problem. If not, then your question is one of curiosity.
    If it's about performance then you should be looking for code (either through statspack/AWR or sql_trace) that is performing badly and use the analysis of that code to help you identify suspect indexes.
    If it's about space, then you need to do some simple investigations aimed at finding a few indexes that can be "shrunk" or dropped. Pointers for this are:
    select
            table_owner, table_name, count(*)
    from
            dba_indexes
    group by
            table_owner, table_name
    having
            count(*) > 2   -- adjust to keep the output short
    order by
            count(*) desc;This tells you which tables have the most indexes - check the sizes of the tables and indexes and then check the index definitions for the larger tables with lots of indexes.
    Second quick check - join dba_tables to dba_indexes by table_name, and report the table blocks and index leaf blocks in desending order of leaf block count. Look for indexes which are very big, and also bigger than their underlying tables. There are special cases (and bugs) that can cause indexes to be much bigger than they need to be ... this report may identify a couple of anomalies that could benefit from an emergency fix followed (possibly) by a strategic fix.
    Regards
    Jonathan Lewis

  • Select command using package size

    Hi all,
    I have to fetch the same record comparing the records from two data base table for which i m using
    select * from dbtab1 into table  itab1 package size n
    select * from dbtab2 into itab2
    where field = itab1-field.
    endselect.
    the loop of select is executed once for second time its givin dump.
    please help.
    regards,
    Gayatri

    Hi Gayatri,
    You can try following code:
    DATA: l_itab1 LIKE itab1 OCCURS 0 WITH HEADER LINE.
    Select first data for first select statement. Then select data for second select statement outside the ***** first select statement.
    SELECT *
        FROM dbtab1
        INTO TABLE itab1
        PACKAGE SIZE n
    ENDSELECT.
    IF NOT itab1[] IS INITIAL.
       SORT itab1 by field.
       l_itab1[] = itab1[].
       SELECT *
       FOR ALL ENTRIES IN l_itab1
       FROM dbtab2
       INTO itab2
      WHERE field = l_itab1-field.
    ENDIF.
    Hope this help you.
    Regards,
    Anil
    Edited by: Anil Salekar on Feb 23, 2009 11:45 AM

  • Automatic rule and package size

    Hi Guys,
    We've set an automatic rule for windows patching... to download on patch Tuesdays and deploy to our pilot machines. However, the deployment package is getting bigger and bigger. It's up to 2gb now. I only want the package to have last months patches
    and purge the rest. Is there anyway to accomplish this?
    Thanks in advance.

    For the package size, you simply create a new one manually every 3, 6, 9, ... months (take your pick) and then reassign the package in the ADR. Pre-R2 you will have to do this with PowerShell. Post R2 you can do it in the UI.
    As for the compliance groups for older updates, what happens when a system comes online that needs an update? Older updates typically already have exploits in the wild for the vulnerability that they fix so that system is at risk (as is the rest of the organization)
    because the update isn't available.
    Jason | http://blog.configmgrftw.com

  • Data package size

    What is the basic difference between RSCUSTV6 & SBIW->General setting ->Maintain Control parameters in relation of modification of data package format.

    Hi,
    Just see the help on
    Maintain Control Parameters for Data Transfer:
    1. Source System
    Enter the logical system of your source client and assign the control parameters you selected to it.
    You can find further information on the source client in the source system by choosing the path
    Tools -> Administration -> Management -> Client Maintenance.
    2. Maximum Size of the Data Package
    When you transfer data into BW, the individual data records are sent in packages of variable size. You can use these parameters to control how large a typical data packet like this is.
    If no entry was maintained then the data is transferred with a default setting of 10,000 kBytes per data packet. The memory requirement not only depends on the settings of the data package, but also on the size of the transfer structure and the memory requirement of the relevant extractor.
    3. Maximum Number of Rows in a Data Package
    With large data packages, the memory requirement mainly depends on the number of data recrods that are transferred with this package. Using this parameter you control the maximum number of data records that the data package should contain.
    By default a maximum of 100,000 records are transferred per  data package.
    The maximum main memory requiremen per data package is approximately 2  Max. Rows 1000 Byte.
    4. Frequency
    The specified frequency determines the number of IDocs that an Info IDoc is to be sent to, or how many data IDocs an Info Idoc describes.
    Frequency 1 is set by default.. This means that an Info Idoc follows every data Idoc. In general, you should select a frequency between 5 and 10 but no higher than 20.
    The bigger the data IDoc packet, the lower the frequency setting should be. In this way, when you upload you can obtain information on the respective data loading in relatively short spans of time .
    With the help of every Info IDoc, you can check the BW monitor to see if there are any errors in the loading process. If there are none, then the traffic light in the monitor will be green. The Info IDocs contain information such as whether the respective data IDocs were uploaded correctly.
    5. Maximum number of parallel processes for the data transfer
    An entry in this field is only relevant from release 3.1I onwards.
    Enter a number larger than 0. The maximum number of parallel processes is set by default at 2. The ideal parameter selection depends on the configuration of the application server, which you use for transferring data.
    6. Background job target system
    Enter the name of the application server on which the extraction job is to be processed.
    To determine the name of the application server, choose
    Tools -> Administration -> Monitor -> System monitoring -> Server. The name of the application server is displayed in the column Computer.
    7. Maximum Number of Data Packages in a Delta Request
    With this parameter, you can restrict the number of data packages in a delta request or in the repetition of a delta request.
    Only use this restriction when you expect delta requests with a very high data volume, so that, despite sufficiently large data package sizes, more than 1000 data packages can result in a request.
    With an initial value or when the value is 0, there is no restriction. Only a value larger than 0 leads to a restriction in the number of data packages. For reasons of consistency, this number is not generally exactly adhered to. The actual restriction can, depending on how much the data is compressed in the qRFC queue , deviate from the given limit by up to 100.
    RSA6:
    Used to change the Datapacket Size.
    Thanks
    Reddy
    Edited by: Surendra Reddy on Mar 12, 2010 6:27 AM

  • Impact of Changing Data Package Size with DTP

    Hi All,
    We have delta dtp to load data from DSO to infocube. Default data package size with dtp is 50,000 records.
    Due to huge no of data, internal table memory space is used and data loading get fails.
    Then we changed the data package size to 10,000, which executes the data load successfully.
    DTP with package size of 50,000 took 40 minutes to execute and failed, but DTP with package size of 10,000 took 15 minutes (for same amount of data).
    Please find below my questions:
    Why a DTP with bigger size of packet runs longer than a DTP with lower packet size ?
    Also by reducing the standard data package size 50,000 to 10,000, will it impact any other data loading?
    Thanks

    Hi Sri,
    If your DTP is taking more time then check your transformation .
    1.Transformation with Routines always take more time so you if you want to reduce the time of execution then routine should be optimized for good performance .
    2.Also check if you have filter at DTP level .Due to filters DTP takes long time .If same data get filtered at routine level it take much lesser time .
    3.If you cannot change routine then you can set semantic keys at your DTP .The package data will be sorted as per semantic keys and thus it may be helpful at routine level for fast processing.
    4.Your routine is getting failed due to  internal table memory space so check if you have select statement in routine without FOR ALL ENTRIES IN RESULT_PACKAGE or SOURCE_PACKAGE line .if you will use this It will reduce record count .
    5.Wherever possible delete duplicate records and if possible filter useless data at start routine itself .
    6.Refresh internal table if data no longer needed .If your tables are global then data will be present at every routine level so refreshing will help to reduce size.
    7.The maximum memory that can be occupied by an internal table (including its internal administration) is 2 gigabytes. A more realistic figure is up to 500 megabytes.
    8.Also check no of jobs running that time .May be you have lots of jobs active at the same time so memory availability will be less and DTP may get failed .
    Why a DTP with bigger size of packet runs longer than a DTP with lower packet size ?
    *Start and end routine works at package level so routine run for each package one by one .By default package have sorted data based on keys (non unique keys (characteristics )of source or target) and by setting semantic keys you can change this order.So Package having more data will take more time in processing then package have lesser data .
    by reducing the standard data package size 50,000 to 10,000, will it impact any other data loading?
    It will only impact running of that load .but yes if lots of other loads are running simultaneously then server can allocate more space to them .So better before reducing package size just check whether it is helpful in routine performance (start and end ) or increasing overhead .
    Hope these points will be helpful .
    Regards,
    Jaya Tiwari

  • Issue when number of records in a DSO exceeds DTP package size

    Hi all,
    I'm having a strange problem with the package size of my DTPs.
    I move data from a DSO to another one while performing some transformations in an Export routine. The DTP has a package size of 6 million records.
    When the number of records in the first DSO exceeds the package size, some of the records seem not to be processed properly by the transformation and this forces me to choose a very large number for the package size so that the ABAP code in the transformation is processed for all the records of the source DSO.
    I can't understand why this is happening because package size is only supposed to determine the number of records to be processed in a single step and nothing else.
    Am I right?
    Thanks

    My tip would also be the summary item

  • Need you help !!! -- How to set PACKAGE SIZE in CURSOR?

    Dear experts:
    Does anybody know how to set the package size if you use cursor in your abap program?
    My scenario is to select all the data from MARA table in which the data volumn is very big, and then process for some specific logic. When I try to select them into one internal table or use CURSOR without package, my abap program will abort after running for around 1 hour. So I was thinking if I can use cursor and set the PACKAGE SIZE like 10,000 and process the data by batch.
    Here is my sample code:
    OPEN CURSOR: CUR_MARA_TBL FOR
    SELECT * FROM MARA.
    DO.
    FETCH NEXT CURSOR CUR_MARA_TBL INTO CORRESPONDING FIELDS OF WA_MARA_TBL.
    IF sy-subrc = 0.
    ......Detail logic......
    ENDIF.
    ENDDO.
    I would appreciate if anybody can let me know how to set the package size based on the sample code above, or any webpage/article about that.
    Any reply would be appreciated and thank you all in advance!
    Best Regards.
    Tim
    Moderator message: please study F1 help for FETCH statement.
    locked by: Thomas Zloch on Sep 8, 2010 4:10 PM

    The Spark List's layout property has the requestedRowCount and requestedMinRowCount properties.
    You can either set a new layout property on your List like this:
    <s:List>
            <s:layout>
                <s:VerticalLayout requestedMinRowCount="1" />
            </s:layout>
        </s:List>
    or reskin the List and modify the VerticalLayout in your copy of ListSkin.
    Jason

  • Report for all RAP advertisements with Package size.

    Hi,
    I have received a requirement to get the information about all the advertisements published in RAP along with package details like (Package Name/version/ and Package size).
    I have two different working reports, merging these two reports would suffice my requirements.
    Please help to merge below two reports.
    1.  
    SELECT DISTINCT p.PackageID, p.Name,p.Version, p.SourceVersion, 'Source Size (MB)' = n.SourceSize/1024
     FROM v_Package p
     LEFT JOIN
     v_PackageStatusRootSummarizer n
     ON
     p.PackageID = n.PackageID
    order by Name
    2.
    SELECT v_Advertisement.AdvertisementName,
    v_Advertisement.Comment, 
    v_Package.Name AS C062,
    ProgramName,
    v_Advertisement.SourceSite,
    CASE WHEN AssignedScheduleEnabled != 0 or
                                          (AdvertFlags & 0x720) != 0
    THEN '*'
    ELSE ''
    END AS C063,
    v_Collection.Name as C064, 
    CASE IncludeSubCollection
    WHEN 1 THEN '*'
    WHEN 0 THEN ''
    END AS C065,
    AdvertisementID
    FROM v_Advertisement 
    INNER JOIN v_Package ON v_Advertisement.PackageID = v_Package.PackageID
    INNER JOIN v_Collection ON v_Advertisement.CollectionID = v_Collection.CollectionID
    ORDER BY v_Advertisement.AdvertisementName
    The Lightning Khan

    SELECT
    p
    .PackageID,
    p.Name,p.Version,
    p.SourceVersion,
    'Source Size (MB)'
    = n.SourceSize/1024,
    v_Advertisement
    .AdvertisementName,
    v_Advertisement
    .Comment,
    p
    .Name
    AS C062,
    ProgramName
    v_Advertisement
    .SourceSite,
    CASE
    WHEN AssignedScheduleEnabled
    != 0
    or
    (AdvertFlags
    & 0x720)
    != 0
    THEN
    ELSE
    END
    AS C063, 
    v_Collection
    .Name
    as C064,
    CASE
    IncludeSubCollection
    WHEN
    1 THEN
    WHEN
    0 THEN
    END
    AS C065,
    AdvertisementID
    FROM v_Advertisement
    INNER
    JOIN v_Package p
    ON v_Advertisement.PackageID
    = p.PackageID
    INNER
    JOIN v_Collection
    ON v_Advertisement.CollectionID
    = v_Collection.CollectionID
    LEFT
    JOIN  v_PackageStatusRootSummarizer n 
    ON  p.PackageID
    = n.PackageID
    ORDER
    BY v_Advertisement.AdvertisementName
    John Marcum | Microsoft MVP - Enterprise Client Management
    My blog: System Center Admin | Twitter:
    @SCCM_Marcum | Linkedin:
    John Marcum

  • Error in select query with package size

    Hi Experts,
    I have an issue.
    SELECT * FROM (w_tab-tablename) I
    NTO CORRESPONDING FIELDS OF TABLE <lt_data> PACKAGE SIZE 10000.
    Am splitting the table for every 10000 records,for first time the select query is successful.
    But when it comes for the second 10000 records,its throwing the following dump.
    "DBIF_RSQL_INVALID_CURSOR"
    Help Appreciated

    Hi,
       There are a few instances where you get this error.
        1) If you are debugging inside select ... endselect.
        2) You have written any of the below statements inside select ... endselect.
    Please look at the dump .. you'll find the below ..
    MESSAGE (apart from MESSAGE S...)                                       
    COMMIT WORK                                                             
    ROLLBACK WORK                                                           
    BREAK-POINT                                                             
    WAIT                                                                    
    CALL FUNCTION ... DESTINATION (synchronous RFC)                         
    CALL FUNCTION ... STARTING NEW TASK                                     
    RECEIVE RESULTS                                                         
    CALL DIALOG                                                             
    CALL SELECTION-SCREEN                                                   
    CALL TRANSACTION                                                        
    CALL SCREEN, or any other statement that results in the display of a    
    new screen                                                              
    Regards,
    Srini.

  • Maximum package size for data packages was exceeded and Process terminated

    Hello Guru,
    When i am execute the process chain i got this message Maximum package size for data packages was exceeded and Process terminated,any body help to me in this case how can i proceed.
    Thanks & Regards,
    Suresh.

    Hi,
    When the load is not getiing processed due to huge volume of data, or more number of records per data packet, Please try the below option.
    1) Reduce the IDOC size to 8000 and number of data packets per IDOC as 10. This can be done in info package settings.
    2) Run the load only to PSA.
    3) Once the load is succesfull , then push the data to targets.
    In this way you can overcome this issue.
    You can also try RSCUSTV* where * is an integer to change data load settings.
    Change Datapackage size for extraction, use Transaction RSCUSTV6.
    Change Datapackage size when upload from an R/3 system, set this value in R/3 Customizing (SBIW -> General settings -> Control parameters for data transfer).
    IN R/3, T-Code SBIW --> Genaral settings --> Maintain Control Parameters for Data Transfer (source system specific)
    Hope this helps.
    Thanks,
    JituK

  • Package size in select query

    Hi all,
    Can any body help for how to use package size in select statemtent.
    I want to seletc record in lot of 300 form 10k records.
    And i am using 4.6c version and wnat to know this statement (package size) is there in 4.6c.
    I know it is in 6.0.

    Hi
    Package size in SELECT statements
    Package size can be used to retreive a spcific number of records at a time. This can be used if you
    for example only want tofinish  processing a limited amount of data at a time due to lack of memory.
    The exampel below  read 50 records at a time from VBAK into an internal table, and selects the
    corresponding entries from vbap into an internal table. Then the two internal tables can be
    processed, and the next 50 records from VBAk can be read. remeber to reinitialize tha tables before
    the next read.
    Note the usage of SELECT - ENDSELECT !
    REPORT  z_test                        .
    TYPES:
    BEGIN OF t_vbak,
    vbeln LIKE vbak-vbeln,
    erdat LIKE vbak-erdat,
    END OF t_vbak,
    BEGIN OF t_vbap,
    posnr  LIKE vbap-posnr,
    matnr  LIKE vbap-matnr,
    meins  LIKE vbap-meins,
    END OF t_vbap,
    BEGIN OF t_report,
    vbeln LIKE vbak-vbeln,
    erdat LIKE vbak-erdat,
    posnr  LIKE vbap-posnr,
    matnr  LIKE vbap-matnr,
    meins  LIKE vbap-meins,
    END OF t_report.
    DATA:
    li_vbak   TYPE t_vbak OCCURS 0,
    l_vbak    TYPE  t_vbak,
    li_vbap   TYPE t_vbap OCCURS 0,
    l_vbap    TYPE t_vbap,
    li_report TYPE t_report OCCURS 0,
    l_report  TYPE t_report.
    START-OF-SELECTION.
    SELECT vbeln erdat
    FROM vbak
    INTO TABLE li_vbak PACKAGE SIZE 50.
    SELECT posnr matnr meins
    FROM vbap
    INTO TABLE li_vbap
    FOR ALL ENTRIES IN li_vbak
    WHERE vbeln = li_vbak-vbeln.
    IF sy-subrc = 0.
      Now you have the two internal tables li_vbak and liÆ_vbap filled with data.
      Do something with the data - remember to reinitialize internal tables
    ENDIF.
    ENDSELECT.
    All of the  product names here are trademarks of their respective companies.  The site
    www.allsaplinks.com no way affiliated with SAP AG. We have made every effort for the content
    integrity.  Information used on this site is at your own risk.
              +
    REWARD IF USEFULL+ 

  • Maximum package size?

    What is the maximum allowable package size? Because when i try to install a 2.2 GB package i get this error:
    loading package data... could not open package: File too large

    you could always do it manually.
    use a pkgbuild top create an empty pkg, (a pkg with nothing i it) using the correct details etc.
    so u can be sure everythign will work, then extract .PK* files from it, place the game in a dir say pkgame then put the .PK* files in root of that directory.
    then compress it. u should then have a valid pkg.

  • How to determine package size dynamically for select - endselect statement in ABAP

    Hi All,
    I was using select- edselect with package size but i have hard coding the package size. Can any one tell me the the process to determine dynamic package size so that i can use in parallel processing.

    Hi,
    If you are looking to determine or set the value of package size dynamically then use below code for reference.
    DATA: itab TYPE TABLE OF spfli,
           wa like LINE OF itab,
           n    TYPE i.
    n = 10.
    SELECT carrid connid
    FROM   spfli
    INTO   CORRESPONDING FIELDS OF TABLE itab
    PACKAGE SIZE n.
       LOOP AT itab INTO wa.
         WRITE: / wa-carrid, wa-connid.
       ENDLOOP.
    ENDSELECT.
    If you are concerned about the performance then either use SELECT with OPEN CURSOR and CLOSE CURSOR.
    Let me know if it helped?
    Regards,
    Zuber

Maybe you are looking for