@poka Je suis en train de tenter à nouveau de setup Squid sur mon serveur ARM64; je viens de récupérer le docker-compose.yaml à la racine du repo et de supprimer tous les volumes que j’avais avant.
L’erreur au démarrage:
docker compose up -d
[+] Running 5/5
✔ Network duniter-gtest-squid-v2_default Created 0.0s
✔ Volume "duniter-gtest-squid-v2_postgres-data" Created 0.0s
✔ Container duniter-gtest-squid-db-v2 Healthy 5.9s
✘ Container duniter-gtest-squid-processor-v2 Error 7.2s
✔ Container duniter-gtest-squid-server-v2 Created 0.0s
dependency failed to start: container duniter-gtest-squid-processor-v2 is unhealthy
En récupérant les logs du container duniter-gtest-squid-processor-v2, je vois cette erreur à la fin (pour une des migrations DB on dirait):
error: error: type identity does not exist
Migration "udHistoryFunction1762714409038" failed, error: type identity does not exist
query: ROLLBACK
QueryFailedError: type identity does not exist
at PostgresQueryRunner.query (/squid/node_modules/.pnpm/typeorm@0.3.26_ioredis@5.7.0_pg@8.16.3_reflect-metadata@0.2.2/node_modules/typeorm/driver/postgres/PostgresQueryRunner.js:216:19)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async udHistoryFunction1762714409038.up (/squid/db/migrations/1762714409038-udHistoryFunction.js:7:5)
at async MigrationExecutor.executePendingMigrations (/squid/node_modules/.pnpm/typeorm@0.3.26_ioredis@5.7.0_pg@8.16.3_reflect-metadata@0.2.2/node_modules/typeorm/migration/MigrationExecutor.js:225:17)
at async DataSource.runMigrations (/squid/node_modules/.pnpm/typeorm@0.3.26_ioredis@5.7.0_pg@8.16.3_reflect-metadata@0.2.2/node_modules/typeorm/data-source/DataSource.js:266:35)
at async /squid/node_modules/.pnpm/@subsquid+typeorm-migration@1.3.0_typeorm@0.3.26_ioredis@5.7.0_pg@8.16.3_reflect-metadata@0.2.2_/node_modules/@subsquid/typeorm-migration/lib/apply.js:46:9 {
query: '-- Drop existing functions/types if they exist\n' +
'DROP FUNCTION IF EXISTS identity_ud_history_computed(identity);\n' +
'DROP FUNCTION IF EXISTS identity_ud_history_computed(identity, ud_history_order_by);\n' +
'DROP TYPE IF EXISTS ud_history_order_by CASCADE;\n' +
'\n' +
'-- Create enum for UD history ordering options\n' +
'CREATE TYPE ud_history_order_by AS ENUM (\n' +
" 'BLOCK_NUMBER_ASC',\n" +
" 'BLOCK_NUMBER_DESC', \n" +
" 'TIMESTAMP_ASC',\n" +
" 'TIMESTAMP_DESC',\n" +
" 'AMOUNT_ASC',\n" +
" 'AMOUNT_DESC'\n" +
');\n' +
'\n' +
'-- UD History function for identity (recreate for Graphile) with orderBy support\n' +
'CREATE OR REPLACE FUNCTION identity_ud_history_computed(\n' +
' identity_row identity,\n' +
" order_by ud_history_order_by DEFAULT 'BLOCK_NUMBER_DESC'\n" +
')\n' +
'RETURNS SETOF ud_history\n' +
'LANGUAGE plpgsql STABLE\n' +
'AS $$\n' +
'DECLARE\n' +
' order_clause text;\n' +
'BEGIN\n' +
' -- Determine order clause based on enum\n' +
' CASE order_by\n' +
" WHEN 'BLOCK_NUMBER_ASC' THEN\n" +
" order_clause := 'ORDER BY ud.block_number ASC';\n" +
" WHEN 'BLOCK_NUMBER_DESC' THEN\n" +
" order_clause := 'ORDER BY ud.block_number DESC';\n" +
" WHEN 'TIMESTAMP_ASC' THEN\n" +
" order_clause := 'ORDER BY b.timestamp ASC';\n" +
" WHEN 'TIMESTAMP_DESC' THEN\n" +
" order_clause := 'ORDER BY b.timestamp DESC';\n" +
" WHEN 'AMOUNT_ASC' THEN\n" +
" order_clause := 'ORDER BY ud.amount ASC, ud.block_number DESC';\n" +
" WHEN 'AMOUNT_DESC' THEN\n" +
" order_clause := 'ORDER BY ud.amount DESC, ud.block_number DESC';\n" +
' ELSE\n' +
" order_clause := 'ORDER BY ud.block_number DESC';\n" +
' END CASE;\n' +
'\n' +
" RETURN QUERY EXECUTE format('\n" +
' SELECT \n' +
" CONCAT(''ud-'', $1, ''-'', ud.block_number, ''-'', COALESCE(ud.event_id, ''''))::character varying AS id,\n" +
' ud.amount,\n' +
' ud.block_number,\n' +
' b.timestamp,\n' +
' $2 AS identity_id\n' +
' FROM universal_dividend ud\n' +
' JOIN block b ON ud.block_number = b.height\n' +
' WHERE EXISTS (\n' +
' SELECT 1\n' +
' FROM (\n' +
' SELECT\n' +
' me1.block_number as creation_block,\n' +
' COALESCE(\n' +
' (\n' +
' SELECT me2.block_number\n' +
' FROM membership_event me2\n' +
' WHERE me2.identity_id = me1.identity_id\n' +
" AND me2.event_type = ''Removal''\n" +
' AND me2.block_number > me1.block_number\n' +
' ORDER BY me2.block_number\n' +
' LIMIT 1\n' +
' ),\n' +
' (SELECT MAX(block_number) FROM universal_dividend)\n' +
' ) as removal_block\n' +
' FROM membership_event me1\n' +
' WHERE me1.identity_id = $2\n' +
" AND me1.event_type = ''Creation''\n" +
' ) as membership_periods\n' +
' WHERE ud.block_number >= membership_periods.creation_block\n' +
' AND ud.block_number <= membership_periods.removal_block\n' +
' )\n' +
" %s', order_clause)\n" +
' USING identity_row.name, identity_row.id;\n' +
'END;\n' +
'$$;\n' +
'\n' +
'COMMENT ON FUNCTION identity_ud_history_computed(identity, ud_history_order_by) IS \n' +
" E'@fieldName udHistory\\nGet UD history for an identity based on membership periods';",
parameters: undefined,
driverError: error: type identity does not exist
at /squid/node_modules/.pnpm/pg@8.16.3/node_modules/pg/lib/client.js:545:17
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async PostgresQueryRunner.query (/squid/node_modules/.pnpm/typeorm@0.3.26_ioredis@5.7.0_pg@8.16.3_reflect-metadata@0.2.2/node_modules/typeorm/driver/postgres/PostgresQueryRunner.js:181:25)
at async udHistoryFunction1762714409038.up (/squid/db/migrations/1762714409038-udHistoryFunction.js:7:5)
at async MigrationExecutor.executePendingMigrations (/squid/node_modules/.pnpm/typeorm@0.3.26_ioredis@5.7.0_pg@8.16.3_reflect-metadata@0.2.2/node_modules/typeorm/migration/MigrationExecutor.js:225:17)
at async DataSource.runMigrations (/squid/node_modules/.pnpm/typeorm@0.3.26_ioredis@5.7.0_pg@8.16.3_reflect-metadata@0.2.2/node_modules/typeorm/data-source/DataSource.js:266:35)
at async /squid/node_modules/.pnpm/@subsquid+typeorm-migration@1.3.0_typeorm@0.3.26_ioredis@5.7.0_pg@8.16.3_reflect-metadata@0.2.2_/node_modules/@subsquid/typeorm-migration/lib/apply.js:46:9 {
length: 112,
severity: 'ERROR',
code: '42704',
detail: undefined,
hint: undefined,
position: undefined,
internalPosition: undefined,
internalQuery: undefined,
where: undefined,
schema: undefined,
table: undefined,
column: undefined,
dataType: undefined,
constraint: undefined,
file: 'functioncmds.c',
line: '270',
routine: 'interpret_function_parameter_list'
},
length: 112,
severity: 'ERROR',
code: '42704',
detail: undefined,
hint: undefined,
position: undefined,
internalPosition: undefined,
internalQuery: undefined,
where: undefined,
schema: undefined,
table: undefined,
column: undefined,
dataType: undefined,
constraint: undefined,
file: 'functioncmds.c',
line: '270',
routine: 'interpret_function_parameter_list'
}
Edit: Je viens de tenter sur mon pc en local (amd64) j’ai le même soucis.