Skip to content

[Bug]: Importing containers with DHCP addresses fails with duplicate #292

@runleveldev

Description

@runleveldev

Current URL

/sites/2/nodes/import

Username

rgingras

Version

v2024.04.24-1 (4969f9e)

Steps to reproduce

  1. Import nodes
  2. See validation error
Apr 29 14:44:31 manager node[3509028]: Error
Apr 29 14:44:31 manager node[3509028]:     at Query.run (/opt/opensource-server/create-a-container/node_modules/sequelize/lib/dialects/postgres/query.js:50:25)
Apr 29 14:44:31 manager node[3509028]:     at /opt/opensource-server/create-a-container/node_modules/sequelize/lib/sequelize.js:315:28
Apr 29 14:44:31 manager node[3509028]:     at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
Apr 29 14:44:31 manager node[3509028]:     at async PostgresQueryInterface.bulkInsert (/opt/opensource-server/create-a-container/node_modules/sequelize/lib/dialects/abstract/query-interface.js:346:21)
Apr 29 14:44:31 manager node[3509028]:     at async recursiveBulkCreate (/opt/opensource-server/create-a-container/node_modules/sequelize/lib/model.js:1697:25)
Apr 29 14:44:31 manager node[3509028]:     at async Container.bulkCreate (/opt/opensource-server/create-a-container/node_modules/sequelize/lib/model.js:1786:12)
Apr 29 14:44:31 manager node[3509028]:     at async /opt/opensource-server/create-a-container/routers/nodes.js:241:5 {
Apr 29 14:44:31 manager node[3509028]:   name: 'SequelizeUniqueConstraintError',
Apr 29 14:44:31 manager node[3509028]:   errors: [
Apr 29 14:44:31 manager node[3509028]:     ValidationErrorItem {
Apr 29 14:44:31 manager node[3509028]:       message: 'siteId must be unique',
Apr 29 14:44:31 manager node[3509028]:       type: 'unique violation',
Apr 29 14:44:31 manager node[3509028]:       path: 'siteId',
Apr 29 14:44:31 manager node[3509028]:       value: '2',
Apr 29 14:44:31 manager node[3509028]:       origin: 'DB',
Apr 29 14:44:31 manager node[3509028]:       instance: null,
Apr 29 14:44:31 manager node[3509028]:       validatorKey: 'not_unique',
Apr 29 14:44:31 manager node[3509028]:       validatorName: null,
Apr 29 14:44:31 manager node[3509028]:       validatorArgs: []
Apr 29 14:44:31 manager node[3509028]:     },
Apr 29 14:44:31 manager node[3509028]:     ValidationErrorItem {
Apr 29 14:44:31 manager node[3509028]:       message: 'ipv4Address must be unique',
Apr 29 14:44:31 manager node[3509028]:       type: 'unique violation',
Apr 29 14:44:31 manager node[3509028]:       path: 'ipv4Address',
Apr 29 14:44:31 manager node[3509028]:       value: 'dhcp',
Apr 29 14:44:31 manager node[3509028]:       origin: 'DB',
Apr 29 14:44:31 manager node[3509028]:       instance: null,
Apr 29 14:44:31 manager node[3509028]:       validatorKey: 'not_unique',
Apr 29 14:44:31 manager node[3509028]:       validatorName: null,
Apr 29 14:44:31 manager node[3509028]:       validatorArgs: []
Apr 29 14:44:31 manager node[3509028]:     }
Apr 29 14:44:31 manager node[3509028]:   ],
Apr 29 14:44:31 manager node[3509028]:   parent: error: duplicate key value violates unique constraint "containers_site_ipv4_unique"
Apr 29 14:44:31 manager node[3509028]:       at Parser.parseErrorMessage (/opt/opensource-server/create-a-container/node_modules/pg-protocol/dist/parser.js:285:98)
Apr 29 14:44:31 manager node[3509028]:       at Parser.handlePacket (/opt/opensource-server/create-a-container/node_modules/pg-protocol/dist/parser.js:122:29)
Apr 29 14:44:31 manager node[3509028]:       at Parser.parse (/opt/opensource-server/create-a-container/node_modules/pg-protocol/dist/parser.js:35:38)
Apr 29 14:44:31 manager node[3509028]:       at Socket.<anonymous> (/opt/opensource-server/create-a-container/node_modules/pg-protocol/dist/index.js:11:42)
Apr 29 14:44:31 manager node[3509028]:       at Socket.emit (node:events:524:28)
Apr 29 14:44:31 manager node[3509028]:       at addChunk (node:internal/streams/readable:561:12)
Apr 29 14:44:31 manager node[3509028]:       at readableAddChunkPushByteMode (node:internal/streams/readable:512:3)
Apr 29 14:44:31 manager node[3509028]:       at Readable.push (node:internal/streams/readable:392:5)
Apr 29 14:44:31 manager node[3509028]:       at TCP.onStreamRead (node:internal/stream_base_commons:191:23) {
Apr 29 14:44:31 manager node[3509028]:     length: 246,
Apr 29 14:44:31 manager node[3509028]:     severity: 'ERROR',
Apr 29 14:44:31 manager node[3509028]:     code: '23505',
Apr 29 14:44:31 manager node[3509028]:     detail: 'Key ("siteId", "ipv4Address")=(2, dhcp) already exists.',
Apr 29 14:44:31 manager node[3509028]:     hint: undefined,
Apr 29 14:44:31 manager node[3509028]:     position: undefined,
Apr 29 14:44:31 manager node[3509028]:     internalPosition: undefined,
Apr 29 14:44:31 manager node[3509028]:     internalQuery: undefined,
Apr 29 14:44:31 manager node[3509028]:     where: undefined,
Apr 29 14:44:31 manager node[3509028]:     schema: 'public',
Apr 29 14:44:31 manager node[3509028]:     table: 'Containers',
Apr 29 14:44:31 manager node[3509028]:     column: undefined,
Apr 29 14:44:31 manager node[3509028]:     dataType: undefined,
Apr 29 14:44:31 manager node[3509028]:     constraint: 'containers_site_ipv4_unique',
Apr 29 14:44:31 manager node[3509028]:     file: 'nbtinsert.c',
Apr 29 14:44:31 manager node[3509028]:     line: '666',
Apr 29 14:44:31 manager node[3509028]:     routine: '_bt_check_unique',

Expected behavior

Containers import with their IP addresses

Actual behavior

Import fails

Additional context

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions