History log of /ontohub/lib/repository_update_worker.rb
Revision Date Author Comments Expand
81da36894af70bbb8d8e24b004026ad4c5c1bc99 19-Jul-2016 Eugen Kuksa <eugenk@informatik.uni-bremen.de>

1592 committer not shown in versions (#1704) * Supply pushing user. * Code style. * Remove already executed data migration task. * Improve Commit model, add associations to User model. * Get rid of ambiguous class/module names. * Replace OntologyVersion#user by #pusher. * Display pusher information in OntologyVersions index. * Fix all the tests. * Add new tests. * Obey Hound. * Fix migration. * Add data migration for missing commits. * Add data migrations. * Shorten up method. * Remove unnecessary comment.

/ontohub/app/controllers/ontologies_controller.rb /ontohub/app/helpers/ontology_version_helper.rb /ontohub/app/models/commit.rb /ontohub/app/models/ontology/versions.rb /ontohub/app/models/ontology_version.rb /ontohub/app/models/ontology_version/files.rb /ontohub/app/models/ontology_version/parsing.rb /ontohub/app/models/repository/git.rb /ontohub/app/models/user.rb /ontohub/app/views/home/_versions.html.haml /ontohub/app/views/ontologies/_ontology.html.haml /ontohub/app/views/ontology_versions/_ontology_version.html.haml /ontohub/db/data/20160614065104_create_missing_commits.rb /ontohub/db/data/20160614065106_fill_empty_commits.rb /ontohub/db/migrate/20160614065105_add_association_from_commit_to_user.rb git_repository.rb git_repository/committing.rb git_repository/get_commit.rb hets/dg/node_evaluation_helper.rb hets/dg/node_evaluator.rb migration_with_data.rb ontology_saver.rb ontology_version_options.rb proof_execution.rb repository_update_worker.rb tasks/migrate_data.rake /ontohub/spec/controllers/users_controller_spec.rb /ontohub/spec/factories/commit_factory.rb /ontohub/spec/factories/ontology_factory.rb /ontohub/spec/factories/ontology_version_factory.rb /ontohub/spec/models/commit_spec.rb /ontohub/spec/models/ontology_spec.rb /ontohub/spec/models/ontology_version_spec.rb /ontohub/spec/models/repository/git_spec.rb /ontohub/spec/models/repository/save_and_delete_file_spec.rb /ontohub/spec/models/user_spec.rb
e8ec59dda8f903e81cb5cceaef93d20a0812fc77 01-Jul-2016 Eugen Kuksa <eugenk@informatik.uni-bremen.de>

982 error this iri is already being processed (#1697) * Add expiration parameter to Semaphore After the expiration, the semaphore is unlocked. This allows dead processes (e.g. by kill -9) to release the lock again. * Namespace the redis semaphore at ontohub:semaphore. * Code style. * Code style: use class << self block. * Add concurrency testing gem. * Completely revamp Semaphore * Put it into the same redis-namespace as sidekiq. * Add method to check if a lock is closed. * Namespace semaphores even deeper. Checking if a lock is closed is not an atomic operation. To make it atomic, we put the check into a mutexed part. In order to really exclude the locking and unlocking from this mutexed check, these two operations must be mutexed as well with the same key (LOCK_ACTION_KEY). Unfortunately, using many threads/processes in an example makes the test suite hang. This is because of celluloid. Maybe we can unskip the example after upgrading to sidekiq 4 and dropping sidetiq. * Add settings keys for Redis. * Use redis namespace setting for Semaphore. * Share redis connections between Sidekiq and Semaphore When all connections are in use, any Redis call will block until a connection is freed. Sidekiq is now namespaced deeper in order to prevent conflicts with the semaphore. * Fix locked? and perform_exclusively signatures. * Add lock and unlock methods. * Use separate redis namespaces for our environments. * Use Semaphore only if not testing * Use Semaphore when parsing an Ontology * Remove not needed method perform_async_on_queue. * Refactor all the Worker classes for parsing Now, all comes down to the new OntologyParsingWorker. It performs on a queue of triples containing the version id, options for the version and the try_count (number of the next parsing attempt). If parsing a version fails, it is put back to the queue (at the end), with an incremented try_count. If this happens too often for the same version, it is given to the SequentialOntologyParsingWorker that only parses one OntologyVersion at a time. The OntologyParsingPriorityWorker is a more elegant way to use the priotitized queue. All the background parsing is now performed via the OntologyParsingWorker or its subclasses. * Be explicit about the namespace. * Obey Hound.

/ontohub/Gemfile /ontohub/Gemfile.lock /ontohub/app/models/hets_instance.rb /ontohub/app/models/ontology_version/parsing.rb /ontohub/app/models/sine_axiom_selection.rb /ontohub/config/initializers/redis_pool.rb /ontohub/config/initializers/sidekiq.rb /ontohub/config/settings.yml /ontohub/config/settings/development.yml /ontohub/config/settings/test.yml base_worker.rb hets/concurrent_evaluator.rb hets/dg/importer.rb hets/dg/node_evaluator.rb hets_instance_force_free_worker.rb ontology_batch_parse_worker.rb ontology_parsing_priority_worker.rb ontology_parsing_worker.rb ontology_saver.rb proof_evaluation_state_updater.rb proof_execution_worker.rb repository_update_worker.rb semaphore.rb sequential_ontology_batch_parse_worker.rb sequential_ontology_parsing_worker.rb sequential_worker.rb settings_validation_wrapper.rb tasks/data.rake worker.rb /ontohub/spec/lib/access_token_deletion_worker_spec.rb /ontohub/spec/lib/ontology_batch_parse_worker_spec.rb /ontohub/spec/lib/repository/git_repository_spec.rb /ontohub/spec/lib/semaphore_spec.rb /ontohub/spec/lib/worker_spec.rb /ontohub/spec/models/repository/git_spec.rb
006de713cc0c62dc3dd8549f4d74c00e8b822dd2 11-Jan-2016 Eugen Kuksa <eugenk@informatik.uni-bremen.de>

Move ontology saving code into separate service class.

42e40cfc68df4ff740d8bf91e6fbd24736e37a60 19-May-2015 Eugen Kuksa <eugenk@informatik.uni-bremen.de>

Define own walk order.

1a7c903d7c95e94f306f7a41de9f6d607448dbe3 04-Aug-2014 Tim Reddehase <robustus@rightsrestricted.com>

declare queues for workers explicitly.

b155a36436c57aa3920c6759ddec29f8305490c2 24-Feb-2014 Tim Reddehase <robustus@rightsrestricted.com>

update worker for concurrency balancing support Also includes description why the RepositoryUpdateWorker is not affected.

452433ff5ce0e5871b9575c4fb02e7e51a6b913d 13-Dec-2013 Tim Reddehase <robustus@rightsrestricted.com>

add commit-walk-order option and use it for ssh.

694631fb23b62e1c1ba4fca24f1b16f5b1f3a1d2 09-Dec-2013 Tim Reddehase <robustus@rightsrestricted.com>

use id to fetch repository in update hook worker.

b27c7f227c8516589a2bd127c0f74338cf56f0b2 28-Oct-2013 Julian Kornberger <juliank@tzi.de>

One step more towards SSH access