Skip to content

Oracle Timesten dialect updates #10273

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

Closed
wants to merge 3,006 commits into from

Conversation

carlblan
Copy link

@carlblan carlblan commented Jun 3, 2025

Some updates from an Oracle employee to the Oracle TimesTen Community dialect. ( Hibernate 6.6 )

In TimesTenDialect.java

  • Adding more datatypes into columnType()
  • Added more SQL functions support into initializeFunctionRegistry()
  • Updated the custom definition for 'getForUpdateString()'
  • Added a custom definition for 'getNativeIdentifierGeneratorStrategy()'
  • Added a custom definition for 'currentDate()'
  • Added a custom definition for 'currentTime()'
  • Added a custom definition for 'getMaxVarcharLength()'
  • Added a custom definition for 'getMaxVarbinaryLength()'
  • Added a custom definition for 'isEmptyStringTreatedAsNull()'
  • Added a custom definition for 'supportsTupleDistinctCounts()'
  • Added a custom definition for 'getDual()'
  • Added a custom definition for 'getFromDualForSelectOnly()'

In TimesTenSqlAstTranslator.java

  • Added a custom definition for 'renderRowsToClause()'

In TimesTenLimitHandler.java

    • The class now extends 'AbstractLimitHandler'
    • Removed a custom definition for 'insert()'
    • Added a custom definition for 'supportsLimit()'
    • Added a custom definition for 'supportsOffset()'
    • Added a custom definition for 'supportsLimitOffset()'
    • Added a custom definition for 'supportsVariableLimit()'
    • Added a custom definition for 'convertToFirstRowValue(int zeroBasedFirstResult)'
    • Added a custom definition for 'useMaxForLimit()'
    • Added a custom definition for 'limitClause(boolean hasFirstRow)'

In TimesTenSequenceSupport.java

    • The Class now implements 'SequenceSupport'
    • Added a custom definition for 'supportsSequences()'
    • Added a custom definition for 'supportsPooledSequences()'
    • Added a custom definition for 'getSelectSequenceNextValString(String sequenceName)'
    • Added a custom definition for 'getSequenceNextValString(String sequenceName)'
    • Added a custom definition for 'getCreateSequenceString(String sequenceName)'
    • Added a custom definition for 'getDropSequenceString(String sequenceName)'

Testing:

  • The changes were tested with some local tests we have using this Hibernate 6 TimesTen community dialect.

SPECIAL NOTE:

  • 'copyright notices' were added for each change made to the code. As this was suggested by our company lawyers.
    Please review those and let me know If there's a problem with that.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license
and can be relicensed under the terms of the LGPL v2.1 license in the future at the maintainers' discretion.
For more information on licensing, please check here.


@hibernate-github-bot
Copy link

hibernate-github-bot bot commented Jun 3, 2025

Thanks for your pull request!

This pull request does not follow the contribution rules. Could you have a look?

❌ All commit messages should start with a JIRA issue key matching pattern HHH-\d+
    ↳ Offending commits: [9fce4e6, fab6a1c, 5a9381a, 5145400, 19893b8, 562c5c6, 8dae9d5, 44c62a5, 2e07a11, e218d36, a88fca0, cb01586, c6b670b, c150b54, dec292f, 8f996ab, 56ae257, 9e1c6a3, cb45dc9, 511a5cc, 754003d, 0f256e4, c38ab8b, 3c806ab, 5f57038, b44dcc9, acd0c09, 0603593, 70d02d2, 6b31daf, 45afcfd, 82ab068, 6e43d22, 2ddf360, 81d0c36, ff0fde1, 02d4a8f, 7ea39c8, d0095a8, d064acd, b488141, 8c8eaf8, 94c3afc, 43cc747, 42b5fa6, 21ac4f0, 9ef7c74, e0706ac, 1990024, fa12239, d091b2f, f8c919d, 5bcbb8c, 37dabd9, d29664e, 88321e5, 0c9d02b, 7883163, 7f79476, 35c74b6, b0936fb, 9933e1f, f5c00dc, 946e6b8, 526af6b, 150d4f8, 61dabb3, 94f7e95, 219d622, 61e1623, fed820b, b20aa54, 1b44ae5, 12d216c, b9aa32c, feca553, 2f87f32, ad91b04, 3d14126, eca9456, 687ea1f, 9319565, e7a75af, 7e30638, 63289fb, ad1b257, 60d2b69, 4b90847, f3217f6, 2c0af7e, 4e4212b, 663ee87, 36625c1, bda2c64, 527d658, ac87d5a, 6636374, 4c94c00, 8556f0e, 523eb84, daaeedb, 0be008f, a0d2b2f, 30fecce, f0792cc, 92168f9, b280300, 85b2c70, 08a7b2f, 24a0203, 0c32810, 42fa78c, 10bb3ef, 137e853, c29deab, b443f18, 6f4a22f, 2fee233, 0b33488, 58a17d0, ad9d5de, 8f1f13f, 68c8712, 2c784b4, 01e8f02, a6eff35, 3a6e869, 5c49105, 78464ec, 1c81622, a5319ed, 1ed27d5, 8f08bda, cb6b019]
❌ The PR title or body should list the keys of all JIRA issues mentioned in the commits
    ↳ Issue keys mentioned in commits but missing from the PR title or body: [HHH-17404, HHH-19506, HHH-19544, HHH-18708, HHH-19548, HHH-19391, HHH-17002, HHH-18820, HHH-18514, HHH-19226, HHH-19283, HHH-19564, HHH-19571, HHH-19572, HHH-19560, HHH-19570, HHH-19573, HHH-19574, HHH-19577, HHH-19536, HHH-9812, HHH-19523, HHH-19559, HHH-19580, HHH-19225, HHH-19464, HHH-18898, HHH-8511, HHH-19583, HHH-19558, HHH-19498, HHH-19076, HHH-19365, HHH-18639, HHH-18641, HHH-19593, HHH-19542, HHH-19595, hhh-19598, HHH-19591, HHH-19596]

› This message was automatically generated.

@mbellade
Copy link
Member

mbellade commented Jun 5, 2025

Hi @carlblan, thank you for the contribution.

  • 'copyright notices' were added for each change made to the code. As this was suggested by our company lawyers.
    Please review those and let me know If there's a problem with that.

As @yrodiere mentioned in this other pr #9629 (comment), we now have an AUTHORS.txt file where corporate contributors will be able to add such notices, feel free to check with your colleagues at Oracle (specifically Jean de Lavarene). After that, we would kindly ask you to remove any custom copyright text from the code comments, thanks.

@yrodiere
Copy link
Member

yrodiere commented Jun 5, 2025

Also please note that your contributions cannot, under any circumstance, be licensed under UPL, but must be licensed under ASL2 with the option to relicense under LGPL v2.1, as mentioned in your PR description:

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license
and can be relicensed under the terms of the LGPL v2.1 license in the future at the maintainers' discretion.
For more information on licensing, please check here.

And thanks for contributing :)

return false;
}

public String getDual() {

Check notice

Code scanning / CodeQL

Missing Override annotation

This method overrides [Dialect.getDual](1); it is advisable to add an Override annotation.
return "dual";
}

public String getFromDualForSelectOnly() {

Check notice

Code scanning / CodeQL

Missing Override annotation

This method overrides [Dialect.getFromDualForSelectOnly](1); it is advisable to add an Override annotation.
ejannett and others added 25 commits June 17, 2025 18:01
         removed some unchecked cast warning
Including changes to either ignore tests, or get tests running on Firebird
(I committed a fix in Firebird to address this in upcoming releases)
So that we always set the test release version, in particular.
SweetWuXiaoMei and others added 26 commits July 4, 2025 12:18
…Statements and ResultSets

This reverts commit ef2207f17d328d00ead2c372a6d311fe1b26a432.
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
@carlblan carlblan force-pushed the timesten_dialect_updates branch from 11cea82 to cb6b019 Compare July 8, 2025 20:18
@carlblan carlblan closed this Jul 8, 2025
@carlblan
Copy link
Author

carlblan commented Jul 8, 2025

Closing this PR since I accidentally fetched changes from the 'main' branch instead of the '6.6'. Will send a clean PR again

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.