[rules-users] how to move a repository from derby database to Oracle Database

Jaroslaw Kijanowski kijanowski at gmail.com
Thu Apr 29 14:14:08 EDT 2010


After the repo export, you need to delete the whole repository directory 
which includes:
repository
version
workspaces

and you have to clear the schema in Oracle you want to use - Guvnor will 
prepare the DB during deployment when accessing a fresh DB.

When you login, you should be asked to install a sample repo - simply 
press "No, thanks" and then import your repo from xml.

vadlam wrote:
> after exporting the repository, changing the persistence settings to Oracle,
> deleting the respository directory and restarting server again,
> 
> I get these errors. Do I need to delete the version directory as well
> besides the repository directory ?
> 
> ERROR 29-04 10:59:11,004 (ConnectionRecoveryManager.java:logException:447)      
> could not execute statement, reason: ORA-0140
> 0: cannot insert NULL into ("DROOLSUSER"."VERSION_NAMES"."ID")
> , state/code: 23000/1400
> ERROR 29-04 10:59:11,019 (BundleDbPersistenceManager.java:storeBundle:1270)     
> failed to write bundle: deadbeef-face-babe-ca
> fe-babecafebabe
> java.lang.IllegalStateException: Unable to insert index:
> java.sql.SQLException: ORA-01400: cannot insert NULL into ("DROOLSUSE
> R"."VERSION_NAMES"."ID")
> 
>         at
> org.apache.jackrabbit.core.persistence.bundle.util.NGKDbNameIndex.insertString(NGKDbNameIndex.java:71)
>         at
> org.apache.jackrabbit.core.persistence.bundle.util.DbNameIndex.stringToIndex(DbNameIndex.java:101)
>         at
> org.apache.jackrabbit.core.persistence.bundle.util.BundleBinding.writeBundle(BundleBinding.java:249)
>         at
> org.apache.jackrabbit.core.persistence.bundle.BundleDbPersistenceManager.storeBundle(BundleDbPersistenceManager.jav
> a:1262)
>         at
> org.apache.jackrabbit.core.persistence.bundle.AbstractBundlePersistenceManager.putBundle(AbstractBundlePersistenceM
> anager.java:703)
>         at
> org.apache.jackrabbit.core.persistence.bundle.AbstractBundlePersistenceManager.store(AbstractBundlePersistenceManag
> er.java:643)
>         at
> org.apache.jackrabbit.core.persistence.bundle.BundleDbPersistenceManager.store(BundleDbPersistenceManager.java:526)
> 
>         at
> org.apache.jackrabbit.core.version.VersionManagerImpl.<init>(VersionManagerImpl.java:157)
>         at
> org.apache.jackrabbit.core.RepositoryImpl.createVersionManager(RepositoryImpl.java:400)
>         at
> org.apache.jackrabbit.core.RepositoryImpl.<init>(RepositoryImpl.java:294)
>         at
> org.apache.jackrabbit.core.RepositoryImpl.create(RepositoryImpl.java:557)
>         at
> org.apache.jackrabbit.core.TransientRepository$2.getRepository(TransientRepository.java:245)
>         at
> org.apache.jackrabbit.core.TransientRepository.startRepository(TransientRepository.java:265)
>         at
> org.apache.jackrabbit.core.TransientRepository.login(TransientRepository.java:333)
>         at
> org.apache.jackrabbit.core.TransientRepository.login(TransientRepository.java:363)
>         at
> org.drools.guvnor.server.repository.RepositoryStartupService.newSession(RepositoryStartupService.java:135)
>         at
> org.drools.guvnor.server.repository.RepositoryStartupService.create(RepositoryStartupService.java:56)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:585)
>         at org.jboss.seam.util.Reflections.invoke(Reflections.java:22)
>         at
> org.jboss.seam.intercept.RootInvocationContext.proceed(RootInvocationContext.java:31)
>         at
> org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:56)
>         at
> org.jboss.seam.transaction.RollbackInterceptor.aroundInvoke(RollbackInterceptor.java:28)
>         at
> org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
>         at
> org.jboss.seam.core.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:44)
>         at
> org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
>         at
> org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:107)
>         at
> org.jboss.seam.intercept.JavaBeanInterceptor.interceptInvocation(JavaBeanInterceptor.java:166)
>         at
> org.jboss.seam.intercept.JavaBeanInterceptor.invoke(JavaBeanInterceptor.java:102)
>         at
> org.drools.guvnor.server.repository.RepositoryStartupService_$$_javassist_0.create(RepositoryStartupService_$$_java
> ssist_0.java)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:585)
>         at org.jboss.seam.util.Reflections.invoke(Reflections.java:22)
>         at
> org.jboss.seam.util.Reflections.invokeAndWrap(Reflections.java:138)
>         at org.jboss.seam.Component.callComponentMethod(Component.java:2171)
>         at org.jboss.seam.Component.callCreateMethod(Component.java:2094)
>         at org.jboss.seam.Component.newInstance(Component.java:2054)
>         at org.jboss.seam.contexts.Contexts.startup(Contexts.java:304)
>         at org.jboss.seam.contexts.Contexts.startup(Contexts.java:278)
>         at
> org.jboss.seam.contexts.ServletLifecycle.endInitialization(ServletLifecycle.java:112)
>         at org.jboss.seam.init.Initialization.init(Initialization.java:727)
>         at
> org.jboss.seam.servlet.SeamListener.contextInitialized(SeamListener.java:34)
>         at
> weblogic.servlet.internal.EventsManager$FireContextListenerAction.run(EventsManager.java:376)
>         at
> weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
>         at
> weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
>         at
> weblogic.servlet.internal.EventsManager.notifyContextCreatedEvent(EventsManager.java:82)
>         at
> weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAppServletContext.java:1616)
>         at
> weblogic.servlet.internal.WebAppServletContext.start(WebAppServletContext.java:2761)
>         at
> weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:889)
>         at
> weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:333)
>         at
> weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:204)
>         at
> weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
>         at
> weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:60)
>         at
> weblogic.application.internal.flow.ScopedModuleDriver.start(ScopedModuleDriver.java:200)
>         at
> weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:117)
>         at
> weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:204)
>         at
> weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
>         at
> weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:60)
>         at
> weblogic.application.internal.flow.StartModulesFlow.activate(StartModulesFlow.java:26)
>         at
> weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:635)
>         at
> weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
>         at
> weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:212)
>         at
> weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:154)
>         at
> weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:80)
>         at
> weblogic.deploy.internal.targetserver.BasicDeployment.activate(BasicDeployment.java:181)
>         at
> weblogic.deploy.internal.targetserver.BasicDeployment.activateFromServerLifecycle(BasicDeployment.java:358)
>         at
> weblogic.management.deploy.internal.DeploymentAdapter$1.doActivate(DeploymentAdapter.java:52)
>         at
> weblogic.management.deploy.internal.DeploymentAdapter.activate(DeploymentAdapter.java:186)
>         at
> weblogic.management.deploy.internal.AppTransition$2.transitionApp(AppTransition.java:30)
>         at
> weblogic.management.deploy.internal.ConfiguredDeployments.transitionApps(ConfiguredDeployments.java:233)
>         at
> weblogic.management.deploy.internal.ConfiguredDeployments.activate(ConfiguredDeployments.java:169)
>         at
> weblogic.management.deploy.internal.ConfiguredDeployments.deploy(ConfiguredDeployments.java:123)
>         at
> weblogic.management.deploy.internal.DeploymentServerService.resume(DeploymentServerService.java:173)
>         at
> weblogic.management.deploy.internal.DeploymentServerService.start(DeploymentServerService.java:89)
>         at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
>         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
>         at weblogic.work.ExecuteThread.run(ExecuteThread.java:181)
> ERROR 29-04 10:59:11,175 (BundleDbPersistenceManager.java:logException:1478)    
> rollback failed
> ERROR 29-04 10:59:11,175 (BundleDbPersistenceManager.java:logException:1480)           
> Reason: Closed Connection
> ERROR 29-04 10:59:11,175 (BundleDbPersistenceManager.java:logException:1481)       
> State/Code: null/17008
> ERROR 29-04 10:59:11,691 (ConnectionRecoveryManager.java:logException:447)      
> could not execute statement, reason: ORA-0140
> 0: cannot insert NULL into ("DROOLSUSER"."VERSION_NAMES"."ID")
> , state/code: 23000/1400



More information about the rules-users mailing list