Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mapping - Add support for JOINED and TABLE PER CLASS inheritance strategies #116

Closed
rbygrave opened this issue Apr 30, 2014 · 18 comments
Closed

Comments

@rbygrave
Copy link
Member

@rbygrave rbygrave commented Apr 30, 2014

These inheritance strategies are not supported. Consider this in the 5.x timeframe.

@kbenhdech

This comment has been minimized.

Copy link

@kbenhdech kbenhdech commented Nov 24, 2015

It seems that the inheritance with strategy 'TABLE_PER_CLASS' now works. Since which version is this the case ?
Thanks.

@rbygrave

This comment has been minimized.

Copy link
Member Author

@rbygrave rbygrave commented Nov 24, 2015

It should not work. Have you tested it?

@PhoenixRion

This comment has been minimized.

Copy link

@PhoenixRion PhoenixRion commented Jan 20, 2016

Is SINGLE TABLE still the only supported inheritance strategy?

@rbygrave

This comment has been minimized.

Copy link
Member Author

@rbygrave rbygrave commented Jan 20, 2016

Yes.

Note that in the absence of sponsorship for specific features the priorities are ElasticSearch integration followed by performance monitoring and then by mapping.

@ncphillips

This comment has been minimized.

Copy link

@ncphillips ncphillips commented Apr 27, 2016

hey @rbygrave, I'm planning on taking a look at this issue. Would you be able to point me to a good starting place?

@rbygrave

This comment has been minimized.

Copy link
Member Author

@rbygrave rbygrave commented Apr 27, 2016

Hmm. I think the first thing would be to list the required changes. So choose one of 'table per subclass' or 'joined' and then list the things that need to change to support that mapping (DDL, query, inserts, updates, deletes) and maybe pseudo code the behavior of each change?

Then for each specific change (with a pseudo code description) I can help point you into the correct area in the code.

That might be a plan.

@randikaf

This comment has been minimized.

Copy link

@randikaf randikaf commented Oct 25, 2016

Do you have a planned release for this issue?

@aprasadh

This comment has been minimized.

Copy link

@aprasadh aprasadh commented Apr 26, 2017

Any updates on this issue?

@rbygrave rbygrave changed the title Support for JOINED and TABLE PER CLASS inheritance strategies Mapping - Add support for JOINED and TABLE PER CLASS inheritance strategies May 21, 2017
@ajcamilo

This comment has been minimized.

Copy link
Contributor

@ajcamilo ajcamilo commented May 26, 2017

Will this feature be implemented in the near future?

Can I help in any way to implement this?

@rbygrave

This comment has been minimized.

Copy link
Member Author

@rbygrave rbygrave commented May 29, 2017

Near future. Well, no, in that there are other things that are currently a higher priority (documentation, gradle plugin, ebean-elastic, performance monitoring) so for me those other things need attention before this.

Can I help in any way to implement this?

Do you mean funding the effort or actually implementing the code?

@ajcamilo

This comment has been minimized.

Copy link
Contributor

@ajcamilo ajcamilo commented May 29, 2017

I meant actually implementing the code.

But I have no clue where to start. 😞

@rbygrave rbygrave added the Sponsor Me label Jun 8, 2018
@jcarloshorus

This comment has been minimized.

Copy link

@jcarloshorus jcarloshorus commented Jun 24, 2018

Is there any way around this? I used @JoinColumn (simulating @SecondaryTable) but the changes made to columns with the table attribute set to the second table are not persisted.

If there is no form, I would like to collaborate with the implementation.

@jcarloshorus

This comment has been minimized.

Copy link

@jcarloshorus jcarloshorus commented Jul 4, 2018

Hello, I would like to collaborate with the development of this isshue, since I depend on this functionality to implement a project which has entities with many inherited JOINED type;

I downloaded the github code, did some analysis and realized the following needs:

  1. io.ebeaninternal.server.deploy.InheritInfo
    add InheritanceType inheritanceType;

  2. io.ebeaninternal.server.deploy.parse.DeployInheritInfo
    line 115: info.setInheritanceType (ia.strategy ());

  3. io.ebeaninternal.server.deploy.BeanProperty
    to use the inherited boolean attribute
    use the owningType attribute to infer the source table of the property

Rob, so I can cope with the implementation, I'd like you to guide me and if you can, that create a specific branch for that isshue !?

@IvanAR

This comment has been minimized.

Copy link

@IvanAR IvanAR commented Jul 11, 2018

@rbygrave This is interesting for us too, could you help @jcarloshorus ?

@jcarloshorus

This comment has been minimized.

Copy link

@jcarloshorus jcarloshorus commented Jul 11, 2018

@IvanAR I'm working on it (whenever i can) and I already did some improvements. Soon, I will commit so others can collaborate.

@sanuradhag

This comment has been minimized.

Copy link

@sanuradhag sanuradhag commented Oct 18, 2018

Any updates?

@rbygrave

This comment has been minimized.

Copy link
Member Author

@rbygrave rbygrave commented Oct 18, 2018

I suspect not looking at the fork - https://github.com/jcarloshorus/ebean

For myself the priorities are still with other tasks such as performance monitoring and documentation (and I can't remember the last time anyone assisted with the documentation which is a big task that will take a lot of time). In terms of donations and sponsorship there isn't anything there to adjust priorities or accelerate progress.

If there was assistance for documentation, donations or sponsorship that would help move things forward faster.

@rbygrave

This comment has been minimized.

Copy link
Member Author

@rbygrave rbygrave commented Aug 20, 2019

So marking this as a Limitation and closing this for now.

This has been open for a few years and has obtained no sponsorship to assist in the development effort. I'm comfortable marking this as a known limitation and closing this makes it clearer that this is not on the roadmap.

@rbygrave rbygrave closed this Aug 20, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
10 participants
You can’t perform that action at this time.