{"record":{"id":"d543a626afca0b00","repo":"ankane/pgsync","slug":"unknown-rule-rule-for-column-column","errorCode":null,"errorMessage":"Unknown rule #{rule} for column #{column}","messagePattern":"Unknown rule #(.+?) for column #(.+?)","errorType":"exception","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"lib/pgsync/task.rb","lineNumber":273,"sourceCode":"          \"'secret' || #{quoted_primary_key(table, primary_key, rule)}::text\"\n        when \"random_int\", \"random_number\"\n          \"(RANDOM() * 100)::int\"\n        when \"random_date\"\n          \"date '1970-01-01' + (RANDOM() * 10000)::int\"\n        when \"random_time\"\n          \"NOW() - (RANDOM() * 100000000)::int * INTERVAL '1 second'\"\n        when \"random_ip\"\n          # casting double to int rounds\n          \"(1 + RANDOM() * 254)::int::text || '.0.0.1'\"\n        when \"random_letter\"\n          # casting double to int rounds\n          \"chr(65 + (RANDOM() * 25)::int)\"\n        when \"random_string\"\n          \"RIGHT(MD5(RANDOM()::text), 10)\"\n        when \"null\", nil\n          \"NULL\"\n        else\n          raise Error, \"Unknown rule #{rule} for column #{column}\"\n        end\n      end\n    end\n\n    def quoted_primary_key(table, primary_key, rule)\n      raise Error, \"Single column primary key required for this data rule: #{rule}\" unless primary_key.size == 1\n      \"#{quoted_table}.#{quote_ident(primary_key.first)}\"\n    end\n\n    def maybe_disable_triggers\n      if opts[:disable_integrity] || opts[:disable_integrity_v2] || opts[:disable_user_triggers]\n        destination.transaction do\n          triggers = destination.triggers(table)\n          triggers.select! { |t| t[\"enabled\"] == \"t\" }\n          internal_triggers, user_triggers = triggers.partition { |t| t[\"internal\"] == \"t\" }\n          integrity_triggers = internal_triggers.select { |t| t[\"integrity\"] == \"t\" }\n          restore_triggers = []\n","sourceCodeStart":255,"sourceCodeEnd":291,"githubUrl":"https://github.com/ankane/pgsync/blob/57bdddf5db506d329b51cb3376379dc3a2559010/lib/pgsync/task.rb#L255-L291","documentation":"Error \"Unknown rule #{rule} for column #{column}\" thrown in ankane/pgsync.","triggerScenarios":"Thrown at lib/pgsync/task.rb:273 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"57bdddf5db506d329b51cb3376379dc3a2559010","analyzedAt":"2026-08-23T11:18:48.887Z","schemaVersion":2},"datasetVersion":"2026-08-23T16:17:53.355Z"}