From 86f344c484ff1e556ff15f999ea5b6cf85e7798a Mon Sep 17 00:00:00 2001 From: Paul Johnson Date: Tue, 26 Oct 2021 16:30:57 +0100 Subject: [PATCH] Post review feedback Less logging @ info level More re-usable migration --- .../V_8_18_0/AddContentVersionCleanupFeature.cs | 16 +++++++++++----- .../Scheduling/ContentVersionCleanup.cs | 13 +++++++++---- 2 files changed, 20 insertions(+), 9 deletions(-) diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_18_0/AddContentVersionCleanupFeature.cs b/src/Umbraco.Core/Migrations/Upgrade/V_8_18_0/AddContentVersionCleanupFeature.cs index bfa204ec24..5ec05c1dc9 100644 --- a/src/Umbraco.Core/Migrations/Upgrade/V_8_18_0/AddContentVersionCleanupFeature.cs +++ b/src/Umbraco.Core/Migrations/Upgrade/V_8_18_0/AddContentVersionCleanupFeature.cs @@ -1,5 +1,4 @@ -using System.Linq; -using Umbraco.Core.Persistence.Dtos; +using Umbraco.Core.Persistence.Dtos; namespace Umbraco.Core.Migrations.Upgrade.V_8_18_0 { @@ -8,12 +7,19 @@ namespace Umbraco.Core.Migrations.Upgrade.V_8_18_0 public AddContentVersionCleanupFeature(IMigrationContext context) : base(context) { } + /// + /// The conditionals are useful to enable the same migration to be used in multiple + /// migration paths x.x -> 8.18 and x.x -> 9.x + /// public override void Migrate() { - Create.Table().Do(); + var tables = SqlSyntax.GetTablesInSchema(Context.Database); + if (!tables.InvariantContains(ContentVersionCleanupPolicyDto.TableName)) + { + Create.Table().Do(); + } - // What's this about, we worry someone else edited table with same change? - var columns = SqlSyntax.GetColumnsInSchema(Context.Database).ToList(); + var columns = SqlSyntax.GetColumnsInSchema(Context.Database); AddColumnIfNotExists(columns, "preventCleanup"); } } diff --git a/src/Umbraco.Web/Scheduling/ContentVersionCleanup.cs b/src/Umbraco.Web/Scheduling/ContentVersionCleanup.cs index 4fccbfab0a..41971a6524 100644 --- a/src/Umbraco.Web/Scheduling/ContentVersionCleanup.cs +++ b/src/Umbraco.Web/Scheduling/ContentVersionCleanup.cs @@ -65,11 +65,16 @@ namespace Umbraco.Web.Scheduling return false; // do NOT repeat, going down } - _logger.Info("Starting ContentVersionCleanup task."); + var count = _cleanupService.PerformContentVersionCleanup(DateTime.Now).Count; - var report = _cleanupService.PerformContentVersionCleanup(DateTime.Now); - - _logger.Info("Finished ContentVersionCleanup task. Removed {count} item(s).", report.Count); + if (count > 0) + { + _logger.Info("Deleted {count} ContentVersion(s).", count); + } + else + { + _logger.Debug("Task complete, no items were Deleted."); + } return true; }