<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Oracle Performance Tuner</title>
	<atom:link href="http://www.oracleperformancetuner.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.oracleperformancetuner.com</link>
	<description>Oracle Performance Tuner</description>
	<lastBuildDate>Mon, 20 Feb 2012 10:09:28 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Install Oracle11gR2 Single Instance on Linux</title>
		<link>http://www.oracleperformancetuner.com/install-oracle11gr2-on-linux/</link>
		<comments>http://www.oracleperformancetuner.com/install-oracle11gr2-on-linux/#comments</comments>
		<pubDate>Thu, 09 Feb 2012 04:58:12 +0000</pubDate>
		<dc:creator>oracleperformancetuner</dc:creator>
				<category><![CDATA[Database]]></category>
		<category><![CDATA[Install Oracle Single Instance]]></category>
		<category><![CDATA[Install Oracle11g]]></category>
		<category><![CDATA[Install Oracle11gR2]]></category>
		<category><![CDATA[Install Single Instance]]></category>
		<category><![CDATA[Oracle Single Instance]]></category>
		<category><![CDATA[Oracle Single Instance Installation]]></category>
		<category><![CDATA[Oracle11g]]></category>
		<category><![CDATA[Oracle11g Installation]]></category>
		<category><![CDATA[Oracle11gR2]]></category>
		<category><![CDATA[Oracle11gR2 Installation]]></category>
		<category><![CDATA[Single Instance]]></category>
		<category><![CDATA[Single Instance Installation]]></category>

		<guid isPermaLink="false">http://www.oracleperformancetuner.com/?p=821</guid>
		<description><![CDATA[Getting Up to Date with Linux rpm Packages The next step is to get the Linux rpm&#8217;s up to date by executing the following set of commands against the /media//Server subdirectory on each CD (or a DVD if you have one): cd /media/&#60;cdrom-or otherwise&#62;/Server rpm -Uvh binutils-2.* rpm -Uvh elfutils-libelf-0.* rpm -Uvh glibc-2.* rpm -Uvh [...]]]></description>
			<content:encoded><![CDATA[<h1>Getting Up to Date with Linux rpm Packages</H1></p>
<p>The next step is to get the Linux rpm&#8217;s up to date by executing the following set of commands against the /media/<cdrom-or otherwise>/Server subdirectory on each CD (or a DVD if you have one):</p>
<pre>
cd /media/&lt;cdrom-or otherwise&gt;/Server
rpm -Uvh binutils-2.*
rpm -Uvh elfutils-libelf-0.*
rpm -Uvh glibc-2.*
rpm -Uvh glibc-common-2.*
rpm -Uvh libaio-0.*
rpm -Uvh libgcc-4.*
rpm -Uvh libstdc++-4.*
rpm -Uvh make-3.*
rpm -Uvh compat-libstdc++-33*
rpm -Uvh elfutils-libelf-devel-*
rpm -Uvh glibc-headers*
rpm -Uvh glibc-devel-2.*
rpm -Uvh libgomp*
rpm -Uvh gcc-4.*
rpm -Uvh gcc-c++-4.*
rpm -Uvh libaio-devel-0.*
rpm -Uvh libstdc++-devel-4.*
rpm -Uvh unixODBC-2.*
rpm -Uvh unixODBC-devel-2.*
rpm -Uvh sysstat*
cd /
eject
</pre>
<p></br></p>
<h1>Setting Virtual Memory Space for Linux</h1>
<p>Temp (virtual memory) space in Linux has to be 1.5Gb to allow for Oracle&#8217;s Automated Memory Management feature (Red Hat installs with a 1Gb default) to work under installation:</p>
<pre>
umount tmpfs
mount -t tmpfs shmfs -o size=1500m /dev/shm
</pre>
<p>Don&#8217;t forget to resize tmpfs properly on all nodes and NFS server. And also note that the above mount command only resizes tmp space until the next restart so it&#8217;s best to change <a href="http://en.wikipedia.org/wiki/Fstab" target="self">/etc/fstab</a> to retain the 1.5Gb setting, by replacing the defaults setting with <i>size=1500m</i> as follows:</p>
<pre>
#tmpfs                   /dev/shm                tmpfs   defaults        0 0
tmpfs                   /dev/shm                 tmpfs   size=1500m     0 0
</pre>
<p></br></p>
<h1>Linux Kernel Parameters for Oracle</h1>
<p>These settings will be added or picked out in the installation, might as well do now on both nodes and the NFS server (it won&#8217;t do any harm and Oracle datafiles will be stored here) in the /etc/sysctl.conf file:</p>
<pre>
fs.file-max=6815744
fs.aio-max_nr=1048576
kernel.shmmni = 4096
# semaphores: semmsl, semmns, semopm, semmni
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default=4194304
net.core.rmem_max=4194304
net.core.wmem_default=262144
net.core.wmem_max=1048576
</pre>
<p>To instantiate the above kernel variables do this (any errors should be obvious and you don&#8217;t want to restart if something is wrong in this configuration file):</p>
<pre>/sbin/sysctl -p</pre>
<p></br></p>
<h1>Linux Security, Oracle and <a href="http://en.wikipedia.org/wiki/Linux_PAM" target="self">PAM</a></h1>
<p>Add the following lines to the /etc/security/limits.conf file:</p>
<pre>
oracle               soft    nproc   2047
oracle               hard    nproc   16384
oracle               soft    nofile  1024
oracle               hard    nofile  65536
</pre>
<p>Add this to the /etc/pam.d/login configuration file:</p>
<pre>session    required     pam_limits.so</pre>
<p>Disable SELinux altogether by adding the following to the /etc/selinux/config file, or by changing permissive to disabled or by disabling the firewall in the Linux GUI:</p>
<pre>SELINUX=disabled</pre>
<p>Check that the firewall is stopped:</p>
<pre>/etc/rc.d/init.d/iptables status</pre>
<p>And turn off UDP ICMP rejections:</p>
<pre>chkconfig iptables off</pre>
<p></br></p>
<h1>Oracle Linux Groups and Users</h1>
<p>Oracle requires specific users and group for installation of Oracle software:</p>
<pre>
groupadd oinstall
groupadd dba
groupadd oper
groupadd asmadmin
useradd -u 500 -g oinstall -G dba,oper,asmadmin oracle
passwd oracle
</pre>
<p></br></p>
<h1>oracle Linux User .bash_profile Settings</h1>
<p>First thing is to create the path to install Oracle software into, connected as root:</p>
<pre>
mkdir /u01
chown -R oracle:oinstall /u01
chmod -R 770 /u01
</pre>
<p>Log into the oracle user on the Linux server edit the .bash_profile like this (this is the profile I prefer and I generally don&#8217;t bother with anything other than bash unless I consult somewhere that something else is used):</p>
<pre>
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi

## Oracle Setup ##
umask 022
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export ORACLE_SID=&lt;sid&gt;
export ORACLE_HOSTNAME=&lt;name-of-host&gt;
export JAVA_HOME=$ORACLE_HOME/jdk
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib

export TNS_ADMIN=$ORACLE_HOME/network/admin
export PS1="[\u@\$ORACLE_SID \W]\\$ "
export PATH=$HOME/bin:$ORACLE_HOME/bin:$JAVA_HOME/bin:/usr/sbin:$PATH

export EDITOR=vi
set -o vi

export TMP=/tmp
export TMPDIR=$TMP
export ORACLE_TERM=xterm
if [ $USER = "oracle" ]; then
    ulimit -u 16384 -n 65536
fi

alias tns='cd $ORACLE_HOME/network/admin'
alias dbs='cd $ORACLE_HOME/dbs'
alias home='cd $ORACLE_HOME'
alias base='cd $ORACLE_BASE'
alias flash='cd $ORACLE_BASE/flash_recovery_area'
alias oem='cd $ORACLE_HOME/sysman/config'
alias rm='rm -i'
</pre>
<p>Instantiate the profile by doing this on all nodes:</p>
<pre>. .bash_profile</pre>
<p></br></p>
<h1>Network Setup On Linux</h1>
<p>Use the Linux network admin tool inside Linux itself to set up it&#8217;s network settings, with a static IP address for the Linux database server too allow for access from client machines. Use the following command to check your network settings on Linux when done:</p>
<pre>service network restart</pre>
<p></br></p>
<h1>Download and Change Ownership of Oracle Software</h1>
<p>Create an installation directory on the Linux server and set proper ownership and permissions when logged in as root (or download as oracle):</p>
<pre>
mkdir -p /oinstall
chown -R oracle:oinstall /oinstall
chmod -R 770 /oinstall
</pre>
<p>Download the Linux Oracle database version into /oinstall and unzip:</p>
<pre>
unzip linux&lt;database&gt;.zip
</pre>
<p></br></p>
<h1>Install Oracle Software</h1>
<p>Now let&#8217;s install. Set up xhost while still connected as root (if you&#8217;re running from a Windows client don&#8217;t forget an XServer like XMing):</p>
<pre>xhost +</pre>
<p>Now change ownership to oracle, connect to oracle and then check that all conditions are met before installing:</p>
<pre>
chown -R oracle:oinstall /oinstall
su - oracle
</pre>
<p>Start the installer:</p>
<pre>
cd /oinstall/database
. runInstaller
</pre>
<p>There are number of options to pick:</p>
<ol type=1>
<li>Set the name and path of the Oracle base to /u01/app/oracle and the home destination to /u01/app/oracle/product/11.2.
<li>There will be two shell scripts that will have to executed as root at the tail-end of the installation. The first script might do odd things to permissions. Those scripts are:
<pre>
/u01/app/oracle/oraInventory/orainstRoot.sh
/u01/app/oracle/product/11.2/database/root.sh
</pre>
</li>
</ol>
<p>The output of the above two scripts is straight forward, just follow the prompts.</p>
<h1>TNS Configuration</h1>
<p>Before running creating a database, in 11.2 you need to run the Network Configuration Assistant (netca), from root:</p>
<pre>
xhost +
su - oracle
export DISPLAY=&lt;client_ip_address&gt;:0.0
cd $ORACLE_HOME/bin
. netca
</pre>
<p>And add a listener for the SI database. Otherwise you can just add the $ORACLE_HOME/network/admin/listener.ora file like this:</p>
<pre>
LISTENER_SI =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS_LIST =
        (ADDRESS = (PROTOCOL = TCP)(HOST = SI)(PORT = 1521))
      )
    )
  )
</pre>
<p>And for the tnsnames.ora file, which is not required for database creation but is required for a client machine, run netmgr type in tnsnames.ora (don&#8217;t miss anything):</p>
<pre>

SI =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = SI)i(PORT = 1521))
  )
</pre>
<p>Then execute the dbca like this:</p>
<pre>
. $ORACLE_HOME/bin/dbca
</pre>
<p>If the Database Configuration Assistant (dbca) stops you with a listener issue, you will need to run netca and start the listener using the lsnrctl utility as shown below if the netca tool doesn&#8217;t start it for you:</p>
<pre>lsnrctl start</pre>
<p></br></p>
<p>At the and of the dbca tool you should get a graphic showing the https local intranet network address of your OEM installation, which should look something like this:</p>
<pre>https://si:1158/em</pre>
<h1>References</h1>
<p>These are good pages to use but both contain idiosynchracies (errors) so I just detailed myself:</p>
<p><a href="http://www.oracle-base.com/articles/11g/OracleDB11gR1RACInstallationOnLinuxUsingNFS.php#tns_config" target="self">Oracle Base article</a><br />
<a href="http://www.oracle.com/technology/pub/articles/hunter_rac10gr2_iscsi.html#8" target="self">Oracle.com article</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.oracleperformancetuner.com/install-oracle11gr2-on-linux/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Oracle Auto Restart</title>
		<link>http://www.oracleperformancetuner.com/oracle-auto-restart/</link>
		<comments>http://www.oracleperformancetuner.com/oracle-auto-restart/#comments</comments>
		<pubDate>Sun, 02 Jan 2011 20:22:33 +0000</pubDate>
		<dc:creator>oracleperformancetuner</dc:creator>
				<category><![CDATA[Database]]></category>
		<category><![CDATA[Oracle Administration]]></category>
		<category><![CDATA[Oracle Configuration]]></category>
		<category><![CDATA[Oracle Installation]]></category>
		<category><![CDATA[dbshut]]></category>
		<category><![CDATA[dbstart]]></category>
		<category><![CDATA[Oracle 10g Auto Restart]]></category>
		<category><![CDATA[Oracle 11g Auto Restart]]></category>
		<category><![CDATA[Oracle Auto Restart]]></category>

		<guid isPermaLink="false">http://linuxandoracle.ezpowell.com/?p=627</guid>
		<description><![CDATA[This page covers Oracle Auto Restart and automatically stopping and starting an Oracle Database on Linux and UNIX restart. In the /etc/oratab file you might have to set the flags to Y (traditionally this has always been the default). RH4 for Oracle10g may also have an incorrect setting for the lsnrctl program that prevents listener [...]]]></description>
			<content:encoded><![CDATA[<p>This page covers Oracle Auto Restart and automatically stopping and starting an Oracle Database on Linux and UNIX restart.</p>
<p>In the /etc/oratab file you might have to set the flags to Y (traditionally this has always been the default).</p>
<p>RH4 for Oracle10g may also have an incorrect setting for the lsnrctl program that prevents listener startup in an ASM installation.</p>
<h2>The Startup &amp; Shutdown Script</h2>
<p>Add this file /etc/init.d/oracle:</p>
<pre>#!/bin/sh
# chkconfig: 345 95 30
# description: Oracle auto start-stop script.
ORACLE_HOME=/u01/app/oracle/product/10.2.0/db_1
case "$1" in
        'start')
                su - oracle -c $ORACLE_HOME/bin/dbstart				#Database - handles multiple s
                su - oracle -c "$ORACLE_HOME/bin/lsnrctl start"			#Listener
                su - oracle -c "$ORACLE_HOME/bin/lsnrctl dbsnmp_start"		#Agent (might be installed elsewhere with RAC and/or a multiple database environment)
                exit 0
        ;;
        'stop')
                su - oracle -c "$ORACLE_HOME/bin/lsnrctl dbsnmp_stop"           #Agent (might be installed elsewhere with RAC and/or a multiple database environment)
                su - oracle -c "$ORACLE_HOME/bin/lsnrctl stop"
                su - oracle -c $ORACLE_HOME/bin/dbshut
        ;;
        *)
                echo "usage: start or stop"
                exit 0
        ;;
esac
exit 0</pre>
<h2>Setting the Shutdown &amp; Startup Script to Execute on Operating System Restart</h2>
<p>Automate the execution of the /etc/init.d script by adding script copies or symbolic links to the startup and shutdown directory, ie. the /etc/rc2.d and /etc/rc0.d directories respectively.</p>
<p>The shutdown directory is /etc/rc0.d, which will execute process (K)ill scripts on *NIX shutdown where those scripts are executed in order of the integers in the filenames, ie. K02test1 is executed before K03test2. Place the oracle shutdown scripts above K00&lt;name&gt; but as close to K00&lt;name&gt; as possible, ie. execute the Oracle process shutdown first.</p>
<pre>cd /etc/rc0.d
ln -s /etc/init.d/oracle K30oracle</pre>
<p>The startup directory is /etc/rc2.d. Note that the startup directory contains both (K)ill and (S)tartup scripts, or links. If anything needs to be killed before starting when *NIX starts-up then this is where it goes. Place the oracle startup link in the sequence of file/link names as far to the end of the list as possible.</p>
<pre>cd /etc/rc2.d
ln -s /etc/init.d/oracle S95oracle</pre>
<p>And the:</p>
<pre>chmod 755 /etc/init.d/oracle</pre>
<p><strong><em><span style="color: red;">Please note that this page was constructed from a Solaris blade server environment but should apply to Linux and other flavors of UNIX as well.</span></em></strong></p>
<p><code></code><span id="more-627"></span><!--more--></p>
]]></content:encoded>
			<wfw:commentRss>http://www.oracleperformancetuner.com/oracle-auto-restart/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Using Agile to Develop with Lowered Risk</title>
		<link>http://www.oracleperformancetuner.com/using-agile-to-develop-with-lowered-risk/</link>
		<comments>http://www.oracleperformancetuner.com/using-agile-to-develop-with-lowered-risk/#comments</comments>
		<pubDate>Sat, 27 Nov 2010 07:24:22 +0000</pubDate>
		<dc:creator>oracleperformancetuner</dc:creator>
				<category><![CDATA[Database]]></category>
		<category><![CDATA[Database Development]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[Agile Development]]></category>
		<category><![CDATA[Agile Method]]></category>
		<category><![CDATA[Waterfall Method]]></category>

		<guid isPermaLink="false">http://linuxandoracle.ezpowell.com/?p=413</guid>
		<description><![CDATA[This page covers using Agile to develop with lowered risk as compared to the Waterfall method. What is Agile? It&#8217;s an approach to development that allows a project to be broken up into distinctly and autonomously developed sections, in a sequence; the event sequence implying that you can&#8217;t have multiple teams concurrently developing multiple dependent [...]]]></description>
			<content:encoded><![CDATA[<p>This page covers using Agile to develop with lowered risk as compared to the Waterfall method.</p>
<p>What is Agile? It&#8217;s an approach to development that allows a project to be broken up into distinctly and autonomously developed sections, in a sequence; the event sequence implying that you can&#8217;t have multiple teams concurrently developing multiple dependent tracks for the same project because each step is likely to be dependent on subsequent ones. So Agile is a bit like working with an object database or an object SDK like Java, allowing a task to broken into mutually exclusive parts or black-boxed objects.</p>
<p>The opposite of Agile is called the Waterfall method of development for software, which actually stems from the manufacturing industry such as building a plant to make cars; so just imagine how expensive it is to rearrange the bits and pieces in a Caterpillar tractor factory just after factory&#8217;s been built. Software development is much easier to rearrange mid-project or even after it&#8217;s all built, as compared to some kind of hugely expensive manufacturing or engineering project. Yes it is!</p>
<p>So Agile was devised and is now being gradually adopted easily by some, and painfully by some of the more traditional types of software engineers. Then again not every software development project can be built using the Agile method but given the advent of object technology it would make sense that many software development projects can be built in simpler to manage sections. So why isn&#8217;t everyone using Agile? Tradition? I hope not.</p>
<p>Sometime in the recent past some of the processing associated with data warehousing was renamed to something called business intelligence, and the reason was because data warehousing had become of age to a certain extent in that its ownership and purpose was being highlighted as being one of business oriented. So it is now a recognized fact that the business side rather than the operational side of a company has more of a vested interest in guiding what data warehouses deliver to its customers, which is also the business side of a company (data warehouses are often for internal customers). The reason why is because a data warehouse can be used to forecast future patterns based on past trends and thus what the data warehouse delivers can have a major effect on how the business is run.</p>
<p>The result is that the Waterfall approach of functional specifications defining a software product from start through to completion, is now changed to a financially leaner step-by-step process that is broken down into somewhat autonomous parts, which can be developed one after the other. Also flexibility is built into the process such that the business users can literally changer their minds anywhere during the development process, even in the middle of a sprint, probably driving the developers a little crazy with frustration. Consequently the business users do need to have an understanding that they cannot place unreasonable demands on technical developers such as allowing deadlines to be adjusted as constant changes are made to requirements, never meeting any kind of deadline whatsoever.</p>
<p>In conclusion the Agile approach involves ownership by business users as opposed to software developers, in addition to lots of frequent changes without the need for technical people to be sticklers for sticking to requirements documentation; the idea is to allow for the business users to change their minds during the development process so as to allow for a product that matches business requirements rather than a technical specification that could be out of date the day it&#8217;s printed. Also tolerance to code rewrites and a lack of fixed price constrained contracts are important facets of the Agile approach &#8211; they would be. The big problem with the Waterfall approach is that it is inflexible as it requires sticking to a specification that runs through a project right from start to finish, and any changes during the process are not only expensive but also even psychologically difficult to deal with &#8211; and also very frustrating. In short, the Waterfall approach is really a very traditional and retrogressive approach, and possibly even culturally inappropriate to a field that is by its very nature progressive because it is constantly undergoing enormous change, increasing in capabilities every eighteen months &#8211; so why did it take us so long to start using the Agile approach? It should not have.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.oracleperformancetuner.com/using-agile-to-develop-with-lowered-risk/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Stop a Rollback in Oracle</title>
		<link>http://www.oracleperformancetuner.com/stop-a-rollback-in-oracle/</link>
		<comments>http://www.oracleperformancetuner.com/stop-a-rollback-in-oracle/#comments</comments>
		<pubDate>Wed, 03 Nov 2010 17:04:19 +0000</pubDate>
		<dc:creator>oracleperformancetuner</dc:creator>
				<category><![CDATA[Database]]></category>
		<category><![CDATA[Oracle Administration]]></category>
		<category><![CDATA[Abort Rollback]]></category>
		<category><![CDATA[Abort Undo]]></category>
		<category><![CDATA[Rollback]]></category>
		<category><![CDATA[Stop Rollback]]></category>
		<category><![CDATA[Terminate Rollback]]></category>
		<category><![CDATA[Terminate Undo]]></category>
		<category><![CDATA[Undo]]></category>
		<category><![CDATA[Undo Rollback]]></category>
		<category><![CDATA[Undo Undo]]></category>

		<guid isPermaLink="false">http://linuxandoracle.ezpowell.com/?p=401</guid>
		<description><![CDATA[This page covers stop, abort or termination of a Rollback in Oracle. &#8220;You can abort rollback but I think it can mess up the database&#8221;, was my last answer I gave when I was asked this question. I also searched Google for “abort a rollback in oracle” and I found some interesting details that I [...]]]></description>
			<content:encoded><![CDATA[<p>This page covers stop, abort or termination of a Rollback in Oracle.</p>
<p>&#8220;You can abort rollback but I think it can mess up the database&#8221;, was my last answer I gave when I was asked this question. I also searched Google for “abort a rollback in oracle” and I found some interesting details that I had never found because the client was attempting a restart, and obviously that restart was still trying to do the rollback (or perhaps rollback the rollback itself):</p>
<p>For Google <a href="http://www.freelists.org/post/oracle-l/Terminate-rollback,4" target="self">abort a rollback in oracle</a></p>
<p>Or google <a href="http://www.ehow.com/how_7327627_stop-oracle-rollback.html" target="self">stop a rollback in oracle</a></p>
<p>Just don’t forget to reset the trace context at the end again otherwise you might have a very bad day some time soon <img src='http://www.oracleperformancetuner.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Also, I seen this particular issue before with huge performance slow downs as a result of rollbacks and/or attempts to abort of those rollbacks when working with fast refresh materialized, and perhaps forgotten bu incredibly large materialized view logs. If you think about it: the materialized view is constantly being appended to, and you perform a fast refresh that may be large or has not been done for a while, and maybe you&#8217;re trying to do replication over a global network &#8230; what happens is perhaps the append process might catch up with the fast refresh process in terms of transactional snapshot containment and then you might get a lot of conflict between the two competing processes. And you probably won&#8217;t hit a snapshot too old error either because there isn&#8217;t enough rollback to actually run out of rollback space, and so on and so forth.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.oracleperformancetuner.com/stop-a-rollback-in-oracle/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

