Skip to content

Commit

Permalink
Upgraded EF Core and Npgsql codebase to .NET 8
Browse files Browse the repository at this point in the history
  • Loading branch information
krzlabrdx committed Feb 23, 2024
1 parent f35345a commit ec9674d
Show file tree
Hide file tree
Showing 11 changed files with 191 additions and 4,094 deletions.
2 changes: 1 addition & 1 deletion .config/dotnet-tools.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"isRoot": true,
"tools": {
"dotnet-ef": {
"version": "7.0.11",
"version": "8.0.2",
"commands": [
"dotnet-ef"
]
Expand Down
5 changes: 4 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,10 @@ Release Date: _not published yet_
- `StatisticsController.Uptime` renamed to `StatisticsController.ValidatorsUptime`,
- `StateController` renamed to `StateEntityController`,
- `ValidatorStateController` renamed to `StateValidatorsComponent`.
- Upgraded to .NET8
- Upgraded to .NET 8:
- Upgraded runtime and libraries
- Dockerfiles no longer specify custom `app` user as it comes built-in with official base images.
- Removed now-obsolete or no-longer-needed code.

### API Changes
- Added new filter `manifest_badges_presented_filter` to `/stream/transactions` endpoint which allows filtering transactions by badges presented.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,6 @@
using NpgsqlTypes;
using RadixDlt.NetworkGateway.Abstractions.Extensions;
using RadixDlt.NetworkGateway.PostgresIntegration.Models;
using RadixDlt.NetworkGateway.PostgresIntegration.Services;
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Linq;
Expand Down Expand Up @@ -260,7 +259,7 @@ private Task<int> CopyEntityMetadataHistory() => _context.WriteHelper.Copy(
await writer.WriteAsync(e.FromStateVersion, NpgsqlDbType.Bigint, token);
await writer.WriteAsync(e.EntityId, NpgsqlDbType.Bigint, token);
await writer.WriteAsync(e.Key, NpgsqlDbType.Text, token);
await writer.WriteNullableAsync(e.Value, NpgsqlDbType.Bytea, token);
await writer.WriteAsync(e.Value, NpgsqlDbType.Bytea, token);
await writer.WriteAsync(e.IsDeleted, NpgsqlDbType.Boolean, token);
await writer.WriteAsync(e.IsLocked, NpgsqlDbType.Boolean, token);
});
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,6 @@
using NpgsqlTypes;
using RadixDlt.NetworkGateway.Abstractions;
using RadixDlt.NetworkGateway.PostgresIntegration.Models;
using RadixDlt.NetworkGateway.PostgresIntegration.Services;
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Linq;
Expand Down Expand Up @@ -314,11 +313,11 @@ private Task<int> CopyPackageBlueprintHistory() => _context.WriteHelper.Copy(
await writer.WriteAsync(e.Name, NpgsqlDbType.Text, token);
await writer.WriteAsync(e.Version, NpgsqlDbType.Text, token);
await writer.WriteAsync(e.Definition, NpgsqlDbType.Jsonb, token);
await writer.WriteNullableAsync(e.DependantEntityIds?.ToArray(), NpgsqlDbType.Array | NpgsqlDbType.Bigint, token);
await writer.WriteAsync(e.DependantEntityIds?.ToArray(), NpgsqlDbType.Array | NpgsqlDbType.Bigint, token);
await writer.WriteAsync(e.AuthTemplate, NpgsqlDbType.Jsonb, token);
await writer.WriteNullableAsync(e.AuthTemplateIsLocked, NpgsqlDbType.Boolean, token);
await writer.WriteAsync(e.AuthTemplateIsLocked, NpgsqlDbType.Boolean, token);
await writer.WriteAsync(e.RoyaltyConfig, NpgsqlDbType.Jsonb, token);
await writer.WriteNullableAsync(e.RoyaltyConfigIsLocked, NpgsqlDbType.Boolean, token);
await writer.WriteAsync(e.RoyaltyConfigIsLocked, NpgsqlDbType.Boolean, token);
});

private Task<int> CopyPackageBlueprintAggregateHistory() => _context.WriteHelper.Copy(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,6 @@
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Query;
using Npgsql;
using NpgsqlTypes;
using RadixDlt.NetworkGateway.Abstractions;
using RadixDlt.NetworkGateway.Abstractions.Extensions;
using RadixDlt.NetworkGateway.DataAggregator.Services;
Expand Down Expand Up @@ -358,10 +357,7 @@ public async Task<Dictionary<EntityAddress, Entity>> ExistingEntitiesFor(Referen
var sw = Stopwatch.GetTimestamp();
var entityAddressesToLoad = referencedEntities.Addresses.Select(x => (string)x).ToList();
var knownAddressesToLoad = referencedEntities.KnownAddresses.Select(x => (string)x).ToList();
var entityAddressesParameter = new NpgsqlParameter("@entity_addresses", NpgsqlDbType.Array | NpgsqlDbType.Text)
{
Value = entityAddressesToLoad.Concat(knownAddressesToLoad).ToArray(),
};
var addressesToLoad = entityAddressesToLoad.Concat(knownAddressesToLoad).ToList();

var result = await _dbContext
.Entities
Expand All @@ -371,7 +367,7 @@ FROM entities
WHERE id IN(
SELECT UNNEST(id || correlated_entities) AS id
FROM entities
WHERE address = ANY({entityAddressesParameter})
WHERE address = ANY({addressesToLoad})
)")
.AsNoTracking()
.AnnotateMetricName()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,6 @@
using RadixDlt.NetworkGateway.Abstractions.Model;
using RadixDlt.NetworkGateway.DataAggregator.Services;
using RadixDlt.NetworkGateway.PostgresIntegration.Models;
using RadixDlt.NetworkGateway.PostgresIntegration.Services;
using System;
using System.Collections.Generic;
using System.Diagnostics;
Expand Down Expand Up @@ -143,10 +142,10 @@ public async Task<int> CopyEntity(ICollection<Entity> entities, CancellationToke
await writer.WriteAsync(e.FromStateVersion, NpgsqlDbType.Bigint, token);
await writer.WriteAsync(e.Address.ToString(), NpgsqlDbType.Text, token);
await writer.WriteAsync(e.IsGlobal, NpgsqlDbType.Boolean, token);
await writer.WriteNullableAsync(e.AncestorIds?.ToArray(), NpgsqlDbType.Array | NpgsqlDbType.Bigint, token);
await writer.WriteNullableAsync(e.ParentAncestorId, NpgsqlDbType.Bigint, token);
await writer.WriteNullableAsync(e.OwnerAncestorId, NpgsqlDbType.Bigint, token);
await writer.WriteNullableAsync(e.GlobalAncestorId, NpgsqlDbType.Bigint, token);
await writer.WriteAsync(e.AncestorIds?.ToArray(), NpgsqlDbType.Array | NpgsqlDbType.Bigint, token);
await writer.WriteAsync(e.ParentAncestorId, NpgsqlDbType.Bigint, token);
await writer.WriteAsync(e.OwnerAncestorId, NpgsqlDbType.Bigint, token);
await writer.WriteAsync(e.GlobalAncestorId, NpgsqlDbType.Bigint, token);
await writer.WriteAsync(e.CorrelatedEntities.ToArray(), NpgsqlDbType.Array | NpgsqlDbType.Bigint, token);
await writer.WriteAsync(discriminator, "entity_type", token);

Expand Down Expand Up @@ -200,12 +199,12 @@ public async Task<int> CopyEntity(ICollection<Entity> entities, CancellationToke

if (e is InternalFungibleVaultEntity fve)
{
await writer.WriteNullableAsync(fve.ResourceEntityId, NpgsqlDbType.Bigint, token);
await writer.WriteNullableAsync(fve.RoyaltyVaultOfEntityId, NpgsqlDbType.Bigint, token);
await writer.WriteAsync(fve.ResourceEntityId, NpgsqlDbType.Bigint, token);
await writer.WriteAsync(fve.RoyaltyVaultOfEntityId, NpgsqlDbType.Bigint, token);
}
else if (e is InternalNonFungibleVaultEntity nfve)
{
await writer.WriteNullableAsync(nfve.ResourceEntityId, NpgsqlDbType.Bigint, token);
await writer.WriteAsync(nfve.ResourceEntityId, NpgsqlDbType.Bigint, token);
await writer.WriteNullAsync(token);
}
else
Expand Down Expand Up @@ -717,7 +716,7 @@ await _connection.BeginBinaryImportAsync(
await writer.WriteAsync(e.FromStateVersion, NpgsqlDbType.Bigint, token);
await writer.WriteAsync(e.AccountEntityId, NpgsqlDbType.Bigint, token);
await writer.WriteAsync(e.ResourceEntityId, NpgsqlDbType.Bigint, token);
await writer.WriteNullableAsync(e.AccountResourcePreferenceRule, "account_resource_preference_rule", token);
await writer.WriteAsync(e.AccountResourcePreferenceRule, "account_resource_preference_rule", token);
await writer.WriteAsync(e.IsDeleted, NpgsqlDbType.Boolean, token);
}

Expand Down Expand Up @@ -776,7 +775,7 @@ await _connection.BeginBinaryImportAsync(
await writer.WriteAsync(e.Id, NpgsqlDbType.Bigint, token);
await writer.WriteAsync(e.FromStateVersion, NpgsqlDbType.Bigint, token);
await writer.WriteAsync(e.NonFungibleIdDataId, NpgsqlDbType.Bigint, token);
await writer.WriteNullableAsync(e.Data, NpgsqlDbType.Bytea, token);
await writer.WriteAsync(e.Data, NpgsqlDbType.Bytea, token);
await writer.WriteAsync(e.IsDeleted, NpgsqlDbType.Boolean, token);
await writer.WriteAsync(e.IsLocked, NpgsqlDbType.Boolean, token);
}
Expand Down Expand Up @@ -894,7 +893,7 @@ await _connection.BeginBinaryImportAsync(
await writer.WriteAsync(e.FromStateVersion, NpgsqlDbType.Bigint, token);
await writer.WriteAsync(e.KeyValueStoreEntityId, NpgsqlDbType.Bigint, token);
await writer.WriteAsync(e.Key.ToArray(), NpgsqlDbType.Bytea, token);
await writer.WriteNullableAsync(e.Value?.ToArray(), NpgsqlDbType.Bytea, token);
await writer.WriteAsync(e.Value?.ToArray(), NpgsqlDbType.Bytea, token);
await writer.WriteAsync(e.IsDeleted, NpgsqlDbType.Boolean, token);
await writer.WriteAsync(e.IsLocked, NpgsqlDbType.Boolean, token);
}
Expand Down
Loading

0 comments on commit ec9674d

Please sign in to comment.