Extents Error When Sending To Repository

In a message dated 99-02-15 10:31:47 EST, you write:

I’m having a problem with sending documents to the repository. I’m
receiving ORA-01631 max # extents reached in table obj_x_documents. I’ve
searched the archives and done all the cleaning/scanning/repairing that was
recommended. I’ve also purged the da history. Still no luck. I don’t
want
to simply allocate more space, if that’s what this error suggests. I’d
like
to understand more about the table and how/when things are written there.

This is actually a sizing issue for your Oracle DBA.

Data in an Oracle database is stored in Tables. Tables, however, are allocated
in Extents. When a table grows, the Oracle database tries to allocate a new
extent for more space.

For control purposes, there is a maximum number of times that this can occur.
It is generally set by the Database Administrator.

To resolve this problem, you have to either:

  1. Allow a higher number of extents
  2. Configure bigger extents

Each of these steps is outside of the responsibility of BusinessObjects.

There is, however, one option that you can do. You didn’t say if you were
sending documents to Document Agent or simply to the Repository. If you are
trying to store documents for users in the repository, you can Purge the
documents prior to saving them. This will result in the report being stored
“empty”, which should significantly reduce the amount of space required in the
repository.

To calculate the space needed in the repository is fairly simple: look at the
file size of the file on your hard drive. Storing the document is simply a
matter of breaking the report file up into chunks and storing each chunk as
is. No compression is done. So, if a file is 2 megabytes on your hard drive,
it will occupy 2 megabytes of repository space. More or less. :slight_smile:

Your DBA may want to know this information prior to resizing your document
domain.

The bad news is that the Purge trick does not work for Document Agent, since
the entire purpose of DAS is to refresh the report and send the data back to
the user. In that case, the data must be stored in the repository on its way
back to the users.

Hope this helps!

Regards,
Dave Rathbun
Integra Solutions
www.islink.com


Listserv Archives (BOB member since 2002-06-25)

Cindy,

If you are able to send to other domains w/o problem,

1/ it could because the Oracle account tied to the document domain you use
is different from the account(s) containing the other domains. If so, it
looks like it is running out of space: you have no choice but allocate more
space as every export of document to this very domain table will force
Oracle to extent the size of the tablespace it is located on to its maximum
limit.
2/ if the Oracle account tied to the document domain you use is NOT
different from the account(s) containing the other domains, well, read
above. Otherwise, it may because the obj_x_documents table uses 2
tablespaces (one may have been added to this original one…if so, this lack
of space issue may have been encountered before?) and either one of the 2
tblspces being used is running out of space.

Whether it is a universe or a BO report, you must have sufficient disk space
on your RDBMS for an INSERT to be performed (this SQL statement gets
prepared at export time within the RSS file in your \Oracle subfolder) in
whichever table that is concerned as it will increase the size of the latter
according to the limitations/settings specified by your DBA for the
tablespace(s) in use.

In short, you have no choice but to increase the tablespace size. Hope this
helps.

Alain C. Bonnemaison.


Listserv Archives (BOB member since 2002-06-25)

Dave’s right. But compounding the problem is the fact that the ORACLE7.SQL
file (for Oracle 7.x databases; your filename may differ) contains no
STORAGE parameters in the CREATE TABLE commands. (You can’t specify STORAGE
parameters without a TABLESPACE parameter, and BO has no idea what
tablespaces you have, so BO really can’t specify STORAGE parameters in this
SQL file.)

Thus, the tablespace these tables and indexes are stored in is the default
tablespace of the Oracle account used for the document repository. And the
extent size is the default extent size of the default tablespace! Neither
of these defaults may be optimal. It is a common practice to specify
explicitly which tablespace and what extent size you want when you issue a
CREATE TABLE command, and NOT to use default values. You should probably
either modify the ORACLE7.SQL file or your repository account’s default
settings.


Erich Hurst
Compaq Computer Corporation

“It is so easy to break eggs without making omlettes.” – C.S. Lewis


Listserv Archives (BOB member since 2002-06-25)