Skip to content

Commit 26f8e62

Browse files
authored
feat: ingest messages from redis (#65)
* feat: ingest messages from redis * chore: rename chainhook related files * feat: ingest messages from redis * chore: move sql read/write type queries into correct classes * chore: disable postgres listen/notify usage for socket-io events * feat: use worker threads for CPU intensive message parsing (#66) * feat: use worker threads for CPU intensive message parsing * chore: misc fixes * fix: insert reward_sets for pre-naka blocks * chore: bump nodejs to v22 * ci: add `redis-stream` pre-release deployment
1 parent 6c5505d commit 26f8e62

31 files changed

+1884
-1114
lines changed

.github/workflows/ci.yml

+1
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ on:
66
- main
77
- develop
88
- beta
9+
- redis-stream
910
tags-ignore:
1011
- '**'
1112
paths-ignore:

.nvmrc

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
v20
1+
v22

.releaserc

+5
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,11 @@
55
"name": "beta",
66
"channel": "beta",
77
"prerelease": true
8+
},
9+
{
10+
"name": "redis-stream",
11+
"channel": "redis-stream",
12+
"prerelease": true
813
}
914
],
1015
"plugins": [

.vscode/launch.json

+2-5
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,6 @@
1717
"env": {
1818
"NODE_ENV": "development",
1919
"TS_NODE_SKIP_IGNORE": "true",
20-
"CHAINHOOK_NODE_AUTH_TOKEN": "test",
21-
"CHAINHOOK_AUTO_PREDICATE_REGISTRATION": "true",
22-
"CHAINHOOK_PREDICATE_PATH": "tmp",
23-
"EXTERNAL_HOSTNAME": "host.docker.internal:3199",
24-
"EVENT_PORT": "3199",
2520
"NETWORK": "testnet",
2621
"PGDATABASE": "postgres",
2722
"PGHOST": "localhost",
@@ -30,10 +25,12 @@
3025
"PGPASSWORD": "postgres",
3126
"STACKS_NODE_RPC_HOST": "127.0.0.1",
3227
"STACKS_NODE_RPC_PORT": "20443",
28+
"REDIS_URL": "redis://127.0.0.1:8379",
3329
},
3430
"killBehavior": "polite",
3531
"preLaunchTask": "npm: testenv:run",
3632
"postDebugTask": "npm: testenv:stop",
33+
"nodeVersionHint": 22
3734
},
3835
{
3936
"type": "node",

Dockerfile

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM node:20-alpine
1+
FROM node:22-alpine
22

33
WORKDIR /app
44
COPY . .

docker/docker-compose.dev.redis.yml

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
services:
2+
postgres:
3+
image: "redis:7"
4+
ports:
5+
- "8379:6379"
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
import { MigrationBuilder, ColumnDefinitions } from 'node-pg-migrate';
2+
3+
export const shorthands: ColumnDefinitions | undefined = undefined;
4+
5+
export function up(pgm: MigrationBuilder): void {
6+
pgm.addColumns('chain_tip', {
7+
last_redis_msg_id: {
8+
type: 'text',
9+
notNull: true,
10+
default: '0',
11+
},
12+
});
13+
}

0 commit comments

Comments
 (0)