mirror of
https://github.com/alanorth/cgspace-notes.git
synced 2024-11-30 02:18:19 +01:00
421 lines
19 KiB
HTML
421 lines
19 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en">
|
|
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
|
|
|
<meta property="og:title" content="May, 2017" />
|
|
<meta property="og:description" content="2017-05-01 ICARDA apparently started working on CG Core on their MEL repository They have done a few cg.* fields, but not very consistent and even copy some of CGSpace items: https://mel.cgiar.org/xmlui/handle/20.500.11766/6911?show=full https://cgspace.cgiar.org/handle/10568/73683 2017-05-02 Atmire got back about the Workflow Statistics issue, and apparently it’s a bug in the CUA module so they will send us a pull request 2017-05-04 Sync DSpace Test with database and assetstore from CGSpace Re-deploy DSpace Test with Atmire’s CUA patch for workflow statistics, run system updates, and restart the server Now I can see the workflow statistics and am able to select users, but everything returns 0 items Megan says there are still some mapped items are not appearing since last week, so I forced a full index-discovery -b Need to remember to check if the collection has more items (currently 39 on CGSpace, but 118 on the freshly reindexed DSPace Test) tomorrow: https://cgspace." />
|
|
<meta property="og:type" content="article" />
|
|
<meta property="og:url" content="https://alanorth.github.io/cgspace-notes/2017-05/" />
|
|
|
|
|
|
|
|
<meta property="article:published_time" content="2017-05-01T16:21:52+02:00"/>
|
|
<meta property="article:modified_time" content="2017-05-18T01:27:13+03:00"/>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<meta name="twitter:card" content="summary"/>
|
|
|
|
|
|
|
|
<meta name="twitter:text:title" content="May, 2017"/>
|
|
<meta name="twitter:title" content="May, 2017"/>
|
|
<meta name="twitter:description" content="2017-05-01 ICARDA apparently started working on CG Core on their MEL repository They have done a few cg.* fields, but not very consistent and even copy some of CGSpace items: https://mel.cgiar.org/xmlui/handle/20.500.11766/6911?show=full https://cgspace.cgiar.org/handle/10568/73683 2017-05-02 Atmire got back about the Workflow Statistics issue, and apparently it’s a bug in the CUA module so they will send us a pull request 2017-05-04 Sync DSpace Test with database and assetstore from CGSpace Re-deploy DSpace Test with Atmire’s CUA patch for workflow statistics, run system updates, and restart the server Now I can see the workflow statistics and am able to select users, but everything returns 0 items Megan says there are still some mapped items are not appearing since last week, so I forced a full index-discovery -b Need to remember to check if the collection has more items (currently 39 on CGSpace, but 118 on the freshly reindexed DSPace Test) tomorrow: https://cgspace."/>
|
|
|
|
<meta name="generator" content="Hugo 0.21-DEV" />
|
|
|
|
|
|
|
|
<script type="application/ld+json">
|
|
{
|
|
"@context": "http://schema.org",
|
|
"@type": "BlogPosting",
|
|
"headline": "May, 2017",
|
|
"url": "https://alanorth.github.io/cgspace-notes/2017-05/",
|
|
"wordCount": "1479",
|
|
"datePublished": "2017-05-01T16:21:52+02:00",
|
|
"dateModified": "2017-05-18T01:27:13+03:00",
|
|
"author": {
|
|
"@type": "Person",
|
|
"name": "Alan Orth"
|
|
},
|
|
"keywords": "Notes"
|
|
}
|
|
</script>
|
|
|
|
|
|
|
|
<link rel="canonical" href="https://alanorth.github.io/cgspace-notes/2017-05/">
|
|
|
|
<title>May, 2017 | CGSpace Notes</title>
|
|
|
|
<!-- combined, minified CSS -->
|
|
<link href="https://alanorth.github.io/cgspace-notes/css/style.css" rel="stylesheet" integrity="sha384-CBHEXFKdMsTRFhEu0HSP9oETZoVpnz1mozAPqhfpxMQkda7lNJlqsQdYB30287Ka" crossorigin="anonymous">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
</head>
|
|
|
|
<body>
|
|
|
|
<div class="blog-masthead">
|
|
<div class="container">
|
|
<nav class="nav blog-nav">
|
|
<a class="nav-link " href="https://alanorth.github.io/cgspace-notes/">Home</a>
|
|
|
|
|
|
</nav>
|
|
</div>
|
|
</div>
|
|
|
|
<header class="blog-header">
|
|
<div class="container">
|
|
<h1 class="blog-title"><a href="https://alanorth.github.io/cgspace-notes/" rel="home">CGSpace Notes</a></h1>
|
|
<p class="lead blog-description">Documenting day-to-day work on the <a href="https://cgspace.cgiar.org">CGSpace</a> repository.</p>
|
|
</div>
|
|
</header>
|
|
|
|
<div class="container">
|
|
<div class="row">
|
|
<div class="col-sm-8 blog-main">
|
|
|
|
|
|
|
|
|
|
<article class="blog-post">
|
|
<header>
|
|
<h2 class="blog-post-title"><a href="https://alanorth.github.io/cgspace-notes/2017-05/">May, 2017</a></h2>
|
|
<p class="blog-post-meta"><time datetime="2017-05-01T16:21:52+02:00">Mon May 01, 2017</time> by Alan Orth in
|
|
|
|
<i class="fa fa-tag" aria-hidden="true"></i> <a href="/cgspace-notes/tags/notes" rel="tag">Notes</a>
|
|
|
|
</p>
|
|
</header>
|
|
|
|
|
|
<h2 id="2017-05-01">2017-05-01</h2>
|
|
|
|
<ul>
|
|
<li>ICARDA apparently started working on CG Core on their MEL repository</li>
|
|
<li>They have done a few <code>cg.*</code> fields, but not very consistent and even copy some of CGSpace items:
|
|
|
|
<ul>
|
|
<li><a href="https://mel.cgiar.org/xmlui/handle/20.500.11766/6911?show=full">https://mel.cgiar.org/xmlui/handle/20.500.11766/6911?show=full</a></li>
|
|
<li><a href="https://cgspace.cgiar.org/handle/10568/73683">https://cgspace.cgiar.org/handle/10568/73683</a></li>
|
|
</ul></li>
|
|
</ul>
|
|
|
|
<h2 id="2017-05-02">2017-05-02</h2>
|
|
|
|
<ul>
|
|
<li>Atmire got back about the Workflow Statistics issue, and apparently it’s a bug in the CUA module so they will send us a pull request</li>
|
|
</ul>
|
|
|
|
<h2 id="2017-05-04">2017-05-04</h2>
|
|
|
|
<ul>
|
|
<li>Sync DSpace Test with database and assetstore from CGSpace</li>
|
|
<li>Re-deploy DSpace Test with Atmire’s CUA patch for workflow statistics, run system updates, and restart the server</li>
|
|
<li>Now I can see the workflow statistics and am able to select users, but everything returns 0 items</li>
|
|
<li>Megan says there are still some mapped items are not appearing since last week, so I forced a full <code>index-discovery -b</code></li>
|
|
<li>Need to remember to check if the collection has more items (currently 39 on CGSpace, but 118 on the freshly reindexed DSPace Test) tomorrow: <a href="https://cgspace.cgiar.org/handle/10568/80731">https://cgspace.cgiar.org/handle/10568/80731</a></li>
|
|
</ul>
|
|
|
|
<h2 id="2017-05-05">2017-05-05</h2>
|
|
|
|
<ul>
|
|
<li>Discovered that CGSpace has ~700 items that are missing the <code>cg.identifier.status</code> field</li>
|
|
<li>Need to perhaps try using the “required metadata” curation task to find fields missing these items:</li>
|
|
</ul>
|
|
|
|
<pre><code>$ [dspace]/bin/dspace curate -t requiredmetadata -i 10568/1 -r - > /tmp/curation.out
|
|
</code></pre>
|
|
|
|
<ul>
|
|
<li>It seems the curation task dies when it finds an item which has missing metadata</li>
|
|
</ul>
|
|
|
|
<h2 id="2017-05-06">2017-05-06</h2>
|
|
|
|
<ul>
|
|
<li>Add “Blog Post” to <code>dc.type</code></li>
|
|
<li>Create ticket on Atmire tracker to ask about commissioning them to develop the feature to expose ORCID via REST/OAI: <a href="https://tracker.atmire.com/tickets-cgiar-ilri/view-ticket?id=510">https://tracker.atmire.com/tickets-cgiar-ilri/view-ticket?id=510</a></li>
|
|
<li>According to the <a href="https://wiki.duraspace.org/display/DSDOC5x/Curation+System">DSpace curation docs</a> the fact that the <code>requiredmetadata</code> curation task stops when it finds a missing metadata field is by design</li>
|
|
</ul>
|
|
|
|
<h2 id="2017-05-07">2017-05-07</h2>
|
|
|
|
<ul>
|
|
<li>Testing one replacement for CCAFS Flagships (<code>cg.subject.ccafs</code>), first changed in the submission forms, and then in the database:</li>
|
|
</ul>
|
|
|
|
<pre><code>$ ./fix-metadata-values.py -i ccafs-flagships-may7.csv -f cg.subject.ccafs -t correct -m 210 -d dspace -u dspace -p fuuu
|
|
</code></pre>
|
|
|
|
<ul>
|
|
<li>Also, CCAFS wants to re-order their flagships to prioritize the Phase II ones</li>
|
|
<li>Waiting for feedback from CCAFS, then I can merge <a href="https://github.com/ilri/DSpace/pull/320">#320</a></li>
|
|
</ul>
|
|
|
|
<h2 id="2017-05-08">2017-05-08</h2>
|
|
|
|
<ul>
|
|
<li>Start working on CGIAR Library migration</li>
|
|
<li>We decided to use AIP export to preserve the hierarchies and handles of communities and collections</li>
|
|
<li>When ingesting some collections I was getting <code>java.lang.OutOfMemoryError: GC overhead limit exceeded</code>, which can be solved by disabling the GC timeout with <code>-XX:-UseGCOverheadLimit</code></li>
|
|
<li>Other times I was getting an error about heap space, so I kept bumping the RAM allocation by 512MB each time (up to 4096m!) it crashed</li>
|
|
<li>This leads to tens of thousands of abandoned files in the assetstore, which need to be cleaned up using <code>dspace cleanup -v</code>, or else you’ll run out of disk space</li>
|
|
<li>In the end I realized it’s better to use submission mode (<code>-s</code>) to ingest the community object as a single AIP without its children, followed by each of the collections:</li>
|
|
</ul>
|
|
|
|
<pre><code>$ export JAVA_OPTS="-Dfile.encoding=UTF-8 -Xmx2048m -XX:-UseGCOverheadLimit"
|
|
$ [dspace]/bin/dspace packager -s -o ignoreHandle=false -t AIP -e some@user.com -p 10568/87775 /home/aorth/10947-1/10947-1.zip
|
|
$ for collection in /home/aorth/10947-1/COLLECTION@10947-*; do [dspace]/bin/dspace packager -s -o ignoreHandle=false -t AIP -e some@user.com -p 10947/1 $collection; done
|
|
$ for item in /home/aorth/10947-1/ITEM@10947-*; do [dspace]/bin/dspace packager -r -f -u -t AIP -e some@user.com $item; done
|
|
</code></pre>
|
|
|
|
<ul>
|
|
<li>Note that in submission mode DSpace ignores the handle specified in <code>mets.xml</code> in the zip file, so you need to turn that off with <code>-o ignoreHandle=false</code></li>
|
|
<li>The <code>-u</code> option supresses prompts, to allow the process to run without user input</li>
|
|
<li>Give feedback to CIFOR about their data quality:
|
|
|
|
<ul>
|
|
<li>Suggestion: uppercase dc.subject, cg.coverage.region, and cg.coverage.subregion in your crosswalk so they match CGSpace and therefore can be faceted / reported on easier</li>
|
|
<li>Suggestion: use CGSpace’s CRP names (cg.contributor.crp), see: dspace/config/input-forms.xml</li>
|
|
<li>Suggestion: clean up duplicates and errors in funders, perhaps use a controlled vocabulary like ours, see: dspace/config/controlled-vocabularies/dc-description-sponsorship.xml</li>
|
|
<li>Suggestion: use dc.type “Blog Post” instead of “Blog” for your blog post items (we are also adding a “Blog Post” type to CGSpace soon)</li>
|
|
<li>Question: many of your items use dc.document.uri AND cg.identifier.url with the same text value?</li>
|
|
</ul></li>
|
|
<li>Help Marianne from WLE with an Open Search query to show the latest WLE CRP outputs: <a href="https://cgspace.cgiar.org/open-search/discover?query=crpsubject:WATER%2C+LAND+AND+ECOSYSTEMS&sort_by=2&order=DESC">https://cgspace.cgiar.org/open-search/discover?query=crpsubject:WATER%2C+LAND+AND+ECOSYSTEMS&sort_by=2&order=DESC</a></li>
|
|
<li>This uses the webui’s item list sort options, see <code>webui.itemlist.sort-option</code> in <code>dspace.cfg</code></li>
|
|
<li>The equivalent Discovery search would be: <a href="https://cgspace.cgiar.org/discover?filtertype_1=crpsubject&filter_relational_operator_1=equals&filter_1=WATER%2C+LAND+AND+ECOSYSTEMS&submit_apply_filter=&query=&rpp=10&sort_by=dc.date.issued_dt&order=desc">https://cgspace.cgiar.org/discover?filtertype_1=crpsubject&filter_relational_operator_1=equals&filter_1=WATER%2C+LAND+AND+ECOSYSTEMS&submit_apply_filter=&query=&rpp=10&sort_by=dc.date.issued_dt&order=desc</a></li>
|
|
</ul>
|
|
|
|
<h2 id="2017-05-09">2017-05-09</h2>
|
|
|
|
<ul>
|
|
<li>The CGIAR Library metadata has some blank metadata values, which leads to <code>|||</code> in the Discovery facets</li>
|
|
<li>Clean these up in the database using:</li>
|
|
</ul>
|
|
|
|
<pre><code>dspace=# delete from metadatavalue where resource_type_id=2 and text_value=''
|
|
</code></pre>
|
|
|
|
<ul>
|
|
<li>I ended up running into issues during data cleaning and decided to wipe out the entire community and re-sync DSpace Test assetstore and database from CGSpace rather than waiting for the cleanup task to clean up</li>
|
|
<li>Hours into the re-ingestion I ran into more errors, and had to erase everything and start over <em>again</em>!</li>
|
|
<li>Now, no matter what I do I keep getting foreign key errors…</li>
|
|
</ul>
|
|
|
|
<pre><code>Caused by: org.postgresql.util.PSQLException: ERROR: duplicate key value violates unique constraint "handle_pkey"
|
|
Detail: Key (handle_id)=(80928) already exists.
|
|
</code></pre>
|
|
|
|
<ul>
|
|
<li>I think those errors actually come from me running the <code>update-sequences.sql</code> script while Tomcat/DSpace are running</li>
|
|
<li>Apparently you need to stop Tomcat!</li>
|
|
</ul>
|
|
|
|
<h2 id="2017-05-10">2017-05-10</h2>
|
|
|
|
<ul>
|
|
<li>Atmire says they are willing to extend the ORCID implementation, and I’ve asked them to provide a quote</li>
|
|
<li>I clarified that the scope of the implementation should be that ORCIDs are stored in the database and exposed via REST / API like other fields</li>
|
|
<li>Finally finished importing all the CGIAR Library content, final method was:</li>
|
|
</ul>
|
|
|
|
<pre><code>$ export JAVA_OPTS="-Dfile.encoding=UTF-8 -Xmx3072m -XX:-UseGCOverheadLimit"
|
|
$ [dspace]/bin/dspace packager -r -a -t AIP -o skipIfParentMissing=true -e some@user.com -p 10568/80923 /home/aorth/10947-2517/10947-2517.zip
|
|
$ [dspace]/bin/dspace packager -r -a -t AIP -o skipIfParentMissing=true -e some@user.com -p 10568/80923 /home/aorth/10947-2515/10947-2515.zip
|
|
$ [dspace]/bin/dspace packager -r -a -t AIP -o skipIfParentMissing=true -e some@user.com -p 10568/80923 /home/aorth/10947-2516/10947-2516.zip
|
|
$ [dspace]/bin/dspace packager -r -a -t AIP -o skipIfParentMissing=true -e some@user.com -p 10568/80923 /home/aorth/10947-1/10947-1.zip
|
|
$ [dspace]/bin/dspace packager -s -t AIP -o ignoreHandle=false -e some@user.com -p 10568/80923 /home/aorth/10947-1/10947-1.zip
|
|
$ for collection in /home/aorth/10947-1/COLLECTION@10947-*; do [dspace]/bin/dspace packager -s -o ignoreHandle=false -t AIP -e some@user.com -p 10947/1 $collection; done
|
|
$ for item in /home/aorth/10947-1/ITEM@10947-*; do [dspace]/bin/dspace packager -r -f -u -t AIP -e some@user.com $item; done
|
|
</code></pre>
|
|
|
|
<ul>
|
|
<li>Basically, import the smaller communities using recursive AIP import (with <code>skipIfParentMissing</code>)</li>
|
|
<li>Then, for the larger collection, create the community, collections, and items separately, ingesting the items one by one</li>
|
|
<li>The <code>-XX:-UseGCOverheadLimit</code> JVM option helps with some issues in large imports</li>
|
|
<li>After this I ran the <code>update-sequences.sql</code> script (with Tomcat shut down), and cleaned up the 200+ blank metadata records:</li>
|
|
</ul>
|
|
|
|
<pre><code>dspace=# delete from metadatavalue where resource_type_id=2 and text_value='';
|
|
</code></pre>
|
|
|
|
<h2 id="2017-05-13">2017-05-13</h2>
|
|
|
|
<ul>
|
|
<li>After quite a bit of troubleshooting with importing cleaned up data as CSV, it seems that there are actually <a href="https://en.wikipedia.org/wiki/Null_character">NUL</a> characters in the <code>dc.description.abstract</code> field (at least) on the lines where CSV importing was failing</li>
|
|
<li>I tried to find a way to remove the characters in vim or Open Refine, but decided it was quicker to just remove the column temporarily and import it</li>
|
|
<li>The import was successful and detected 2022 changes, which should likely be the rest that were failing to import before</li>
|
|
</ul>
|
|
|
|
<h2 id="2017-05-15">2017-05-15</h2>
|
|
|
|
<ul>
|
|
<li>To delete the blank lines that cause isses during import we need to use a regex in vim <code>g/^$/d</code></li>
|
|
<li>After that I started looking in the <code>dc.subject</code> field to try to pull countries and regions out, but there are too many values in there</li>
|
|
<li>Bump the Academicons dependency of the Mirage 2 themes from 1.6.0 to 1.8.0 because the upstream deleted the old tag and now the build is failing: <a href="https://github.com/ilri/DSpace/pull/321">#321</a></li>
|
|
<li>Merge changes to CCAFS project identifiers and flagships: <a href="https://github.com/ilri/DSpace/pull/320">#320</a></li>
|
|
<li>Run updates for CCCAFS flagships on CGSpace:</li>
|
|
</ul>
|
|
|
|
<pre><code>$ ./fix-metadata-values.py -i /tmp/ccafs-flagships-may7.csv -f cg.subject.ccafs -t correct -m 210 -d dspace -u dspace -p 'fuuu'
|
|
</code></pre>
|
|
|
|
<ul>
|
|
<li><p>These include:</p>
|
|
|
|
<ul>
|
|
<li>GENDER AND SOCIAL DIFFERENTIATION→GENDER AND SOCIAL INCLUSION</li>
|
|
<li>MANAGING CLIMATE RISK→CLIMATE SERVICES AND SAFETY NETS</li>
|
|
</ul></li>
|
|
|
|
<li><p>Re-deploy CGSpace and DSpace Test and run system updates</p></li>
|
|
|
|
<li><p>Reboot DSpace Test</p></li>
|
|
|
|
<li><p>Fix cron jobs for log management on DSpace Test, as they weren’t catching <code>dspace.log.*</code> files correctly and we had over six months of them and they were taking up many gigs of disk space</p></li>
|
|
</ul>
|
|
|
|
<h2 id="2017-05-16">2017-05-16</h2>
|
|
|
|
<ul>
|
|
<li>Discuss updates to WLE themes for their Phase II</li>
|
|
<li>Make an issue to track the changes to <code>cg.subject.wle</code>: <a href="https://github.com/ilri/DSpace/issues/322">#322</a></li>
|
|
</ul>
|
|
|
|
<h2 id="2017-05-17">2017-05-17</h2>
|
|
|
|
<ul>
|
|
<li>Looking into the error I get when trying to create a new collection on DSpace Test:</li>
|
|
</ul>
|
|
|
|
<pre><code>ERROR: duplicate key value violates unique constraint "handle_pkey" Detail: Key (handle_id)=(84834) already exists.
|
|
</code></pre>
|
|
|
|
<ul>
|
|
<li>I tried updating the sequences a few times, with Tomcat running and stopped, but it hasn’t helped</li>
|
|
<li>It appears item with <code>handle_id</code> 84834 is one of the imported CGIAR Library items:</li>
|
|
</ul>
|
|
|
|
<pre><code>dspace=# select * from handle where handle_id=84834;
|
|
handle_id | handle | resource_type_id | resource_id
|
|
-----------+------------+------------------+-------------
|
|
84834 | 10947/1332 | 2 | 87113
|
|
</code></pre>
|
|
|
|
<ul>
|
|
<li>Looks like the max <code>handle_id</code> is actually much higher:</li>
|
|
</ul>
|
|
|
|
<pre><code>dspace=# select * from handle where handle_id=(select max(handle_id) from handle);
|
|
handle_id | handle | resource_type_id | resource_id
|
|
-----------+----------+------------------+-------------
|
|
86873 | 10947/99 | 2 | 89153
|
|
(1 row)
|
|
</code></pre>
|
|
|
|
<ul>
|
|
<li>I’ve posted on the dspace-test mailing list to see if I can just manually set the <code>handle_seq</code> to that value</li>
|
|
<li>Actually, it seems I can manually set the handle sequence using:</li>
|
|
</ul>
|
|
|
|
<pre><code>dspace=# select setval('handle_seq',86873);
|
|
</code></pre>
|
|
|
|
<ul>
|
|
<li>After that I can create collections just fine, though I’m not sure if it has other side effects</li>
|
|
</ul>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
</article>
|
|
|
|
|
|
|
|
</div> <!-- /.blog-main -->
|
|
|
|
<aside class="col-sm-3 offset-sm-1 blog-sidebar">
|
|
|
|
|
|
|
|
<section class="sidebar-module">
|
|
<h4>Recent Posts</h4>
|
|
<ol class="list-unstyled">
|
|
|
|
|
|
<li><a href="/cgspace-notes/2017-05/">May, 2017</a></li>
|
|
|
|
<li><a href="/cgspace-notes/2017-04/">April, 2017</a></li>
|
|
|
|
<li><a href="/cgspace-notes/2017-03/">March, 2017</a></li>
|
|
|
|
<li><a href="/cgspace-notes/2017-02/">February, 2017</a></li>
|
|
|
|
<li><a href="/cgspace-notes/2017-01/">January, 2017</a></li>
|
|
|
|
</ol>
|
|
</section>
|
|
|
|
|
|
|
|
|
|
<section class="sidebar-module">
|
|
<h4>Links</h4>
|
|
<ol class="list-unstyled">
|
|
|
|
<li><a href="https://cgspace.cgiar.org">CGSpace</a></li>
|
|
|
|
<li><a href="https://dspacetest.cgiar.org">DSpace Test</a></li>
|
|
|
|
<li><a href="https://github.com/ilri/DSpace">CGSpace @ GitHub</a></li>
|
|
|
|
</ol>
|
|
</section>
|
|
|
|
</aside>
|
|
|
|
|
|
</div> <!-- /.row -->
|
|
</div> <!-- /.container -->
|
|
|
|
<footer class="blog-footer">
|
|
<p>
|
|
|
|
Blog template created by <a href="https://twitter.com/mdo">@mdo</a>, ported to Hugo by <a href='https://twitter.com/mralanorth'>@mralanorth</a>.
|
|
|
|
</p>
|
|
<p>
|
|
<a href="#">Back to top</a>
|
|
</p>
|
|
</footer>
|
|
|
|
</body>
|
|
|
|
</html>
|