[
https://issues.apache.org/jira/browse/OFBIZ-1033?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12538089
]
David E. Jones commented on OFBIZ-1033:
---------------------------------------
Responding here in spite of the thread Jacques started on the dev list (keep it
centralized). Still, there are some things related to this that should be
discussed and the mailing lists is definitely the place for discussion. I'll
keep my comments here to general feedback.
This is an interesting concept and various discussions related to it have gone
on.
Just to set expectations this is the sort of thing that will likely require on
the order of months to review and discuss and come up with good solutions and
combining work done by others with this and so on.
I know for sure that Adam Heath has been working on something related to this,
though different in that it uses generic SQL which is translated into the
Entity Engine objects.
In general running SQL directly against the database is certainly allowed, but
even if we did make it easier with the OFBiz framework we would not allow that
to be used for code in the project.
This document complained about optimization. It is true that some optimization
beyond doing a good job of limiting what you ask the database to do is
possible, but that usually requires database-specific SQL that is not very
portable to other databases. That would require specifying different SQL for
each database we want to support. That is why we are very careful of the actual
SQL that makes it into OFBiz.
For general optimization you can do a lot with what exists in OFBiz, and has
always been adequate for projects I have worked on, even where performance was
very sensitive. The most significant performance gains do come from
understanding indexes and temporary tables (the ones the database creates when
doing joins, etc) and so on, and the nice thing about the Entity Engine is that
this knowledge of the database is easy to map into code changes, unlike more
traditional Object-Relational mapping packages where the way operations map to
the database is not so transparent.
Whatever the case, those are my initial thoughts. I look forward to seeing more
discussion and work going on in this area to improve the framework and make it
easier for people to do the things they need to, even the non-best-practice
things.
After all the OFBiz Framework is NOT a 4GL tool, and while we have best
practices it's not about forbidding things on a framework level. In the
applications it's a bit of a different story as some control is required there
to make it easy (or even feasible) to deploy OFBiz on different databases and
other infrastructure pieces.
> Ofbiz SQL Integration Features
> ------------------------------
>
> Key: OFBIZ-1033
> URL: https://issues.apache.org/jira/browse/OFBIZ-1033
> Project: OFBiz
> Issue Type: New Feature
> Components: framework
> Affects Versions: SVN trunk
> Environment: Win XP
> Reporter: Karl Eilebrecht
> Priority: Minor
> Fix For: SVN trunk
>
> Attachments: OfbizSqlEn.pdf, patch9676.patch
>
>
> This issue is part of Key-Work Ofbiz Contribution Proposal.
> http://docs.ofbiz.org/display/OFBIZ/Key-Work+Ofbiz+Contribution+Proposal
> Based on Release: 540035
> Includes: -
> Required: JIRA-1016
> Recommended: JIRA-1030
> Classes: MapResultSetIterator.java, OfbizResultSet.java,
> OfbizResultSetWrapper.java, PaSqlUtils.java,
> ResultSetAccessException.java,
> ResultSetIndexInterceptor.java,
> Sql2EntityUtils.java,
> SqlHelper.java,
> SqlUtils.java,
> ExtEntityListIterator.java
>
> Description: This patch provides enhanced features to access the
> database with plain sql.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.