{"record":{"id":"78e84e294a7035c2","repo":"ankane/pgsync","slug":"invalid-connection-string-make-sure-it-works-with","errorCode":null,"errorMessage":"Invalid connection string. Make sure it works with `psql`","messagePattern":"Invalid connection string\\. Make sure it works with `psql`","errorType":"exception","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"lib/pgsync/data_source.rb","lineNumber":120,"sourceCode":"        WHERE\n          pg_trigger.tgrelid = $1::regclass\n      SQL\n      execute(query, [quote_ident_full(table)])\n    end\n\n    def conn\n      @conn ||= begin\n        begin\n          ENV[\"PGCONNECT_TIMEOUT\"] ||= \"3\"\n          if @url.start_with?(\"postgres://\", \"postgresql://\")\n            config = @url\n          else\n            config = {dbname: @url}\n          end\n          @concurrent_id = concurrent_id\n          PG::Connection.new(config)\n        rescue URI::InvalidURIError\n          raise Error, \"Invalid connection string. Make sure it works with `psql`\"\n        end\n      end\n    end\n\n    def close\n      if @conn\n        @conn.close\n        @conn = nil\n      end\n    end\n\n    # reconnect for new thread or process\n    def reconnect_if_needed\n      reconnect if @concurrent_id != concurrent_id\n    end\n\n    def search_path\n      @search_path ||= execute(\"SELECT unnest(current_schemas(true)) AS schema\").map { |r| r[\"schema\"] }","sourceCodeStart":102,"sourceCodeEnd":138,"githubUrl":"https://github.com/ankane/pgsync/blob/57bdddf5db506d329b51cb3376379dc3a2559010/lib/pgsync/data_source.rb#L102-L138","documentation":"Error \"Invalid connection string. Make sure it works with `psql`\" thrown in ankane/pgsync.","triggerScenarios":"Thrown at lib/pgsync/data_source.rb:120 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"}