Skip to content

Commit

Permalink
Merge pull request #779 from planetarium/release/200
Browse files Browse the repository at this point in the history
Backmerge
  • Loading branch information
U-lis authored Oct 2, 2024
2 parents cbb69ea + 5abd975 commit 0c75043
Show file tree
Hide file tree
Showing 46 changed files with 19,005 additions and 343 deletions.
6 changes: 3 additions & 3 deletions .github/workflows/pull_request.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,13 +8,13 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
with:
submodules: recursive
- name: Setup .NET Core
uses: actions/setup-dotnet@v1
uses: actions/setup-dotnet@v4
with:
dotnet-version: 6.0.*
dotnet-version: 8.0.*
- name: Install dependencies
run: dotnet restore
- uses: shogo82148/actions-setup-mysql@v1
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/push_docker_image.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: checkout
uses: actions/checkout@v2
uses: actions/checkout@v4
with:
submodules: recursive
- name: login
Expand Down
4 changes: 2 additions & 2 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM mcr.microsoft.com/dotnet/sdk:6.0 AS build-env
FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build-env
WORKDIR /app
ARG COMMIT

Expand Down Expand Up @@ -35,7 +35,7 @@ RUN dotnet publish NineChronicles.Headless/NineChronicles.Headless.Executable/Ni
--version-suffix $COMMIT

# Build runtime image
FROM mcr.microsoft.com/dotnet/sdk:6.0
FROM mcr.microsoft.com/dotnet/sdk:8.0
WORKDIR /app
RUN dotnet tool install --global dotnet-ef --version 7.0.14
ENV PATH="${PATH}:/${HOME}/.dotnet/tools"
Expand Down
4 changes: 2 additions & 2 deletions Dockerfile.amd64
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM mcr.microsoft.com/dotnet/sdk:6.0 AS build-env
FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build-env
WORKDIR /app
ARG COMMIT

Expand Down Expand Up @@ -35,7 +35,7 @@ RUN dotnet publish NineChronicles.Headless/NineChronicles.Headless.Executable/Ni
--version-suffix $COMMIT

# Build runtime image
FROM --platform=linux/amd64 mcr.microsoft.com/dotnet/sdk:6.0-bullseye-slim
FROM --platform=linux/amd64 mcr.microsoft.com/dotnet/sdk:8.0-bookworm-slim
WORKDIR /app
RUN dotnet tool install --global dotnet-ef --version 7.0.14
ENV PATH="${PATH}:/${HOME}/.dotnet/tools"
Expand Down
4 changes: 2 additions & 2 deletions Dockerfile.arm64v8
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM mcr.microsoft.com/dotnet/sdk:6.0 AS build-env
FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build-env
WORKDIR /app
ARG COMMIT

Expand Down Expand Up @@ -35,7 +35,7 @@ RUN dotnet publish NineChronicles.Headless/NineChronicles.Headless.Executable/Ni
--version-suffix $COMMIT

# Build runtime image
FROM --platform=linux/arm64 mcr.microsoft.com/dotnet/sdk:6.0-bullseye-slim-arm64v8
FROM --platform=linux/arm64 mcr.microsoft.com/dotnet/sdk:8.0-bookworm-slim-arm64v8
WORKDIR /app
RUN dotnet tool install --global dotnet-ef --version 7.0.14
ENV PATH="${PATH}:/${HOME}/.dotnet/tools"
Expand Down
69 changes: 26 additions & 43 deletions NineChronicles.DataProvider.Executable/Commands/MySqlMigration.cs
Original file line number Diff line number Diff line change
@@ -1,7 +1,11 @@
using Nekoyume.Action.AdventureBoss;
using Nekoyume.Model.EnumType;
using NineChronicles.DataProvider.DataRendering.AdventureBoss;
using NineChronicles.DataProvider.DataRendering.Crafting;
using NineChronicles.DataProvider.DataRendering.Grinding;
using NineChronicles.DataProvider.Store.Models.AdventureBoss;
using NineChronicles.DataProvider.Store.Models.Crafting;
using NineChronicles.DataProvider.Store.Models.Grinding;

namespace NineChronicles.DataProvider.Executable.Commands
{
Expand Down Expand Up @@ -41,7 +45,6 @@ namespace NineChronicles.DataProvider.Executable.Commands
using NineChronicles.DataProvider.DataRendering;
using NineChronicles.DataProvider.Store;
using NineChronicles.DataProvider.Store.Models;
using Serilog;
using static Lib9c.SerializeKeys;

public class MySqlMigration
Expand Down Expand Up @@ -363,7 +366,6 @@ public async Task Migration(
_mySqlStore.StoreStakingList(_stakeList);
_mySqlStore.StoreClaimStakeRewardList(_claimStakeList);
_mySqlStore.StoreMigrateMonsterCollectionList(_migrateMonsterCollectionList);
_mySqlStore.StoreGrindList(_grindList);
_mySqlStore.StoreItemEnhancementFailList(_itemEnhancementFailList);
_mySqlStore.StoreUnlockEquipmentRecipeList(_unlockEquipmentRecipeList);
_mySqlStore.StoreUnlockWorldList(_unlockWorldList);
Expand All @@ -381,7 +383,6 @@ public async Task Migration(
_mySqlStore.StoreRuneEnhancementList(_runeEnhancementList);
_mySqlStore.StoreRunesAcquiredList(_runesAcquiredList);
_mySqlStore.StoreUnlockRuneSlotList(_unlockRuneSlotList);
_mySqlStore.StoreRapidCombinationList(_rapidCombinationList);
_mySqlStore.StorePetEnhancementList(_petEnhancementList);
_mySqlStore.StoreTransferAssetList(_transferAssetList);
_mySqlStore.StoreRequestPledgeList(_requestPledgeList);
Expand Down Expand Up @@ -420,6 +421,18 @@ await Task.Run(async () =>
Console.WriteLine($"[Adventure Boss] {_adventureBossClaimRewardList.Count} claim");
await _mySqlStore.StoreAdventureBossClaimRewardList(_adventureBossClaimRewardList);
});

await Task.Run(async () =>
{
Console.WriteLine($"[RapidCombination] {_rapidCombinationList.Count}");
await _mySqlStore.StoreRapidCombinationList(_rapidCombinationList);
});

await Task.Run(async () =>
{
Console.WriteLine($"[Grinding] {_grindList.Count} grinding");
await _mySqlStore.StoreGrindList(_grindList);
});
}
catch (Exception e)
{
Expand Down Expand Up @@ -598,9 +611,8 @@ private void ProcessTasks(Task<List<ICommittedActionEvaluation>>[] taskArray, IB
(end - start).Milliseconds);
start = DateTimeOffset.UtcNow;

var slotState = outputState.GetCombinationSlotState(
combinationEquipment.avatarAddress,
combinationEquipment.slotIndex);
var slotState = outputState.GetAllCombinationSlotState(combinationEquipment.avatarAddress)
.GetSlot(combinationEquipment.slotIndex);

int optionCount = 0;
bool skillContains = false;
Expand Down Expand Up @@ -672,9 +684,8 @@ private void ProcessTasks(Task<List<ICommittedActionEvaluation>>[] taskArray, IB
Console.WriteLine("Writing ItemEnhancement action in block #{0}. Time Taken: {1} ms.", ae.InputContext.BlockIndex, (end - start).Milliseconds);
start = DateTimeOffset.UtcNow;

var slotState = outputState.GetCombinationSlotState(
itemEnhancement.avatarAddress,
itemEnhancement.slotIndex);
var slotState = outputState.GetAllCombinationSlotState(itemEnhancement.avatarAddress)
.GetSlot(itemEnhancement.slotIndex);

if (slotState?.Result.itemUsable.ItemType is ItemType.Equipment)
{
Expand Down Expand Up @@ -804,14 +815,6 @@ private void ProcessTasks(Task<List<ICommittedActionEvaluation>>[] taskArray, IB
Console.WriteLine("Writing Stake action in block #{0}. Time Taken: {1} ms.", ae.InputContext.BlockIndex, (end - start).Milliseconds);
}

if (action is Stake0 stake0)
{
var start = DateTimeOffset.UtcNow;
_stakeList.Add(StakeData.GetStakeInfo(inputState, outputState, ae.InputContext.Signer, ae.InputContext.BlockIndex, _blockTimeOffset, Guid.Empty));
var end = DateTimeOffset.UtcNow;
Console.WriteLine("Writing Stake action in block #{0}. Time Taken: {1} ms.", ae.InputContext.BlockIndex, (end - start).Milliseconds);
}

if (action is MigrateMonsterCollection migrateMonsterCollection)
{
var start = DateTimeOffset.UtcNow;
Expand All @@ -824,7 +827,7 @@ private void ProcessTasks(Task<List<ICommittedActionEvaluation>>[] taskArray, IB
{
var start = DateTimeOffset.UtcNow;

var grindList = GrindingData.GetGrindingInfo(inputState, outputState, ae.InputContext.Signer, grinding.AvatarAddress, grinding.EquipmentIds, grinding.Id, ae.InputContext.BlockIndex, _blockTimeOffset);
var grindList = GrindingData.GetGrindingInfo(inputState, ae.InputContext.Signer, grinding.AvatarAddress, grinding.EquipmentIds, grinding.Id, ae.InputContext.BlockIndex, _blockTimeOffset);

foreach (var grind in grindList)
{
Expand Down Expand Up @@ -1058,15 +1061,16 @@ private void ProcessTasks(Task<List<ICommittedActionEvaluation>>[] taskArray, IB
if (action is RapidCombination rapidCombination)
{
var start = DateTimeOffset.UtcNow;
_rapidCombinationList.Add(RapidCombinationData.GetRapidCombinationInfo(
_rapidCombinationList = _rapidCombinationList.Concat(
RapidCombinationData.GetRapidCombinationInfo(
inputState,
outputState,
ae.InputContext.Signer,
rapidCombination.avatarAddress,
rapidCombination.slotIndex,
rapidCombination.slotIndexList,
rapidCombination.Id,
ae.InputContext.BlockIndex,
_blockTimeOffset));
_blockTimeOffset)
).ToList();
var end = DateTimeOffset.UtcNow;
Console.WriteLine("Writing RapidCombination action in block #{0}. Time Taken: {1} ms.", ae.InputContext.BlockIndex, (end - start).Milliseconds);
}
Expand Down Expand Up @@ -1163,27 +1167,6 @@ private void ProcessTasks(Task<List<ICommittedActionEvaluation>>[] taskArray, IB
Console.WriteLine("Stored TransferAsset action in block #{0}. Time Taken: {1} ms.", ae.InputContext.BlockIndex, (end - start).Milliseconds);
}

if (action is TransferAsset0 transferAsset0)
{
var start = DateTimeOffset.UtcNow;
var actionString = ae.InputContext.TxId.ToString();
var actionByteArray = Encoding.UTF8.GetBytes(actionString!).Take(16).ToArray();
var id = new Guid(actionByteArray);
_transferAssetList.Add(TransferAssetData.GetTransferAssetInfo(
id,
(TxId)ae.InputContext.TxId!,
ae.InputContext.BlockIndex,
_blockHash!.ToString(),
transferAsset0.Sender,
transferAsset0.Recipient,
transferAsset0.Amount.Currency.Ticker,
transferAsset0.Amount,
_blockTimeOffset));

var end = DateTimeOffset.UtcNow;
Console.WriteLine("Stored TransferAsset action in block #{0}. Time Taken: {1} ms.", ae.InputContext.BlockIndex, (end - start).Milliseconds);
}

if (action is RequestPledge requestPledge)
{
var start = DateTimeOffset.UtcNow;
Expand Down
Loading

0 comments on commit 0c75043

Please sign in to comment.