question: hibernate apis explicitly state that setfirstresult should be a zero-based offset . here we allow the dialect a chance to convert that value based on what the underlying db or driver will expect . note : what gets passed into abstractlimithandler #processsql string , org.hibernate.engine.spi.rowselection is the zero-based offset . dialects which do not #supportsvariablelimit should take care to performany needed first-row-conversion calls prior to injecting the limit values into the sql string . concode_field_sep PlaceHolder placeHolder concode_field_sep boolean supportsVariableLimit concode_elem_sep boolean useMaxForLimit concode_elem_sep int bindLimitParametersAtStartOfQuery concode_elem_sep boolean supportsLimit concode_elem_sep boolean forceLimitUsage concode_elem_sep boolean bindLimitParametersFirst concode_elem_sep int bindLimitParametersAtEndOfQuery concode_elem_sep String processSql concode_elem_sep void setMaxRows concode_elem_sep boolean supportsLimitOffset concode_elem_sep int bindLimitParameters concode_elem_sep int getMaxOrLimit concode_elem_sep boolean bindLimitParametersInReverseOrder
target: int function ( int arg0 ) { return arg0 ; }