If you attempt to create a tablespace with a non-standard blocksize, say 16K, you get an exception like this:
ORA-29339: tablespace block size 16384 does not match configured block sizes
In order to create the tablespace, you'll need first to allocate a specific buffer for these blocks and this can be done online:
ALTER SYSTEM SET DB_16K_CACHE_SIZE=16M SCOPE=BOTH; CREATE TABLESPACE LOB_TBS DATAFILE '/u01/app/oracle/oradata/XE/lob_tbs.dbf' SIZE 160M AUTOEXTEND ON NEXT 16M BLOCKSIZE 16K;
I had the idea of creating a tablespace containing just LOBs because for perfomance reasons I need to have them in the cache but I don't want that these LOBs to mess up with other useful cached stuff in the default db block buffer cache.The next step is to move the relevant LOB columns to the newly created tablespace and see what happens.
Hopefully i'll be able to see if theory matches reality.
See message translations for ORA-29339 and search additional resources.
No comments:
Post a Comment