Any way to force FTS without any query change

Hi All,
One of my Oracle 11i apps database got one Cache buffer chain latch issue and it is causing high cpu spikes.
I found the culprit SQL and its one of the Index (Nested Loop operation) which is causing high CBC latch.
I am not in a position to put any HINT or modify the SQL. When i tested the sql with FULL hint, query gave results (100k records) in less than 1 min without any latch contention.
My apps database is running on 10.2.0.4.0 RHEL 5.4 64 bit.
SQL
select
int.rowid  ,  decode(int.SEGMENT1|| int.SEGMENT2|| int.SEGMENT3|| int.SEGMENT4|| int.SEGMENT5|| int.SEGMENT6|| int.SEGMENT7 , '',  
decode (ccid_cc.code_combination_id, NULL, NULL, replace(ccid_cc.SEGMENT4,'.',' ') || '.' || replace(ccid_cc.SEGMENT1,'.',' ') || '.' || replace(ccid_cc.SEGMENT2,'.',' ') || '.' ||
replace(ccid_cc.SEGMENT3,'.',' ') || '.' || replace(ccid_cc.SEGMENT5,'.',' ') || '.' || replace(ccid_cc.SEGMENT6,'.',' ') || '.' || replace(ccid_cc.SEGMENT7,'.',' ')  ),
replace(int.SEGMENT4,'.',' ') || '.' || replace(int.SEGMENT1,'.',' ') || '.' || replace(int.SEGMENT2,'.',' ') || '.' || replace(int.SEGMENT3,'.',' ') || '.' ||
replace(int.SEGMENT5,'.',' ') || '.' || replace(int.SEGMENT6,'.',' ') || '.' || replace(int.SEGMENT7,'.',' ') ) flexfield , nvl(flex_cc.code_combination_id, nvl(int.code_combination_id, -4))  ,
decode(int.SEGMENT1|| int.SEGMENT2|| int.SEGMENT3|| int.SEGMENT4|| int.SEGMENT5|| int.SEGMENT6|| int.SEGMENT7 , '', decode(ccid_cc.code_combination_id, null,
decode(int.code_combination_id, null, -4, -5), decode(sign(nvl(ccid_cc.start_date_active, int.accounting_date-1) - int.accounting_date), 1, -1,
decode(sign(nvl(ccid_cc.end_date_active, int.accounting_date +1) - int.accounting_date), -1, -1, 0)) +  decode(ccid_cc.enabled_flag, 'N', -10, 0) + 
decode(ccid_cc.summary_flag, 'Y', -100, decode(int.actual_flag, 'B', decode(ccid_cc.detail_budgeting_allowed_flag, 'N', -100, 0),  decode(ccid_cc.detail_posting_allowed_flag, 'N', -100, 0)))),
decode(flex_cc.code_combination_id, null, -4, decode(sign(nvl(flex_cc.start_date_active, int.accounting_date-1) - int.accounting_date), 1, -1,
decode(sign(nvl(flex_cc.end_date_active, int.accounting_date +1) - int.accounting_date), -1, -1, 0)) +  decode(flex_cc.enabled_flag, 'N', -10, 0) +  decode(flex_cc.summary_flag, 'Y', -100, 
decode(int.actual_flag, 'B', decode(flex_cc.detail_budgeting_allowed_flag, 'N', -100, 0),  decode(flex_cc.detail_posting_allowed_flag, 'N', -100, 0)))))   , int.user_je_category_name ,
int.user_je_category_name , 'UNKNOWN' period_name , decode(actual_flag, 'B'   , decode(period_name, NULL, '-1' ,period_name), nvl(period_name, '0')) period_name2  , currency_code  ,
decode(actual_flag   , 'A', actual_flag   , 'B', decode(budget_version_id        , 1244, actual_flag        , 1303, actual_flag        , 1344, actual_flag        , NULL, '1', '6')   , 'E',
decode(encumbrance_type_id        , 1000, actual_flag        , 1001, actual_flag        , 1020, actual_flag        , NULL, '3', '4'), '5') actual_flag  , '0' exception_rate ,
decode(currency_code   , 'JPY', 1   , 'STAT', 1   , decode(actual_flag, 'E', -8, 'B', 1      , decode(user_currency_conversion_type          , 'User',
decode(currency_conversion_rate, NULL, -1, currency_conversion_rate)         ,'Corporate',decode(currency_conversion_date,NULL,-2,-6)          ,'Spot',
decode(currency_conversion_date,NULL,-2,-6)          ,'Bloomberg Daily Rate',decode(currency_conversion_date,NULL,-2,-6)          , NULL, decode(currency_conversion_rate,NULL,
decode(decode(nvl(to_char(entered_dr),'X'),'X',1,2),decode(nvl(to_char(accounted_dr),'X'),'X',1,2),                  
decode(decode(nvl(to_char(entered_cr),'X'),'X',1,2),decode(nvl(to_char(accounted_cr),'X'),'X',1,2),-20,-3),-3),-9),-9))) currency_conversion_rate ,
to_number(to_char(nvl(int.currency_conversion_date,            int.accounting_date), 'J'))  , decode(int.actual_flag  , 'A',
decode(int.currency_code    , 'JPY', 'User'   , 'STAT', 'User'    , nvl(int.user_currency_conversion_type, 'User'))  , 'B', 'User', 'E', 'User'   ,
nvl(int.user_currency_conversion_type, 'User')) user_currency_conversion_type  , ltrim(rtrim(substrb(rtrim(substrb(int.reference1, 1, 50)) || ' ' || int.user_je_source_name || ' 10409378: ' || int.actual_flag || ' ' || int.group_id, 1, 100))) , rtrim(substrb(nvl(rtrim(int.reference2), 'Journal Import ' || int.user_je_source_name || ' 10409378:'), 1, 240)) ,
ltrim(rtrim(substrb(rtrim(rtrim(rtrim(substrb(int.reference4, 1, 25)) || ' ' || int.user_je_category_name || ' ' || int.currency_code || decode(int.actual_flag, 'E', ' ' || int.encumbrance_type_id,  'B', ' ' || int.budget_version_id,  '') || ' ' || int.user_currency_conversion_type || ' ' || decode(int.user_currency_conversion_type, NULL, '', 'User', to_char(int.currency_conversion_rate))) || ' ' || to_char(int.currency_conversion_date)) || ' ' || substrb(int.reference8, 1, 15) || int.originating_bal_seg_value, 1, 100))) , rtrim(nvl(rtrim(int.reference5), 'Journal Import 10409378:')) , rtrim(substrb(nvl(rtrim(int.reference6), 'Journal Import Created'), 1, 80)) , rtrim(decode(upper(substrb(nvl(rtrim(int.reference7), 'N'), 1, 1)),'Y','Y', 'N')) , decode(upper(substrb(int.reference7, 1, 1)), 'Y', decode(rtrim(reference8), NULL, '-1', rtrim(substrb(reference8, 1, 15))), NULL) , rtrim(upper(substrb(int.reference9, 1, 1))) , rtrim(nvl(rtrim(int.reference10), nvl(to_char(int.subledger_doc_sequence_value), 'Journal Import Created'))) , int.entered_dr , int.entered_cr , to_number(to_char(int.accounting_date,'J')) , to_char(int.accounting_date, 'YYYY/MM/DD')  , int.user_je_source_name , nvl(int.encumbrance_type_id, -1) , nvl(int.budget_version_id, -1) , NULL , int.stat_amount , decode(int.actual_flag   , 'E', decode(int.currency_code, 'STAT', '1', '0'), '0') , decode(int.actual_flag   , 'A', decode(int.budget_version_id     , NULL, decode(int.encumbrance_type_id, NULL, '0', '1')           , decode(int.encumbrance_type_id, NULL, '2', '3'))   ,
'B', decode(int.encumbrance_type_id     , NULL, '0', '4')   , 'E', decode(int.budget_version_id     , NULL, '0', '5'), '0') , int.accounted_dr ,
int.accounted_cr , nvl(int.group_id, -1) , nvl(int.average_journal_flag, 'N') , int.originating_bal_seg_value
from GL.GL_INTERFACE int,  GL.gl_code_combinations flex_cc,  GL.gl_code_combinations ccid_cc
where int.set_of_books_id = 43
and int.status != 'PROCESSED'
and accounting_date between to_date('2010/06/01', 'YYYY/MM/DD')
and to_date('2010/06/30', 'YYYY/MM/DD')
and (int.user_je_source_name,group_id) in (('Receivables', 74486))
and flex_cc.SEGMENT1(+) = int.SEGMENT1
and flex_cc.SEGMENT2(+) = int.SEGMENT2
and flex_cc.SEGMENT3(+) = int.SEGMENT3
and flex_cc.SEGMENT4(+) = int.SEGMENT4
and flex_cc.SEGMENT5(+) = int.SEGMENT5
and flex_cc.SEGMENT6(+) = int.SEGMENT6
and flex_cc.SEGMENT7(+) = int.SEGMENT7
and flex_cc.chart_of_accounts_id(+) = 101
and flex_cc.template_id(+) is NULL
and ccid_cc.code_combination_id(+) = int.code_combination_id
and ccid_cc.chart_of_accounts_id(+) = 101
and ccid_cc.template_id(+) is NULL
order by decode(int.SEGMENT1|| int.SEGMENT2|| int.SEGMENT3|| int.SEGMENT4|| int.SEGMENT5|| int.SEGMENT6|| int.SEGMENT7 , ''  ,rpad(ccid_cc.SEGMENT4,30) || '.' || rpad(ccid_cc.SEGMENT1,30) || '.' || rpad(ccid_cc.SEGMENT2,30) || '.' || rpad(ccid_cc.SEGMENT3,30) || '.' || rpad(ccid_cc.SEGMENT5,30) || '.' || rpad(ccid_cc.SEGMENT6,30) || '.' || rpad(ccid_cc.SEGMENT7,30)  , rpad(int.SEGMENT4,30) || '.' || rpad(int.SEGMENT1,30) || '.' || rpad(int.SEGMENT2,30) || '.' || rpad(int.SEGMENT3,30) || '.' || rpad(int.SEGMENT5,30) || '.' || rpad(int.SEGMENT6,30) || '.' || rpad(int.SEGMENT7,30)   ) , int.entered_dr, int.accounted_dr, int.entered_cr, int.accounted_cr, int.accounting_date
/Execution plan
| Id  | Operation                      | Name                    | Rows  | Bytes | Cost (%CPU)| Time     |
|   0 | SELECT STATEMENT               |                         |       |       |  2027 (100)|          |
|   1 |  SORT ORDER BY                 |                         |     1 |   374 |  2027   (1)| 00:00:25 |
|   2 |   NESTED LOOPS OUTER           |                         |     1 |   374 |  2026   (1)| 00:00:25 |
|   3 |    NESTED LOOPS OUTER          |                         |     1 |   315 |  2024   (1)| 00:00:25 |
|*  4 |     TABLE ACCESS BY INDEX ROWID| GL_INTERFACE            |     1 |   256 |  2022   (1)| 00:00:25 |
|*  5 |      INDEX RANGE SCAN          | GL_INTERFACE_N1         | 25375 |       |   132   (0)| 00:00:02 |
|*  6 |     TABLE ACCESS BY INDEX ROWID| GL_CODE_COMBINATIONS    |     1 |    59 |     2   (0)| 00:00:01 |
|*  7 |      INDEX RANGE SCAN          | GL_CODE_COMBINATIONS_N7 |  4211 |       |     2   (0)| 00:00:01 |
|*  8 |    TABLE ACCESS BY INDEX ROWID | GL_CODE_COMBINATIONS    |     1 |    59 |     2   (0)| 00:00:01 |
|*  9 |     INDEX UNIQUE SCAN          | GL_CODE_COMBINATIONS_U1 |     1 |       |     1   (0)| 00:00:01 |
Predicate Information (identified by operation id):
   4 - filter(("ACCOUNTING_DATE">=TO_DATE(' 2010-06-01 00:00:00', 'syyyy-mm-dd hh24:mi:ss') AND
              "INT"."STATUS"<>'PROCESSED' AND "ACCOUNTING_DATE"<=TO_DATE(' 2010-06-30 00:00:00', 'syyyy-mm-dd
              hh24:mi:ss')))
   5 - access("INT"."USER_JE_SOURCE_NAME"='Receivables' AND "INT"."SET_OF_BOOKS_ID"=43 AND
              "GROUP_ID"=74486)
   6 - filter(("FLEX_CC"."CHART_OF_ACCOUNTS_ID"=101 AND "FLEX_CC"."TEMPLATE_ID" IS NULL AND
              "FLEX_CC"."SEGMENT1"="INT"."SEGMENT1" AND "FLEX_CC"."SEGMENT2"="INT"."SEGMENT2" AND
              "FLEX_CC"."SEGMENT3"="INT"."SEGMENT3" AND "FLEX_CC"."SEGMENT4"="INT"."SEGMENT4" AND
              "FLEX_CC"."SEGMENT5"="INT"."SEGMENT5" AND "FLEX_CC"."SEGMENT6"="INT"."SEGMENT6"))
   7 - access("FLEX_CC"."SEGMENT7"="INT"."SEGMENT7")
   8 - filter(("CCID_CC"."CHART_OF_ACCOUNTS_ID"=101 AND "CCID_CC"."TEMPLATE_ID" IS NULL))
   9 - access("CCID_CC"."CODE_COMBINATION_ID"="INT"."CODE_COMBINATION_ID")SQL plan with FULL(flex_cc) hint
| Id  | Operation                      | Name                    | Rows  | Bytes | Cost (%CPU)| Time     |
|   0 | SELECT STATEMENT               |                         |     1 |   374 | 15377   (4)| 00:03:05 |
|   1 |  SORT ORDER BY                 |                         |     1 |   374 | 15377   (4)| 00:03:05 |
|   2 |   NESTED LOOPS OUTER           |                         |     1 |   374 | 15376   (4)| 00:03:05 |
|*  3 |    HASH JOIN OUTER             |                         |     1 |   315 | 15374   (4)| 00:03:05 |
|*  4 |     TABLE ACCESS BY INDEX ROWID| GL_INTERFACE            |     1 |   256 |  2022   (1)| 00:00:25 |
|*  5 |      INDEX RANGE SCAN          | GL_INTERFACE_N1         | 25375 |       |   132   (0)| 00:00:02 |
|*  6 |     TABLE ACCESS FULL          | GL_CODE_COMBINATIONS    |  1193K|    67M| 13342   (4)| 00:02:41 |
|*  7 |    TABLE ACCESS BY INDEX ROWID | GL_CODE_COMBINATIONS    |     1 |    59 |     2   (0)| 00:00:01 |
|*  8 |     INDEX UNIQUE SCAN          | GL_CODE_COMBINATIONS_U1 |     1 |       |     1   (0)| 00:00:01 |
Predicate Information (identified by operation id):
   3 - access("FLEX_CC"."SEGMENT1"(+)="INT"."SEGMENT1" AND
              "FLEX_CC"."SEGMENT2"(+)="INT"."SEGMENT2" AND "FLEX_CC"."SEGMENT3"(+)="INT"."SEGMENT3" AND
              "FLEX_CC"."SEGMENT4"(+)="INT"."SEGMENT4" AND "FLEX_CC"."SEGMENT5"(+)="INT"."SEGMENT5" AND
              "FLEX_CC"."SEGMENT6"(+)="INT"."SEGMENT6" AND "FLEX_CC"."SEGMENT7"(+)="INT"."SEGMENT7")
   4 - filter("ACCOUNTING_DATE">=TO_DATE(' 2010-06-01 00:00:00', 'syyyy-mm-dd hh24:mi:ss') AND
              "INT"."STATUS"<>'PROCESSED' AND "ACCOUNTING_DATE"<=TO_DATE(' 2010-06-30 00:00:00', 'syyyy-mm-dd
              hh24:mi:ss'))
   5 - access("INT"."USER_JE_SOURCE_NAME"='Receivables' AND "INT"."SET_OF_BOOKS_ID"=43 AND
              "GROUP_ID"=74486)
   6 - filter("FLEX_CC"."CHART_OF_ACCOUNTS_ID"(+)=101 AND "FLEX_CC"."TEMPLATE_ID"(+) IS NULL)
   7 - filter("CCID_CC"."CHART_OF_ACCOUNTS_ID"(+)=101 AND "CCID_CC"."TEMPLATE_ID"(+) IS NULL)
   8 - access("CCID_CC"."CODE_COMBINATION_ID"(+)="INT"."CODE_COMBINATION_ID")
Above execution is very quick without any CBC latch contention.Is there any way, i can force FTS on this flex_cc table. I did try altering 'GL_CODE_COMBINATIONS_N7' index stats but then CBO is using GL_CODE_COMBINATIONS_N6 index and result is same CBC latch contention.
Index statitics :
select index_name,NUM_ROWS,SAMPLE_SIZE,LAST_ANALYZED,CLUSTERING_FACTOR,BLEVEL,LEAF_BLOCKS,DISTINCT_KEYS from dba_indexes where
index_name='GL_CODE_COMBINATIONS_N7';
INDEX_NAME                  NUM_ROWS SAMPLE_SIZE LAST_ANALYZED        CLUSTERING_FACTOR     BLEVEL LEAF_BLOCKS DISTINCT_KEYS
GL_CODE_COMBINATIONS_N7      7236665     7236665 2010/06/07 11:00:33             185935          2       20751          2293INDEX DDL
CREATE INDEX "GL"."GL_CODE_COMBINATIONS_N7" ON "GL"."GL_CODE_COMBINATIONS" ("SEGMENT7")
  PCTFREE 0 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS
  STORAGE(INITIAL 131072 NEXT 131072 MINEXTENTS 1 MAXEXTENTS 2147483645
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT)
  TABLESPACE "APPS_TS_TX_IDX"

Have you looked at stored outlines ? They are for plan stability.
Also you may want to look little deep on where your statistics are going wrong.
I would recommend using below hint and checking where is difference in estimated(E-Rows) and actual number(A-rows) of rows. This may point out some incorrect stats.
e.g.
select /*+ gather_plan_statistics */ * from dual;
D
X
select * from table(dbms_xplan.display_cursor(null,null,'ALLSTATS LAST'));
Plan hash value: 272002086
| Id | Operation | Name | Starts | E-Rows | A-Rows | A-Time | Buffers |
| 1 | TABLE ACCESS FULL| DUAL | 1 | 1 | 1 |00:00:00.01 | 3 |
------------------------------------------------------------------------------------

Similar Messages

  • ANY WAY to do Certification without any SAP training and experience?

    This simple question is getting so confusing now. Please help.
    This is India scenario. If you are mentioning some info for other countries PLEASE remember to do so. The confusion it creates is amazing!
    I completed my engineering in July 2013 and then went for SAP ABAP training from an location institution which is NOT an SAP partner. I have no work experience and I'm still looking for ABAP opportunities.
    Now, suddenly a friend has told me that someone he knows DID the official SAP ABAP certification by just studying from home for a fees of 40k (INR).
    So I call up SAP education in Bangalore (in India) and confirm that the only way to get certified is:
    - Through course + certification from their partners for fresher.
    - And through your employer if it's an SAP partner.
    I already knew this and this is what I've been believing till day. Now enters pearson vue.
    So I do some googling and find the below responses regarding the SAP certification from peason vue.
    This blog post: Frequently Asked Questions about SAP Certificationsays the following and it doesn't mention any country wise info.
    Do certification programs have prerequisites, such as participation in a series of training courses?
    While there is no course or set of courses required to take a particular certification exam, SAP provides a list of recommended training you can take to better prepare for an exam. In addition, completing an exam for a lower-level (associate) certification is not a prerequisite for taking a higher-level (professional) exam, although many professional-level certification seekers might find it helpful.
    Then there is this post from 2010:
    SAP-SD Certification though PEARSON VUE---INDIAwhich got the following response:
    "Hi,
    Pearson VUE is an examination center (where you can directly book your exam (any exam apart from SAP, like TOEFL,gre..).
    Third party for any on line examination. if you wish to do certification without any authorized training , you can go for Pearson VUE.
    Where as, Siemens is SAP authorized technology center. where you can get certification training by certain amount and then appear for the exam.
    Hope  i am clear.
    Regards
    Nagaraju"
    What this doesn't mention is CAN recent graduates (also called freshers in India) go for pearson vue or previous SAP experience (at an SAP partner) is required?
    <span style="color: rgb(87, 87, 87);"><span style="color: rgb(255, 102, 0);">TL;DR</span></span>
    My questions straight to the point:
    I completed my engineering in July 2013 and then I went for SAP ABAP training from an location institution which is NOT an SAP partner. I have no work experience (SAP or ANY other).
    Can I go an enroll for the official SAP ABAP certification from Pearson Vue?
    I'm asking this for India but if it's possible in other countries then too please reply and mention the rules etc.

    Allwyn,
    SAP has a very confusing policy with regards to certification as it varies country by country. I wrote this a long time ago and it needs updating (Learning SAP when you don't have an SAP job already - Authorized Classes). This will give you the general rundown of what's available in terms of course of study.
    It sounds like your friend signed up for an eAcademy. (I think they may have changed the name now, but basically it's online learning, not onsite, instructor led learning).
    Now, here's the kicker. I'm going to divide the world into two groups: Group 1 and Group A. (Yes, it's a mixed metaphor, and it's deliberate. Read on.)
    Countries in Group 1 have Authorized Training Providers. If you live in a country with Authorized Training Providers, the only way to get official SAP Training and the only way to sit for a certification examination is to go through Authorized Training. There are some exceptions: you can get your company to swear that you've got several years of experience or get an implementation partner to do the same, but it's a lot of hassle it's an extreme minority route. The bulk of the certifications for folks in Group 1 countries are via paid training via Authorized Training Providers. The certification and the training are completely linked.
    For countries in Group A, the only Authorized Training Provider is SAP itself. If you want official SAP training, you must get it from SAP; HOWEVER, anyone can take the certification exam just by signing up at a Pearson Vue center. The training and the certification are completely unlinked.
    I purposely used  a mixed metaphor because there is no value judgement here. There are pros and cons to each system. The Group 1 method provides a clear route for folks to get trained and certified in SAP. Also, there is healthy competition between ATPs so the cost to get trained and certified is very low (compared to Group A). As a result, there seems to be far more certified SAP resources coming from those countries. The downside is that we hear horror story after horror story of folks who have been told by unscrupulous ATPs that getting certified is all it would take to get a job. Experience is far more important than certification in getting entry level positions in the SAP world. Certification plays more of a role at the mid-level, but the ATPs have children to feed and seem to accept anyone with enough cash, regardless of whether or not that person will be able to get a job afterwards. Check out SAP Career Blog Links for some blogs on that topic (and other related topics).
    The Group A method allows anyone to get certified who has enough cash, but paradoxically, I would wager that the failure rate is much higher as more folks sit for the exam unprepared. Citizens of countries in Group A tend not to see a clear route from college graduate to SAP career. The official training is so expensive, that it isn't really an option to pay for your own training and hope for a job after. In Group A countries, most of the training is taken by folks who have gotten a job first and then have the training paid for by the company who has hired them.
    So, by now you have guess that you are in a Group 1 country and your friend is in a Group A country.
    While not a definitive list, the last time I checked it broke down something like this:
    Group 1:  India, Middle Eastern, African, Asian and South American Countries (+Mexico), Eastern Europe
    Group A: North American Countries (Canada + US), Western Europe. Australia
    You can find an list of Training Locations and check it out country by country to look for exceptions or specific details. If you're willing to travel, then you can test any time. If you can't travel, you're stuck with finding an ATP that you can afford if you live in a Group 1 country. In the past, all ATPs offered on-site, in-person, instructor-led training. I've heard that some are moving to the eAcademy training so that they don't have to pay local instructors (but still charge essentially the same price). I'd be interested in your experience as you go through this process. I encourage you to blog every step of the way! Blog about the various offerings of each ATP and tell us what the salespeople promise you/say to you before you sign up. Contrast that to the reality of the training and the help you get after you've had the training. You will be providing a much appreciated service to all of those who come behind you.
    I hope this helps clear things up. I'm basically going to cut and paste this into a FAQ blog for this topic so folks can refer to it later. This is a fairly frequent source of confusion. I could have sworn that I wrote this all up in a blog earlier, but I can't find it, so I thank you for bringing this up so I can get this properly documented. Please ask any questions you may have so I can address them in the blog when it's ready.
    Best regards,
    --Tom

  • Is there any way to force the applet to load the file without using cache?

    Hi,
    I have the applet that renders some data from a file specified as the parameter. The problem is that the user can do something, that changes the input file and reloads the page, but the applet renders old data (from browser cache most probably)
    Is there any way to force the applet to load the file without using cache?
    Regards,
    Zdenek

    The initial view (IV) settings within a PDF file are static tags - they can't be made to dynamically-adapt based on the window dimensions,it's the renderer (Acrobat, Reader, or whatever else is opening the file) that decides if and how it will follow the IV requested by the file header.
    It would be possible to use a Page Open action on the first page of the file, which does some nasty math with the various doc.*WindowRect objects to work out how much "wasted" space there is, and then set the doc.layout and doc.zoomType properties - but page actions are a different concept to IV as the zoom will reset itself every time that page is viewed. Users don't like their application apparently fiddling with the zoom level without being told to!

  • Since updating an iphone5 to ios8.3, it is no longer recognized by my pc. An Apple tech suggested that I install itunes as the only way to assure that I have the latest driver. Any way to do this without installing itunes?

    Since updating an iphone 5 to ios 8.3, it is no longer recognized by my Windows 7 pc. An Apple tech suggested that I install itunes as the only way to assure that I have the latest driver. Any way to do this without installing itunes?

    Read this
    Syncing to a "New" Computer or replacing a "crashed" Hard Drive

  • Is there any way to prevent the OS from querying the Superdrive when start

    Just a random question. Whenever my MacBook Pro starts up (either from sleep or a complete/fresh start, the OS queries the drive slot to see if there is a disc present. While this may be normal behavior, it seems to slow down the start up process. (I rarely ever have a disc in the drive). Just curious if this, in fact, normal, or if there's something awry.

    Is there any way to prevent the OS from querying the Superdrive when start
    No
    he OS queries the drive slot to see if there is a disc present.
    How can you tell? Based on the noise it makes?

  • Is there any way to force time machine to keep retrying after disk i/o error?

    a little background to my problem:
    i've had a hard drive problem previously, and i managed get all the data off of my mac by trying and retrying to access the same files and also from my working time machine backup. after zeroing out and reformatting my drive and doing a clean install of Mavericks i had everything back up running no problems.
    recently, my macbook pro would be stuck and slow in recently imported iphoto pics so i figured my hard drive is really failing this time around
    i try to get a time machine backup to save what i can, but after a couple of tries time machine would just stop backing up and in console i would see a disk i/o error.
    is there any way to force time machine to keep trying to backup through the disk i/o error so i can save what i can before getting a new drive?
    edit: a little more info, i know i have a harddrive error from looking at the console, but when i do a verify disk in disk utility it comes up clean and even after doing a disk repair it comes up clean i still see disk i/o errors in the console.

    See:
    *http://kb.mozillazine.org/Preferences_not_saved
    Thee can also be a problem with the file(s) that store the extensions registry.
    Delete the files extensions.* (extensions.sqlite, extensions.rdf, extensions.cache, extensions.ini) and compatibility.ini in the Firefox [[Profiles|profile folder]] to reset the extensions registry.<br />
    New files will be created when required.
    See "Corrupt extension files":
    * http://kb.mozillazine.org/Unable_to_install_themes_or_extensions
    If you see disabled, not compatible, extensions in "Tools > Add-ons > Extensions" then click the Tools button at the left side of the Search Bar (or click the "Find Updates" button in older Firefox versions) to do a compatibility check or see if there is an update.

  • Is there any way to force iPhoto to present faces by folder for identification rather than randomly?  Would provide better context for identification especially if a huge number of images is involved.

    Before I commit the time and energy required to load and tag faces in 25,000 images within iPhoto, I need some questions answered;
    Is there any way to force iPhoto to present faces by folder for tagging rather than randomly?  When so many images need tagging, over many years, the context of a folder helps with the identification. The work around is to load the images into iPhoto one folder at a time and do the tagging then.
    How do I get iPhoto to present the tagged faces by last name rather than first name? When so many faces will be identified, it is much easier to find people by surname, particularly when I share the library within the family. The work around is to enter names as last name and first name.  Being able to toggle the sort is much more desireable.
    Is there a way to export a portion of the library including faces?  I want to pass on portions of this huge 125 GB library to my family members.
    Since my family members will need an Apple computer to view the images and faces, they will likely have their own photo library.  So is there any way to combine two libraries and merge the faces?
    About 2/3 of my images have been scanned, so the date of creation is the scanned date rather than the date the photo was taken.  Will this mess up any sequencing or the retrieval of faces?

    If I want to carve off part of a library, I presume the way to do this is to make a copy of the library using PLM then go into iPhoto and delete what I don't want.  The result is the carved off portion.
    You don't need Library Manager to delete the portion you don't want.
    As a general rule: when deleting photos do them in batches of about 100 at a time. iPhoto can baulk at trashing large numbers at one go.
    If I want to merge two libraries, PLM implies that it will do this but will the Faces be merged too?
    I believe so.

  • I'm new at this but I am hoping someone can help me.I have recently been away for 5 weeks and my Tom Tom required updating.When I clicked to update it required a pc.As I didn't have access to a pc it wouldn't work is there any way to do this without a pc?

    Hi, I'm new at this but I am hoping someone can help me.I have recently been away for 5 weeks and my Tom Tom required updating.When I clicked to update it, it required a pc. As I didn't have access to a pc it wouldn't work is there any way to do this without a pc?  I was without this app for 3 weeks!  Thanks, Lea

    The process to update your Tom Tom is a big data file, you will need to be connected to a Wi-Fi network for it to download.  If will take about an hour. 

  • Is there any way to force purchase an unsupported app?

    I'm currently stuck on OS X 1.7.5 since my MacBook Pro isn't compatible with anything more recent than that.
    However, I'll be upgrading to a new Retina MacBook Pro very soon and I'd like to purchase an OS X app that requires 10.8, since it's currently heavily discounted.
    Is there any way to force purchase it on my 10.7.5 system so that I'll be able to use it when I upgrade to a new Mac?
    Thanks!

    No.
    GB

  • Is there any way to force Sun C++ Preprocessor preserve whitespace?

    Hello!
    I'm preprocessing simple source file:
    void test()
        int i;
    }with command: CC -E test.cpp
    and CC preprocessor eats all whitespace at the beginning of each line, like this:
    void test()
    int i;
    }Is there any way to force CC preprocessor preserve whitespace?

    You cannot use the C preprocessor on C++ code, for at least two major reasons.
    1. The default -I options in CC are not the same as for cc. Try adding
    #include <iostream>
    #include <cstdlib>
    to your example.
    Even if you add the missing -I options, the conventions for finding the C++ standard headers are not known to the C preprocessor.
    Example:
    % cc -P -I/opt/SUNWspro/prod/include/CC/Cstd -I/opt/SUNWspro/prod/include/CC -I/opt/SUNWspro/prod/include/cc z.c
    "z.c", line 2: cannot find include file: <cstdlib>
    cc: acomp failed for z.c2. The predefined macros (-D options and predefined macros built into the compilers) are different for cc and CC.
    In particular, the C compiler predefines macros saying it is a C compiler. The C++ compiler predefines macros saying it is a C++ compiler. Code that is conditionalized on whether it is compiled by the C or C++ compiler will give different results. If you add -D options for C++ macros, the results will depend on the way the tests are coded. That is, testing for a C compiler or a C++ compiler will not give mutually exclusive answers, as they would if you use the correct compiler. The Solaris headers have conditional code for C and C++.

  • Is there any way we can simplify this update query ?

    is there any way we can simplify this update query ? There is nothing wrong with the query ,but it looks so clumsy ...is there any other ways of doing this update  like using with clause  or exists or any other?
    [code]
    UPDATE STG_TMP_MBS_POOL s             SET s.instrument_id =             case  when  (                                     (select distinct iai.alternate_id  from                             instrument_alternate_id iai, STG_TMP_MBS_POOL s       where s.fi_instrument_id=iai.fi_instrument_id                             and  iai.alternate_id_type_code  IN (       'FMR_CUSIP','CUSIP'))  > 1)       then                             (select distinct iai.alternate_id from                             instrument_alternate_id iai, STG_TMP_MBS_POOL s       where s.fi_instrument_id=iai.fi_instrument_id                             and  iai.alternate_id_type_code =  'FMR_CUSIP')             else (select distinct iai.alternate_id from                             instrument_alternate_id iai, STG_TMP_MBS_POOL s       where s.fi_instrument_id=iai.fi_instrument_id                             and  iai.alternate_id_type_code IN ('FMR_CUSIP',       'CUSIP'))       END;
    [\code]

    update stg_tmp_mbs_pool s
       set s.instrument_id = case when (select distinct iai.alternate_id
                                          from instrument_alternate_id iai,
                                               stg_tmp_mbs_pool s
                                         where s.fi_instrument_id = iai.fi_instrument_id
                                           and iai.alternate_id_type_code in ('FMR_CUSIP','CUSIP')
                                       ) > 1
                                  then (select distinct iai.alternate_id
                                          from instrument_alternate_id iai,
                                               stg_tmp_mbs_pool s
                                         where s.fi_instrument_id = iai.fi_instrument_id
                                           and iai.alternate_id_type_code = 'FMR_CUSIP'
                                  else (select distinct iai.alternate_id
                                          from instrument_alternate_id iai,
                                               stg_tmp_mbs_pool s
                                         where s.fi_instrument_id = iai.fi_instrument_id
                                           and iai.alternate_id_type_code in ('FMR_CUSIP','CUSIP')
                             end
    Maybe
    begin
    update stg_tmp_mbs_pool s
       set s.instrument_id = (select distinct iai.alternate_id
                                from instrument_alternate_id iai,
                                     stg_tmp_mbs_pool s
                               where s.fi_instrument_id = iai.fi_instrument_id
                                 and iai.alternate_id_type_code in ('FMR_CUSIP','CUSIP')
    update stg_tmp_mbs_pool s
       set s.instrument_id = (select distinct iai.alternate_id
                                from instrument_alternate_id iai,
                                     stg_tmp_mbs_pool s
                               where s.fi_instrument_id = iai.fi_instrument_id
                                 and iai.alternate_id_type_code = 'FMR_CUSIP'
    where s.instrument_id > 1;
    end;
    Regards
    Etbin

  • IS THERE ANY WAY TO FORCE KEY COMMIT

    Hi:
    Is there any way in forcing when inserting/updating a record in a block to call KEYCOMMIT. For Example, if the user inserted/updated a record and before saving the user may quit the form. I would like to enforce the keycommit trigger to be called when the form is opted to close.

    Hello,
    Try the following in Key-Exit trigger:
    BEGIN
    IF :system.form_status = 'CHANGED' THEN
    DO_KEY('COMMIT_FORM');
    ELSE
    EXIT_FORM(NO_VALIDATE);
    END IF;
    END;
    Regards,
    George
    Hi:
    Is there any way in forcing when inserting/updating a record in a block to call KEYCOMMIT. For Example, if the user inserted/updated a record and before saving the user may quit the form. I would like to enforce the keycommit trigger to be called when the form is opted to close.

  • HT1688 trying to "un"disable phone. Any way to do this without having to reset the phone?

    I'm trying to "un"disable an iPhone 4s. Any way to do this without having to reset the phone?

    Hi mark,
    Follow the instructions that best apply to your situation in this support article:
    http://support.apple.com/kb/HT1212
    Best of luck!
    Cheers,
    GB

  • I have 1,400 items in my in-box and would like to delete them en masse. Is there any way to do this without deleting them individually? Thank you

    I have 1,400 items in my in-box and would like to delete them en masse. Is there any way to do this without deleting them individually?

    Select the Inbox folder to see emails.
    click on first email to get focus.
    Hold down 'Ctrl' key and press 'A' key
    This will highlight /select all emails.
    they will appear as conversations in the Message Pane
    Clickon Delete.
    when it has finished - you do have a lot of emails :)
    Right click on Inbox and select 'compact' - this removes all marked as deleted emails.

  • On a large monitor, the bookmarks toolbar is opening outside of the Firefox window itself - is there any way to force it to stay inside?

    Recently I installed Windows 7 on my computer, along with a device called a Triplehead2Go, which spoofs the operating system into thinking that the computer has one monitor attached (when it really has three). When the Firefox window is relatively small on the desktop and with excess space to the right, the bookmarks toolbar opens to the right (and extends outside of the window). This creates a problem for me, as the monitor bezels get in the way of navigation. When the Firefox window is all the way to the right of the desktop, the bookmarks toolbar opens inside of the window (as there is not enough space to the right for it).
    Is there any way to force this menu to stay within its boundaries?

    The screen dimensions are "right," but I don't want it to use up any more space on-screen than is in the window.

Maybe you are looking for

  • MATSHITA DVD-R   UJ-857D takes forever to erase 100MB file from CD-RW disc

    My new MBP works phantastic. Only one thing is weird. The MATSHITA DVD-R UJ-857D takes forever to erase contents on a CD-RW, about 5-10 times longer than my nearly 5 years old IBM Thinkpad T30. Is this normal and expected? MacBook Pro 15'' 2.33 Core

  • BT Wireless - what model signal booster should i g...

    I have the latest BT wireless router/broadband which only reaches half the house.  For the other half, I use the powerplugs which work fine but are inconvienent for laptop use.  What is the recommended wireless booster to go with the BT Wireless hub?

  • How do I add audio to a button?

    Basically, that is it.  I have a picture that upon clicking navigates the user to a different screen.  Can I also add a sound so that it plays one time when the user clicks that picture to navigate to a different screen? I saw a similar question abou

  • Update keys and fields

    Hi All, In my landscape, we have 2 remote systems for mdm. ( say source as BO, target as ECC). When we import data from BO, we are generating key (based on Account group.) using Remote system key generation technique. But,at the same time we want to

  • Keyborad layout in new models

    Hi: I've noticed that in new models (T410 and so on) there's a change in the keyboard layout, so now there's a double sized "Supr." key instead of the "Insert/Supr." keys. Is there an option keyboard with the old layout? I've a T400 which I'm thinkin