...
- Danny Bernstein
- Jared Whiklo
- Andrew Woods
- Peter Winckles
- David Wilcox
- Ben Cail
- Thomas Bernhart
- Daniel Lamb
- Ben Pennell
- Rosie Le Faive
Agenda
Announcements?
- Update on Fedora CI - sonatype and docker
- June 1-5 Sprint
- May 4-8 Sprint - Wrap up
- What's done
- Tickets needing Review Updates
- Simple Search -
Migration toolingJira server DuraSpace JIRA serverId c815ca92-fd23-34c2-8fe3-956808caf8c5 key FCREPO-3298 -3182
-Jira server DuraSpace JIRA serverId c815ca92-fd23-34c2-8fe3-956808caf8c5 key FCREPO-3193 Jira server DuraSpace JIRA serverId c815ca92-fd23-34c2-8fe3-956808caf8c5 key FCREPO-31823282 - WebAC -
Jira server DuraSpace JIRA serverId c815ca92-fd23-34c2-8fe3-956808caf8c5 key FCREPO-3294 - Testing
Jira server DuraSpace JIRA serverId c815ca92-fd23-34c2-8fe3-956808caf8c5 key FCREPO-3296 Jira server DuraSpace JIRA serverId c815ca92-fd23-34c2-8fe3-956808caf8c5 key FCREPO-32913299 Jira server DuraSpace JIRA serverId c815ca92-fd23-34c2-8fe3-956808caf8c5 key FCREPO-32963302 Jira server DuraSpace JIRA serverId c815ca92-fd23-34c2-8fe3-956808caf8c5 key FCREPO-32983304
- Demo
- Database support
- Moving Fedora Id → OCFL Id index to database -
3297Jira server DuraSpace JIRA serverId c815ca92-fd23-34c2-8fe3-956808caf8c5 key FCREPO-
- Moving Fedora Id → OCFL Id index to database -
- Alignment on "Fedora OCFL Storage" proposal
3309 - How to deal with SQL Differences (H2, mysql, postgresql)
- Fedora 6 Configuration
- https://docs.google.com/document/d/1EuB7QThWP2HhnAqztmUyJgbaxciBa0ySI1ShsciayRE/edit?usp=sharing
- Goal: review settings and determine what we want the user experience to be
- Reference: Best Practices - Fedora Configuration
- Open questions:
- JMS: Remove Fedora-related JMS messaging headers? 2018-04-26 - Fedora Tech Meeting
- Containment Index
- How to handle SQL differences (H2, MySQL, PostgreSQL) - pluggable connectors?
- Change versioning default to opt-out of auto-versioning?
- Community-raised issues
Jira server DuraSpace JIRA serverId c815ca92-fd23-34c2-8fe3-956808caf8c5 key FCREPO-3313
Expand title Tickets resolved this week... Jira server DuraSpace JIRA jqlQuery filter=13111 serverId c815ca92-fd23-34c2-8fe3-956808caf8c5
...
In Review
Expand Jira server DuraSpace JIRA jqlQuery filter=13100 serverId c815ca92-fd23-34c2-8fe3-956808caf8c5 Please squash a bug!
Expand Jira server DuraSpace JIRA columns key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution maximumIssues 20 jqlQuery filter=13122 serverId c815ca92-fd23-34c2-8fe3-956808caf8c5 Tickets resolved this week:
Expand Jira server DuraSpace JIRA columns key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution maximumIssues 20 jqlQuery filter=13111 serverId c815ca92-fd23-34c2-8fe3-956808caf8c5 Tickets created this week:
Expand Jira server DuraSpace JIRA columns key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution maximumIssues 20 jqlQuery filter=13029 serverId c815ca92-fd23-34c2-8fe3-956808caf8c5
Notes
- Announcements
David Wilcox : Summarizing current work regarding community interactions:
- Online Fedora
- Building training materials for Fedora 6 → who would/can contribute?
- One online user group meetings/trainings in US
- probably another in European timezone
- Announcements will follow
- Goal keep up community interactions
- fcrepo-terraform project –> can it be made public?
Sprint updates:
Danny Bernstein : Summarizing progress of current sprint:
...
- Searching for containment relationships use case? → might make ACL implementation easier
- include Google Doc (https://docs.google.com/document/d/1nFmvIRmMkGx93hqJUp9unw0RWwqb_DBx8-dvGSSP4iY/edit#) into wiki
...
- Jared Whiklo: currently slow
...
- API test suite reactivated by Andrew Woods
- a lot of tests are already passing
...
- Docker - Thomas and Danny finishing fcrepo-docker, scripts for building it.
- when fcrepo deployment is complete, it will deploy to sonatype, clone fcrepo-docker and run it
- Didn't use docker actions because they are triggered by commits rather than complete deployments
- Docker - Thomas and Danny finishing fcrepo-docker, scripts for building it.
- May Sprint wrap-up
- Simple search project started, started code and specification
- Documented, still need to transfer it to the wiki
- Code started, initial endpoints in a PR
- Migration utils
- PR to produce fedora 6 objects or ocfl without fedora aspects
- Peter ran Fedora 6 on some migrated Fedora 3 content
- There is a University of Wisconsin test data set which will be made available
- PR to produce fedora 6 objects or ocfl without fedora aspects
- WebAC
- Done, pending feedback
- Difficult to get the base uri in while still using Shiro due to the type of filter class, but there is a similar
- Could use some caching, it would reload webacs multiple times per request
- Some followups:
- Not getting all rdf:types back to match on accessToClass -
Jira server DuraSpace JIRA serverId c815ca92-fd23-34c2-8fe3-956808caf8c5 key FCREPO-3279 - Content-type with charset causes it to be a binary -
- Not getting all rdf:types back to match on accessToClass -
- Simple search project started, started code and specification
Jira server DuraSpace JIRA serverId c815ca92-fd23-34c2-8fe3-956808caf8c5 key FCREPO-
...
3312
- Some tests ignored pending other tickets:
- PATCH requests are not parsed with the HttpRdfService so internal identifiers are not stored
Jira server DuraSpace JIRA serverId c815ca92-fd23-34c2-8fe3-956808caf8c5 key FCREPO-
- PATCH requests are not parsed with the HttpRdfService so internal identifiers are not stored
...
3311 - DELETE DATA sparql-updates appear to succeed but don’t happen
Jira server DuraSpace JIRA serverId c815ca92-fd23-34c2-8fe3-956808caf8c5 key FCREPO-3310
- Testing
- Andrew covered transactions
- Published results from running API test suite
- Requires a PR to update some dependencies due to java 11
- Tickets in review
- 3302 - Autoversioning as default for fcrepo6, whereas before it defaulted to off
- 3304 - Trimmed out some parts of the PR description template
- Demo
- Migration utils changes
- Database support
- Need to support mysql and postgres for production indexes. For testing, using h2.
- This will require differences in SQL operations per database
- OCFL client - detects what datasource it is to determine what database it is. Fedora then decides how to configure itself
- Determine if we need separate classes per index implementation
- Will start by targeting mysql and postgres
- Still need to move mapping of ocfl to fedora ids into database, it is still in memory. Danny will most likely work on this.
- Should the default h2 implementation write to disk?
- Need to support mysql and postgres for production indexes. For testing, using h2.
- Configuration
- Currently two ways to configure
- fcrepo-config.xml - spring context file, with system property overrides. Sometimes modified, sometimes system properties used
- System properties - sometimes used in code
- Previously there was repository.json, including db connection info, storage path, etc
- Proposal
- On startup, read property files, then use switches from these properties to determine what to load. Don't require spring context modification.
- Can provide the properties either via this file or via commandline properties
- Intent - improve usability of configuration
- Currently two ways to configure
Alignment on "Fedora OCFL Storage"
Peter Winckles : summarizing proposal from https://pad.disroot.org/p/874NsxcjLLAAwgIRg2kh
- OCFL objects should be transparent → files on disk match expectations of users what should be in that object
- handle conflicting filenames in OCFL storage, 3 approaches:
- adding a reserved prefix/suffix → users would be unable to create resources with that prefix/suffix
- certain files created by fedora will have that prefix/suffix
- store system generated files in separate directory
- not outlined in document
- downside: more directories
- resource is never in the OCFL object root directory → might be unexpected by users
- no expectation where a ressource is stored
- Fedora would have to check the resource headers to find conflicts
- conflicts are resolved by adding a mapping to the resource headers (if a file needs to be stored under a different name)
- most of the time, files are exactly where they should be, unless there is a collision
- adding a reserved prefix/suffix → users would be unable to create resources with that prefix/suffix
- approaches should be discussed in separate meeting
- main question: transparency of ocfl vs. easier to handle implementation
- Ben Cail favors solution with separate directories
- discussion related to handling Vanilla OCFL –> one approach here is to treat all files Vanilla OCFL objects as binaries
- proposal by Andrew Woods : don't replicate the fedora id into the filename, but use fixed names
- Jared Whiklo: might lead to conflicts with binaries
Remove Fedora-related JMS messaging headers
Not discussed this week.
Containment Index
Not discussed this week.
Change versioning default to opt-out of auto-versioning?
Not discussed this week.
Actions
- Danny Bernstein to ensure that a JIRA exists for scenario of transaction does not succeed completely, but rollback does succeed (see: 187172642 2020-05-14 - Fedora Tech Meeting)
- Peter Winckles to create a JIRA to investigate support for optimistic locking and mutable head (see: 187172642 2020-05-14 - Fedora Tech Meeting)
- Who: Clarify in documentation that multiple simultaneous writes to OCFL are not supported
- Who: After team has a chance to comment, send Ghost Node idea to general community for feedback
- Who: Decide who works on what in the next sprint
- Thomas Bernhart Update some of documentation pages for Fedora 6 (with findings from building the docker container)
- Danny Bernstein Create ticket related to caching webacs
- Danny Bernstein Create ticket to determine how we want to handle differences between index implementations