Project

General

Profile

Bug #3828

Værkmatch har hukommelse, herunder knappen "Andre materialetyper" (fortsat fra #2223)

Added by Gitte Barlach about 1 year ago. Updated about 1 year ago.

Status:
Resolved (tag version)
Priority:
High
Assignee:
Target version:
Estimated time:
URL med eksempel:
Kategorier:
Søgning - Materialevisning, Driftsvedligehold - Refaktorering (Opdatering af kodebasen)

Description

(fortsat fra #2223)

Testet på upgrade-29 med 4.5.0-rc2

Knappen "Andre materialetyper" på materialevisningen vises tilsyneladende kun for indloggede brugere. 

Har testet med flg. titler

https://upgrade-29.ddbcms.dk/ting/object/870970-basis%3A26519152 
https://upgrade-29.ddbcms.dk/ting/object/870970-basis%3A26684307
https://upgrade-29.ddbcms.dk/ting/object/870970-basis%3A51980190
https://upgrade-29.ddbcms.dk/ting/object/870970-basis%3A27073301

Skærmbillede 2018-09-13 11.22.19.png (204 KB) Skærmbillede 2018-09-13 11.22.19.png knappen "Andre materialetyper" vises kun for indloggede brugere Gitte Barlach, 09/13/2018 11:27 AM
Skærmbillede 2018-09-13 11.26.41.png (224 KB) Skærmbillede 2018-09-13 11.26.41.png knappen "Andre materialetyper" vises ikke for anonyme brugere Gitte Barlach, 09/13/2018 11:27 AM
Screen Shot 2018-09-18 at 13.36.36.png (59.7 KB) Screen Shot 2018-09-18 at 13.36.36.png Jesper Kristensen, 09/18/2018 01:37 PM
Screen Shot 2018-09-18 at 13.36.42.png (94.1 KB) Screen Shot 2018-09-18 at 13.36.42.png Jesper Kristensen, 09/18/2018 01:37 PM
Screen Shot 2018-09-18 at 13.36.46.png (78.5 KB) Screen Shot 2018-09-18 at 13.36.46.png Jesper Kristensen, 09/18/2018 01:37 PM
Screen Shot 2018-09-18 at 13.36.53.png (78.5 KB) Screen Shot 2018-09-18 at 13.36.53.png Jesper Kristensen, 09/18/2018 01:37 PM
faust-list-for-get-object.txt (10.2 KB) faust-list-for-get-object.txt Simon Holt, 11/09/2018 12:58 PM

History

#1 Updated by Jesper Kristensen about 1 year ago

Har prøvet alle 4 links og de har alle "Andre materialetyper" knapper...

Og kan heller ikke genskabe det på en lokal installation.

#2 Updated by Gitte Barlach about 1 year ago

har sakset Steens kommentar fra #2223:

Visning af knappen "Andre materialetyper" eller ikke kan ses på denne måde:

  1. Ha' et faustnummer med flere materialer, f.eks. 26752310
  2. Slet evt. cachen for at være sikker der ikke er andet der påvirker testen (eller vælg et faust som ikke er brugt for nylig)
  3. Hent siden https://upgrade-29.ddbcms.dk/ting/object/870970-basis%3A26752310
  4. Hent siden https://upgrade-29.ddbcms.dk/ting/object/870970-basis:26752310 - alternativ kan man hente https://upgrade-29.ddbcms.dk/ting/object/870970-basis%3A26752310?xxxx - altså samme post i alle 3 tilfælde - men vi forbigår varnish, da det er forskellige urler.

Man kan bytte rundt på rækkefølgen af urlerne som man lyster - knappen "Andre materialetyper" vises kun første gang i pkt 3.

 

#3 Updated by Rolf Madsen about 1 year ago

  • Target version changed from Release 29-2 - Bugfixes (7.x-4.5.0) to Release 30 - Bugfixes

#4 Updated by Gitte Barlach about 1 year ago

  • Status changed from Need more info to Ready for development
  • Assignee changed from Gitte Barlach to Jesper Kristensen

#5 Updated by Gitte Barlach about 1 year ago

  • Subject changed from Knappen "Andre materialetyper" vises kun for indloggede brugere to Værkmach har hukommelse, herunder knappen "Andre materialetyper" (fortsat fra #2223)

#6 Updated by Gitte Barlach about 1 year ago

  • Priority changed from Normal to High

#7 Updated by Christel Krabbenhøft about 1 year ago

  • Subject changed from Værkmach har hukommelse, herunder knappen "Andre materialetyper" (fortsat fra #2223) to Værkmatch har hukommelse, herunder knappen "Andre materialetyper" (fortsat fra #2223)

#8 Updated by Gitte Barlach about 1 year ago

  • Assignee changed from Jesper Kristensen to Thomas Hansen

Håber du kan kigge på denne, Thomas

#9 Updated by Thomas Hansen about 1 year ago

@gitte

Jeg har prøvet på en lokal installation og kan ikke reproducere. Hvornår er https://upgrade-29.ddbcms.dk/ sidst opdateret?

#10 Updated by Gitte Barlach about 1 year ago

Hej Thomas
Undskyld! Jeg burde have gjort opmærksom på at nyeste release ligger på https://upgrade-fbs.ddbcms.dk/
(vi har tidligere anvendt 29-miljøet, da vi testede 2 releases parallelt; et er dog ikke tilfældet længere)

#11 Updated by Thomas Hansen about 1 year ago

@gitte

Men jeg kan ikke reproducere det lokalt. Så enten er problemet uforvarende blevet fikset, eller også ligger problemet udenfor koden.

Hvad er det precis der ligger på https://upgrade-fbs.ddbcms.dk/ ? Jeg kører jo bare med master lokalt.

#12 Updated by Rolf Madsen about 1 year ago

https://upgrade-fbs.ddbcms.dk/ kører Ding 2 (ding2-7.x-4.6.0-rc1).

#13 Updated by Thomas Hansen about 1 year ago

Har lige prøvet igen med forskellige materialer i "Løgnhalsen fra Umbrien : roman", "Mærkedage : en historie" og "Harry Potter og Flammernes Pokal" og der var altid en "andre materialetyper" knap...

Har prøvet med det friskeste af Kaspers nye database dumps.

Lidt svært at debugge en bug jeg ikke kan se.

#14 Updated by Simon Holt about 1 year ago

Jeg kan konsekvent genskabe problemet ved at følge punkterne i https://platform.dandigbib.org/issues/3828#note-2.

Og har fundet fejlen (i dette tilfælde).

Det lader til at opensearch cacher de manifestationer som værker, som bliver hentet ned pga. af kaldet til ding_provider_build_entity_id(), der bliver kaldt ved det efterfølgende AJAX-request (til af få opstillingerne) efter først request. Derfor forsvinder de andre materialetyper efter andet request, der går igennem cachen, fordi den henter et værk fra cachen, som egentlig er en manifestation kun indeholdende et objekt.

Man kan let se, at det er det, der er problemet, ved at udkommentere koden der kalder ding_provider_build_entity_id() i fbs_availability_holdings().

Løsningen (i dette tilfælde) er, at ding_provider_build_entity_id begynder at bruge getObject request i stedet, der nu understøtter at vi kan hente flere objekter. Således undgår vi, at de objekter caches som værker.

Sidder lige nu og eksperimentere lidt med det og kunne godt tænke mig at vide, om nogen er bekendt med en grænse for hvor mange objekter man kan hente ned ad gangen? Da vi brugte søge-request var der nemlig en grænse på 50 og tænkte det måske også kunne være tilfældet for getObject? I så fald er der ikke taget højde for det i den nye ting_get_objects() metoder, der anvender getObject (i stedet for search request, som før #2223).

#15 Updated by Simon Holt about 1 year ago

Jeg har ikke undersøgt det nærmere, men jeg formoder, at når opensearch kan finde på at cache ukomplette værker her, så kan den vel også finde på at gøre det ved normale søgninger. Så tænker det med at værkmatch har hukommelse egentlig slet ikke er løst?

#16 Updated by Simon Holt about 1 year ago

Nå, men jeg har lige prøvet getObject med en gigantisk liste med faust-numre. Der er over 200. Se vedhæftning (den er lige til at sætte ind i test request på: https://opensearch.addi.dk/b3.5_5.0/).

Jeg får følgende fejl: <error>getObject can fetch up to 200 records. </error>

Så hvis man smider mere end 200 id'er til opensearch_get_objects() fejler den helt og returnerer ikke noget. Det bør håndteres og skal i hvert fald håndteres ift. ding_provider_build_entityid().

[UPDATE]: Det ser ud til den reelt kun understøtter 169 objekter ad gangen. Med det samme man begynder at tilføje flere faust/pid'er efter dette begynder den at fejle. Man får ikke den ovenståene error, men der står inaccesible record ved alle posterne og der er ingen informationer. Jeg tænker det må være en bug og at det er meningen at den skal kunne understøtte 200.

#17 Updated by Rolf Madsen about 1 year ago

Jeg sender problemet i https://platform.dandigbib.org/issues/3828#note-16 videre til infrastrukturudvikling!

#18 Updated by Simon Holt about 1 year ago

Så er der PR, hvor vi går fra at bruge søgning til getObject når faust oversættes til pid:

https://github.com/ding2/ding2/pull/1261

https://github.com/ding2/ting-client/pull/25 (nødvendig ting-client rettelse)

Men vil gerne pointere, at der altså stadig kan være problemer med værkmatch har hukommelse, når opensearch tilsyneladende kan finde på at cache ukomplette værker. Men ovenstående rettelse vil gøre så det i det mindste ikke sker hver eneste gang, man viser en post. Vil også sige det er en bedre løsning at bruge getObject end en lidt hacket søgning.

#19 Updated by Simon Holt about 1 year ago

Jeg har indtil videre rettet til så der ikke hentes mere end 100 objekter ad gangen for at være på den sikre side. Men kan godt være vi bare skal skrue den op til 200, når fejlen omtalt i #note-16 rettes i opensearch.

#20 Updated by Simon Holt about 1 year ago

  • Status changed from Ready for development to Needs code review
  • Assignee changed from Thomas Hansen to Gitte Barlach

Efter at have testet lidt med nogle søgninger, ser det godt nok ud til at ukomplette værker ikke caches når man søger.

Så tror måske den her er løst med ovenstående rettelser og sætter den derfor til code review.

Hvis nogle observerer ukomplette værker i andre tilfælde må vi have kigget på det igen. Det her fikser i hvert fald den situation, der er beskrevet i sagen her i #note-2.

#21 Updated by Gitte Barlach about 1 year ago

  • Assignee changed from Gitte Barlach to Kasper Garnæs

#22 Updated by Gitte Barlach about 1 year ago

  • Assignee changed from Kasper Garnæs to Jesper Kristensen

#23 Updated by Gitte Barlach about 1 year ago

  • Assignee changed from Jesper Kristensen to Jørgen Nielsen

#24 Updated by Jørgen Nielsen about 1 year ago

  • Status changed from Needs code review to Reviewed
  • Assignee changed from Jørgen Nielsen to Gitte Barlach

reviewet og godkendt

#25 Updated by Kasper Garnæs about 1 year ago

  • Status changed from Reviewed to Technical test

Merged.

#26 Updated by Gitte Barlach about 1 year ago

  • Status changed from Technical test to Resolved (tag version)

Testet og godkendt på upgrade-fbs med 4.6.0-rc2

Jeg har fulgt Steens opskrift i kommentar 2, og jeg får nu knappen "Andre materialetyper" hver gang i alle de nævnte tilfælde. 

Also available in: Atom PDF