diff --git a/lib/tasks/vectorize_packages.rake b/lib/tasks/vectorize_packages.rake index 66bf7a2..aee5d45 100644 --- a/lib/tasks/vectorize_packages.rake +++ b/lib/tasks/vectorize_packages.rake @@ -30,6 +30,13 @@ namespace :debshots do done = 0 failed = 0 + # Remember the most recent SQL statement so failures can be traced + # to the exact query that triggered them. + last_sql = nil + ActiveSupport::Notifications.subscribe('sql.active_record') do |*args| + last_sql = args.last[:sql] + end + scope.find_each do |package| begin raise ArgumentError, 'no description text' if package.embedding_text.blank? @@ -41,7 +48,8 @@ namespace :debshots do # enough detail to diagnose it and move on. failed += 1 logger.error "Failed for package #{package.name}: #{e.class}: #{e.message}" - logger.error e.backtrace.first(3).join("\n") if e.backtrace + logger.error "Last SQL: #{last_sql}" + logger.error e.backtrace.first(15).join("\n") if e.backtrace end processed = done + failed