They have different intentions and are potentially applied in different ways for different databases - hence separate.
E.g. DB2 supports a query comment, but does not support optimizer hints... so these need to be handled differently On Tue, Aug 1, 2017, 8:19 AM Vlad Mihalcea <mihalcea.v...@gmail.com> wrote: > I'm asking because the > > org.hibernate.annotations.NamedNativeQuery or > org.hibernate.annotations.NamedQuery > > define the comment attribute with the following Javadoc: > > /** > * A comment added to the generated SQL query. Useful when engaging with DBA. > */ > String comment() default ""; > > So, Hibernate clients could use the comment attribute in order to supply > an Oracle query hint, right? > > In this case, should we treat this attribute as a query hint so that the > Oracle/SQL Server hint logic applies to this one as well? > > Vlad > > On Tue, Aug 1, 2017 at 4:07 PM, Steve Ebersole <st...@hibernate.org> > wrote: > >> Query hints are hints for the database' s query parser/optimizer. >> >> A comment is a... well a comment :) >> >> On Tue, Aug 1, 2017, 6:37 AM Vlad Mihalcea <mihalcea.v...@gmail.com> >> wrote: >> >>> Hi, >>> >>> While working on integrating a Pull Request, I realized that the >>> org.hibernate.engine.spi.QueryParameters provides these two attributes: >>> >>> private String comment; >>> private List<String> queryHints; >>> >>> Both these two are to be sent to the database, so why do we have both? >>> >>> I also noticed that only for Query Hints we do take into consideration DB >>> specific query hint syntax: >>> >>> // Keep this here, rather than moving to Select. Some Dialects may >>> need the hint to be appended to the very >>> // end or beginning of the finalized SQL statement, so wait until >>> everything is processed. >>> if ( parameters.getQueryHints() != null && >>> parameters.getQueryHints().size() > 0 ) { >>> sql = dialect.getQueryHintString( sql, parameters.getQueryHints() ); >>> } >>> >>> Shouldn't we only have either comment or queryHints? Or what is the >>> difference between these two? >>> >>> Vlad >>> _______________________________________________ >>> hibernate-dev mailing list >>> hibernate-dev@lists.jboss.org >>> https://lists.jboss.org/mailman/listinfo/hibernate-dev >>> >> > _______________________________________________ hibernate-dev mailing list hibernate-dev@lists.jboss.org https://lists.jboss.org/mailman/listinfo/hibernate-dev