RO enqueue is acquired while dropping/truncating the objects. Drop /truncate will post the DBWR to flush the buffers associated with those objects. While DBWR is performing this operation, foreground process will wait for RO enqueue. Usually RO can be seen with CI (Cross Instance invalidation ) enqueues even in non-rac single instances     One of the primary reason is that DBWR is slow or buffer cache is too big.     What is surprising though, this behavior is very visible up to 9i. But, in 10g, drop will simply rename the objects ( for flashback feature). Clearing the recycle bin will take care of flushing the buffers and so this is not a bigger issue anymore. Did you disable the flashback feature by any chance ?     BTW, 10.0.3 looks too low of a version. So, far I have seen 10.1.0.4 to be a stable release.