Last hope on performance issues in ECC 6
This forum is my last hope for help on this issue.
We just recently went from 4.6c, oracle 9-something to ecc 6, oracle 10g.
We have found that report performance in the background has been TERRIBLE in comparison to the old version. Especially CO reports and PS reports. We have spent countless hours on analyss and program changes, and OSS note applications, and have exhausted evey means to find the underlying issue that the upgrade seems to have caused.
The biggest issue we found were changes to the PSJ logical database, and we fixed that.
We have looked both on the Oracle side and the SAP side.
Still reports are running 3-4 times longer.
We are non-unicode
Has anyone else run into this issue?
I´d do an SQL trace (ST05), switch it on for a user, start the report and let it run until it bombs out with timeout. Then switch off the trace and evaluate it.
Also check note 871096 and install the patches listed for your platform.
Did you create database statistics after you did your upgrade?
In any case, create an SQL trace and open an OSS call on BC-DB-ORA telling the support your problems and let them have a look at the execution plan of your statement.
Markus
Similar Messages
-
Performance issue in ECC 6.0
HI Experts,
The client has upgraded to ECC 6.0 from 4.6c, everything works fine but the only problem is that the users complain that the server is slow. The client has done a memory upgrade from 8Gb to 16 Gb but the problem still pertains. The server is Up and running and there is no problem at all.
The ECC runs on this WIN NT server and the DB2 database is connected to it through the IBM server. They use DB2connect
They dont have any application servers.
After the upgrade their system performance declined,
Users are complaining that the response time of the system is very slow. Also while executing some transaction codes like GD13, the system just throws the user out after a while.
they have to execute the transaction in steps.The ST02 shows a lot of swaps in the program buffer and the EXport/ IMport buffer. Also in ST02,SAP memory section
we can see that the Max Use is 2 times that of the In Memory for the Page Area.
In ST03N, the DB time for the background work process type is much greater than the processing time.
Please let me know if i have missed out any details.
I am attaching the parameters here below for further information. Please let me know what are the parameters that have to be modified for solving this error. I am not a pro in performance tuning and that is the reason seeking help from the GURU's
Thank you in advance and please let me know if more details are required
SACHIN
03/06/2008 Active parameters 08:25:57
Parameter Name
Parameter value
|SAPDBHOST sapgbeth
|j2ee/dbtype db2
|j2ee/dbname DB2P
|j2ee/dbhost SAPPRD
|SAPSYSTEMNAME PRD
|SAPGLOBALHOST sapap4
|rdisp/bufrefmode sendoff,exeauto
|rdisp/mshost sapap4
|rdisp/msserv sapmsPRD
|rdisp/msserv_internal 3900
|j2ee/scs/host sapap4
|j2ee/scs/system 31
|j2ee/ms/port 3931
|SAPTRANSHOST sapap2
|login/system_client 300
Instance parameters
Active parameters 08:33:11
Parameter Name
Parameter value
|icm/server_port_1 |PROT=SMTP,PORT=25
|zcsa/table_buffer_area |120000000
|rsau/selection_slots |5
|rsau/enable |1
|zcsa/presentation_buffer_area |44000000
|rdisp/gui_auto_logout |7200
|rdisp/noptime |14400
|rdisp/wp_auto_restart |14400
|rsdb/ntab/entrycount |70000
|rsdb/esm/buffersize_kb |4096
|rsdb/esm/max_objects |2000
|rsdb/ntab/ftabsize |62500
|rsdb/ntab/irbdsize |30000
|rsdb/ntab/sntabsize |2500
|rsdb/obj/buffersize |32000
|rsdb/obj/max_objects |20000
|rsdb/otr/buffersize_kb |4096
|rtbb/buffer_length |30000
|rtbb/max_tables |500
|sap/bufdir_entries |4500
|zcsa/db_max_buftab |25000
|abap/buffersize |850000
|SAPSYSTEMNAME |PRD
|SAPGLOBALHOST |sapap4
|SAPSYSTEM |00
|INSTANCE_NAME |DVEBMGS00
|DIR_CT_RUN |$(DIR_EXE_ROOT)\$(OS_UNICODE)\NTAMD64
|rsdb/cua/buffersize |12500
|DIR_EXECUTABLE |$(DIR_INSTANCE)\exe
|jstartup/trimming_properties |off
|jstartup/protocol |on
|jstartup/vm/home |C:\j2sdk1.4.2_14-x64\
|login/fails_to_user_lock |4
|login/password_expiration_time |30
|jstartup/max_caches |500
|jstartup/release |700
|jstartup/instance_properties |$(jstartup/j2ee_properties);$(jstartup/sdm_properties)
|j2ee/dbdriver |C:/Program Files/IBM/SQLLIB/\java\/db2jcc.jar;C:/Program Files/IBM/SQLLIB/\java\/db2jcc_license_cisuz.jar
|rdisp/wp_no_dia |12
|rdisp/wp_no_btc |8
|rdisp/j2ee_start_control |1
|rdisp/j2ee_start |1
|rdisp/j2ee_libpath |$(DIR_EXECUTABLE)
|exe/j2ee |$(DIR_EXECUTABLE)\jcontrol$(FT_EXE)
|rdisp/j2ee_timeout |600
|rdisp/frfc_fallback |on
|icm/HTTP/j2ee_0 |PREFIX=/,HOST=localhost,CONN=0-500,PORT=5$$00
|icm/server_port_0 |PROT=HTTP,PORT=80$$
|ms/server_port_0 |PROT=HTTP,PORT=81$$
|rdisp/wp_no_enq |1
|rdisp/wp_no_vb |8
|rdisp/wp_no_vb2 |1
|login/min_password_lng |4
|rdisp/wp_no_spo |2
|dbms/type |db2
|dbs/db2/schema |SAPR3
|dbs/db2/use_drda |1
|dbs/db2/ssid |DB2P
|dbs/db2/hosttcp |sapprd
dbs/db2/user
PRDADM
|rsdb/max_blocking_factor |10
|rsdb/max_in_blocking_factor |10
|rsdb/min_blocking_factor |3
|rsdb/min_in_blocking_factor |3
|rsdb/prefer_fix_blocking |0
|rsdb/prefer_union_all |1
|rsdb/prefer_in_itab_opt |1
|j2ee/instance_id |ID0058933
Active parameters 08:34:47
Parameter Name
Parameter value
SAPSYSTEMNAME
PRD
|SAPGLOBALHOST |sapap4
|SAPSYSTEM |00
|INSTANCE_NAME |DVEBMGS00
|DIR_CT_RUN |$(DIR_EXE_ROOT)\$(OS_UNICODE)\NTAMD64
|DIR_EXECUTABLE |$(DIR_INSTANCE)\exe
|DIR_PROFILE |$(DIR_INSTALL)\profile
|_PF |$(DIR_PROFILE)\PRD_DVEBMGS00_sapap4
|Start_Program_00 |immediate $(DIR_CT_RUN)\sapcpe$(FT_EXE) pf=$(_PF)
|_MS |$(DIR_EXECUTABLE)\msg_server$(FT_EXE)
|Start_Program_01 |local $(_MS) pf=$(_PF)
|_DW |$(DIR_EXECUTABLE)\disp+work$(FT_EXE)
|Start_Program_02 |local $(_DW) pf=$(_PF)
|_IG |$(DIR_EXECUTABLE)\igswd$(FT_EXE)
|Start_Program_03 |local $(_IG) -mode=profile pf=$(_PF)
|dbms/type |db2
|dbs/db2/schema |SAPR3
|dbs/db2/use_drda |1
|dbs/db2/ssid |DB2P
|dbs/db2/hosttcp |sapprd
|dbs/db2/user |PRDADM
|rsdb/max_blocking_factor |10
|rsdb/max_in_blocking_factor |10
|rsdb/min_blocking_factor |3
|rsdb/min_in_blocking_factor |3
|rsdb/prefer_fix_blocking |0
|rsdb/prefer_union_all |1
|rsdb/prefer_in_itab_opt |1
ST02 details
System: sapap4_PRD_00 Tune summary
Date + Time of Snapshot: 03/06/2008 09:12:54 Startup: 02/28/2008 17:00:25
Buffer
HitRatio %
Alloc. KB
Freesp. KB
% Free Sp.
Dir. Size
FreeDirEnt
% Free Dir
Swaps
DB Accs
Nametab (NTAB)
0
Table definition
99.81
17,230
8,898
66.41
70,000
46,486
66.41
0
35,319
Field definition
99.82
67,969
1,093
1.75
70,000
50,465
72.09
3,122
23,024
Short NTAB
99.81
4,688
1,494
59.76
17,500
14,009
80.05
0
3,491
Initial records
77.19
32,188
25,367
84.56
17,500
204
1.17
0
17,333
0
program
99.86
850,000
2,503
0.31
212,500
187,621
88.29
16,688
133,368
CUA
99.89
12,500
1,687
15.43
6,250
4,841
77.46
0
1,440
Screen
99.92
42,969
4,178
9.78
4,500
2,539
56.42
0
2,025
Calendar
100.00
488
407
85.32
200
111
55.50
0
89
OTR
100.00
4,096
3,594
100.00
2,000
2,000
100.00
0
0
Tables
0
Generic Key
99.96
117,188
10,484
9.40
25,000
963
3.85
19
91,258
Single record
99.43
30,000
19,703
66.00
500
307
61.40
0
100,286
0
Export/import
87.05
32,000
345
1.28
20,000
7,881
39.41
20,674
Exp./ Imp. SHM
96.21
4,096
3,487
97.02
2,000
1,999
99.95
0
SAP Memory
Curr.Use %
CurUse[KB]
MaxUse[KB]
In Mem[KB]
OnDisk[KB]
SAPCurCach
HitRatio %
Roll area
6.99
18,328
24,152
262,144
0
IDs
88.76
Page area
11.15
29,222
262,136
131,072
131,072
Statement
86.00
Extended memory
13.28
2,228,224
4,182,016
16,773,120
0
0.00
Heap memory
0
0
1,953,199
0
0.00
Call Stati
HitRatio %
ABAP/4 Req
ABAP Fails
DBTotCalls
AvTime[ms]
DBRowsAff.
Select single
99.59
43,894,293
12,780,161
318,640
0
31,114,132
Select
91.37
83,904,537
0
1,381,069
0
10,468,946
Insert
0.00
27,752
11,469
28,873
0
48,575
Update
0.00
102,654
5,118
104,414
0
97,141
Delete
0.00
50,367
44,486
52,487
0
45,787
Total
95.48
127,979,603
12,841,234
1,885,483
0
41,774,581Hi,
How is the database server operating system coping in terms of CPU load and memory? and what is the db data cache hit ratio in ST04?
I would look into the following things, network configuration between database and central instance, and the load on the DB server cpu load/memory and possibly the most important the DB2 memory and configuration instead of focusing on the SAP application server in case of high DB times.
Please be aware of the fact that tables in upgrade from 4.6C to ECC increase from about 30000 to 60-70000 and db tuning is the most likely explanation for your problems.
Regards
Sindri -
Performance issue in ECC 6.0, pls help!
Dear all,
I have a join statement which works fine with the same data in 4.6 C but in the upgraded system it is too slow.
SELECT PA0105USRID PA0001BUKRS PA0001~GSBER
INTO TABLE I_pa0001
FROM PA0105 INNER JOIN PA0001 ON PA0001PERNR = PA0105PERNR
FOR ALL ENTRIES IN i_apqi
WHERE PA0001~ENDDA EQ '99991231'
AND PA0001~BUKRS IN S_bukrs
AND PA0001~GSBER IN S_GSBER
AND PA0105~SUBTY EQ '0001'
and pa0105~usrid = i_apqi-creator
AND PA0105~ENDDA EQ '99991231'.
Table i_apqi has a list of user ids. This is taking around 6 minutes which is too much. Any ideas to improve this?
Will be happy to reward points for the answers
Regards
VeenaHi,
I think you could use this code.
IF i_apqi[] IS NOT INITIAL.
SELECT PA0105~USRID PA0001~BUKRS PA0001~GSBER
INTO TABLE I_pa0001
FROM PA0105 INNER JOIN PA0001 ON PA0001~PERNR = PA0105~PERNR
FOR ALL ENTRIES IN i_apqi
WHERE pa0105~usrid = i_apqi-creator
AND PA0001~ENDDA EQ '99991231'
AND PA0001~BUKRS IN S_bukrs
AND PA0001~GSBER IN S_GSBER
AND PA0105~SUBTY EQ '0001'
AND PA0105~ENDDA EQ '99991231'
%_HINTS ORACLE 'FIRST_ROWS'.
ENDIF.
But your table i_apqi must have than first row creator
Brgds
Julien -
Performance issue after Upgrade from 4.7 to ECC 6.0 with a select query
Hi All,
There is a Performance issue after Upgrade from 4.7 to ECC 6.0 with a select query in a report painter.
This query is working fine when executed in 4.7 system where as it is running for more time in ECC6.0.
Select query is on the table COSP.
SELECT (FIELD_LIST)
INTO CORRESPONDING FIELDS OF TABLE I_COSP PACKAGE SIZE 1000
FROM COSP CLIENT SPECIFIED
WHERE GJAHR IN SELR_GJAHR
AND KSTAR IN SELR_KSTAR
AND LEDNR EQ '00'
AND OBJNR IN SELR_OBJNR
AND PERBL IN SELR_PERBL
AND VERSN IN SELR_VERSN
AND WRTTP IN SELR_WRTTP
AND MANDT IN MANDTTAB
GROUP BY (GROUP_LIST).
LOOP AT I_COSP .
COSP = I_COSP .
PERFORM PCOSP USING I_COSP-_COUNTER.
CLEAR: $RWTAB, COSP .
CLEAR CCR1S .
ENDLOOP.
ENDSELECT.
I have checked with the table indexes, they were same as in 4.7 system.
What can be the reson for the difference in execution time. How can this be reduced without adjusting the select query.
Thanks in advance for the responses.
Regards,
Dedeepya.Hi,
ohhhhh....... lots of problems in select query......this is not the way you should write it.
Some generic comments:
1. never use SELECT
endselect.
SELECT
into table
for all entries in table
where.
use perform statment after this selection.
2. Do not use into corresponding fields. use exact structure type.
3. use proper sequence of fields in the where condition so that it helps table go according to indexes.
e.g in your case
sequence should be
LEDNR
OBJNR
GJAHR
WRTTP
VERSN
KSTAR
HRKFT
VRGNG
VBUND
PARGB
BEKNZ
TWAER
PERBL
sequence should be same as defined in table.
Always keep select query as simple as possible and perform all other calculations etc. afterwords.
I hope it helps.
Regards,
Pranaya -
Performance issue - in 4.7 ( previously worked in ECC 6 only)
Hi experts,
I have worked on ECC 6.0 and now i have got a new job and now working in 4.7 for support project. I feel it is very difficult after working in 6.0.
I have not used occurs 0, like etc.. statements in 6.0.
In 4.7 what are the things that i should consider to avoid performance issues.
plz guide me.
thanks in advance.Hi Sakthi,
I faced the same problem,. I am in support now for last 3 months...
So let me share some of the tips and tricks I follow...
In ECC 6.0 there is always less data... since the database may be from 2005 but not early than that...
But for 4.7 EE it may be from 1997 also... like mine...
Since of a huge database,,, some times the select statements you write will not work in PRD & QAS..
You will get Request Timed Out.
So you need to be more carefull at select statements,,, match as many as primary keys.. and learn Secondary indexes,,, and must should have a good idea on foreign key relations very well...
About the like or Occurs..etc. you dont worry about that,, that is very easy.... and if there is a modification you can write the code almost all like the ECC 6.0...
In SAP Wiki, there are performance tips & Coding procedures.. Lokk at that it will be help full...
Thanks & regards,
Dileep .C -
Performance issue with COEP table in ECC 6
Hi,,
Any idea how to resonlve performance issue on COEP table in ECC6.0
We are not using COEP table right now. this table occupies 100gb of 900 gb in PRD system.
Can i directly archive/delete the table?
Regards
SivaHi Siva,
You cannot archive COEP table alone. It should be archived along with the respective archive object. Just deleting the table is not at all a good idea.
For finding out the appropriate archive object contributing to the entries in COEP, you need to perform CO table analysis using programs RARCCOA1 and RARCCOA2. For further informaton refer to SAP note 138688.
Hope this helps,
Naveen -
Performance issues with SAP BPC 7.0/7.5 (SP06, 07, 08) NW
Hi Experts
There are some performance issues with SAP BPC 7.5/7.0 NW, users are saying they are not getting data or there are some issues while getting data from R/3 system or ECC 6.0. Then what things do I need to consider to check, such as what DataSources or Cubes I need to check? So, how to solve this issue?
What things I need to consider for SAP NW BI 7.0 u2013 SAP BPC 7.5 NW (SP06, 07, 08) Implementation?
Your help is greatly appreciated.
Regards,
QadeerHi,
New SP was released in February, and now most of the new bugs should been caught ,This has a Central Note. For SP06 it's Note 1527325 - Planning and Consolidation 7.5 SP06 NetWeaver Central Note to fix any issues. Most of the improvements in SP06 were related to performance, especially when logging on from the BPC clients.There you should be able to find a big list of fixes/improvements and Notes that describe those. Some of the Notes even have test description how to reproduce that issue in the old version.
hope this will help you
Regards
Rv -
Many-to-many performance issue
I realize that many-to-many joins have been discussed before (yes, I looked through many threads), but I'm having a slight variation on the issue. Our data warehouse has been functioning for a couple of years now, but we're now experiencing a dramatic degradation in report performance. I'll tell you everything I know and what I've tried. My hope is that someone will have an idea that hasn't occurred to me yet.
The troubling data links deal with accounts and account_types. Each transaction will have one account, but each account can have multiple account_types and each account_type is made up of multiple accounts. It ends up looking like this:
Transaction_cube --< account_dimension >--< account_type_table
Given the many-to-many relationship between account and account_type, this is the only architecture I could come up with that will maintain data integrity in the transaction cube.
I know that this is the cause of the performance issues because the reports run normally when this is removed. The volume of data obviously increases over time, but the problem appeared very suddenly -- not a gradual degradation that one would expect from a volume issue. The cube is partitioned by year and we're a little below last year's growth.
The other fact to throw in is that the account_type table did increase in size by an additional 30% when we first noticed the problem. However, the business was able to go back and remove half of the account_types (unused types) so now the table has fewer rows than it had before we noticed the problem (~15k rows in the account_type table).
We have tried pinning the table so that it remain in memory, but that did not help. I tried creating a materialized view combining accounts and account_types with a similar lack of improvement. I've tried adding indexes, but there is still a full-table scan. All database objects are analyzed nightly after the data load is completed.
I'm fresh out of ideas at this point. Any suggestions and/or ideas would be greatly appreciated.I've thought about that. What it would mean would be aprox. 20 additional columns for each of the different account_types. Unfortunately, that would also mean that all the reports that use the account_type would have to have a condition:
WHERE acct_type1='Income Stmt." OR acct_type2='Income Stmt." OR ....
Since the account_types are not set up in a hierarchy and there must be only one row for account, I'm not sure that this is a feasible solution.
Thank you for the suggestion. -
QUERY PERFORMANCE AND DATA LOADING PERFORMANCE ISSUES
WHAT ARE QUERY PERFORMANCE ISSUES WE NEED TO TAKE CARE PLEASE EXPLAIN AND LET ME KNOW T CODES...PLZ URGENT
WHAT ARE DATALOADING PERFORMANCE ISSUES WE NEED TO TAKE CARE PLEASE EXPLAIN AND LET ME KNOW T CODES PLZ URGENT
WILL REWARD FULL POINT S
REGARDS
GURUBW Back end
Some Tips -
1)Identify long-running extraction processes on the source system. Extraction processes are performed by several extraction jobs running on the source system. The run-time of these jobs affects the performance. Use transaction code SM37 Background Processing Job Management to analyze the run-times of these jobs. If the run-time of data collection jobs lasts for several hours, schedule these jobs to run more frequently. This way, less data is written into update tables for each run and extraction performance increases.
2)Identify high run-times for ABAP code, especially for user exits. The quality of any custom ABAP programs used in data extraction affects the extraction performance. Use transaction code SE30 ABAP/4 Run-time Analysis and then run the analysis for the transaction code RSA3 Extractor Checker. The system then records the activities of the extraction program so you can review them to identify time-consuming activities. Eliminate those long-running activities or substitute them with alternative program logic.
3)Identify expensive SQL statements. If database run-time is high for extraction jobs, use transaction code ST05 Performance Trace. On this screen, select ALEREMOTE user and then select SQL trace to record the SQL statements. Identify the time-consuming sections from the results. If the data-selection times are high on a particular SQL statement, index the DataSource tables to increase the performance of selection (see no. 6 below). While using ST05, make sure that no other extraction job is running with ALEREMOTE user.
4)Balance loads by distributing processes onto different servers if possible. If your site uses more than one BW application server, distribute the extraction processes to different servers using transaction code SM59 Maintain RFC Destination. Load balancing is possible only if the extraction program allows the option
5)Set optimum parameters for data-packet size. Packet size affects the number of data requests to the database. Set the data-packet size to optimum values for an efficient data-extraction mechanism. To find the optimum value, start with a packet size in the range of 50,000 to 100,000 and gradually increase it. At some point, you will reach the threshold at which increasing packet size further does not provide any performance increase. To set the packet size, use transaction code SBIW BW IMG Menu on the source system. To set the data load parameters for flat-file uploads, use transaction code RSCUSTV6 in BW.
6)Build indexes on DataSource tables based on selection criteria. Indexing DataSource tables improves the extraction performance, because it reduces the read times of those tables.
7)Execute collection jobs in parallel. Like the Business Content extractors, generic extractors have a number of collection jobs to retrieve relevant data from DataSource tables. Scheduling these collection jobs to run in parallel reduces the total extraction time, and they can be scheduled via transaction code SM37 in the source system.
8). Break up your data selections for InfoPackages and schedule the portions to run in parallel. This parallel upload mechanism sends different portions of the data to BW at the same time, and as a result the total upload time is reduced. You can schedule InfoPackages in the Administrator Workbench.
You can upload data from a data target (InfoCube and ODS) to another data target within the BW system. While uploading, you can schedule more than one InfoPackage with different selection options in each one. For example, fiscal year or fiscal year period can be used as selection options. Avoid using parallel uploads for high volumes of data if hardware resources are constrained. Each InfoPacket uses one background process (if scheduled to run in the background) or dialog process (if scheduled to run online) of the application server, and too many processes could overwhelm a slow server.
9). Building secondary indexes on the tables for the selection fields optimizes these tables for reading, reducing extraction time. If your selection fields are not key fields on the table, primary indexes are not much of a help when accessing data. In this case it is better to create secondary indexes with selection fields on the associated table using ABAP Dictionary to improve better selection performance.
10)Analyze upload times to the PSA and identify long-running uploads. When you extract the data using PSA method, data is written into PSA tables in the BW system. If your data is on the order of tens of millions, consider partitioning these PSA tables for better performance, but pay attention to the partition sizes. Partitioning PSA tables improves data-load performance because it's faster to insert data into smaller database tables. Partitioning also provides increased performance for maintenance of PSA tables for example, you can delete a portion of data faster. You can set the size of each partition in the PSA parameters screen, in transaction code SPRO or RSCUSTV6, so that BW creates a new partition automatically when a threshold value is reached.
11)Debug any routines in the transfer and update rules and eliminate single selects from the routines. Using single selects in custom ABAP routines for selecting data from database tables reduces performance considerably. It is better to use buffers and array operations. When you use buffers or array operations, the system reads data from the database tables and stores it in the memory for manipulation, improving performance. If you do not use buffers or array operations, the whole reading process is performed on the database with many table accesses, and performance deteriorates. Also, extensive use of library transformations in the ABAP code reduces performance; since these transformations are not compiled in advance, they are carried out during run-time.
12)Before uploading a high volume of transaction data into InfoCubes, activate the number-range buffer for dimension IDs. The number-range buffer is a parameter that identifies the number of sequential dimension IDs stored in the memory. If you increase the number range before high-volume data upload, you reduce the number of reads from the dimension tables and hence increase the upload performance. Do not forget to set the number-range values back to their original values after the upload. Use transaction code SNRO to maintain the number range buffer values for InfoCubes.
13)Drop the indexes before uploading high-volume data into InfoCubes. Regenerate them after the upload. Indexes on InfoCubes are optimized for reading data from the InfoCubes. If the indexes exist during the upload, BW reads the indexes and tries to insert the records according to the indexes, resulting in poor upload performance. You can automate the dropping and regeneration of the indexes through InfoPackage scheduling. You can drop indexes in the Manage InfoCube screen in the Administrator Workbench.
14)IDoc (intermediate document) archiving improves the extraction and loading performance and can be applied on both BW and R/3 systems. In addition to IDoc archiving, data archiving is available for InfoCubes and ODS objects.
Hope it Helps
Chetan
@CP.. -
Performance issue with Adobe forms
Dear SAP Experts,
We have the following issue/requirement from our client. The client is on SAP ECC 6.0 - production environment.
The client is highlighting performance issue while accessing the adobe forms for HR and FI business process ( both static and interactive ).
Examples are
FI – Invoice Approvals
HR – Job Salary Change
The client is asking us to provide best practices surrounding:
1. How to improve the performance of the adobe forms while accessing in SAP.
2. Is there any other technology which we can use in SAP to replace the adobe forms which has better performance factor.
3. Are there solutions such as webdynpro floor plan manager, UI Fiori which can be alternately used?
Regards,
SakthiHello Priya,
Adobe forms are easy to develop and much more comfortable than SAP Scripts and Smartforms. Initially they are a bit difficult but once you have your hands on, they are the most simplest things in ABAP.
Performance in Adobe forms is a mix of both fine tuning the Layout as well as back end coding.
Performance in Adobe forms cannot be done overnight. A lot of care has to be taken during the initial stage of development.
As far as my experience is concerned, please consider the below points while developing SAP Adobe forms.
1) Avoid Scripting (Javascript/Formcalc) as much as possible inside the form. It drastically reduces the performance and makes the form to execute slower. If you still want to use scripting(which cannot be avoided for some requirements), use Formcalc since it is comparatively faster than JavaScript.
2) Try to avoid the coding inside the Form Interface. You can always handle the maximum coding in the Driver program and pass it to the form.
3) Use Form Caching.
For forms that have fixed layout, its a good way to increase the performance of form rendering. In the layout, go to Form Properties. Then Click on Defaults tab and select Allow Form Rendering To Be Cached On Server. Then Click OK.
For forms that have flowable or dynamic layout, render the forms on the client side because it improves performance.
Last but not the least, please go through the below post by Otto Gold which is worth a read at least once.
How to write a messy form -
RKKBABS0 Performance Issues (Background Processing of CO99) for PM Orders
We are experiencing extremely long run times when batch processing through program RKKBABS0 in ECC 6.0 (just upgraded). The issue appears to be that the program is using the production order numbers to search against the EXKN table which contains no AUFNR or AUFPL information.
Has anyone experienced this same issue and how was it resolved?
Edited by: Ken Lundeen on Apr 9, 2010 9:17 PM
Edited by: Ken Lundeen on Apr 9, 2010 9:17 PM Table ESKN(I'm sorry you've waited over a year for a reply.)
We also have performance issue. In our case we do not use Service Entry sheets with maintenance or production orders; AUFNR will not be populated in table ESKN. We are unable to 'complete business' our maintenance and production orders using batch processing because of performance.
We use Oracle database, which uses full table scan in this situation. But Secondary index (MANDT and AUFNR) is of no value anyway, we have about 12 million records with client and blank AUFNR field.
Our solution is a combination of a modification and a new index. OSS pilot note "1532483 - Performance of RKKBABS0 CHECK_ENTRYSHEET when reading ESKN" is a modification which introduces code improvements especially if running in background and closing several orders. Because we only have one client, we also created a new index consisting only of AUFNR. Oracle will not add a row to the secondary index of all fields of the index are null, making our new index very small. We then udpated Oracle stats to ensure Oracle would choose our new index.
We can now 'complete business' a single order online in under a minute, and the batch program runs much more efficiently.
This is not a perfect solution, but it has been a useful workaround for us. I hope this is useful to you. -
JavaScript and PS CS6: Performance issue
Hi folks
I have to admit we are stuck in our development: We have written a Phothoshop Plugin unsing extensive JavaScript and Flash Panels / Action Script.
The Javascripts would, eg. select a given layer. When running the Javascript in PS CS5 or 5.1 everything is smooth and snappy but we've noticed, that the same JavaScript running in PS CS6 takes up to 300% more time.
Does anyone having observed the same performance issues?
Would it be faster to address the specific layers by their native Layer ID's rather than their names?
Why is there such a performance slow down with the same JavaScripts / ActionScript-FlashPanel between CS5 and CS6?
We have already contacted [email protected] (we are solution partner silver) but they do not start acting if you are using your own JavaScripts....
You are our last hope :-(
I can send you some of the code but I don't want it to be publicly exposed here.
Thanks in advance,
AndrashHi, since nobody bothers to answer we might have to find out ourselfs.
Maybe it is caused by the way we address layers throug the script?
Which method are you using?
Are you addressing the layers directly or are you just cicling throug an array of layers?
Are you pointing for the layers by their native ID or rather their layer names?
How do you trigger the script: by another script? From a flash panel (Flex / Action Script)?
We are using Flash Panels to start the script. The script simply calls a layer by it's name (a numerical ID that we apply to the layer). The script shall look up that specific layer and check if there is some content on the layer. We created a logger to see where the heavy amount of time is consumed and it seems, that it is while jumping to the layer.
In CS5 that was all a matter of a split second. Now in CS6 it takes a couple of seconds (4sec.). We asked ADOBE Techsupport for help, but they didn't even bother to look at the problem since we are working with self written code (as every developer does.....?!?!). I wonder what techsupport is good for if not answering techical problems like this one.
I hope that, with your answers we might circle in the cause of the problem!
Cheers,
Andreas -
Performance Issue in Document Management of SAP Solution Manager
Hi
We have 10k+ documents in our current project and searching any specific document takes time of around 1-2 min. Searching document via SOLAR_EVAL or Menu-->Find Document of Solarxx is giving same output in terms of response time, later being slightly better. Other projects which have comparatively less documents, etc are fine in search response times and other functionalities implemented in system like issue mgmt, etc are also ok in terms of performance.
Can anyone please advice how this performance issue of searching specific document can be resolved?
What first thing which hits me is cleaning SolMan KW and either archiving/deleting old versions of document (because snapshots of every change in single document is stored in solman). If this can really help in making performance better for searching documents, please advice in detail as how this can be done or share any document.
If anyother way this can be achieved, please let me know that also.
Points will be awarded.
Thanks in advance.
Regards,
SMHi
1) Is deleting older documents is definitely going to improve response time of searching. You said 'yes' but just wanted to double sure.
Yes
2) This program deletes all unsed and de-linked document. I can understand 'De-linked' but not 'Unused'
i meant the samething
3) Deleting documents based on user id is big problem. We have almost 800 Users in SolMan, who has used this project form last 5+ years. So all these 800 users have to go into multiple selection of user id
Try giving *
4) I tried this on our sandbox (SP19 Level) which has shown all unused documents which can be deleted. But this deletion has to be done one-by-one. In our production, if we have 10K+ documents, i assume almost thousand or more will be residing as de-linked in KW
Try giving *
5) Any Documentation available on this program.
Learnt by experience but you can check some sapnotes below
Note 1124579 - Using SOLMAN_UNUSED_DOCUMENTS to delete unused documents
Note 1377997 - SOLMAN_UNUSED_DOCUMENTS: No deletion conf. for each doc.
Hope above clarifies
Regards
Prakhar -
30EA3- 2.*: Weird performance issues for editing objects
Hi,
I noticed weird performance issues for editing objects: when right-clicking on them in the navigator tree and selecting Edit, you get the old progress dialog "Connected to database XXX". This stays on screen a lot longer than it ever did (last sequence I edited over 30 seconds!).
Cancelling displays a "Error retrieving schemas" dialog, but then opens the Edit dialog correctly. No further side effects noticed, so I think sqldev is adding useless overhead here.
If confirmed, can this be bugged and/or fixed by production?
Thanks,
K.Yes, I mean in context of other hangs reported. This one is a nasty performance issue, but IMO the others are real show stoppers.
Atomic steps are easy; any* Edit (object) action inside the context menu of the navigator or the Edit button of the object viewer.
I took a lot of dumps (every second or so) and came to these findings:
Full thread dump Java HotSpot(TM) Client VM (14.2-b01 mixed mode):
"ProgressBarThread" prio=6 tid=0x049de000 nid=0x1674 runnable [0x056ff000]
java.lang.Thread.State: RUNNABLE
at oracle.jdbc.driver.T2CStatement.t2cDefineFetch(Native Method)
at oracle.jdbc.driver.T2CPreparedStatement.doDefineFetch(T2CPreparedStatement.java:818)
at oracle.jdbc.driver.T2CPreparedStatement.executeForRows(T2CPreparedStatement.java:746)
at oracle.jdbc.driver.OracleStatement.executeMaybeDescribe(OracleStatement.java:1100)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1186)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3381)
at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:3425)
- locked <0x1828f7f0> (a oracle.jdbc.driver.T2CConnection)
at oracle.jdbc.driver.OraclePreparedStatementWrapper.executeQuery(OraclePreparedStatementWrapper.java:1202)
at oracle.javatools.db.execute.QueryWrapper.executeQueryImpl(QueryWrapper.java:280)
at oracle.javatools.db.execute.QueryWrapper.access$000(QueryWrapper.java:76)
at oracle.javatools.db.execute.QueryWrapper$QueryExecutionRunnable.runImpl(QueryWrapper.java:390)
- locked <0x1828f7f0> (a oracle.jdbc.driver.T2CConnection)
at oracle.javatools.db.execute.StatementWrapper$ExecutionRunnable.run(StatementWrapper.java:692)
- locked <0x10c504c0> (a oracle.javatools.db.execute.QueryWrapper$QueryExecutionRunnable)
at oracle.ideimpl.db.ProgressBarExecutionWrapper.runAndLog(ProgressBarExecutionWrapper.java:136)
at oracle.ideimpl.db.ProgressBarExecutionWrapper.access$000(ProgressBarExecutionWrapper.java:38)
at oracle.ideimpl.db.ProgressBarExecutionWrapper$R.run(ProgressBarExecutionWrapper.java:180)
at oracle.ide.dialogs.ProgressBar.run(ProgressBar.java:655)
at java.lang.Thread.run(Thread.java:619)
"pool-2-thread-2" prio=6 tid=0x06795400 nid=0xa58 waiting on condition [0x073ef000]
java.lang.Thread.State: TIMED_WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x131fded0> (a java.util.concurrent.SynchronousQueue$TransferStack)
at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:198)
at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:424)
at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:323)
at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:874)
at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:945)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
at java.lang.Thread.run(Thread.java:619)
"pool-4-thread-1" prio=6 tid=0x06654400 nid=0xa08 waiting on condition [0x05dff000]
java.lang.Thread.State: TIMED_WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x18334e28> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:198)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:1963)
at java.util.concurrent.DelayQueue.take(DelayQueue.java:164)
at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:583)
at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:576)
at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:947)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
at java.lang.Thread.run(Thread.java:619)
"WeakDataReference polling" prio=2 tid=0x064de800 nid=0xc58 in Object.wait() [0x0eb3f000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118)
- locked <0x18335088> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:134)
at oracle.ide.util.WeakDataReference$Cleaner.run(WeakDataReference.java:88)
at java.lang.Thread.run(Thread.java:619)
"Background Parser" prio=6 tid=0x04decc00 nid=0x1248 waiting on condition [0x0ea3f000]
java.lang.Thread.State: TIMED_WAITING (sleeping)
at java.lang.Thread.sleep(Native Method)
at oracle.dbtools.raptor.plsql.BackgroundParser$1.construct(BackgroundParser.java:112)
at oracle.dbtools.raptor.utils.NamedSwingWorker$2.run(NamedSwingWorker.java:115)
at java.lang.Thread.run(Thread.java:619)
"IconOverlayTracker Timer" prio=6 tid=0x063e5400 nid=0x16fc in Object.wait() [0x076ef000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:485)
at java.util.TimerThread.mainLoop(Timer.java:483)
- locked <0x180c2840> (a java.util.TaskQueue)
at java.util.TimerThread.run(Timer.java:462)
"WaitCursor-Timer" prio=6 tid=0x04e39c00 nid=0x910 in Object.wait() [0x074ef000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:485)
at java.util.TimerThread.mainLoop(Timer.java:483)
- locked <0x1792d840> (a java.util.TaskQueue)
at java.util.TimerThread.run(Timer.java:462)
"Native Directory Watcher" prio=2 tid=0x04e38400 nid=0x12b8 runnable [0x062ef000]
java.lang.Thread.State: RUNNABLE
at oracle.ide.natives.NativeHandler.enterWatcherThread(Native Method)
at oracle.ide.natives.NativeHandler$2.run(NativeHandler.java:252)
at java.lang.Thread.run(Thread.java:619)
"Background Parser" prio=6 tid=0x04d86c00 nid=0x12ac waiting on condition [0x061af000]
java.lang.Thread.State: TIMED_WAITING (sleeping)
at java.lang.Thread.sleep(Native Method)
at oracle.dbtools.raptor.plsql.BackgroundParser$1.construct(BackgroundParser.java:112)
at oracle.dbtools.raptor.utils.NamedSwingWorker$2.run(NamedSwingWorker.java:115)
at java.lang.Thread.run(Thread.java:619)
"Background Parser" prio=6 tid=0x04d82800 nid=0x1240 waiting on condition [0x05eff000]
java.lang.Thread.State: TIMED_WAITING (sleeping)
at java.lang.Thread.sleep(Native Method)
at oracle.dbtools.raptor.plsql.BackgroundParser$1.construct(BackgroundParser.java:112)
at oracle.dbtools.raptor.utils.NamedSwingWorker$2.run(NamedSwingWorker.java:115)
at java.lang.Thread.run(Thread.java:619)
"TextBufferScavenger" prio=6 tid=0x04d81400 nid=0x10ec in Object.wait() [0x05cff000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x1729c0a8> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118)
- locked <0x1729c0a8> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:134)
at oracle.ide.model.TextNode$FacadeBufferReference$PollingThread.run(TextNode.java:1949)
"BaseTreeExplorer.NodeOpeningExecutor" prio=6 tid=0x04ba0400 nid=0x11bc waiting on condition [0x05aff000]
java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x131a1910> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:158)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1925)
at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:358)
at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:947)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
at java.lang.Thread.run(Thread.java:619)
"pool-2-thread-1" prio=6 tid=0x04c1c400 nid=0x11b8 waiting on condition [0x059ff000]
java.lang.Thread.State: TIMED_WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x131fded0> (a java.util.concurrent.SynchronousQueue$TransferStack)
at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:198)
at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:424)
at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:323)
at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:874)
at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:945)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
at java.lang.Thread.run(Thread.java:619)
"Scheduler" daemon prio=6 tid=0x04b9a800 nid=0x11b0 in Object.wait() [0x058ff000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:485)
at oracle.dbtools.raptor.backgroundTask.TaskLinkedList.takeNextTask(TaskLinkedList.java:47)
- locked <0x131a1ba0> (a oracle.dbtools.raptor.backgroundTask.TaskLinkedList)
at oracle.dbtools.raptor.backgroundTask.RaptorTaskManager$SchedulerThread.run(RaptorTaskManager.java:422)
"TimerQueue" daemon prio=6 tid=0x0445b000 nid=0x10fc in Object.wait() [0x057ff000]
java.lang.Thread.State: TIMED_WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at javax.swing.TimerQueue.run(TimerQueue.java:236)
- locked <0x12f7c028> (a javax.swing.TimerQueue)
at java.lang.Thread.run(Thread.java:619)
"ChangeSetService" prio=2 tid=0x049d0800 nid=0x1060 in Object.wait() [0x053ff000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x12e140c8> (a oracle.jdevimpl.vcs.changeset.ChangeSetService)
at java.lang.Object.wait(Object.java:485)
at oracle.jdevimpl.vcs.changeset.ChangeSetService.awaitEvents(ChangeSetService.java:178)
- locked <0x12e140c8> (a oracle.jdevimpl.vcs.changeset.ChangeSetService)
at oracle.jdevimpl.vcs.changeset.ChangeSetService.eventLoop(ChangeSetService.java:199)
at oracle.jdevimpl.vcs.changeset.ChangeSetService.access$200(ChangeSetService.java:56)
at oracle.jdevimpl.vcs.changeset.ChangeSetService$2.run(ChangeSetService.java:138)
at java.lang.Thread.run(Thread.java:619)
"TimedCache-Timer" daemon prio=6 tid=0x03af9c00 nid=0x414 in Object.wait() [0x03fdf000]
java.lang.Thread.State: TIMED_WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.util.TimerThread.mainLoop(Timer.java:509)
- locked <0x12869c58> (a java.util.TaskQueue)
at java.util.TimerThread.run(Timer.java:462)
"JarIndex Timer" daemon prio=6 tid=0x03945400 nid=0x171c in Object.wait() [0x042df000]
java.lang.Thread.State: TIMED_WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.util.TimerThread.mainLoop(Timer.java:509)
- locked <0x127d85a8> (a java.util.TaskQueue)
at java.util.TimerThread.run(Timer.java:462)
"AWT-EventQueue-0" prio=6 tid=0x030f4800 nid=0x1684 in Object.wait() [0x041de000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:485)
at java.awt.EventQueue.getNextEvent(EventQueue.java:479)
- locked <0x127d8658> (a java.awt.EventQueue)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:236)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:178)
at java.awt.Dialog$1.run(Dialog.java:1045)
at java.awt.Dialog$3.run(Dialog.java:1097)
at java.security.AccessController.doPrivileged(Native Method)
at java.awt.Dialog.show(Dialog.java:1095)
at java.awt.Component.show(Component.java:1563)
at java.awt.Component.setVisible(Component.java:1515)
at java.awt.Window.setVisible(Window.java:841)
at java.awt.Dialog.setVisible(Dialog.java:985)
at oracle.bali.ewt.dialog.JEWTDialog.runDialog(JEWTDialog.java:395)
at oracle.bali.ewt.dialog.JEWTDialog.runDialog(JEWTDialog.java:356)
at oracle.ide.dialogs.ProgressBar.start(ProgressBar.java:352)
at oracle.ide.dialogs.ProgressBar.start(ProgressBar.java:229)
at oracle.ideimpl.db.ProgressBarExecutionWrapper.execute(ProgressBarExecutionWrapper.java:108)
at oracle.javatools.db.execute.StatementWrapper$ExecutionProxy.doExecute(StatementWrapper.java:647)
at oracle.javatools.db.execute.StatementWrapper$ExecutionProxy.access$200(StatementWrapper.java:585)
at oracle.javatools.db.execute.StatementWrapper.doExecute(StatementWrapper.java:307)
at oracle.javatools.db.execute.QueryWrapper.executeQuery(QueryWrapper.java:215)
at oracle.javatools.db.dictionary.DictionaryDatabase.listObjectsImpl(DictionaryDatabase.java:323)
at oracle.javatools.db.ora.BaseOracleDatabase.listObjectsImpl(BaseOracleDatabase.java:524)
at oracle.javatools.db.AbstractDBObjectProvider.listSchemas(AbstractDBObjectProvider.java:859)
at oracle.ide.db.dialogs.BaseDBEditorFactory.createNamespace(BaseDBEditorFactory.java:503)
at oracle.ide.db.dialogs.BaseDBEditorFactory.editDBObject(BaseDBEditorFactory.java:357)
at oracle.ide.db.dialogs.AbstractDBEditorFactory.editDBObject(AbstractDBEditorFactory.java:332)
at oracle.ide.db.dialogs.BaseDBEditorFactory.editDBObject(BaseDBEditorFactory.java:54)
at oracle.ide.db.dialogs.AbstractDBEditorFactory.editDBObject(AbstractDBEditorFactory.java:314)
at oracle.dbtools.raptor.utils.DataBaseNodeUtil.editNodeWizard(DataBaseNodeUtil.java:45)
at oracle.dbtools.raptor.oviewer.xmleditor.XMLBasedEditor.handleEvent(XMLBasedEditor.java:152)
at oracle.ide.controller.IdeAction.performAction(IdeAction.java:531)
at oracle.ide.controller.IdeAction.actionPerformedImpl(IdeAction.java:886)
at oracle.ide.controller.IdeAction.actionPerformed(IdeAction.java:503)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:272)
at java.awt.Component.processMouseEvent(Component.java:6263)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
at java.awt.Component.processEvent(Component.java:6028)
at java.awt.Container.processEvent(Container.java:2041)
at java.awt.Component.dispatchEventImpl(Component.java:4630)
at java.awt.Container.dispatchEventImpl(Container.java:2099)
at java.awt.Component.dispatchEvent(Component.java:4460)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4574)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
at java.awt.Container.dispatchEventImpl(Container.java:2085)
at java.awt.Window.dispatchEventImpl(Window.java:2475)
at java.awt.Component.dispatchEvent(Component.java:4460)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
"AWT-Shutdown" prio=4 tid=0x030e6400 nid=0x1680 in Object.wait() [0x040df000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:485)
at sun.awt.AWTAutoShutdown.run(AWTAutoShutdown.java:259)
- locked <0x127d8718> (a java.lang.Object)
at java.lang.Thread.run(Thread.java:619)
"AWT-Windows" daemon prio=6 tid=0x03abb400 nid=0x1610 runnable [0x03edf000]
java.lang.Thread.State: RUNNABLE
at sun.awt.windows.WToolkit.eventLoop(Native Method)
at sun.awt.windows.WToolkit.run(WToolkit.java:291)
at java.lang.Thread.run(Thread.java:619)
"Java2D Disposer" daemon prio=10 tid=0x03a97400 nid=0x15f8 in Object.wait() [0x03cdf000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118)
- locked <0x127d8810> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:134)
at sun.java2d.Disposer.run(Disposer.java:125)
at java.lang.Thread.run(Thread.java:619)
"Low Memory Detector" daemon prio=6 tid=0x030d1c00 nid=0x15dc runnable [0x00000000]
java.lang.Thread.State: RUNNABLE
"CompilerThread0" daemon prio=10 tid=0x030cb800 nid=0x15d8 waiting on condition [0x00000000]
java.lang.Thread.State: RUNNABLE
"Attach Listener" daemon prio=10 tid=0x030ca000 nid=0x15d4 runnable [0x00000000]
java.lang.Thread.State: RUNNABLE
"Signal Dispatcher" daemon prio=10 tid=0x030c8c00 nid=0x15d0 waiting on condition [0x00000000]
java.lang.Thread.State: RUNNABLE
"Finalizer" daemon prio=8 tid=0x030b9c00 nid=0x15c8 in Object.wait() [0x0343f000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118)
- locked <0x12770298> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:134)
at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)
"Reference Handler" daemon prio=10 tid=0x030b5000 nid=0x15c4 in Object.wait() [0x0333f000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:485)
at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116)
- locked <0x12770320> (a java.lang.ref.Reference$Lock)
"main" prio=6 tid=0x00967800 nid=0x1504 waiting on condition [0x00000000]
java.lang.Thread.State: RUNNABLE
"VM Thread" prio=10 tid=0x030b1000 nid=0x15c0 runnable
"VM Periodic Task Thread" prio=10 tid=0x030d3c00 nid=0x15e0 waiting on condition
JNI global references: 2645
Heap
def new generation total 12544K, used 6205K [0x10010000, 0x10da0000, 0x12770000)
eden space 11200K, 53% used [0x10010000, 0x105e2ff0, 0x10b00000)
from space 1344K, 18% used [0x10c50000, 0x10c8c7b8, 0x10da0000)
to space 1344K, 0% used [0x10b00000, 0x10b00000, 0x10c50000)
tenured generation total 165468K, used 99280K [0x12770000, 0x1c907000, 0x30010000)
the space 165468K, 59% used [0x12770000, 0x18864308, 0x18864400, 0x1c907000)
compacting perm gen total 50432K, used 50210K [0x30010000, 0x33150000, 0x38010000)
the space 50432K, 99% used [0x30010000, 0x33118aa8, 0x33118c00, 0x33150000)
No shared spaces configured.- In the beginning of the waiting time, the "locked <0x10c504c0>" in the "ProgressBarThread" changed (at least once) to "locked <0x10c51da0>".
- Then halfway the waiting time, the "pool-2-thread-1" disappeared, then "pool-2-thread-2" shortly after.
- Then the "TimedCache-Timer" changed to
"TimedCache-Timer" daemon prio=6 tid=0x03af9c00 nid=0x414 in Object.wait() [0x03fdf000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:485)
at java.util.TimerThread.mainLoop(Timer.java:483)
- locked <0x12869c58> (a java.util.TaskQueue)
at java.util.TimerThread.run(Timer.java:462)- Then near the end, the "locked <0x10c51da0>" in the "ProgressBarThread" changed to "locked <0x10b01da0>", then to "locked <0x10c51da0>".
Hope that helps,
K. -
Revision: 8742
Author: [email protected]
Date: 2009-07-22 14:07:24 -0700 (Wed, 22 Jul 2009)
Log Message:
Revert revisions 8682 and 8734 due to performance issues. I'll
recommit when they are worked out.
tests Passed: checkintests
Needs QA: YES
Needs DOC: NO
Bug unfixed: SDK-14251
API Change: NO
Is noteworthy for integration: No
Ticket Links:
http://bugs.adobe.com/jira/browse/SDK-14251
Modified Paths:
flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/CompilerAPI.java
flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/SymbolTable.java
flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/abc/AbcCompiler.java
flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/abc/Method.java
flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/abc/Variable.java
flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/as3/As3Compiler.java
flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/as3/binding/DataBindingFirstPassE valuator.java
flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/as3/binding/TypeAnalyzer.java
flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/as3/reflect/As3Class.java
flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/as3/reflect/Method.java
flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/as3/reflect/TypeTable.java
flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/as3/reflect/Variable.java
flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/reflect/TypeTable.java
flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/rep/MxmlDocument.java
Removed Paths:
flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/abc/Assignable.java
flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/as3/reflect/Assignable.javaould wrote:
I have done the hard work for you. My HTPC is pretty barebones so it was relatively easy to roll back all the packages that depend on libjpeg>7 with older versions. I then compiled the xbmc-svn package using that system. Slow downs are gone and I have uploaded the package to hotfile here:
http://hotfile.com/dl/13546051/021f9c9/ … ar.gz.html
This is for 32-bit. You will need the libjpeg6 package from AUR installed. I have tested it on two systems, my main system which has both libjpeg7 and the AUR libjpeg6 installed and on my htpc which has only the libjpeg6 along with the rolled back dependancies. Works good on both systems.
Hope that helps!
Kevin
Thanks ould!! You got it working with libjpeg6 again!
I had to upgrade libcdio again so now I lost dvd support. It's not easy to use the svn version.
If you could compile the build against libcdio 0.80 I'd be forever grateful... If you've got the time.
Last edited by Perre (2009-09-26 17:09:04)
Maybe you are looking for
-
I am not sure what my kids have done but after several attempts it says I am putting in the wrong answers to my security questions and now has locked it. It says I need to reset but no clue how to.....can anyone help
-
I have a bunch of sites I do for people that are similar. Here's one: www.mattfelis.com. When I make a single change on one page, just a text change (the last time I deleted a freakin' period) and tell Muse to Upload it to FTP host, it uploads every
-
Safari does not open in home page.
Safari does not open with the "home page" set in preferences. Always opens with the last page viewed prior to quitting.
-
No information on telephone fault
On 1st February we reported that our telephone line was dead. This occurred because of a thunderstorm which caused a lengthy power cut. We were informed that the fault should be rectified by midnight on 6th February. We live in an isolated village in
-
Hi, I have the following query: select docnum as ' ' , cardcode as ' ' , cardname as ' ' , docdate as ' ' , docduedate as ' ' from opor UNION ALL select