SAAB2017 / 3PP-tool

MAMF40 – Projekt årskurs 3
3 stars 2 forks source link

Tillägning av produkter och projekt fungerar inte #125

Closed theIDinside closed 6 years ago

theIDinside commented 6 years ago

Ändring i backend-API behövs. router.route('/add') behövs ändras för projects och products.

I funktionen behövs låsning av databasen, vid inläggning av produkter i project, komponenter i produkter osv. Så som det är nu, så görs tilläggning av komponenter och licenser, under låsning (SQL transaction) för att förhindra att någon annan samtidigt ska kunna ändra i databasen (ett kö system kanske borde implementeras - så som det är nu, kommer bara en error ges, ifall databasen är låst).

Jag kommer lägga till alla som assigness här, för att uppmärksamma på att ett eventuellt kösystem behövs implementeras för att förhindra dataraces (osv). Själva fixen av att se till att project.js samt products.js implementerar en SQL transaction är inte speciellt svår (har gjort det för components.js). Den biten löser jag.

theIDinside commented 6 years ago

Branchen fix-addproducts löser tilläggning av produkter (backend fix).

theIDinside commented 6 years ago

Efter forskning i hur databasen bör låsas vid skrivning, så är jag nu osäker på ifall det steg jag tagit är rätt. Det behövs därför stresstester (där ett hundratalas anslutningar kan göras samtidigt).

Jag lämnar därför denna issue öppen.