diff --git a/conf/defaults.ini b/conf/defaults.ini index 854d348e8c9..be7e06d7223 100644 --- a/conf/defaults.ini +++ b/conf/defaults.ini @@ -200,6 +200,10 @@ transaction_retries = 5 # Set to true to add metrics and tracing for database queries. instrument_queries = false +# Set to true to delete auto-generated primary keys during migrations. +# This is useful when databases have auto-generated primary keys enabled. +delete_auto_gen_ids = false + #################################### Cache server ############################# [remote_cache] # Either "redis", "memcached" or "database" default is "database" diff --git a/conf/sample.ini b/conf/sample.ini index 30e5bb42f6a..6d3afd69292 100644 --- a/conf/sample.ini +++ b/conf/sample.ini @@ -197,6 +197,10 @@ # Set to true to add metrics and tracing for database queries. ;instrument_queries = false +# Set to true to delete auto-generated primary keys during migrations. +# This is useful when databases have auto-generated primary keys enabled. +;delete_auto_gen_ids = false + #################################### Cache server ############################# [remote_cache] # Either "redis", "memcached" or "database" default is "database" diff --git a/pkg/services/sqlstore/database_config.go b/pkg/services/sqlstore/database_config.go index f5ba069df15..47e77640aa8 100644 --- a/pkg/services/sqlstore/database_config.go +++ b/pkg/services/sqlstore/database_config.go @@ -43,6 +43,7 @@ type DatabaseConfig struct { MigrationLock bool MigrationLockAttemptTimeout int LogQueries bool + DeleteAutoGenIDs bool // SQLite only QueryRetries int // SQLite only @@ -123,6 +124,7 @@ func (dbCfg *DatabaseConfig) readConfig(cfg *setting.Cfg) error { dbCfg.TransactionRetries = sec.Key("transaction_retries").MustInt(5) dbCfg.LogQueries = sec.Key("log_queries").MustBool(false) + dbCfg.DeleteAutoGenIDs = sec.Key("delete_auto_gen_ids").MustBool(false) return nil }