March 5, 2012 1 Comment
Finally, my client’s 11g upgrade is approaching.
It feels like it’s been imminent for ages as we slipped from February 2011 to September then through October to November 2011, February 2012, March 10 2012 and latterly to March 25 2012.
On the whole, these slippages have been more to do with affairs of big, corporate IT rather than any issues with the testing of the application under 11g, for example, red tape, higher priority changes and procurement for the whole 11g development estate.
When we actually go live, I’d be surprised if we don’t see some significant issues and oversights in a relatively short timeframe.
However, before then I just want to go through a quick whirlwind of some of the highlights and challenges undertaken/encountered:
Migration from 184.108.40.206 on Solaris to 220.127.116.11 on Linux via an in situ upgrade to 10g on Solaris as an interim step to faciliate use of datapump as opposed to imp/exp
- Change of hardware.
- Change of OS.
- Change of db version.
- We do not use “incremental change”.
Moving from a 20G sga with 17G buffer cache to a 70G sga and a minimum 25G buffer cache – in reality nearer 60G – using sga_target and db_cache_size.
Not using AMM (memory_target) yet not using hugepages!
Async and concurrent IO.
Moving from a statistics strategy of ‘FOR ALL INDEXED COLUMNS SIZE AUTO’ fixed with the two-monthly release cycle to the default stats job (running in a weekend window).
Removal of a weekend maintenance job that rebuilt lots of indexes for undocumented historical reasons.
No (very limited) use of sql plan baselines.
Trial of cursor_sharing = force for modules with poor shared sql principles, abandonment of trial on 18.104.22.168 due to ORA-07445/ORA-00600 from pro*c code.
Manual tuning of any code that exhibited any performance degradation – plenty of that (not surprising given that the oldest comments in the code date back to 1992).
Bugs/Patches applied initially on 22.214.171.124:
11719151 – crippling sql plan management slowness
9842771 – wrong sreadtim, mreadtim statistics
10269193 – wrong results with outer join and case expression
9877980 – issues with cursor_sharing = force
then because of an XSLT bug (10390389) and because of the number of other bugs listed as fixed
126.96.36.199 (which incorporates patches 11719151 and 9877980 previously applied on top of 188.8.131.52)