Archive for the ‘tip’ Category
sysdba olmadan awr raporu çalıştırma
dbms_workload_repository paketi içindeki AWR_REPORT_HTML veya AWR_REPORT_TEXT fonksiyonları sysdba olmadan da çalıştırabiliriz.Çalıştırılacak kullanıcıya aşağıdaki hakları vermek yeterli olacaktır.
grant select_catalog_role to user;
grant execute on dbms_workload_repository to user;
Şayet gerekli haklar olmadığı sürece aşağıdaki hata ile karşılaşılabilir.
select output from table (dbms_workload_repository.awr_report_text(:dbid
ORA-00904 : invalid identifier
ORA-01732: data manipulation operation not legal on this view
Geçenlerde karşılaştığım bu hata insert veya update cümlesinde tabloya alias eklenmeden, alanları alias ile çağrılmasından kaynaklanıyordu.
update t1 set x.field1=’ss’;
t1 tablosu alias ile çağrılmadığında hata alnımakta idi.Alias tanımı yapıldığında hata giderildi.
update t1 x set x.field1=’ss’;
PX Deq Credit: send blkd
Paralel sorgulamalar sırasında query coordinator ve query slaves processleri yaratılır.Query slaves diye adlarındırılan process ler Pn şeklinde isimlendirilmekte ve n değeri paralellik değeri ne eşittir.
Query slaves işlemleri, kullanıcının sorgusunu çalışıtırıp , datayı Query coordinator e gönderir.Bu gönderme işlemi buffer mesaj ları ile yapılır ve parallel_execution_message_size parametresinde belirlenen değer büyüklüğündedir.
“PX Deq Credit: send blkd” beklemesi query slave lerden herhangi bir tanesinin mesajı query coordinatoregöndermek istediğinde query coordinator un bir önceki mesajın işlemesini bitirmediğinde oluşan beklemedir.Gelen yeni mesajlarile bekleme oluşmaktadır.
Metalink de bekleme olayının azaltılması ile ilgili net bir bilgi yok, fakat waiti azaltmak için
1-Sorgudaki paralelizm kaldırılabilir veya tablo ların DOP (degree of parallelism) değerleri 1 yapılabilir. Bu durumda wait oluşmayacak fakat sorgu daha yavaş çalışacaktır.
2-sistemin kaynaklarına göre DOP belirlenebilir.
3-Sql ler tune edilebilir.
Kaynak : http://www.mandela.org/content/waiting-px-deq-credit-send-blkd-118/
Examine Current Redo Log File by DBMS_LOGMNR – DBMS_LOGMNR ile redo log incelemek
Veritabanı içerisinde yapılan bütün değişikliklerin tutulduğu, bir veritabanı için hayatı önem taşıyan redologları SYS e ait dbms_logmnr paketi yardımı ile açıp yapılan değişiklikleri izeleyebiliriz.Arşiv modda çalışan bir veritabanının arşivlerinin açılması veya arşiv modda çalışmayan bir veritabanı için red logların açılması şeklinde 2 yol ile yapılabilir.
Burda kullandığım basit pl/sql script ile kendim belirlediğim redolog da tutulan değişiklikleri izleyebiliyorum.
begin
sys.dbms_logmnr.add_logfile(‘/test/data/redo01.log’);
sys.DBMS_LOGMNR.start_logmnr(OPTIONS => sys.DBMS_LOGMNR.DICT_FROM_ONLINE_CATALOG);
execute immediate ‘create table logmnr_cnts as select * from V$LOGMNR_CONTENTS’;
end;
ATG Rup 7 sonrası çıkan uygulama hataları – Application errors after ATG Rup 7
EBS için client larda JRE kullanılması na ilişikin uygulanan patch ler den bir tanesi de ATG Rup7 dir.Application Technology Patch olarak adlandırılan bu patch EBS nin teknolojisinde service pack niteliği taşıdığından uygulamada etkilediği yer oldukça fazladır.Bu patch i uyguladıktan sonra karşılaştığım hataları ve çzöümleri paylaşmaya çalışacağım.
1-Çıktı RTF formatında gözükmektedir. (Output Always Opens in RTF Not PDF After ATG.H RUP7)
XML Publisher raporlarında çıktı formatı patch uygulandıktan sonra default olarak RTF olarak gözükmektedir. PDF
olarak alınmak istenildiğinde, çıktı formatı PDF olarak manuel değiştirilmelidir.
Metalinkde bulunan 965553.1 nolu dökümana göre konu ile ilgili bi bug yayınlanmış.Bug.5612820:’DEFAULT OUTPUT FORMAT ATTRIBUTE AT TEMPLATE LEVEL IS REQURIED’
Çözüm için ,
a-5612820 ve 7627832 patch lerinin uygulanmış olması
b-Patch ler uygulandıktan sonra FNDRSRUN.fmb nin versiyonunun 115.85 veya büyük olması
gerekmektedir.
c-FND: Default Template Output Type profil değerinin Site bazında istenilen format tipine güncellenmesi gerekmtektedir.
– EXCEL
– FO
– HTML
– PDF
– RTF
Kendi sistemimde 7627832 nolu patch i uygulamdan profil değerini değiştirerek sorunun giderildiğini gözlemledim.
2-Pozisyon Hiyerarşisi Diyagramlayıcısı ekranı çalışmıyor (Position Hierarchy Diagrammer)
Pozisyon Hiyerarşisi Diyagramlayıcısı ekranı açılmak istenildiğinde aşağıdaki hata alınmaktadır.
Your userarea applet has caused a runtime exception, the applet will be terminated to ensure continued functioning of your form.
java.lang.IllegalArgumentException
at java.sql.Date.valueOf(Unknown Source)
at oracle.apps.per.hierarchy.common.PosKeyInfo.getFactory(PosKeyInfo.java:164)
at oracle.apps.per.hierarchy.client.PosTreeViewer.getKeyInfoFactory(PosTreeViewer.java:170)
at oracle.apps.fnd.hierarchy.client.TreeViewer.init(TreeViewer.java:303)
at oracle.apps.per.hierarchy.client.PosTreeViewer.init(PosTreeViewer.java:107)
at oracle.apps.fnd.formsClient.AppletAdapter.makeNewApplet(AppletAdapter.java:437)
at oracle.apps.fnd.formsClient.AppletAdapter.handleMessage(AppletAdapter.java:262)
at oracle.apps.fnd.formsClient.AppletAdapter.setProperty(AppletAdapter.java:199)
at oracle.forms.handler.ComponentItem.setCustomProperty(Unknown Source)
at oracle.forms.handler.ComponentItem.onUpdate(Unknown Source)
at oracle.forms.handler.JavaContainer.onUpdate(Unknown Source)
at oracle.forms.handler.UICommon.onUpdate(Unknown Source)
at oracle.forms.engine.Runform.onUpdateHandler(Unknown Source)
at oracle.forms.engine.Runform.processMessage(Unknown Source)
at oracle.forms.engine.Runform.processSet(Unknown Source)
at oracle.forms.engine.Runform.onMessageReal(Unknown Source)
at oracle.forms.engine.Runform.onMessage(Unknown Source)
at oracle.forms.engine.Runform.processEventEnd(Unknown Source)
at oracle.ewt.lwAWT.LWComponent.redispatchEvent(Unknown Source)
at oracle.ewt.lwAWT.LWComponent.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.KeyboardFocusManager.redispatchEvent(Unknown Source)
at java.awt.Default
Bug 9823135 ile açıklanan durum un çözümü için 9931855 nolu patch in uygulanması gerekmektedir.
Metalink [ID 1151488.1]
3-PDF ve XML Talepleri takılıyor – PDF and XML Concurrent Requests Hangs
ATG den sonra PDF ve XML talepleri uzun bir süre beklemekte , çoğunlukla hata ile bitmektedir.Log dosyasında bazen “fdugpi has recovered SRW driver value” hatası yer almaktadır.Bug 9057218 “The SRW Driver Field Allows A Bogus / Junk Entry” e göre SRW sürücü tanımı PDF ve XML çıktısı olan programlar için zorunlu hale gelmiş.ATG öncesi bu tanım kullanılmıyordu.
Çözüm için kullanılan printer sürücü tanımlarındaki SRW Driver tanımının doğru tanım ile güncellenmesi gerekmektedir.SRW sürücü dosyaları $FND_TOP ın altında yer almaktadır.
Metalink [ID 968279.1]
EMD upload error: Upload was successful but collections currently disabled – disk full
> emctl upload
Oracle Enterprise Manager 10g Release 5 Grid Control 10.2.0.5.0.Copyright (c) 1996, 2009 Oracle Corporation. All rights reserved.
—————————————————————
EMD upload error: Upload was successful but collections currently disabled – disk full
Agent üzerinde bulunduğu disk için default olarak en fazla %98 lik bir doluluk bekliyor.Diğer durumda agent upload işlemini gerçekleştiremiyor.Çözüm için,
1- Agent ın bulunduğu disk büyütülür veya disk üzerinde tarihi eski olan log dosyaları silinebilir vb.
2- Agent ın config dosyasında bulunan 2 parametre de değişiklik yapılabilir.
AGENT_OH/sysman/config/emd.properties dosyasında bulunan
UploadMaxDiscUsedPct=99
UploadMaxDiskUsedPctFloor=99
parametreleri 99 olarak güncellenebilir.
Güncelleme işleminden sonra agent restart edilip upload işlemi yapılabilir.
./emctl stop agent
./emctl start agent
./emctl upload agent
& ve % karakterlerinin insert işlemi – Howto insert & and %
Oracle da & ve % kareketerlernin insert işleminin yapabilmek için, ilgili script i çalıştırmadan
set define off
insert ifadesi
set define off
You must have EXECUTE privilege on DBMS_WORKLOAD_REPOSITORY
Oracle Em Grid Control de karşılaştığım bu hatayı ile sql tuning advisor ı kullanmak istediğimde alıyordum.Em grid e login olduğum kullanıcıya ADVISOR hakkını verdikten sonra ilgili sorun giderilmiş oldu.
grant advisor to user_name;
Unable to Run wfntfqup.sql for WF_NOTIFICATION_OUT Queue
Wf_notification_out kuyruğunu tekrar oluşturmak için zaman zaman wfntfqup.sql sql scriptini çalıştırmaya ihtiyaç duyarız. Çalıştırma sırasında sql sonucu bize aşağıdaki gibi bir hata dönebilir.
ORA-20000: Oracle Error = -20000 – ORA-20000: 10 Alert messages exist in
WF_NOTIFICATION_OUT. Ensure these messages are processed before running
wfntfqup scripti ile wf_deferred ve wf_notification_out kuyruklarını temizleyebiliriz.Bu temizleme işlemi wf_notification_out drop edilip yeniden yaratılır.Bu işlem Alert bildirimleri ile ilgili bir sorun yaratabilir.Çünkü bu bildirimler wf_notification_out kuyruğunda direkt girer ve mesajlar gibi tekrar yaratılması zordur.Bu sebeple script wf_notification_out da Alert bildirimleri yakalarsa scripti çalıştırmayı durdurur.
Sorunun çözümü için
javax.net.ssl.SSLHandshakeException
Zaman zaman webservice üzerinden konuşturulan uygulamalarda güvenlik açısından SSL protokolü kullanılır ve sayesinde şifrelenmiş güvenli veri iletişimi sağlanır.
SSL i kullanarak veri iletişimini yapabilmek için bir SSL sertifikasına sahip olmak gerekiyor.Benim karşılaştığım durumda e-business uygulmasından webservice aracılığı ile https üzerinden haberleşme yapılması isteniyordu.Fakat mevcutta bulunan SSl sertifikası e-business e yüklenmediğinden javax.net.ssl.SSLHandshakeException : unknown certificate hatası almaktaydım.Aşağıdaki linkte yer alan dökümanda bahsedilen keytool uygulası ile problemi giderebildim.
http://www.webapper.com/blog/index.php/2007/02/09/troubleshooting-javaxnetsslsslhandshakeexception/
kendi uygulamamada aşağıdaki gibi kullandım.
>cd $IAS_ORACLE_HOME/appsoui/jre/1.3.1/bin
>keytool -keystore $IAS_ORACLE_HOME/appsoui/jre/1.3.1/jre/lib/security/cacerts -import -alias mycert -file mycert.cer -trustcacerts
komut sonunda keystore için şifre sormaktadır.Default şifre : changeit
şifreyi girdikten sonra yeni sertifika bilgileri keystore a eklenecektir.