From 651148cf0a096754712b30772ca4112d1d31d7ac Mon Sep 17 00:00:00 2001 From: Alan Orth Date: Wed, 30 Nov 2022 18:21:20 +0300 Subject: [PATCH] Add notes for 2022-11-30 --- content/posts/2022-11.md | 23 ++++++++++++ docs/2022-11/index.html | 33 ++++++++++++++++-- docs/2022/11/postgres_locks_cgspace-day.png | Bin 0 -> 9956 bytes docs/categories/index.html | 2 +- docs/categories/notes/index.html | 2 +- docs/categories/notes/page/2/index.html | 2 +- docs/categories/notes/page/3/index.html | 2 +- docs/categories/notes/page/4/index.html | 2 +- docs/categories/notes/page/5/index.html | 2 +- docs/categories/notes/page/6/index.html | 2 +- docs/categories/notes/page/7/index.html | 2 +- docs/index.html | 2 +- docs/page/2/index.html | 2 +- docs/page/3/index.html | 2 +- docs/page/4/index.html | 2 +- docs/page/5/index.html | 2 +- docs/page/6/index.html | 2 +- docs/page/7/index.html | 2 +- docs/page/8/index.html | 2 +- docs/page/9/index.html | 2 +- docs/posts/index.html | 2 +- docs/posts/page/2/index.html | 2 +- docs/posts/page/3/index.html | 2 +- docs/posts/page/4/index.html | 2 +- docs/posts/page/5/index.html | 2 +- docs/posts/page/6/index.html | 2 +- docs/posts/page/7/index.html | 2 +- docs/posts/page/8/index.html | 2 +- docs/posts/page/9/index.html | 2 +- docs/sitemap.xml | 10 +++--- static/2022/11/postgres_locks_cgspace-day.png | Bin 0 -> 9956 bytes 31 files changed, 84 insertions(+), 34 deletions(-) create mode 100644 docs/2022/11/postgres_locks_cgspace-day.png create mode 100644 static/2022/11/postgres_locks_cgspace-day.png diff --git a/content/posts/2022-11.md b/content/posts/2022-11.md index b33395df1..8967de914 100644 --- a/content/posts/2022-11.md +++ b/content/posts/2022-11.md @@ -502,5 +502,28 @@ $ sort -k4,1 /tmp/duplicates.txt | \ - This worked very well, but there were some metadata values that were tripled or quadrupled, so it only deleted the first duplicate - I just ran it again two more times to find the last duplicates, now we have none! +- I also generated another SQL file with commands to update the last modified timestamps of these items: + +```console +$ awk -F'\t' '{print $4}' /tmp/duplicates.txt | sort -u | sed "s/^\(.*\)$/UPDATE item SET last_modified=NOW() WHERE uuid='\1';/" > /tmp/update-timestamp.sql +``` + +- Tezira said she was having trouble archiving submissions + - In the afternoon I looked and found a high number of locks: + +```console +$ psql -c 'SELECT * FROM pg_locks pl LEFT JOIN pg_stat_activity psa ON pl.pid = psa.pid;' | grep -o -E '(dspaceWeb|dspaceApi|dspaceCli)' | sort | uniq -c | sort -n + 60 dspaceCli + 176 dspaceApi + 1194 dspaceWeb +``` + +[!PostgreSQL database locks](/cgspace-notes/2022/11/postgres_locks_cgspace-day.png) + +- The timing looks suspiciously close to when I was running the batch updates on the ILRI community this morning. + - I restarted Tomcat and PostgreSQL and everything was back to normal +- I found some items on CGSpace in Dinka, Ndogo, and Bari languages, but the `dcterms.language` field was "other" + - That's so unfortunate! These languages are not in ISO 639-1, but they are in ISO 639-3, which uses Alpha 3 and has more space for languages + - I changed them from other to use the three-letter codes, and I will suggest to the CG Core group that we use ISO 639-3 in the future diff --git a/docs/2022-11/index.html b/docs/2022-11/index.html index 760762571..e8d2e4b71 100644 --- a/docs/2022-11/index.html +++ b/docs/2022-11/index.html @@ -24,7 +24,7 @@ I reverted the Cocoon autosave change because it was more of a nuissance that Pe - + @@ -54,9 +54,9 @@ I reverted the Cocoon autosave change because it was more of a nuissance that Pe "@type": "BlogPosting", "headline": "November, 2022", "url": "https://alanorth.github.io/cgspace-notes/2022-11/", - "wordCount": "3206", + "wordCount": "3401", "datePublished": "2022-11-01T09:11:36+03:00", - "dateModified": "2022-11-28T23:19:19+03:00", + "dateModified": "2022-11-30T12:35:31+03:00", "author": { "@type": "Person", "name": "Alan Orth" @@ -707,6 +707,33 @@ I reverted the Cocoon autosave change because it was more of a nuissance that Pe
  • I just ran it again two more times to find the last duplicates, now we have none!
  • +
  • I also generated another SQL file with commands to update the last modified timestamps of these items:
  • + +
    $ awk -F'\t' '{print $4}' /tmp/duplicates.txt | sort -u | sed "s/^\(.*\)$/UPDATE item SET last_modified=NOW() WHERE uuid='\1';/" > /tmp/update-timestamp.sql
    +
    +
    $ psql -c 'SELECT * FROM pg_locks pl LEFT JOIN pg_stat_activity psa ON pl.pid = psa.pid;' | grep -o -E '(dspaceWeb|dspaceApi|dspaceCli)' | sort | uniq -c | sort -n
    +     60 dspaceCli
    +    176 dspaceApi
    +   1194 dspaceWeb
    +

    !PostgreSQL database locks

    + diff --git a/docs/2022/11/postgres_locks_cgspace-day.png b/docs/2022/11/postgres_locks_cgspace-day.png new file mode 100644 index 0000000000000000000000000000000000000000..2c5651a8f3167b98b6cf5cec51ab43dc7dc06bfd GIT binary patch literal 9956 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 literal 0 HcmV?d00001 diff --git a/docs/categories/index.html b/docs/categories/index.html index 22e797200..bf81a4e96 100644 --- a/docs/categories/index.html +++ b/docs/categories/index.html @@ -10,7 +10,7 @@ - + diff --git a/docs/categories/notes/index.html b/docs/categories/notes/index.html index f8e5cee28..8635afcf6 100644 --- a/docs/categories/notes/index.html +++ b/docs/categories/notes/index.html @@ -10,7 +10,7 @@ - + diff --git a/docs/categories/notes/page/2/index.html b/docs/categories/notes/page/2/index.html index 49cdec66b..121554f1a 100644 --- a/docs/categories/notes/page/2/index.html +++ b/docs/categories/notes/page/2/index.html @@ -10,7 +10,7 @@ - + diff --git a/docs/categories/notes/page/3/index.html b/docs/categories/notes/page/3/index.html index 9be03b9fc..55821dacf 100644 --- a/docs/categories/notes/page/3/index.html +++ b/docs/categories/notes/page/3/index.html @@ -10,7 +10,7 @@ - + diff --git a/docs/categories/notes/page/4/index.html b/docs/categories/notes/page/4/index.html index 87a6d56d9..369eacc34 100644 --- a/docs/categories/notes/page/4/index.html +++ b/docs/categories/notes/page/4/index.html @@ -10,7 +10,7 @@ - + diff --git a/docs/categories/notes/page/5/index.html b/docs/categories/notes/page/5/index.html index 36b0fbf71..9cf2c444e 100644 --- a/docs/categories/notes/page/5/index.html +++ b/docs/categories/notes/page/5/index.html @@ -10,7 +10,7 @@ - + diff --git a/docs/categories/notes/page/6/index.html b/docs/categories/notes/page/6/index.html index 62f9b51e7..2ca576d1c 100644 --- a/docs/categories/notes/page/6/index.html +++ b/docs/categories/notes/page/6/index.html @@ -10,7 +10,7 @@ - + diff --git a/docs/categories/notes/page/7/index.html b/docs/categories/notes/page/7/index.html index 9a0975dc3..0b25b5a4f 100644 --- a/docs/categories/notes/page/7/index.html +++ b/docs/categories/notes/page/7/index.html @@ -10,7 +10,7 @@ - + diff --git a/docs/index.html b/docs/index.html index b32357b79..ddf182a42 100644 --- a/docs/index.html +++ b/docs/index.html @@ -10,7 +10,7 @@ - + diff --git a/docs/page/2/index.html b/docs/page/2/index.html index 33d09a9ac..bda9301db 100644 --- a/docs/page/2/index.html +++ b/docs/page/2/index.html @@ -10,7 +10,7 @@ - + diff --git a/docs/page/3/index.html b/docs/page/3/index.html index 7cbafaa0c..0815ab9ab 100644 --- a/docs/page/3/index.html +++ b/docs/page/3/index.html @@ -10,7 +10,7 @@ - + diff --git a/docs/page/4/index.html b/docs/page/4/index.html index a2e23b1ca..8ba30cf55 100644 --- a/docs/page/4/index.html +++ b/docs/page/4/index.html @@ -10,7 +10,7 @@ - + diff --git a/docs/page/5/index.html b/docs/page/5/index.html index 46cde0f30..141652f64 100644 --- a/docs/page/5/index.html +++ b/docs/page/5/index.html @@ -10,7 +10,7 @@ - + diff --git a/docs/page/6/index.html b/docs/page/6/index.html index bd430664f..44261954d 100644 --- a/docs/page/6/index.html +++ b/docs/page/6/index.html @@ -10,7 +10,7 @@ - + diff --git a/docs/page/7/index.html b/docs/page/7/index.html index 73bea5c9d..fce1d6044 100644 --- a/docs/page/7/index.html +++ b/docs/page/7/index.html @@ -10,7 +10,7 @@ - + diff --git a/docs/page/8/index.html b/docs/page/8/index.html index acd0ef2aa..041669ee9 100644 --- a/docs/page/8/index.html +++ b/docs/page/8/index.html @@ -10,7 +10,7 @@ - + diff --git a/docs/page/9/index.html b/docs/page/9/index.html index 00d2e4900..6f193f1d9 100644 --- a/docs/page/9/index.html +++ b/docs/page/9/index.html @@ -10,7 +10,7 @@ - + diff --git a/docs/posts/index.html b/docs/posts/index.html index 5b6fbbd93..a2201b88a 100644 --- a/docs/posts/index.html +++ b/docs/posts/index.html @@ -10,7 +10,7 @@ - + diff --git a/docs/posts/page/2/index.html b/docs/posts/page/2/index.html index d1cac4a9b..092fe8770 100644 --- a/docs/posts/page/2/index.html +++ b/docs/posts/page/2/index.html @@ -10,7 +10,7 @@ - + diff --git a/docs/posts/page/3/index.html b/docs/posts/page/3/index.html index 006837b81..6b7cd988f 100644 --- a/docs/posts/page/3/index.html +++ b/docs/posts/page/3/index.html @@ -10,7 +10,7 @@ - + diff --git a/docs/posts/page/4/index.html b/docs/posts/page/4/index.html index 7c41f8367..bdd442fb2 100644 --- a/docs/posts/page/4/index.html +++ b/docs/posts/page/4/index.html @@ -10,7 +10,7 @@ - + diff --git a/docs/posts/page/5/index.html b/docs/posts/page/5/index.html index 8cf54bcdb..51ff904d9 100644 --- a/docs/posts/page/5/index.html +++ b/docs/posts/page/5/index.html @@ -10,7 +10,7 @@ - + diff --git a/docs/posts/page/6/index.html b/docs/posts/page/6/index.html index 100a02916..69cc81b4e 100644 --- a/docs/posts/page/6/index.html +++ b/docs/posts/page/6/index.html @@ -10,7 +10,7 @@ - + diff --git a/docs/posts/page/7/index.html b/docs/posts/page/7/index.html index da0cdd183..2509a28fd 100644 --- a/docs/posts/page/7/index.html +++ b/docs/posts/page/7/index.html @@ -10,7 +10,7 @@ - + diff --git a/docs/posts/page/8/index.html b/docs/posts/page/8/index.html index 927f67323..b94161e29 100644 --- a/docs/posts/page/8/index.html +++ b/docs/posts/page/8/index.html @@ -10,7 +10,7 @@ - + diff --git a/docs/posts/page/9/index.html b/docs/posts/page/9/index.html index d0a5a14be..35e83b14b 100644 --- a/docs/posts/page/9/index.html +++ b/docs/posts/page/9/index.html @@ -10,7 +10,7 @@ - + diff --git a/docs/sitemap.xml b/docs/sitemap.xml index 0cafaa05e..2cbb4a700 100644 --- a/docs/sitemap.xml +++ b/docs/sitemap.xml @@ -3,19 +3,19 @@ xmlns:xhtml="http://www.w3.org/1999/xhtml"> https://alanorth.github.io/cgspace-notes/categories/ - 2022-11-28T23:19:19+03:00 + 2022-11-30T12:35:31+03:00 https://alanorth.github.io/cgspace-notes/ - 2022-11-28T23:19:19+03:00 + 2022-11-30T12:35:31+03:00 https://alanorth.github.io/cgspace-notes/categories/notes/ - 2022-11-28T23:19:19+03:00 + 2022-11-30T12:35:31+03:00 https://alanorth.github.io/cgspace-notes/2022-11/ - 2022-11-28T23:19:19+03:00 + 2022-11-30T12:35:31+03:00 https://alanorth.github.io/cgspace-notes/posts/ - 2022-11-28T23:19:19+03:00 + 2022-11-30T12:35:31+03:00 https://alanorth.github.io/cgspace-notes/2022-10/ 2022-10-31T16:59:47+03:00 diff --git a/static/2022/11/postgres_locks_cgspace-day.png b/static/2022/11/postgres_locks_cgspace-day.png new file mode 100644 index 0000000000000000000000000000000000000000..2c5651a8f3167b98b6cf5cec51ab43dc7dc06bfd GIT binary patch literal 9956 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 literal 0 HcmV?d00001