Skip to content

Commit c4eec5d

Browse files
authored
fix: upsert nft and ft metadata (#1193)
1 parent 7691109 commit c4eec5d

File tree

4 files changed

+9
-1
lines changed

4 files changed

+9
-1
lines changed

src/datastore/pg-write-store.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1363,6 +1363,9 @@ export class PgWriteStore extends PgStore {
13631363
};
13641364
const result = await sql`
13651365
INSERT INTO ft_metadata ${sql(values)}
1366+
ON CONFLICT (contract_id)
1367+
DO
1368+
UPDATE SET ${sql(values)}
13661369
`;
13671370
await sql`
13681371
UPDATE token_metadata_queue
@@ -1392,6 +1395,9 @@ export class PgWriteStore extends PgStore {
13921395
};
13931396
const result = await sql`
13941397
INSERT INTO nft_metadata ${sql(values)}
1398+
ON CONFLICT (contract_id)
1399+
DO
1400+
UPDATE SET ${sql(values)}
13951401
`;
13961402
await sql`
13971403
UPDATE token_metadata_queue

src/migrations/1621511823381_nft_metadata.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ export async function up(pgm: MigrationBuilder): Promise<void> {
3232
contract_id: {
3333
type: 'string',
3434
notNull: true,
35+
unique: true,
3536
},
3637
tx_id: {
3738
type: 'bytea',

src/migrations/1621511832113_ft_metadata.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ export async function up(pgm: MigrationBuilder): Promise<void> {
3232
contract_id: {
3333
type: 'string',
3434
notNull: true,
35+
unique: true,
3536
},
3637
symbol: {
3738
type: 'string',

src/tests-tokens/tokens-metadata-tests.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -323,7 +323,7 @@ describe('api tests', () => {
323323
decimals: 5,
324324
image_uri: 'ft-metadata image uri example',
325325
image_canonical_uri: 'ft-metadata image canonical uri example',
326-
contract_id: 'ABCDEFGHIJ.ft-metadata',
326+
contract_id: 'ABCDEFGHIJ.ft-metadata' + i,
327327
tx_id: '0x123456',
328328
sender_address: 'ABCDEFGHIJ',
329329
};

0 commit comments

Comments
 (0)