diff --git a/doc/sql.extensions/README.isc_info_xxx b/doc/sql.extensions/README.isc_info_xxx index 7bd70bb3c7..9a487be8b8 100644 --- a/doc/sql.extensions/README.isc_info_xxx +++ b/doc/sql.extensions/README.isc_info_xxx @@ -45,9 +45,9 @@ New items for isc_database_info isc_dpb_addr_flag_conn_encrypted - connection is encrypted; fb_info_wire_crypt - name of connection encryption plugin. -6. fb_info_provider_features: +6. fb_info_features: return list of features supported by current connection's provider. - Each byte in returned array shall be one of following info_provider_features: + Each byte in returned array shall be one of following info_features: fb_feature_multi_statements - multiple prepared statements in single attachment fb_feature_multi_transactions - multiple concurrent transactions in single attachment diff --git a/src/include/firebird/impl/inf_pub.h b/src/include/firebird/impl/inf_pub.h index 45e270bf69..97ee92d385 100644 --- a/src/include/firebird/impl/inf_pub.h +++ b/src/include/firebird/impl/inf_pub.h @@ -163,7 +163,7 @@ enum db_info_types fb_info_wire_crypt = 140, // Return list of features supported by provider of current connection - fb_info_provider_features = 141, + fb_info_features = 141, isc_info_db_last_value /* Leave this LAST! */ }; @@ -174,7 +174,7 @@ enum db_info_crypt /* flags set in fb_info_crypt_state */ fb_info_crypt_process = 0x02 }; -enum info_provider_features // response to fb_info_provider_features +enum info_features // response to fb_info_features { fb_feature_multi_statements = 1, // Multiple prepared statements in single attachment fb_feature_multi_transactions = 2, // Multiple concurrent transaction in single attachment @@ -182,7 +182,7 @@ enum info_provider_features // response to fb_info_provider_features fb_feature_session_reset = 4, // ALTER SESSION RESET is supported fb_feature_read_consistency = 5, // Read consistency TIL is supported fb_feature_statement_timeout = 6, // Statement timeout is supported - fb_feature_statement_long_life = 7, // Prepared statement can survive transaction end + fb_feature_statement_long_life = 7, // Prepared statements are not dropped on transaction end info_provider_features_max // Not really a feature. Keep this last. }; diff --git a/src/jrd/extds/ExtDS.h b/src/jrd/extds/ExtDS.h index b12840dd71..c5dca16fb0 100644 --- a/src/jrd/extds/ExtDS.h +++ b/src/jrd/extds/ExtDS.h @@ -492,11 +492,11 @@ public: virtual Blob* createBlob() = 0; // Test specified feature flag - bool testFeature(info_provider_features value) const { return m_features[value]; } + bool testFeature(info_features value) const { return m_features[value]; } // Set specified flag - void setFeature(info_provider_features value) { m_features[value] = true; } + void setFeature(info_features value) { m_features[value] = true; } // Clear specified flag - void clearFeature(info_provider_features value) { m_features[value] = false; } + void clearFeature(info_features value) { m_features[value] = false; } protected: virtual Transaction* doCreateTransaction() = 0; diff --git a/src/jrd/extds/InternalDS.cpp b/src/jrd/extds/InternalDS.cpp index 4ea3830c9e..11cfd1b25c 100644 --- a/src/jrd/extds/InternalDS.cpp +++ b/src/jrd/extds/InternalDS.cpp @@ -189,7 +189,7 @@ void InternalConnection::attach(thread_db* tdbb) SQL_DIALECT_V6 : SQL_DIALECT_V5; memset(m_features, false, sizeof(m_features)); - static const info_provider_features features[] = ENGINE_FEATURES; + static const info_features features[] = ENGINE_FEATURES; for (int i = 0; i < sizeof(features); i++) setFeature(features[i]); } diff --git a/src/jrd/extds/IscDS.cpp b/src/jrd/extds/IscDS.cpp index 33c7c515d5..5ded99d713 100644 --- a/src/jrd/extds/IscDS.cpp +++ b/src/jrd/extds/IscDS.cpp @@ -148,7 +148,7 @@ void IscConnection::attach(thread_db* tdbb) { EngineCallbackGuard guard(tdbb, *this, FB_FUNCTION); - const unsigned char info[] = {isc_info_db_sql_dialect, fb_info_provider_features, isc_info_end}; + const unsigned char info[] = {isc_info_db_sql_dialect, fb_info_features, isc_info_end}; m_iscProvider.isc_database_info(&status, &m_handle, sizeof(info), info, sizeof(buff), buff); } if (status->getState() & IStatus::STATE_ERRORS) { @@ -171,7 +171,7 @@ void IscConnection::attach(thread_db* tdbb) m_sqlDialect = m_iscProvider.isc_vax_integer(p, len); break; - case fb_info_provider_features: + case fb_info_features: for (int i = 0; i < len; i++) { if (p[i] == 0) @@ -181,7 +181,7 @@ void IscConnection::attach(thread_db* tdbb) if (p[i] < info_provider_features_max) { - setFeature(static_cast(p[i])); + setFeature(static_cast(p[i])); } // else this provider supports unknown feature, ignore it. } @@ -192,7 +192,7 @@ void IscConnection::attach(thread_db* tdbb) const ULONG err = m_iscProvider.isc_vax_integer(p + 1, len - 1); if (err == isc_infunk) { - if (*p == fb_info_provider_features) + if (*p == fb_info_features) { // Used provider follow Firebird error reporting conventions but is not aware of // this info item. Assume Firebird 3 or earlier. diff --git a/src/jrd/inf.cpp b/src/jrd/inf.cpp index a96cd4e9ba..ac56f0b579 100644 --- a/src/jrd/inf.cpp +++ b/src/jrd/inf.cpp @@ -848,7 +848,7 @@ void INF_database_info(thread_db* tdbb, length = INF_convert(att->getActualIdleTimeout(), buffer); break; - case fb_info_provider_features: + case fb_info_features: { static const unsigned char features[] = ENGINE_FEATURES; length = sizeof(features);