It's all about the answers!

Ask a question

RQM 3.0.1 install - Oracle setup questions


bryan hunt (23111) | asked Aug 19 '11, 6:33 p.m.
Hi - the doc for "Setting up an Oracle database" seems rather vague and has raised concerns from our DBA team tasked w/ setting up tablespaces for a single install of RQM 3.0.1 on a win 2008 r2 server. We are only installing QM. And we are new to RQM, migrating from test manager/DB2 setup.

Hoping someone here may be able to shed some insight or point to an appropriate source for answers to the following Oracle setup questions. (I was unable to find a FAQ in case any of these have been answered here previously).

1. what exactly is being done that requires DBA and ANY privileges for this install? The doc simply leaves it at "the creation of the warehouse on Oracle requires elevated permissions as compared to other databases", which doesn't alleviate DBA concerns about granting those privs to any user.

2. if I am installing only RQM, are we still creating a data warehouse, or just generating table & data w/i a tablespace? If a DBA creates the tablespace beforehand, does the user truly need DBA and ANY privs?

3. if the DBA and ANY privileges are absolutely required during part of the install, is there any reason why these "elevated" privileges should not removed after installation, retaining only the ability to create objects in the schema?

4. are there any issues w/ moving to another database after install? Ideally, we will set up the DB in a test environment before moving to production. I would like to confirm that the tool accommodates that feature w/o any issues.

Thanks for any expertise/experiences on this

2 answers



permanent link
bryan hunt (23111) | answered Aug 24 '11, 1:30 p.m.
I received answers to these questions via the service request channel and will post the relevant info here in case it is of use to anyone asking similar questions since they're not clear from the RQM install documentation

1. I did not get any specific explanation outside of what's already cited in the install doc, just that Repotools absolutely requires the db user to have persistent DBA privs. There are at least two enhancement requests addressing this in the future


Enhancement 170488 - To be able to create tables for data warehouse db using Oracle without DBA privileges.

Currently In 3.0.1, in order to be able create tables for data warehouse, using Oracle back-end db requires the user ID with DB privilege. This is an undesirable requirement as Databases and their associated DB servers in many of large organizations are usually managed by a group that is different from the one installing RTC and there is typically a formal process to request creation of a DB which can then be used by the RTC installer to create the required tables. Therefor a user ID without DBA access should still be able to create table spaces with Oracle.
----------------------------------------------

Enhancement 170539 - Improve data warehouse setup experience for Oracle customers.

The current process for creating a new common data warehouse for the CLM 2011/3.0.1 release requires elevated Oracle privileges (SYSDBA, CREATE TABLESPACE) that Oracle DBAs will be reluctant to permanently assign to a program's functional user/connection id. In addition, the default setup parameters specify unlimited AUTOEXTEND while Oracle DBAs may want tighter controls over space consumption.



2. You do not need to install the data warehouse as part of an RQM install if you don't need the reports. There is an option in the setup wizard to skip this.

3. n/a

4. Moving the database "should not be an issue"

permanent link
bryan hunt (23111) | answered Sep 01 '11, 12:47 p.m.
Another update in case it assists anyone encountering similar issues skipping the "elevated" privileges for an Oracle DB setup.

I ran into a permissions issue during the jazz team server wizard when trying to create tables
An error occurred while creating database tables. Please try again.ID CRJAZ1571E

The database creation failed with an exception
com.ibm.team.repository.common.TeamRepositoryException: Sql Exception thrown while testing case sensitivity of the database at
com.ibm.team.repository.service.db.provider.CaseSensitivityValidator.testCaseSensitivity(CaseSensitivityValidator.java:236) at
com.ibm.team.repository.service.db.provider.AbstractDbProvider.assertCaseSensitivity(AbstractDbProvider.java:1167) at
com.ibm.team.repository.service.db.provider.AbstractDbProvider.checkDatabaseConfiguration(AbstractDbProvider.java:1159) at
com.ibm.team.repository.service.db.provider.AbstractDbProvider.prepareDbForInitialization(AbstractDbProvider.java:554) at
com.ibm.team.repository.jdbcdriver.internal.oracle.OracleProvider.prepareDbForInitialization(OracleProvider.java:598) at
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79) at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:618) at
org.eclipse.soda.sat.core.internal.record.ExportProxyServiceRecord.invoke(ExportProxyServiceRecord.java:370) at
org.eclipse.soda.sat.core.internal.record.ExportProxyServiceRecord.access$0(ExportProxyServiceRecord.java:356) at
org.eclipse.soda.sat.core.internal.record.ExportProxyServiceRecord$ExportedServiceInvocationHandler.invoke(ExportProxyServiceRecord.java:56) at
$Proxy644.prepareDbForInitialization(Unknown Source) at
com.ibm.team.repository.service.internal.rdb.AbstractDatabaseService.internalCreateAllSchemas(AbstractDatabaseService.java:189) at
com.ibm.team.repository.service.internal.rdb.DatabaseCreationService$1.run(DatabaseCreationService.java:48) at
com.ibm.team.repository.service.internal.rdb.ConnectionRunnable.runWithResult(ConnectionRunnable.java:40) at
com.ibm.team.repository.service.internal.rdb.ConnectionRunnable.run(ConnectionRunnable.java:34) at
com.ibm.team.repository.service.internal.rdb.RepositoryDatabase$Transaction.run(RepositoryDatabase.java:458) at
com.ibm.team.repository.service.internal.rdb.RepositoryDatabase$1.run(RepositoryDatabase.java:285) at
com.ibm.team.repository.service.internal.rdb.ConnectionPoolService.withCurrentConnection(ConnectionPoolService.java:379) at
sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source) at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:618) at
org.eclipse.soda.sat.core.internal.record.ExportProxyServiceRecord.invoke(ExportProxyServiceRecord.java:370) at
org.eclipse.soda.sat.core.internal.record.ExportProxyServiceRecord.access$0(ExportProxyServiceRecord.java:356) at
org.eclipse.soda.sat.core.internal.record.ExportProxyServiceRecord$ExportedServiceInvocationHandler.invoke(ExportProxyServiceRecord.java:56) at
$Proxy646.withCurrentConnection(Unknown Source) at
com.ibm.team.repository.service.internal.rdb.RepositoryDatabase.runTransaction(RepositoryDatabase.java:281) at
com.ibm.team.repository.service.internal.rdb.RepositoryDatabase.runExclusive(RepositoryDatabase.java:259) at
com.ibm.team.repository.service.internal.TransactionService.runExclusive(TransactionService.java:139) at
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79) at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:618) at
org.eclipse.soda.sat.core.internal.record.ExportProxyServiceRecord.invoke(ExportProxyServiceRecord.java:370) at
org.eclipse.soda.sat.core.internal.record.ExportProxyServiceRecord.access$0(ExportProxyServiceRecord.java:356) at
org.eclipse.soda.sat.core.internal.record.ExportProxyServiceRecord$ExportedServiceInvocationHandler.invoke(ExportProxyServiceRecord.java:56) at
$Proxy661.runExclusive(Unknown Source) at
com.ibm.team.repository.service.internal.rdb.DatabaseCreationService.createAllSchemas(DatabaseCreationService.java:43) at
com.ibm.team.repository.service.internal.rdb.DatabaseCreationService.createAllSchemas(DatabaseCreationService.java:39) at
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79) at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:618) at
org.eclipse.soda.sat.core.internal.record.ExportProxyServiceRecord.invoke(ExportProxyServiceRecord.java:370) at
org.eclipse.soda.sat.core.internal.record.ExportProxyServiceRecord.access$0(ExportProxyServiceRecord.java:356) at
org.eclipse.soda.sat.core.internal.record.ExportProxyServiceRecord$ExportedServiceInvocationHandler.invoke(ExportProxyServiceRecord.java:56) at
$Proxy687.createAllSchemas(Unknown Source) at com.ibm.team.repository.service.internal.DatabaseCreationRestService$1.run(DatabaseCreationRestService.java:50) at java.lang.Thread.run(Thread.java:811)
Caused by: java.sql.SQLException: ORA-01950: no privileges on tablespace'RQM_JTS' at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:439)at
oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:395) at
oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:802) at
oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:436) at
oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:186) at
oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:521) at
oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:205) at
oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:1008) at
oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1307) at
oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3449) at
oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:3530) at
oracle.jdbc.driver.OraclePreparedStatementWrapper.executeUpdate(OraclePreparedStatementWrapper.java:1062) at
com.ibm.team.repository.service.internal.db.jdbcwrappers.stat.PreparedStatementStatWrapper.executeUpdate(PreparedStatementStatWrapper.java:62) at
com.ibm.team.repository.service.internal.db.jdbcwrappers.errlog.PreparedStatementErrLogWrapper.executeUpdate(PreparedStatementErrLogWrapper.java:86) at
com.ibm.team.repository.service.internal.db.jdbcwrappers.leak.PreparedStatementLeakWrapper.executeUpdate(PreparedStatementLeakWrapper.java:58) at
com.ibm.team.repository.service.db.provider.AbstractDbProvider.executeUpdate(AbstractDbProvider.java:1577) at
com.ibm.team.repository.service.db.provider.CaseSensitivityValidator.buildTable(CaseSensitivityValidator.java:166) at
com.ibm.team.repository.service.db.provider.CaseSensitivityValidator.setupTestTable(CaseSensitivityValidator.java:161) at
com.ibm.team.repository.service.db.provider.CaseSensitivityValidator.testCaseSensitivity(CaseSensitivityValidator.java:214) ... 49 more


Researching this stack I come across a solution in a jazz forum post that recommends


grant dba role to jazzdbuser is not the best solution.

just adjust quota on default tablespace of jazzdbuser

alter user USERNAME quota unlimited on TABLESPACE_NAME;

it works fine.


The same solution recommended for resolving ORA-01950 at
the oracle.ittoolbox.com forum

Upon its implementation, I was able to create tables successfully and continue the install

Your answer


Register or to post your answer.


Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.