Skip to main content

OReva - Fork of OData4J library

Teiid community depends upon OData4J for its V2 implementation of the OData protocol. We see that there has been not much activity in OData4J project for last 2 years, so we consider this is project is effectively dead by all means. However, Teiid community still on hook to support our OData V2 implementation for little while longer (I see at least 2 yrs), for that reason we have forked this project and calling it "OREVA".

I have somewhat simplified the offering by removing the JDBC and JPA as we do not use those modules, but rest of core protocol is intact. We will try to keep it up with any bug fixes and maintenance. So, if you are wanting to submit a patch or work on some enhancements you can always come and talk to us,  patches are Welcome.

Here is the fork https://github.com/teiid/oreva   If there is enough interest form OData4J remaining community, I do not mind moving this to different GitHub organization other than Teiid. If you find a issue, use https://github.com/teiid/oreva/issues  for now we are using Teiid's issues system.

I also would like to thank John Spurlock for his all his contributions towards OData4J, Thank you. It is a very good OData framework

Thank you.

Ramesh..
http://teiid.org

Comments

  1. It's nice of you to continue working on it.

    Have you proposed to John Spurlock of taking over the odata4j project? That way you'll simply create a new version... and less confusion for the community.

    Thanks!

    ReplyDelete
  2. This comment has been removed by a blog administrator.

    ReplyDelete
  3. No. As I mentioned, this came out our necessity to support the library for Teiid project. Right now, I do not have any aspirations without broader community support to take beyond V2, as most of my time goes to supporting Teiid project. I am also a commiter on Apache Olingo for V4. Even though this may look like I am trying to segment the OData4J community that not all my intentions. I wanted to start something new that I can manage the way from what I learned from Teiid, may that be tools, infrastructure etc need to a run a project that I am comfortable and have control over it.

    I just heard from one of Teiid community member that, they are going to contribute to OData V3 version to OReva, that is a great news for us. I hop I can keep the momentum up.

    ReplyDelete
  4. And also do not forget, I removed the JPA and JDBC interfaces from the library, IMO they do not belong core library, they need to be sub-projects. I know JPA is popular with lot of community members, but in itself is lot of work to maintain.

    ReplyDelete

Post a Comment

Popular posts from this blog

Teiid 8.11 Beta1 and 8.10.1 Released

Teiid 8.11 Beta1 is now available from the  downloads  and maven.  Feature highlights since Alpha2 include: TEIID-3434 More caching control over ttls in the result set cache down to the schema/table level. TEIID-3412 MS Access support via the UCanAccess driver. The UCanAccess support is necessary for those running on Java 1.8 as the JDBC ODBC bridge has been removed from the JRE. The waiting continues on EAP 6.4 Alpha1 - it still should be available shortly and should be the platform target for Teiid 8.11 Beta2. Of course, let us know if you find any issues with these early releases.  There's still plenty of time to get fixes into the final release. Teiid 8.10.1 is also available.  It addresses 5 important issues discovered since 8.10 was released: [ TEIID-3409 ] - PostgreSQLExecutionFactory TranslatorProperty annotation in wrong place [ TEIID-3437 ] - Inconsistencies with row count handling [ TEIID-3438 ] - Null value returned from BlobImpl

Tech Tip: Teiid SQL Language MAKEDEP Hint Explained

In this article I will explain what a MAKEDEP hint is, how and when, why it should be used in Teiid. What: MAKEDEP is query hint.  When a query hint is defined in the SQL query it influences the Teiid query planner to optimize the query in a way that is driven by the user. MAKEDEP means "make this as a dependent join". What is a Dependent Join? For example if we have query like: SELECT * FROM X INNER JOIN Y ON X.PK = Y.FK Where the data for X, and Y are coming from two different sources like Oracle and WebService in Teiid, so in relational algebra you can represent above query as Here the result tuples from node X and node Y are being simultaneously fetched by Teiid query engine, then it joins the both the results inside Teiid engine based on the specified X.PK = Y.PK condition and returns the filtered resulted to the user. simple.. Now, what if, if X table has 5 rows and Y table has 100K rows? In order to do the JOIN naively Teiid need sto read all the 5

Teiid 8.13.3 Released

Teiid 8.13.3 is now  available .  In total 8.13.3 addresses 10 issues since 8.13.2: [ TEIID-4028 ] - adding salesforce-34 resource adapter does not work through the cli [ TEIID-4066 ] - Odata translator ClassNotFoundException: com.sun.ws.rs.ext.RuntimeDelegateImpl [ TEIID-4070 ] - Issues with resource adapters with api modules in wildfly [ TEIID-4089 ] - Teiid JDBC driver does not reset the update count when calling getMoreResults(int) [ TEIID-4093 ] - OData authentication fails with NPE when gss-pattern related properties are included in VDB [ TEIID-4096 ] - AssertionError with independent side of a dependent join that has an ordered limit [ TEIID-3050 ] - allow for more incremental insert with iterator [ TEIID-4075 ] - Netezza translator to support common table expressions [ TEIID-4098 ] - Always preserve columns order in google spreadsheets models [ TEIID-4046 ] - OData - $skip is beeing ignor