Buffer Tuning in ST02 Recommendations
I am looking for some advice as to how to change tune my buffers in our application servers. Their current settings are based off of SAPs, pre go-live checks. But to me they seem to need some adjusting.
Our server has 8GBs of RAM, so I feel like I definitely have some room to expand them.
What would you recommend I change the values to?
Here is a screenshot of the buffers - http://aycu07.webshots.com/image/20166/2003999813259508481_rs.jpg
10k swaps per day is pretty high, especially for the PXA buffer. I'd definitely increase it if you have enough physical memory; the only impact is that it's going to allocated a larger chunk of shared memory, so if you don't have enough physical RAM to absorb the increase without swapping, you're not going to gain much. 500MB is pretty small for the program buffer these days, but that would depend on what modules you're running. I've hardly ever seen this below 1GB lately, and normally in the 1.5 - 2GB range for ERP systems with multiple modules implemented on a single app server.
The rule of thumb I've used is to try to keep at least 10% free (both space and # of entries). From your screen shot it looks like you need to increase the size of the field definition buffer, program buffer, CUA buffer, and export/import buffer.
Rich
Similar Messages
-
Hi Gurus!
We having performance problem on some tcode lately (we are using sap R/3 4.7 on Windows - 2003 Server & our database is Oracle - 9i )
Can anybody give me an advice or link to sap notes or the other article or guide how to perform sap buffer tuning, and optimizing instance parameter ?
Thank you in advance.
Regards,
ShishirTask 1 :
Check for tables which are not buffered, but should be.
For example, check the customers:
Customising tables, (table names beginning with Y or Z)
Condition tables (for example, table A<nnn>, where nnn 500 to 999
Task 2 :
Check for tables which are buffered, but should not be.
For example, check large and frequently changed Customising
tables, such as:
Table TCURR (exchange rates)
Tables A005 (prices), A017 (customer/material), and A018 (vendor/material)
In the Online Service System (OSS), see also, for example, R/3 Notes 23877, 91335, and 34910 -
Hi all,
In ST02 for Screen buffer and export/import Free directory entries and % are showing '0' , what does it mean ... Hit ratio for all buffers is 99.96 nearly for export/import it's showing 85% and swaps also rising .
Please suggest...
Thanks,
Subhash.GTune Buffers monitor shows the percentage usage of buffers and memory.
The Setups / Tune Buffers monitor displays data on:
- Buffer sizes
- Buffer qualities (hit ratios)
Bottlenecks may be indicated if buffer swaps occur
Choose Detail analysis menu to display other data, such as :
- Memory usage
- Semaphores usage
- Table calls
Max. use (in KB) should be less than In memory (in KB).
- The lower part of the Setups / Tune Buffers monitor displays data on:
- Extended memory size and usage
- Usage and configuration of the roll mechanism
Bottlenecks may be indicated if:
- For extended memory: Max use. = In memory
- For roll area: Max use. > In memory
good luck
if it useful reward points are appreciated -
Performance Tuning Best Practices/Recommendations
We recently went like on a ECC6.0 system. We have 3 application servers that are showing a lot of swaps in ST02.
Our buffers were initially set based off of SAP Go-Live Analysis checks. But it is becoming apparent that we will need to enlarge some of our buffers.
Are there any tips and tricks I should be aware of when tuning the buffers?
Does making them too big decrease performance?
I am just wanting to adjust the system to allow the best performance possible, so any recommendations or best practices would be appreciated.
Thanks.Hi,
Please increase the value of parameters in small increments. If you set the parameters too large, memory is wasted. This can result in paging if too much memory is taken from the operating system and allocated to SAP buffers.
For example, if abap/buffersize is 500000, change this to 600000 or 650000. Then analyze the performance and adjust parameters accordingly.
Please check out <a href="http://help.sap.com/saphelp_nw04/helpdata/en/c4/3a6f4e505211d189550000e829fbbd/content.htm">this link</a> and all embedded links. The documentation provided there is fairly elaborate. Moreover, the thread mentioned by Prince Jose is very good for a guideline as well.
Best regards -
Hi guyz,
In ST02, i just want to know, when to fine tune the Roll, Extended and Paging areas. I want to know the threshold levels of all these memory areas so that when the threshold is reached, i know that i have to fine tune. Also what is the limit for the number of swaps that can occur in a day??
Thanx in advanceHi Ashok,
ST02 show memory and buffer utilization, each buffer is used for diffrent thing so there is no absolut aswer, the swapped column show the memory that is swapped out by the operation system. This depend's on OS as well.
I recomend that you use the F1 (hepl) button more often, its the only way to learn.
Here is some useful document.
http://help.sap.com/saphelp_47x200/helpdata/en/c4/3a6e98505211d189550000e829fbbd/frameset.htm
Regards,
Hari.
PS: Award points if helpful. -
Memory buffer tuning - Why bother?
Hi
We are running ERP 6 on Win2003 64 bit, SQL2005 SP2 (2.6TB in size), 8 App servers with 16GB RAM (avg 60% used). As part of our housekeeping ,we are looking at addressing some of the swaps in ST02.
Currently we are experiencing swaps in the following buffers:
Nametab - Field definition: 150 000 swaps
Program: 300 000 swaps
Export/import: 500 000 swaps
Our current avg dialog response time is between 700-800ms per month (1400-1600 concurrent users).
Would increasing these buffers have any visable positive affect on the system or for the end-user? How important is it to address these buffer swaps? SAP does not report on it in the weekly/monthly EWA reports.
Regards,
CJHi,
You have quite a lot of swaps but you don't say if it is per day or since startup.
I just checked our own production ECC6 system and we have only about 600 to 1500 program buffer swaps on only 3 of the 6 app servers. zero swaps for other buffers.
But we get the same kind of monthly avg dialog response time (600 ms).
If you have time, you can tune your buffer sizes, it could only be better but you will not get a big improvement.
With a program buffer much too small, I 've already seen very bad performance but it is not your case.
Some times, I like to say : If it is not broken, don't fix it!
Regards,
Olivier -
SQL Tuning Advisor (STA) recommends indexes that already exists?
I have enabled the STA to run twice a week, while we are going live with a new application in a new database. I want to insure we have good performance as the load goes up. I was not involved in the original design, which there not not much of, I've discovered. Since we are licensed for it, it seemed like a safe thing to turn on.
The STA ran last night and the report tells me it looked at 736 SQLs with findings, 143 without findings, and skipped 0.
What puzzles me is that, in the "Statistics Finding Summary", it's reporting stale stats on some tables which I know are up to date, as I ran stats on them yesterday and there were no updates to them.
Worse, in the "Index Finding Summary", it reports indexes needed that already do, in fact, exist.
Is there some reason for this? Is there some way to get the STA to be aware of these and avoid the erroneous findings so that I can concentrate on real ones?
Thanks in advance for any suggestions.
PDPHi Mark,
Thanks for your interest, yes, the index is being used . Here is the evidence that you were asking about.
It has existed for many weeks, now as the info below will show.
Here is the STA run info, the run was from 2011-07-28 at 11 PM:
========================================
Advisory Type Name Description User Status Start Time Duration (seconds) Expires In (days)
SQL Tuning Advisor SYS_AUTO_SQL_TUNING_TASK Automatic SQL Tuning Task SYS COMPLETED Jul 28, 2011 11:00:03 PM 865 UNLIMITED
Here is part of the Index Finding Summary
=========================================
Index Finding Summary
Table Name Schema References Index Columns
EINSTANCE_ARCH EINTAKE 74 GLOBAL_PATIENT_ID
Drilling into that table, we see the following SQL_ID listed first, "g9uf2kmyvc66y" which is just one of many.
Here is 1 if the sqls, which use the "global_patient_id" as a predicate
(with the many columns that are actually selected not listed as they are not germain:
=====================================================================================
SELECT *
FROM (SELECT '0' AS locked,
(... a whole lot of columns selected)
FROM einstance_arch a
LEFT OUTER JOIN
patient d
ON a.global_patient_id = d.patient_id
LEFT OUTER JOIN
referral e
ON a.instance_id = e.einstance_id,
einstance_states_arch b
WHERE a.current_state = b.inst_state_id
AND a.current_state_id != 15
AND ( a.global_patient_id = 496 )
ORDER BY a.instance_id ASC)
WHERE ROWNUM <= :1
Here's an explain plan extracted from Toad, the index in question is identified by ==>:
======================================================
Plan
SELECT STATEMENT ALL_ROWS Cost: 19 Bytes: 4,528 Cardinality: 4
1 INDEX UNIQUE SCAN INDEX (UNIQUE) EINTAKE.STATES_PK Cost: 0 Bytes: 14 Cardinality: 1
3 SORT AGGREGATE Bytes: 6 Cardinality: 1
2 INDEX RANGE SCAN INDEX EINTAKE.DOCUMENT_ATTR_LNK_INST_ID_IDX2 Cost: 1 Bytes: 6 Cardinality: 1
18 COUNT STOPKEY
17 VIEW EINTAKE. Cost: 19 Bytes: 4,528 Cardinality: 4
16 SORT ORDER BY STOPKEY Cost: 19 Bytes: 1,544 Cardinality: 4
15 NESTED LOOPS
13 NESTED LOOPS Cost: 18 Bytes: 1,544 Cardinality: 4
11 NESTED LOOPS OUTER Cost: 10 Bytes: 1,296 Cardinality: 4
8 HASH JOIN OUTER Cost: 9 Bytes: 1,228 Cardinality: 4
5 TABLE ACCESS BY INDEX ROWID TABLE EINTAKE.EINSTANCE_ARCH Cost: 6 Bytes: 1,152 Cardinality: 4
==> 4 INDEX RANGE SCAN INDEX EINTAKE.EINSTANCE_ARCH_GLBL_PT_ID_IDX3 Cost: 1 Cardinality: 5
7 TABLE ACCESS BY INDEX ROWID TABLE EINTAKE.PATIENT Cost: 2 Bytes: 19 Cardinality: 1
6 INDEX UNIQUE SCAN INDEX (UNIQUE) EINTAKE.PATIENT_PK Cost: 1 Cardinality: 1
10 TABLE ACCESS BY INDEX ROWID TABLE EINTAKE.REFERRAL Cost: 1 Bytes: 17 Cardinality: 1
9 INDEX RANGE SCAN INDEX EINTAKE.REFERRAL_EINSTANCE_ID Cost: 0 Cardinality: 1
12 INDEX UNIQUE SCAN INDEX (UNIQUE) EINTAKE.EINSTANCE_STATES_ARCH_PK Cost: 1 Cardinality: 1
14 TABLE ACCESS BY INDEX ROWID TABLE EINTAKE.EINSTANCE_STATES_ARCH Cost: 2 Bytes: 62 Cardinality: 1
Here is the DDL info on the index in question:
============================
select object_name, created, last_ddl_time from user_objects where object_name = 'EINSTANCE_ARCH_GLBL_PT_ID_IDX3';
OBJECT_NAME CREATED LAST_DDL_TIME
EINSTANCE_ARCH_GLBL_PT_ID_IDX3 2011 07 11 11:22:36 2011 07 11 11:22:36
1 row selected.
Regards,
Paul -
Swapping in ST02 in Initial Record Buffer rsdb/ntab/irbdsize
Hello All,
I've been trying to do some tuning in ST02 and was hoping someone might be able to explain why I am getting such a low hit rate on the Initial Records Buffer, and the high level of swapping, when there appears to be plenty free space and plenty free entries.
Here are the stats I see.
Efficiency
HITRATIO % 42
HITS 9,645
REQUESTS 22,790
DB access quality % 42
DB access 13,136
DB access saved 9,645
Reorgs 0
Size
Allocated KB 8,750
Available KB 7,500
Used KB 1,053
Free KB 6,447
Directory entries
Available 10,000
Used 3,801
Free 6,199
Swaps
Objects swapped 9,335
Frames swapped 0
Resets Total 0
Any clues would be much appreciated.
Thanks
SteveI have the same issue and my parameter settings are currently:
rsdb/ntab/irbdsize - 41500
rsdb/ntab/entrycount 45000
Are there any other suggestions? See below for swap information.
Efficiency HITRATIO % 43
HITS 10,243
REQUESTS 23,731
DB access quality % 43
DB access 13,488
DB access saved 10,243
Reorgs 0
Size Allocated KB 42,906
Available KB 41,500
Used KB 4,717
Free KB 36,783
Directory entries Available 11,250
Used 9,759
Free 1,491
Swaps Objects swapped 3,728
Frames swapped 0
Resets Total 0 -
Hi Guys,
I would appreciate your assistance/recommendations with Buffer Tuning
Im experiencing high swapping on Several Buffer as shown Below
Which considerations would you take for adjusting these buffers to optimal Values?
Do you estimate the parameters values by incrementing by 10-20% ? Or is there a better way to determine the best values.
Thanks a lot for your help.
Nametab -->Table Definition
Efficiency HITRATIO % 97
HITS 119.405.209
REQUESTS 123.408.979
DB access quality % 97
DB access 4.006.836
DB access saved 119.399.849
Reorgs 0
Size Allocated KB 9.800
Available KB 8.219
Used KB 8.219
Free KB 0
Free KB 0
Directory entries Available 28.826
Used 28.826
Free 0
Swaps Objects swapped 1.032.168
Frames swapped 0
Resets Total 0
Table definition buffer TTAB
rsdb/ntab/entrycount 28826 Max. number of table definitions buffered
Nametab-->Field Definition
Efficiency HITRATIO % 100
HITS 80.761.920
REQUESTS 81.137.309
DB access quality % 100
DB access 363.063
DB access saved 80.761.378
Reorgs 0
Size Allocated KB 45.515
Available KB 43.263
Used KB 40.109
Free KB 3.154
Directory entries Available 28.826
Used 7.176
Free 21.650
Swaps Objects swapped 355.332
Frames swapped 0
Resets Total 0
rsdb/ntab/ftabsize 43263 kB Size of field description buffer
Program
Efficiency HITRATIO % 100
HITS 385.544.192
REQUESTS 385.922.653
DB access quality % 100
DB access 653.940
DB access saved 565.109.488
Reorgs 0
Size Allocated KB 400.000
Available KB 370.780
Used KB 369.428
Free KB 1.352
Gaps KB 1.303
Directory entries Available 100.000
Used 10.385
Free 89.615
Swaps Objects swapped 206.098
Frames swapped 0
Resets Total 0
Program buffer PXA
abap/buffersize 400000 kB Size of program buffer
abap/pxa shared Program buffer mode
Export/Import
Efficiency HITRATIO % 81
HITS 13.737.920
REQUESTS 16.906.841
DB access quality % 100
DB access 0
DB access saved 0
Reorgs 0
Size Allocated KB 4.096
Available KB 3.375
Used KB 2.757
Free KB 253
Directory entries Available 2.000
Used 1.031
Free 969
Swaps Objects swapped 32.476
Frames swapped 428.617*
Resets Total 0
Export/import buffer EIBUF
rsdb/obj/buffersize 4096 kB Size of export/import buffer
rsdb/obj/max_objects 2000 Max. number of objects in the buffer
rsdb/obj/large_object_size 8192 Bytes Estimation for the size of the largest object
rsdb/obj/mutex_n 0 Number of mutexes in Export/Import bufferHi Martin,
Since 20GB set to MSSQL DB, you can reserve 3GB for system application, process, backup, external process and etc.
Therefore, you can allocate 27GB to SAP system.
You can allocate 22GB to PHYS_MEMSIZE, abap/buffersize to 1000000 and 30% to SAP buffer in ST02 where you noticed alot of SWAP. Also, you can allocate additional space to rdisp/ROLL_SHM and rdisp/PG_SHM if the percentage of "In Memory used" is around or more than 80%.
You can check based on the history usage in ST02.
However, try not the exceed the shared memory of 27GB for total memory assigned for SAP system, you can check at ST02 -> detailed analysis -> storage.
Cheers,
Nicholas Chang -
Hi ;
When i click the generic key buffer - row in ST02 it shows program terminated and result in dump BCD_OVERFLOW.
In the column "swaps" the value is 24 and its in RED alert
Overflow during an arithmetic operation (type P) in program "RSTUNE50"
The current ABAP program "RSTUNE50" had to be terminated because it has come across a statement that unfortunately cannot be executed.
A value is too long for a calculation field.
All the parameters are ok.More than the recommended .
system specification.
Aix5.3 Oracle 10g ECC6, SP11.Hi,
check SAP Note 1021181 - ST02: BCD_OVERFLOW in RSTUNE50
Apply Basis Support package 12 (SAPKB70012)
regards,
kaushal -
Hi Friends,
In our development system Swaps no is very high and it shows RED mark in st02
Table definition =25.213
Field definition = 357.579
Initial records = 62.209
program = 81.856
CUA = 12.158
Screen = 879
please check below attached screen shot for more details
Could you please any one help me how to resolve this issue..
Thanks in Advance
Regards,
VenkatHi Lisa,
SWAPs themselves are not an indicator of a performance issue.It's unlikely you can avoid them from happening in production systems. What matters is a quality of buffer tuning and a number of swaps hapenning every day. Let's say you are getting more then 10000 swaps each day for the program buffer. Then you'd need to pay attenation to this buffer and try to find out a way to reduce swaps.
Here is the link to SAP help:
http://help.sap.com/saphelp_erp2005vp/helpdata/en/c4/3a6ecc505211d189550000e829fbbd/content.htm
Regards,
Mike
Message was edited by: Mike Puzankov -
I have three tables - fund_family a, fund b, fund_registration c. currently the below query is being used to display two columns
fund_family_id and fund_family_nm with fund_family_nm as order by.
select distinct
a.fund_family_id,
a.fund_family_nm,
from
fund_family a, fund b, fund_registration c
where
a.fund_family_id = b.fund_family_id
and b.fund_id = c.fund_id
and c.mail_delivery='Y'
and c.registered_in = 'Y'
and EXISTS (
select 'x' from country_table_id
where b.tr_cd in ('TR05,'TR18')
and d.country_id = c.country_id
and d.web_site_id = '4')
order by a.fund_family_nm
now we need to change the current sorting order of fund_family_nm based on one column in fund table. Now the scenario is -- in fund table, there are
list of fund_id which belongs to some fund_family_id (i.e. suppose one fund_family_id is 1500 and in this fund_family_id there can be n number of fund_id in fund table. now in fund table there is one column called tr_code which is having either one value TR05 or TR18. now we have to sort the fund_family_nm in such a way that first it should display all the fund_family_nm whose fund_id are having tr_code value as TR05 first and then display TR18.
I just tried the below query but I am getting duplicate row for fund_family_nm whose value falls under TR05 and TR18. so can you please help me to tune this sql so that i should not get duplicate rows.
select distinct
a.fund_family_id,
a.fund_family_nm,
b.tr_code
from
fund_family a, fund b, fund_registration c
where
a.fund_family_id = b.fund_family_id
and b.fund_id = c.fund_id
and c.mail_delivery='Y'
and c.registered_in = 'Y'
and EXISTS (
select 'x' from country_table_id
where b.tr_cd in ('TR05,'TR18')
and d.country_id = c.country_id
and d.web_site_id = '4')
order by tr_cd --a.fund_family_nm
Edited by: user11439255 on Jan 9, 2011 2:47 AMin such a way that first it should display all the fund_family_nm whose fund_id are having tr_code value as TR05 first and then display TR18.?? You want just one row right or two rows? If it has the values TR05 AND TR18 you want to see just TR18, right?
(You use tr_cd and tr_code but I assume that's the same field)
The solution of Etbin would work, but additionally, if the question is about tuning, I'd recommend the usage of JOIN over EXISTS.
SELECT fund_family_id, fund_family_nm, tr_code FROM (
SELECT a.fund_family_id,a.fund_family_nm,b.tr_cd,
ROW_NUMBER() OVER (PARITITION BY a.fund_family_id,a.fund_family_nm ORDER BY b.tr_cd desc) RN
from fund_family a
INNER JOIN fund b
ON a.fund_family_id = b.fund_family_id
INNER JOIN fund_registration c
ON b.fund_id = c.fund_id
INNER JOIN (SELECT DISTINCT country_id FROM country_table_id WHERE d.web_site_id = '4') d
ON (d.country_id = c.country_id)
WHERE
c.mail_delivery='Y'
and c.registered_in = 'Y'
and b.tr_cd in ('TR05,'TR18'))
WHERE rn =1
order by tr_code; -
DB_BLOCK_BUFFERS PARAMETER TUNING(ORACLE7)
제품 : ORACLE SERVER
작성날짜 : 2002-04-12
DB_BLOCK_BUFFERS PARAMETER TUNING(ORACLE7)
==========================================
Purpose
Oracle7 version의 database에서 db block buffer의 값이 적당한 지를
알아보고 Tuning 하는 방법을 알아보자.
Explanation
1. DB_BLOCK_BUFFERS parameter
(1) SGA 내 메모리에 캐쉬되는 데이타베이스 블럭의 수
(2) SGA 사이즈와 데이타베이스 성능을 결정하는 가장 중요한 요소이다.
(3) 높은 값을 갖게 되면 해당 블럭을 메모리에서 찾게 되는 빈도가 많아지기
때문에 디스크 입출력을 줄일 수 있지만, 보다 많은 메모리를 소모하게 된다.
2. 적정한 값 찾기
(1) 다음의 SQL문을 수행시켜 ratio 필드의 평균 값이 92% 이상이어야 한다.
- DBMS가 STARTUP 후부터 현재까지의 누적치를 보여준다.
- 현재의 HIT RATIO를 보려면 두 번 수행하여 차액을 갖고 계산한다.
rem
rem connect as system user id
rem
col logical_reads format 999,999,999,999
col physical_reads format 999,999,999,999
col physical_writes format 999,999,999,999
select a.value + b.value logical_reads,
c.value physical_reads,
round(100*(a.value+b.value-c.value)/(a.value+b.value),2) ratio,
d.value physical_writes
from sys.v_$sysstat a,
sys.v_$sysstat b,
sys.v_$sysstat c,
sys.v_$sysstat d
where a.statistic# = 37 -- db block gets
and b.statistic# = 38 -- consistent gets
and c.statistic# = 39 -- physical reads
and d.statistic# = 40 -- physical writes
(2) 적다고 생각될 때 initSID.ora 화일에서 다음을 고려한다.
DB_BLOCK_LRU_EXTENDED_STATISTICS = 1000
- 이 파라미터를 설정하고 다음의 SQL을 수행시킨다.
단, 값을 너무 크게 설정하면 심각한 퍼포먼스의 영향을 가져온다.
- 위의 1000 값의 의미는 현재보다 1000 까지 DB BLOCK을 더 늘렸을 때
cache hit가 증가하는 값을 알아보기 위함이다.
col Interval format a20
prompt Number of Additional Cache Hits (ACH)
select 200*trunc(indx/200)+1 || ' to ' ||
200*(trunc(indx/200)+1) "Interval",
sum(count) "Additional Buffer Cache Hits"
from sys.x$kcbrbh
group by trunc(indx/200)
Interval Additional Buffer Cache Hits
1 to 200 300
201 to 400 250
401 to 600 180
601 to 800 80
801 to 1000 50
(3) 많다고 생각될 때 init$ORACLE_SID.ora 화일에서 다음을 고려한다.
DB_BLOCK_LRU_STATISTICS=TRUE
- 이 파라미터를 설정하로 아래의 SQL을 실행하여 전체 버퍼에 대해 공헌하는
정도를 알아본다.
- 아래의 경우는 1 부터 600 까지의 버퍼만 사용되고 있음을 알 수 있다.
col Interval format a20
prompt Number of Losing Cache Hits (LCH)
select 200*trunc(indx/200)+1 || ' to ' ||
200*(trunc(indx/200)+1) "Interval",
sum(count) "Losing Buffer Cache Hits"
from sys.x$kcbcbh
group by trunc(indx/200)
Interval Losing Buffer Cache Hits
1 to 200 3915
201 to 400 434
401 to 600 199
601 to 800 0
9801 to 10000 0To MMM, the hit ratio is currently 100%. We want to lower that to about 95% and save some RAM at the expense of some slower queries.
To KM, no we are not using any stats_pack utilities.
Can anyone tell me the init.ora parameter to set in Oracle 8.1.7.4 to gets measures into the above table? -
Hi Experts,
We received red alert in EWA report for BI check. We have BI NetWeaver 2004 system. We have raised an OSS message for this red alert. SAP has replied with the following comments.
"Based on the EWA report, it seems that the overall runtime for all
queries is very high thus the reason behind the red rated report. In
section 11.1.1 (BI-KPI) the 'BPPO - Query Tuning' service is
recommended"
Can anyone tell me how to do the BBPO Query Tuning. I am from Basis team, does this task come under Basis activity. If yes please, send some links and blogs which explains about Query Tuning.
Thanks & Regards,
Sundara.Dear experts:
Can anyone help us ,I have the same issues as descriot above.
any reply is hightly appreiciated.
BR Cai -
SQL tuning advisor recommnds to create SYS_OP_C2C function based index
I have a large table and one index on it. I use some tool to populate data, this tool simple submits the sql to Oracle DB and it does NOT use use index for queries. When I run the sql tuning advisor it recommends to create additional index and use SYS_OP_C2C function, which I do not want.
When I run the query via sql plus it picks up the index.
Have any of you come across, why its recommending this additional non-sense?
create index abc.xxxx on this_table(SYS_OP_C2C("this_column"));
ThanksThe internal Oracle function SYS_OP_C2C performs conversion from one character set to another character set - C(haracterSet)2C(haracterSet). There are situations when one will see this conversion going on without explicit command as in this case what should be a sign that the data types are not the same and implicit conversion is taking place and this might be also a problem from performance perspective as it may disable index usage.
Make sure you the characterset and nls defined of any of the database and tool are same.
Make sure the data type of the column on the index is same as database.
Confirm with ETL vendor for your database support and any patches etc.
Optimizer will only advise to use that function when characterset or data type does not match.
Thanks,
TaraChand
Maybe you are looking for
-
Question about the "iPod radio remote"
I assume the "radio remote" is the same for every country and is under software control. I want to buy in Canada but use in UK and Canada. Has anyone got one and seen the RDS work, in the UK almost every FM channel is RDS. Do they have RDS in Canada
-
Time machine crashing my macbook pro?
I have a 13" MacBook Pro (from 2009, with 4GB RAM and 2.53 GHz Intel Core 2 Duo). I upgraded the OS to Lion in the Summer (from the AppStore, now on 10.7.2) and I now have a recurring problem. About once a day my Time Machine icon starts spinning at
-
Speedtouch 510v4 on both ends & "not responding"
Both with latest firmware 4.3.2.6 Both with default settings, UPnP is on and SIP 5060 is unbound on both. We have someone on dial-up and we can successfully call that person and be called by the person, but when we call each other it's always "not re
-
I have used bridge for while to preview & sort through my Adobe files, however, all of a sudden I have icons instead of image previews for my eps files. I've trashed my preferences - any suggestions or thoughts on cause?
-
ThinkPad Edge S430: where to get keyboard key hinge replacement?
Hi guys, I just broke a hinge of my S430's keyboard's key. A "regular" one. Does anybody knows where I can get a replacement? In Argentina? (is where I'm currently) Or some place it ships to Argentina, Spain, Germany, Canada...? I didn't find any ke