Skip to content

Commit 809b085

Browse files
committed
chore: optimize entity loading by reducing one entity
1 parent 90c8b71 commit 809b085

File tree

2 files changed

+6
-8
lines changed

2 files changed

+6
-8
lines changed

subgraph/core-university/src/SortitionModule.ts

+3-4
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,24 @@
11
import { SortitionModule, StakeLocked, StakeSet as StakeSetEvent } from "../generated/SortitionModule/SortitionModule";
22
import { StakeSet as StakeSetEntity } from "../generated/schema";
33

4-
import { ensureJurorTokensPerCourt, updateJurorDelayedStake, updateJurorStake } from "./entities/JurorTokensPerCourt";
4+
import { updateJurorDelayedStake, updateJurorStake } from "./entities/JurorTokensPerCourt";
55
import { ensureUser } from "./entities/User";
66
import { ZERO } from "./utils";
77

88
export function handleStakeSet(event: StakeSetEvent): void {
99
const jurorAddress = event.params._address.toHexString();
10-
const juror = ensureUser(jurorAddress);
1110
const courtID = event.params._courtID.toString();
1211

1312
updateJurorStake(jurorAddress, courtID.toString(), SortitionModule.bind(event.address), event.block.timestamp);
1413
//stake is updated instantly so no delayed amount, set delay amount to zero
1514
updateJurorDelayedStake(jurorAddress, courtID, ZERO);
1615

1716
const stakeSet = new StakeSetEntity(event.transaction.hash.toHex() + "-" + event.logIndex.toString());
18-
const jurorTokensPerCourt = ensureJurorTokensPerCourt(jurorAddress, "1");
17+
const juror = ensureUser(jurorAddress);
1918
stakeSet.juror = juror.id;
2019
stakeSet.courtID = event.params._courtID;
2120
stakeSet.stake = event.params._amount;
22-
stakeSet.newTotalStake = jurorTokensPerCourt.effectiveStake;
21+
stakeSet.newTotalStake = juror.totalStake;
2322
stakeSet.blocknumber = event.block.number;
2423
stakeSet.timestamp = event.block.timestamp;
2524
stakeSet.logIndex = event.logIndex;

subgraph/core/src/SortitionModule.ts

+3-4
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import {
88
} from "../generated/SortitionModule/SortitionModule";
99
import { StakeSet as StakeSetEntity } from "../generated/schema";
1010

11-
import { ensureJurorTokensPerCourt, updateJurorDelayedStake, updateJurorStake } from "./entities/JurorTokensPerCourt";
11+
import { updateJurorDelayedStake, updateJurorStake } from "./entities/JurorTokensPerCourt";
1212
import { ensureUser } from "./entities/User";
1313
import { ZERO } from "./utils";
1414

@@ -26,19 +26,18 @@ export function handleStakeDelayedNotTransferred(event: StakeDelayedNotTransferr
2626

2727
export function handleStakeSet(event: StakeSetEvent): void {
2828
const jurorAddress = event.params._address.toHexString();
29-
const juror = ensureUser(jurorAddress);
3029
const courtID = event.params._courtID.toString();
3130

3231
updateJurorStake(jurorAddress, courtID.toString(), SortitionModule.bind(event.address), event.block.timestamp);
3332
//stake is updated instantly so no delayed amount, set delay amount to zero
3433
updateJurorDelayedStake(jurorAddress, courtID, ZERO);
3534

3635
const stakeSet = new StakeSetEntity(event.transaction.hash.toHex() + "-" + event.logIndex.toString());
37-
const jurorTokensPerCourt = ensureJurorTokensPerCourt(jurorAddress, "1");
36+
const juror = ensureUser(jurorAddress);
3837
stakeSet.juror = juror.id;
3938
stakeSet.courtID = event.params._courtID;
4039
stakeSet.stake = event.params._amount;
41-
stakeSet.newTotalStake = jurorTokensPerCourt.effectiveStake;
40+
stakeSet.newTotalStake = juror.totalStake;
4241
stakeSet.blocknumber = event.block.number;
4342
stakeSet.timestamp = event.block.timestamp;
4443
stakeSet.logIndex = event.logIndex;

0 commit comments

Comments
 (0)