Skip to content

Commit 020d861

Browse files
committed
fix: fixed bug in subgraph if permission is set on a non-existing stream. It will now ignore the eth event
1 parent 63121d7 commit 020d861

File tree

2 files changed

+16
-14
lines changed

2 files changed

+16
-14
lines changed

packages/streamregistry-thegraph-subgraph/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ To do so, run "docker build . -t streamr/graph-deploy-streamregistry-subgraph:de
99
with "docker push streamr/graph-deploy-streamregistry-subgraph:dev"
1010

1111
## Prod deployment to the centralised theGraph
12-
First build it then set token, then deploy. The token can be found on the theGraph dashboard https://thegraph.com/hosted-service/dashboard?account=streamr-dev
12+
First rename subgraph_prod.yaml to rename subgraph.yaml then follow the steps below (build it then set token, then deploy). The token can be found on the theGraph dashboard https://thegraph.com/hosted-service/dashboard?account=streamr-dev
1313
Log in with your github user, then set the user to the streamr-dev user in the dashboard, not your github user!
1414
```
1515
cd packages/streamregistry-thegraph-subgraph

packages/streamregistry-thegraph-subgraph/src/streamRegistry.ts

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -36,17 +36,19 @@ export function handleStreamUpdate(event: StreamUpdated): void {
3636
export function handlePermissionUpdate(event: PermissionUpdated): void {
3737
log.info('handlePermissionUpdate: user={} streamId={} blockNumber={}',
3838
[event.params.user.toHexString(), event.params.streamId, event.block.number.toString()])
39-
let permissionId = event.params.streamId + '-' + event.params.user.toHex()
40-
let permission = new Permission(permissionId)
41-
permission.userAddress = event.params.user
42-
permission.stream = event.params.streamId
43-
permission.canEdit = event.params.canEdit
44-
permission.canDelete = event.params.canDelete
45-
permission.publishExpiration = event.params.publishExpiration
46-
permission.subscribeExpiration = event.params.subscribeExpiration
47-
permission.canGrant = event.params.canGrant
48-
permission.save()
49-
let stream = Stream.load(event.params.streamId)!
50-
stream.updatedAt = event.block.timestamp
51-
stream.save()
39+
let stream = Stream.load(event.params.streamId)
40+
if (stream !== null) {
41+
let permissionId = event.params.streamId + '-' + event.params.user.toHex()
42+
let permission = new Permission(permissionId)
43+
permission.userAddress = event.params.user
44+
permission.stream = event.params.streamId
45+
permission.canEdit = event.params.canEdit
46+
permission.canDelete = event.params.canDelete
47+
permission.publishExpiration = event.params.publishExpiration
48+
permission.subscribeExpiration = event.params.subscribeExpiration
49+
permission.canGrant = event.params.canGrant
50+
permission.save()
51+
stream.updatedAt = event.block.timestamp
52+
stream.save()
53+
}
5254
}

0 commit comments

Comments
 (0)