Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • C chouette-core
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 36
    • Merge requests 36
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Infrastructure Registry
  • Analytics
    • Analytics
    • CI/CD
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Administrator
  • chouette-core
  • Merge requests
  • !121

Merged
Created Nov 17, 2017 by Administrator@rootMaintainer

NetexImport: Don't destroy non-existent Referentials

  • Overview 0
  • Commits 1
  • Changes 2

Created by: teddywing

Luc discovered this error in my method that destroys associated non-ready Referentials:

> WorkbenchImport.destroy_all
  WorkbenchImport Load (3.0ms)  SELECT "public"."imports".* FROM "public"."imports" WHERE "public"."imports"."type" IN ('WorkbenchImport')
   (1.5ms)  BEGIN
  ImportMessage Load (2.7ms)  SELECT "public"."import_messages".* FROM "public"."import_messages" WHERE "public"."import_messages"."import_id" = $1  [["import_id", 58]]
  ImportResource Load (1.9ms)  SELECT "public"."import_resources".* FROM "public"."import_resources" WHERE "public"."import_resources"."import_id" = $1  [["import_id", 58]]
  Import Load (0.3ms)  SELECT "public"."imports".* FROM "public"."imports" WHERE "public"."imports"."parent_id" = $1  [["parent_id", 58]]
  ImportMessage Load (0.5ms)  SELECT "public"."import_messages".* FROM "public"."import_messages" WHERE "public"."import_messages"."import_id" = $1  [["import_id", 59]]
  ImportResource Load (4.8ms)  SELECT "public"."import_resources".* FROM "public"."import_resources" WHERE "public"."import_resources"."import_id" = $1  [["import_id", 59]]
  SQL (1.3ms)  DELETE FROM "public"."import_resources" WHERE "public"."import_resources"."id" = $1  [["id", 636]]
  SQL (0.3ms)  DELETE FROM "public"."import_resources" WHERE "public"."import_resources"."id" = $1  [["id", 635]]
  SQL (0.2ms)  DELETE FROM "public"."import_resources" WHERE "public"."import_resources"."id" = $1  [["id", 634]]
  SQL (0.2ms)  DELETE FROM "public"."import_resources" WHERE "public"."import_resources"."id" = $1  [["id", 633]]
  SQL (0.2ms)  DELETE FROM "public"."import_resources" WHERE "public"."import_resources"."id" = $1  [["id", 632]]
  SQL (0.2ms)  DELETE FROM "public"."import_resources" WHERE "public"."import_resources"."id" = $1  [["id", 631]]
  SQL (0.2ms)  DELETE FROM "public"."import_resources" WHERE "public"."import_resources"."id" = $1  [["id", 630]]
  SQL (0.1ms)  DELETE FROM "public"."import_resources" WHERE "public"."import_resources"."id" = $1  [["id", 629]]
  SQL (0.2ms)  DELETE FROM "public"."import_resources" WHERE "public"."import_resources"."id" = $1  [["id", 628]]
  SQL (0.1ms)  DELETE FROM "public"."import_resources" WHERE "public"."import_resources"."id" = $1  [["id", 627]]
  SQL (0.1ms)  DELETE FROM "public"."import_resources" WHERE "public"."import_resources"."id" = $1  [["id", 626]]
  SQL (0.3ms)  DELETE FROM "public"."import_resources" WHERE "public"."import_resources"."id" = $1  [["id", 625]]
  SQL (0.3ms)  DELETE FROM "public"."import_resources" WHERE "public"."import_resources"."id" = $1  [["id", 624]]
  SQL (0.2ms)  DELETE FROM "public"."import_resources" WHERE "public"."import_resources"."id" = $1  [["id", 623]]
  SQL (0.2ms)  DELETE FROM "public"."import_resources" WHERE "public"."import_resources"."id" = $1  [["id", 622]]
  Import Load (0.3ms)  SELECT "public"."imports".* FROM "public"."imports" WHERE "public"."imports"."parent_id" = $1  [["parent_id", 59]]
  Referential Load (0.6ms)  SELECT  "public"."referentials".* FROM "public"."referentials" WHERE "public"."referentials"."id" = $1 LIMIT 1  [["id", 18]]
   (0.2ms)  ROLLBACK
NoMethodError: undefined method `ready' for nil:NilClass
from .../stif-boiv/app/models/netex_import.rb:20:in `destroy_non_ready_referential'

Since referential is not a required attribute, it can be nil. That was causing this to break because I tried to destroy a Referential that doesn't exist. Check that there's an associated Referential before trying to destroy it.

Refs #4991

Assignee
Assign to
Reviewer
Request review from
None
Milestone
None
Assign milestone
Time tracking
Source branch: 4991-netex-import--check-that-associated-referential-exists-before-trying-to-destroy-it