Skip to content

Commit 6c6aa70

Browse files
authored
Merge pull request #5707 from Particular/john/generic_settings
Replace TrialMetadata table with a generic Settings key/value table
2 parents 7770271 + 5a45e25 commit 6c6aa70

14 files changed

Lines changed: 1606 additions & 88 deletions

File tree

src/ServiceControl.Persistence.EFCore.PostgreSql/Migrations/20260807012019_AddSettings.Designer.cs

Lines changed: 774 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
using System;
2+
using Microsoft.EntityFrameworkCore.Migrations;
3+
using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
4+
5+
#nullable disable
6+
7+
namespace ServiceControl.Persistence.EFCore.PostgreSql.Migrations
8+
{
9+
/// <inheritdoc />
10+
public partial class AddSettings : Migration
11+
{
12+
/// <inheritdoc />
13+
protected override void Up(MigrationBuilder migrationBuilder)
14+
{
15+
migrationBuilder.DropTable(
16+
name: "trial_metadata");
17+
18+
migrationBuilder.CreateTable(
19+
name: "settings",
20+
columns: table => new
21+
{
22+
key = table.Column<string>(type: "character varying(450)", maxLength: 450, nullable: false),
23+
value = table.Column<string>(type: "text", nullable: false)
24+
},
25+
constraints: table =>
26+
{
27+
table.PrimaryKey("pk_settings", x => x.key);
28+
});
29+
}
30+
31+
/// <inheritdoc />
32+
protected override void Down(MigrationBuilder migrationBuilder)
33+
{
34+
migrationBuilder.DropTable(
35+
name: "settings");
36+
37+
migrationBuilder.CreateTable(
38+
name: "trial_metadata",
39+
columns: table => new
40+
{
41+
id = table.Column<int>(type: "integer", nullable: false)
42+
.Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn),
43+
trial_end_date = table.Column<DateOnly>(type: "date", nullable: true)
44+
},
45+
constraints: table =>
46+
{
47+
table.PrimaryKey("pk_trial_metadata", x => x.id);
48+
});
49+
50+
migrationBuilder.InsertData(
51+
table: "trial_metadata",
52+
columns: new[] { "id", "trial_end_date" },
53+
values: new object[] { 1, null });
54+
}
55+
}
56+
}

src/ServiceControl.Persistence.EFCore.PostgreSql/Migrations/PostgreSqlServiceControlDbContextModelSnapshot.cs

Lines changed: 18 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -668,6 +668,24 @@ protected override void BuildModel(ModelBuilder modelBuilder)
668668
b.ToTable("retry_batch_now_forwarding", (string)null);
669669
});
670670

671+
modelBuilder.Entity("ServiceControl.Persistence.EFCore.Entities.SettingEntity", b =>
672+
{
673+
b.Property<string>("Key")
674+
.HasMaxLength(450)
675+
.HasColumnType("character varying(450)")
676+
.HasColumnName("key");
677+
678+
b.Property<string>("Value")
679+
.IsRequired()
680+
.HasColumnType("text")
681+
.HasColumnName("value");
682+
683+
b.HasKey("Key")
684+
.HasName("pk_settings");
685+
686+
b.ToTable("settings", (string)null);
687+
});
688+
671689
modelBuilder.Entity("ServiceControl.Persistence.EFCore.Entities.SubscriptionEntity", b =>
672690
{
673691
b.Property<string>("MessageType")
@@ -692,31 +710,6 @@ protected override void BuildModel(ModelBuilder modelBuilder)
692710
b.ToTable("subscriptions", (string)null);
693711
});
694712

695-
modelBuilder.Entity("ServiceControl.Persistence.EFCore.Entities.TrialMetadataEntity", b =>
696-
{
697-
b.Property<int>("Id")
698-
.ValueGeneratedOnAdd()
699-
.HasColumnType("integer")
700-
.HasColumnName("id");
701-
702-
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
703-
704-
b.Property<DateOnly?>("TrialEndDate")
705-
.HasColumnType("date")
706-
.HasColumnName("trial_end_date");
707-
708-
b.HasKey("Id")
709-
.HasName("pk_trial_metadata");
710-
711-
b.ToTable("trial_metadata", (string)null);
712-
713-
b.HasData(
714-
new
715-
{
716-
Id = 1
717-
});
718-
});
719-
720713
modelBuilder.Entity("ServiceControl.Persistence.EFCore.Entities.UnacknowledgedRetryOperationEntity", b =>
721714
{
722715
b.Property<string>("RequestId")

0 commit comments

Comments
 (0)