MPDL / imeji

A lightweight research data repository
11 stars 2 forks source link

Architectural refactoring #1089

Open haarli opened 5 years ago

haarli commented 5 years ago

Currently, imeji accesses the Jena tripestore and the Elasticsearch in an intermittent and hardly coupled way. There is no clear architectural separation between a primary data store and the search index.

In order to allow exchanging db and search technologies at a later stage and to simplify the code and process structure, the architecture should be refactored.

MPDLTam commented 5 years ago

Is done here: https://github.com/MPDL/imeji/commits/newArchitecture

MPDLTam commented 5 years ago

Latest upload (247eefd) contains completed item section and is ready to go into automated testing.

helkv commented 5 years ago

Issues of the current work-in-progress version detected so far:

  1. If a language other than English is preselected (if English is selected, select another language and explicitly reload the page), then the language doesn't change when selecting another language.
  2. The users list (Admin tab/Users/Browse) is not sorted alphabetically. The first created test user was wrongly added on top of the list. :heavy_check_mark: (not reproducible in the second work-in-progress version)
  3. The Deletion of selected item(s) by a non-admin user leads to an error message, that the user is not allowed to create a content(-link). The item(s) still get successfully deleted. :heavy_check_mark: (Tests pass with 7e8c6ab)
  4. After the Deletion of an opened item by a non-admin user the corresponding collection page is not loaded. The deleted item page is still visible after the deletion. The item still gets successfully deleted. :heavy_check_mark: (Tests pass with 7e8c6ab)
  5. Opening a released item not being logged in leads to an error page: "Sorry, this should not have happened. An internal server error occurred. Please go back to the homepage and try again." :heavy_check_mark: (Tests pass with 7e8c6ab)
  6. DOIs can not be added to collections. Adding a DOI to a published collection leads to en error message: "Error: This is not a valid DOI and therefore will not be saved."
  7. An opened item can not be moved from a private collection. Error message: "1 Item not moved (same file found in the target collection)", although the item does not exist in the target collection. Moving a selected item does work. :heavy_check_mark: (Tests pass with 978457d)
  8. Statements (Admin tab/Statements/Browse) can not be deleted by an admin user. A success message "Statement successfully deleted" is displayed, but the deleted statement is still visible in the statements list. :heavy_check_mark: (Tests pass with 978457d)
  9. Facets (Admin tab/Facets/Browse) can not be deleted by an admin user. A success message "Facet ... successfully deleted" is displayed, but the deleted facet is still visible in the facets list. :heavy_check_mark: (Tests pass with 978457d)
MPDLTam commented 5 years ago

Bug 6 is caused by rejection of DOI request by DOxI server. See log: ERROR de.mpg.imeji.presentation.collection.CollectionActionMenu - Error: This is not a valid DOI and therefore will not be saved. Error occured, when contacting DOxI. StatusCode=401 - Unauthorized - HTTP 401 Unauthorized. Please contact your admin

helkv commented 5 years ago

Detected issues of the second work-in-progress version:

  1. According to their state (publish, delete), collections and items are not correctly located and displayed:
    • Discarded items are displayed in their collection view and the items view.
    • Discarded collections are displayed in the collections view and still contain items.
    • Published items are not displayed in the items view, if the user is not logged in.
    • Published collections are not displayed in the collections view, if the user is not logged in. :heavy_check_mark: (Tests pass with new version - build date 2019-04-16 18:47:05)
  2. After adding Additional information (Collection/Edit information/Additional information) to a collection the corresponding collection is not displayed in the collections view any more.
  3. Some users (admin, test_user_1, ...) can not move items from one collection to another. The List of collections to move the item to is empty. For other users moving an item works as expected.
  4. Statements can not be set as default (Admin/Statements/Default ~ for a single statement). Statement 'Title' is listed as default and can not be changed too.
  5. Creating a statement with a already existing name leads to a different error message than before, which consists of more technical informations.