Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Undefined method 'split' for nil class #145

Open
Tracked by #134
ShanaLMoore opened this issue Apr 15, 2024 · 11 comments
Open
Tracked by #134

Undefined method 'split' for nil class #145

ShanaLMoore opened this issue Apr 15, 2024 · 11 comments
Labels
bug something isn't working Knapsack Upgrade M2 Milestone 2

Comments

@ShanaLMoore
Copy link

ShanaLMoore commented Apr 15, 2024

To reproduce, locally create a work. attach cat_scan.pdf

cat_scan.pdf

Image

@ShanaLMoore ShanaLMoore added Knapsack Upgrade bug something isn't working labels Apr 15, 2024
@kirkkwang
Copy link
Contributor

stack trace locally

[ActiveJob] [CreateDerivativesJob] [8dfff7f2-de0d-453a-9e6f-a24c03f22cb1] Error performing CreateDerivativesJob (Job ID: 8dfff7f2-de0d-453a-9e6f-a24c03f22cb1) from GoodJob(default) in 95.34ms: NoMethodError (undefined method `split' for nil:NilClass):
/usr/local/bundle/gems/derivative-rodeo-0.5.3/lib/derivative_rodeo/storage_locations/base_location.rb:66:in `from_uri'
/usr/local/bundle/bundler/gems/iiif_print-c6b566e6c435/app/services/iiif_print/derivative_rodeo_service.rb:361:in `input_uri'
/usr/local/bundle/bundler/gems/iiif_print-c6b566e6c435/app/services/iiif_print/derivative_rodeo_service.rb:331:in `rescue in lasso_up_some_derivatives'
/usr/local/bundle/bundler/gems/iiif_print-c6b566e6c435/app/services/iiif_print/derivative_rodeo_service.rb:323:in `lasso_up_some_derivatives'
/usr/local/bundle/bundler/gems/iiif_print-c6b566e6c435/app/services/iiif_print/derivative_rodeo_service.rb:269:in `block in create_derivatives'
/usr/local/bundle/bundler/gems/iiif_print-c6b566e6c435/app/services/iiif_print/derivative_rodeo_service.rb:268:in `each'
/usr/local/bundle/bundler/gems/iiif_print-c6b566e6c435/app/services/iiif_print/derivative_rodeo_service.rb:268:in `flat_map'
/usr/local/bundle/bundler/gems/iiif_print-c6b566e6c435/app/services/iiif_print/derivative_rodeo_service.rb:268:in `create_derivatives'
/usr/local/bundle/gems/hyrax-3.5.0/app/models/concerns/hyrax/file_set/derivatives.rb:52:in `create_derivatives'
/usr/local/bundle/gems/hyrax-3.5.0/app/jobs/create_derivatives_job.rb:12:in `perform'
/app/samvera/app/jobs/create_derivatives_job_decorator.rb:8:in `perform'
/usr/local/bundle/gems/activejob-5.2.8.1/lib/active_job/execution.rb:39:in `block in perform_now'
/usr/local/bundle/gems/activesupport-5.2.8.1/lib/active_support/callbacks.rb:109:in `block in run_callbacks'
/usr/local/bundle/gems/i18n-1.14.1/lib/i18n.rb:322:in `with_locale'
/usr/local/bundle/gems/activejob-5.2.8.1/lib/active_job/translation.rb:9:in `block (2 levels) in <module:Translation>'
/usr/local/bundle/gems/activesupport-5.2.8.1/lib/active_support/callbacks.rb:118:in `instance_exec'
/usr/local/bundle/gems/activesupport-5.2.8.1/lib/active_support/callbacks.rb:118:in `block in run_callbacks'
/usr/local/bundle/gems/activejob-5.2.8.1/lib/active_job/logging.rb:26:in `block (4 levels) in <module:Logging>'
/usr/local/bundle/gems/activesupport-5.2.8.1/lib/active_support/notifications.rb:168:in `block in instrument'
/usr/local/bundle/gems/activesupport-5.2.8.1/lib/active_support/notifications/instrumenter.rb:23:in `instrument'
/usr/local/bundle/gems/activesupport-5.2.8.1/lib/active_support/notifications.rb:168:in `instrument'
/usr/local/bundle/gems/activejob-5.2.8.1/lib/active_job/logging.rb:25:in `block (3 levels) in <module:Logging>'
/usr/local/bundle/gems/activejob-5.2.8.1/lib/active_job/logging.rb:46:in `block in tag_logger'
/usr/local/bundle/gems/activesupport-5.2.8.1/lib/active_support/tagged_logging.rb:71:in `block in tagged'
/usr/local/bundle/gems/activesupport-5.2.8.1/lib/active_support/tagged_logging.rb:28:in `tagged'
/usr/local/bundle/gems/activesupport-5.2.8.1/lib/active_support/tagged_logging.rb:71:in `tagged'
/usr/local/bundle/gems/activejob-5.2.8.1/lib/active_job/logging.rb:46:in `tag_logger'
/usr/local/bundle/gems/activejob-5.2.8.1/lib/active_job/logging.rb:22:in `block (2 levels) in <module:Logging>'
/usr/local/bundle/gems/activesupport-5.2.8.1/lib/active_support/callbacks.rb:118:in `instance_exec'
/usr/local/bundle/gems/activesupport-5.2.8.1/lib/active_support/callbacks.rb:118:in `block in run_callbacks'
/usr/local/bundle/gems/activesupport-5.2.8.1/lib/active_support/callbacks.rb:136:in `run_callbacks'
/usr/local/bundle/gems/activejob-5.2.8.1/lib/active_job/execution.rb:38:in `perform_now'
/app/samvera/hyrax-webapp/lib/active_job_tenant.rb:38:in `block in perform_now'
/app/samvera/hyrax-webapp/lib/active_job_tenant.rb:57:in `block in switch'
/usr/local/bundle/gems/apartment-2.2.1/lib/apartment/adapters/abstract_adapter.rb:85:in `switch'
/usr/local/lib/ruby/2.7.0/forwardable.rb:235:in `switch'
/app/samvera/hyrax-webapp/lib/active_job_tenant.rb:56:in `switch'
/app/samvera/hyrax-webapp/lib/active_job_tenant.rb:37:in `perform_now'
/usr/local/bundle/gems/sentry-rails-5.16.1/lib/sentry/rails/active_job.rb:9:in `block in perform_now'
/usr/local/bundle/gems/sentry-rails-5.16.1/lib/sentry/rails/active_job.rb:35:in `block in record'
/usr/local/bundle/gems/sentry-ruby-5.16.1/lib/sentry/hub.rb:59:in `with_scope'
/usr/local/bundle/gems/sentry-ruby-5.16.1/lib/sentry-ruby.rb:371:in `with_scope'
/usr/local/bundle/gems/sentry-rails-5.16.1/lib/sentry/rails/active_job.rb:23:in `record'
/usr/local/bundle/gems/sentry-rails-5.16.1/lib/sentry/rails/active_job.rb:8:in `perform_now'
/usr/local/bundle/gems/activejob-5.2.8.1/lib/active_job/execution.rb:24:in `block in execute'
/usr/local/bundle/gems/activesupport-5.2.8.1/lib/active_support/callbacks.rb:109:in `block in run_callbacks'
/usr/local/bundle/gems/activejob-5.2.8.1/lib/active_job/railtie.rb:28:in `block (4 levels) in <class:Railtie>'
/usr/local/bundle/gems/activesupport-5.2.8.1/lib/active_support/execution_wrapper.rb:90:in `wrap'
/usr/local/bundle/gems/activesupport-5.2.8.1/lib/active_support/reloader.rb:73:in `block in wrap'
/usr/local/bundle/gems/activesupport-5.2.8.1/lib/active_support/execution_wrapper.rb:86:in `wrap'
/usr/local/bundle/gems/activesupport-5.2.8.1/lib/active_support/reloader.rb:72:in `wrap'
/usr/local/bundle/gems/activejob-5.2.8.1/lib/active_job/railtie.rb:27:in `block (3 levels) in <class:Railtie>'
/usr/local/bundle/gems/activesupport-5.2.8.1/lib/active_support/callbacks.rb:118:in `instance_exec'
/usr/local/bundle/gems/activesupport-5.2.8.1/lib/active_support/callbacks.rb:118:in `block in run_callbacks'
/usr/local/bundle/gems/activesupport-5.2.8.1/lib/active_support/callbacks.rb:136:in `run_callbacks'
/usr/local/bundle/gems/activejob-5.2.8.1/lib/active_job/execution.rb:22:in `execute'
/usr/local/bundle/gems/good_job-2.99.0/lib/models/good_job/execution.rb:351:in `block (2 levels) in execute'
/usr/local/bundle/gems/activesupport-5.2.8.1/lib/active_support/notifications.rb:168:in `block in instrument'
/usr/local/bundle/gems/activesupport-5.2.8.1/lib/active_support/notifications/instrumenter.rb:23:in `instrument'
/usr/local/bundle/gems/activesupport-5.2.8.1/lib/active_support/notifications.rb:168:in `instrument'
/usr/local/bundle/gems/good_job-2.99.0/lib/models/good_job/execution.rb:350:in `block in execute'
/usr/local/bundle/gems/good_job-2.99.0/lib/good_job/current_thread.rb:84:in `within'
/usr/local/bundle/gems/good_job-2.99.0/lib/models/good_job/execution.rb:345:in `execute'
/usr/local/bundle/gems/good_job-2.99.0/lib/models/good_job/execution.rb:246:in `perform'
/usr/local/bundle/gems/good_job-2.99.0/lib/models/good_job/execution.rb:162:in `block in perform_with_advisory_lock'
/usr/local/bundle/gems/good_job-2.99.0/lib/models/good_job/lockable.rb:163:in `block in with_advisory_lock'
/usr/local/bundle/gems/activerecord-5.2.8.1/lib/active_record/scoping/default.rb:34:in `block in unscoped'
/usr/local/bundle/gems/activerecord-5.2.8.1/lib/active_record/relation.rb:281:in `scoping'
/usr/local/bundle/gems/activerecord-5.2.8.1/lib/active_record/scoping/default.rb:34:in `unscoped'
/usr/local/bundle/gems/good_job-2.99.0/lib/models/good_job/lockable.rb:163:in `with_advisory_lock'
/usr/local/bundle/gems/activerecord-5.2.8.1/lib/active_record/relation/delegation.rb:97:in `block in with_advisory_lock'
/usr/local/bundle/gems/activerecord-5.2.8.1/lib/active_record/relation.rb:281:in `scoping'
/usr/local/bundle/gems/activerecord-5.2.8.1/lib/active_record/relation/delegation.rb:97:in `with_advisory_lock'
/usr/local/bundle/gems/good_job-2.99.0/lib/models/good_job/execution.rb:157:in `perform_with_advisory_lock'
/usr/local/bundle/gems/activerecord-5.2.8.1/lib/active_record/relation/delegation.rb:97:in `block in perform_with_advisory_lock'
/usr/local/bundle/gems/activerecord-5.2.8.1/lib/active_record/relation.rb:281:in `scoping'
/usr/local/bundle/gems/activerecord-5.2.8.1/lib/active_record/relation/delegation.rb:97:in `perform_with_advisory_lock'
/usr/local/bundle/gems/good_job-2.99.0/lib/good_job/job_performer.rb:27:in `next'
/usr/local/bundle/gems/good_job-2.99.0/lib/good_job/scheduler.rb:270:in `block (2 levels) in create_task'
/usr/local/bundle/gems/activesupport-5.2.8.1/lib/active_support/execution_wrapper.rb:90:in `wrap'
/usr/local/bundle/gems/activesupport-5.2.8.1/lib/active_support/reloader.rb:73:in `block in wrap'
/usr/local/bundle/gems/activesupport-5.2.8.1/lib/active_support/execution_wrapper.rb:90:in `wrap'
/usr/local/bundle/gems/activesupport-5.2.8.1/lib/active_support/reloader.rb:72:in `wrap'
/usr/local/bundle/gems/good_job-2.99.0/lib/good_job/scheduler.rb:269:in `block in create_task'
/usr/local/bundle/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/executor/safe_task_executor.rb:24:in `block in execute'
/usr/local/bundle/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb:48:in `block in synchronize'
/usr/local/bundle/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb:48:in `synchronize'
/usr/local/bundle/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb:48:in `synchronize'
/usr/local/bundle/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/executor/safe_task_executor.rb:22:in `execute'
/usr/local/bundle/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/ivar.rb:170:in `safe_execute'
/usr/local/bundle/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/scheduled_task.rb:298:in `process_task'
/usr/local/bundle/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/executor/timer_set.rb:165:in `block (2 levels) in process_tasks'
/usr/local/bundle/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:352:in `run_task'
/usr/local/bundle/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:343:in `block (3 levels) in create_worker'
/usr/local/bundle/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:334:in `loop'
/usr/local/bundle/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:334:in `block (2 levels) in create_worker'
/usr/local/bundle/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:333:in `catch'
/usr/local/bundle/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:333:in `block in create_worker'

@kirkkwang kirkkwang assigned kirkkwang and unassigned kirkkwang Apr 16, 2024
@kirkkwang
Copy link
Contributor

kirkkwang commented Apr 16, 2024

How it manifests:

locally, it does not create a derivative for the pdf that i uploaded

Image

@ShanaLMoore
Copy link
Author

@kirkkwang locally, does this work not have a thumbnail too, from the works index page?

@kirkkwang
Copy link
Contributor

@ShanaLMoore correct, because a thumbnail is a derivative and the create derivative job didn't work correctly

@ShanaLMoore ShanaLMoore moved this to Ready for Development in adventist-dl Apr 18, 2024
@ShanaLMoore
Copy link
Author

Is this still an issue?

@jillpe jillpe moved this to Ready for Development in Adventist Knapsack May 10, 2024
@orangewolf orangewolf moved this from Ready for Development to Client QA in Adventist Knapsack Aug 29, 2024
@jillpe jillpe added this to the Milestone 2 - Ingest new works milestone Sep 3, 2024
@ShanaLMoore ShanaLMoore added the M2 Milestone 2 label Sep 3, 2024
@KatharineV
Copy link
Collaborator

I tested with my own 6 page PDF.

https://adl.s2.adventistdigitallibrary.org/concern/generic_works/538a6bcf-e2b7-429e-b15a-f19530a9a7d9?locale=en

BUGS:
The splitting worked, but we have double the number of child works showing in the items list. On Production we usually only see the child works with page numbers attached. However, on staging, there are a string of JPEGs in the item list.

All child works are showing in the UV, so the work is duplicated in the UV.

@ShanaLMoore
Copy link
Author

ShanaLMoore commented Sep 19, 2024

@KatharineV Would you mind if we create a separate issue for the duplicate children issuet? It seems like the original issue is solved.

@KatharineV
Copy link
Collaborator

KatharineV commented Sep 19, 2024 via email

@ShanaLMoore ShanaLMoore moved this from SoftServ QA to Client QA in Adventist Knapsack Sep 19, 2024
@ShanaLMoore
Copy link
Author

ShanaLMoore commented Sep 19, 2024

Also, how would you prioritize it? A must solve before cutover or can it wait? @KatharineV

ref: #817

@KatharineV
Copy link
Collaborator

KatharineV commented Sep 19, 2024 via email

@ShanaLMoore
Copy link
Author

ShanaLMoore commented Sep 19, 2024

@KatharineV No, there is a related bug reported in Hyrax so it's been seen before and probably is not you or your application in particular.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug something isn't working Knapsack Upgrade M2 Milestone 2
Projects
Status: Deploy to Production
Development

No branches or pull requests

4 participants