Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Modeling » EMF » Error CDO/Teneo/Postgres
Error CDO/Teneo/Postgres [message #901776] Tue, 14 August 2012 14:28 Go to next message
Patrick Di Loreto is currently offline Patrick Di LoretoFriend
Messages: 10
Registered: May 2010
Junior Member
Hi all,

I'm trying to configure a CDO repository application to run using teneo/hibernate on top of a Postgres repository.

When I start up the cdo-repository everything seems to work fine, the basic CDO tables are successfully created, I can also register the ecore model into the registry (and see the package as an entry in the DB) but when I try to import or create a resource I get the following error:


Rollback in HibernateStore: org.hibernate.MappingException: Unknown entity: org.eclipse.emf.cdo.internal.common.revision.CDORevisionImpl
	at org.hibernate.internal.SessionFactoryImpl.getEntityPersister(SessionFactoryImpl.java:1190)
	at org.hibernate.type.EntityType.toLoggableString(EntityType.java:494)
	at org.hibernate.type.AnyType.toLoggableString(AnyType.java:201)
	at org.hibernate.type.CollectionType.renderLoggableString(CollectionType.java:193)
	at org.hibernate.type.CollectionType.toLoggableString(CollectionType.java:184)
	at org.hibernate.internal.util.EntityPrinter.toString(EntityPrinter.java:79)
	at org.hibernate.internal.util.EntityPrinter.toString(EntityPrinter.java:121)
	at org.hibernate.event.internal.AbstractFlushingEventListener.logFlushResults(AbstractFlushingEventListener.java:131)
	at org.hibernate.event.internal.AbstractFlushingEventListener.flushEverythingToExecutions(AbstractFlushingEventListener.java:107)
	at org.hibernate.event.internal.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:51)
	at org.hibernate.internal.SessionImpl.flush(SessionImpl.java:1127)
	at org.eclipse.emf.cdo.server.internal.hibernate.HibernateStoreAccessor.doWrite(HibernateStoreAccessor.java:700)
	at org.eclipse.emf.cdo.spi.server.StoreAccessorBase.write(StoreAccessorBase.java:149)
	at org.eclipse.emf.cdo.internal.server.TransactionCommitContext.write(TransactionCommitContext.java:487)
	at org.eclipse.emf.cdo.spi.server.InternalCommitContext$1.runLoop(InternalCommitContext.java:43)
	at org.eclipse.emf.cdo.spi.server.InternalCommitContext$1.runLoop(InternalCommitContext.java:1)
	at org.eclipse.net4j.util.om.monitor.ProgressDistributor.run(ProgressDistributor.java:96)
	at org.eclipse.emf.cdo.server.internal.net4j.protocol.CommitTransactionIndication.indicatingCommit(CommitTransactionIndication.java:262)
	at org.eclipse.emf.cdo.server.internal.net4j.protocol.CommitTransactionIndication.indicating(CommitTransactionIndication.java:96)
	at org.eclipse.emf.cdo.server.internal.net4j.protocol.CDOServerIndicationWithMonitoring.indicating(CDOServerIndicationWithMonitoring.java:109)
	at org.eclipse.net4j.signal.IndicationWithMonitoring.indicating(IndicationWithMonitoring.java:86)
	at org.eclipse.net4j.signal.IndicationWithResponse.doExtendedInput(IndicationWithResponse.java:92)
	at org.eclipse.net4j.signal.Signal.doInput(Signal.java:328)
	at org.eclipse.net4j.signal.IndicationWithResponse.execute(IndicationWithResponse.java:65)
	at org.eclipse.net4j.signal.IndicationWithMonitoring.execute(IndicationWithMonitoring.java:65)
	at org.eclipse.net4j.signal.Signal.runSync(Signal.java:253)
	at org.eclipse.net4j.signal.Signal.run(Signal.java:149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
	at java.lang.Thread.run(Thread.java:662)

Rollback in HibernateStore: org.hibernate.MappingException: Unknown entity: org.eclipse.emf.cdo.internal.common.revision.CDORevisionImpl
	at org.hibernate.internal.SessionFactoryImpl.getEntityPersister(SessionFactoryImpl.java:1190)
	at org.hibernate.type.EntityType.toLoggableString(EntityType.java:494)
	at org.hibernate.type.AnyType.toLoggableString(AnyType.java:201)
	at org.hibernate.type.CollectionType.renderLoggableString(CollectionType.java:193)
	at org.hibernate.type.CollectionType.toLoggableString(CollectionType.java:184)
	at org.hibernate.internal.util.EntityPrinter.toString(EntityPrinter.java:79)
	at org.hibernate.internal.util.EntityPrinter.toString(EntityPrinter.java:121)
	at org.hibernate.event.internal.AbstractFlushingEventListener.logFlushResults(AbstractFlushingEventListener.java:131)
	at org.hibernate.event.internal.AbstractFlushingEventListener.flushEverythingToExecutions(AbstractFlushingEventListener.java:107)
	at org.hibernate.event.internal.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:51)
	at org.hibernate.internal.SessionImpl.flush(SessionImpl.java:1127)
	at org.eclipse.emf.cdo.server.internal.hibernate.HibernateStoreAccessor.doWrite(HibernateStoreAccessor.java:700)
	at org.eclipse.emf.cdo.spi.server.StoreAccessorBase.write(StoreAccessorBase.java:149)
	at org.eclipse.emf.cdo.internal.server.TransactionCommitContext.write(TransactionCommitContext.java:487)
	at org.eclipse.emf.cdo.spi.server.InternalCommitContext$1.runLoop(InternalCommitContext.java:43)
	at org.eclipse.emf.cdo.spi.server.InternalCommitContext$1.runLoop(InternalCommitContext.java:1)
	at org.eclipse.net4j.util.om.monitor.ProgressDistributor.run(ProgressDistributor.java:96)
	at org.eclipse.emf.cdo.server.internal.net4j.protocol.CommitTransactionIndication.indicatingCommit(CommitTransactionIndication.java:262)
	at org.eclipse.emf.cdo.server.internal.net4j.protocol.CommitTransactionIndication.indicating(CommitTransactionIndication.java:96)
	at org.eclipse.emf.cdo.server.internal.net4j.protocol.CDOServerIndicationWithMonitoring.indicating(CDOServerIndicationWithMonitoring.java:109)
	at org.eclipse.net4j.signal.IndicationWithMonitoring.indicating(IndicationWithMonitoring.java:86)
	at org.eclipse.net4j.signal.IndicationWithResponse.doExtendedInput(IndicationWithResponse.java:92)
	at org.eclipse.net4j.signal.Signal.doInput(Signal.java:328)
	at org.eclipse.net4j.signal.IndicationWithResponse.execute(IndicationWithResponse.java:65)
	at org.eclipse.net4j.signal.IndicationWithMonitoring.execute(IndicationWithMonitoring.java:65)
	at org.eclipse.net4j.signal.Signal.runSync(Signal.java:253)
	at org.eclipse.net4j.signal.Signal.run(Signal.java:149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
	at java.lang.Thread.run(Thread.java:662)


Here is my cdo-server.xml configuration:


<?xml version="1.0" encoding="UTF-8"?>
<cdoServer>

	<acceptor type="tcp" listenerAddr="0.0.0.0" port="2036"/>
	
	<repository name="myrepo">
		<property name="overrideUUID" value=""/>
		<property name="supportingAudits" value="false"/>

		<store type="hibernate">

			<mappingProvider type="teneo">
				<property name="teneo.mapping.cascade_policy_on_non_containment" value="PERSIST,MERGE"/>

				<!-- some demo settings -->
				<!--
					using an external xml file for annotations, note this xml file
					is located in the org.eclipse.emf.cdo.examples.hibernate.annotations
					which is available on the cdo server by adding it to the CDOHibernateServer.launch configuration
				-->
				<!--
				<property name="teneo.mapping.persistence_xml" value="/META-INF/company_model_teneo_annotations.xml"/>
				-->
				
				<!-- create tables for each subclass with joining to the parent table -->
				<property name="teneo.mapping.inheritance" value="JOINED"/>
				<!-- create an index for each fk -->
				<property name="teneo.mapping.add_index_for_fk" value="true"/>

			</mappingProvider>


			<property name="hibernate.hbm2ddl.auto" value="update"/>
			<property name="hibernate.show_sql" value="false"/>
			<property name="hibernate.connection.pool_size" value="10"/>
			<property name="hibernate.cache.provider_class" value="org.hibernate.cache.HashtableCacheProvider"/>

			<!-- Setting for postgres -->
			<property name="hibernate.dialect" value="org.hibernate.dialect.PostgreSQLDialect"/>
			<property name="hibernate.connection.driver_class" value="org.postgresql.Driver"/>
			<property name="hibernate.connection.url" value="jdbc:postgresql://localhost:5432/mydb"/>
			<property name="hibernate.connection.username" value="myuser"/>
			<property name="hibernate.connection.password" value="mysecret"/>
			<!--
			<property name="hibernate.connection.autocommit" value="true"/>
			-->
		</store>
	</repository>

</cdoServer>



Here is my product configuration:


<?xml version="1.0" encoding="UTF-8"?>
<?pde version="3.5"?>

<product name="CDO Repository" uid="myrepo" application="org.eclipse.emf.cdo.server.app" version="1.0.0.qualifier" useFeatures="false" includeLaunchers="true">

   <configIni use="default">
   </configIni>

   <launcherArgs>
      <programArgs>-consoleLog -console 10100</programArgs>
      <vmArgs>-Dosgi.requiredJavaVersion=1.5 -Dhelp.lucene.tokenizer=standard -Xms40m -Xmx512m</vmArgs>
      <vmArgsMac>-XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts</vmArgsMac>
   </launcherArgs>

   <vm>
      <windows include="false">org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5</windows>
   </vm>

   <plugins>
      <plugin id="javax.persistence"/>
      <plugin id="lpg.runtime.java"/>
      <plugin id="org.apache.commons.logging"/>
      <plugin id="org.apache.derby"/>
      <plugin id="org.apache.felix.gogo.runtime"/>
      <plugin id="org.apache.felix.gogo.shell"/>
      <plugin id="org.apache.log4j"/>
      <plugin id="org.dom4j"/>
      <plugin id="org.eclipse.ant.core"/>
      <plugin id="org.eclipse.core.contenttype"/>
      <plugin id="org.eclipse.core.expressions"/>
      <plugin id="org.eclipse.core.filesystem"/>
      <plugin id="org.eclipse.core.filesystem.win32.x86_64" fragment="true"/>
      <plugin id="org.eclipse.core.jobs"/>
      <plugin id="org.eclipse.core.resources"/>
      <plugin id="org.eclipse.core.runtime"/>
      <plugin id="org.eclipse.core.runtime.compatibility.registry" fragment="true"/>
      <plugin id="org.eclipse.core.variables"/>
      <plugin id="org.eclipse.emf.cdo"/>
      <plugin id="org.eclipse.emf.cdo.common"/>
      <plugin id="org.eclipse.emf.cdo.common.db"/>
      <plugin id="org.eclipse.emf.cdo.net4j"/>
      <plugin id="org.eclipse.emf.cdo.security"/>
      <plugin id="org.eclipse.emf.cdo.server"/>
      <plugin id="org.eclipse.emf.cdo.server.db"/>
      <plugin id="org.eclipse.emf.cdo.server.hibernate"/>
      <plugin id="org.eclipse.emf.cdo.server.hibernate.teneo"/>
      <plugin id="org.eclipse.emf.cdo.server.net4j"/>
      <plugin id="org.eclipse.emf.cdo.server.ocl"/>
      <plugin id="org.eclipse.emf.cdo.server.product"/>
      <plugin id="org.eclipse.emf.cdo.server.security"/>
      <plugin id="org.eclipse.emf.common"/>
      <plugin id="org.eclipse.emf.ecore"/>
      <plugin id="org.eclipse.emf.ecore.change"/>
      <plugin id="org.eclipse.emf.ecore.xmi"/>
      <plugin id="org.eclipse.emf.teneo"/>
      <plugin id="org.eclipse.emf.teneo.annotations"/>
      <plugin id="org.eclipse.emf.teneo.hibernate"/>
      <plugin id="org.eclipse.emf.teneo.hibernate.mapper"/>
      <plugin id="org.eclipse.equinox.app"/>
      <plugin id="org.eclipse.equinox.common"/>
      <plugin id="org.eclipse.equinox.console"/>
      <plugin id="org.eclipse.equinox.preferences"/>
      <plugin id="org.eclipse.equinox.registry"/>
      <plugin id="org.eclipse.net4j"/>
      <plugin id="org.eclipse.net4j.db"/>
      <plugin id="org.eclipse.net4j.db.derby"/>
      <plugin id="org.eclipse.net4j.db.h2"/>
      <plugin id="org.eclipse.net4j.jvm"/>
      <plugin id="org.eclipse.net4j.tcp"/>
      <plugin id="org.eclipse.net4j.util"/>
      <plugin id="org.eclipse.ocl"/>
      <plugin id="org.eclipse.ocl.common"/>
      <plugin id="org.eclipse.ocl.ecore"/>
      <plugin id="org.eclipse.osgi"/>
      <plugin id="org.eclipse.team.core"/>
      <plugin id="org.h2"/>
      <plugin id="org.hibernate"/>
      <plugin id="org.postgresql"/>
   </plugins>

   <configurations>
      <plugin id="org.eclipse.core.runtime" autoStart="true" startLevel="0" />
      <plugin id="org.eclipse.equinox.common" autoStart="true" startLevel="2" />
      <plugin id="org.eclipse.osgi" autoStart="true" startLevel="-1" />
   </configurations>

</product>




It looks like the hibernate mapping file for the basic CDO entities is not loaded. Any suggestion?

[Updated on: Tue, 14 August 2012 14:31]

Report message to a moderator

Re: Error CDO/Teneo/Postgres [message #901842 is a reply to message #901776] Tue, 14 August 2012 18:25 Go to previous messageGo to next message
Erdal Karaca is currently offline Erdal KaracaFriend
Messages: 854
Registered: July 2009
Senior Member
I remember I had the same error message a while ago, but that was fixed by Martin Taal...
Unfortunately, your product config does not show what version of CDO/Hibernate/Teneo you are using...
Re: Error CDO/Teneo/Postgres [message #902532 is a reply to message #901842] Sat, 18 August 2012 08:24 Go to previous messageGo to next message
Patrick Di Loreto is currently offline Patrick Di LoretoFriend
Messages: 10
Registered: May 2010
Junior Member
Hi Erdal,

here are the versions:

CDO 4.1.0
EMF Teneo CDO 2.0.0
Postgres 9.0.0

Re: Error CDO/Teneo/Postgres [message #902533 is a reply to message #902532] Sat, 18 August 2012 08:25 Go to previous message
Patrick Di Loreto is currently offline Patrick Di LoretoFriend
Messages: 10
Registered: May 2010
Junior Member
target environment in attachment.

index.php/fa/11228/0/
  • Attachment: targetEnv.png
    (Size: 133.84KB, Downloaded 592 times)
Previous Topic:[CDO] Exception Handling on Commit
Next Topic:Decimal precision for eStructuralFeatures
Goto Forum:
  


Current Time: Fri Apr 26 08:58:02 GMT 2024

Powered by FUDForum. Page generated in 0.03208 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top