[hibernate-dev] Contributed with HiRDB Dialect
cbredesen at redhat.com
Wed Sep 17 11:49:45 EDT 2008
I've had a conversation with Steve regarding the addition of new
Dialects such as the one you've proposed. Here are the options:
1. Integrate a new org.hibernate.dialect.HiRDBDialect into Hibernate's
source code. This is reasonable for mainstream highly used databases
that most users would expect us to provide support for. In this
scenario, there's an implied responsibility on behalf of the Hibernate
team to ensure that they remain usable as Hibernate and the RDBMS
evolves. While it's great to get contributions for new and interesting
platforms, sometimes this happens "one time only" and in 5 years, we're
left with a Dialect that nobody can use and nobody is available to
2. Integrate a new org.hibernate.dialect.HiRDDialect into an optional
distribution that users are free to download and use at their leisure.
This is a good choice for less used integration pieces that may be less
actively maintained than core code. We are open to this for your case
but it would take some time to set up (Steve can comment on exactly when
this might take place).
3. Ship HiRDBDialect as a download from hitachi.co.jp or part of the
HiRDB JDBC distribution (in a com.hitachi.* package). I actually like
this option a lot because it is clear who owns/maintains the code.
Also, new versions of the Dialect can be shipped as HiRDB evolves and
releases new versions. Including it with the JDBC driver would make the
Hibernate dialect available automatically to anyone who needs it.
What do you think of option 3? Is this something you can facilitate
along with the team that maintains the JDBC driver? We will be happy to
provide links to the downloadable Dialect on hibernate.org so that users
can find things easily. If this is not an option, I'll discuss the
creation of an "extras" module that can house code like this. We may
have to do this already because there are some existing bits of code
that really should not be part of the core distribution for reasons
There's also the issue of testing. I don't envision acquiring hardware
and licenses to HiRDB so that we can make it part of our QA suite.
Shipping a Dialect as part of the core distribution tends to give users
the impression that we are 100% confident in its quality (even if our
web site says differently). We clearly can't be 100% confident in code
quality when we don't actively test against a given scenario. Based on
this I think option 3 is the best but please let me know if this can
work for you.
Tomoto Shimizu Washio wrote:
> Hi Chris,
> Unfortunately, there is no free version of HiRDB. I think I could do
> (a) running the tests in our side and sending you the result or
> (b) getting a copy for you from my organization (perhaps arranging some
> kind of contract would be required but I'm not sure). Which do you want
> me to do?
> I guess (a) is easier for both of us if you don't have to keep HiRDB
> with you for regular testing. I already have the test result on 3.2.5.
> If you would like me to test on another version, I could do it also.
> On Fri, 05 Sep 2008 13:35:00 -0400
> Chris Bredesen <cbredesen at redhat.com> wrote:
>> Thank you for the contribution! Is there somewhere that one might
>> obtain a copy of HiRDB to run the unit tests against?
>> tomoto.shimizu.vt at hitachi.com wrote:
>>> Hi, my name is Tomoto at Software Division in Hitachi.
>>> I have posted a dialect for HiRDB (Hitachi's RDBMS, see *1) to JIRA.
>>> I would appreciate it if someone in the team could take a look at it
>>> for evaluation, and I would be happy to solve the issues you saw if
>>> any. I really wish this dialect to be incorporated into Hibernate
>>> so that our customers could easily use Hibernate on HiRDB.
>>> This dialect comes with a feature to allow the user to declare the
>>> parameter types of user-defined functions in the properies file. It
>>> was necessary because HiRDB required ? parameters to be qualified by
>>> 'as <type>' in user-defined function invocations. If there were
>>> other databases that required the similar feature, and if you thought
>>> my implementation was good enough to let them use, I might be able to
>>> make an entry point on the Dialect base class so that other subclasses
>>> could use it more easily.
>>> *1 http://www.hitachi.co.jp/Prod/comp/soft1/global/prod/hirdb/
>>> Thank you in advance,
More information about the hibernate-dev