vault backup: 2025-03-18 08:19:12

This commit is contained in:
Marco Realacci 2025-03-18 08:19:12 +01:00
parent 04a3e0452d
commit f3f26b703d
2 changed files with 4 additions and 7 deletions

View file

@ -33,11 +33,7 @@
"state": { "state": {
"type": "pdf", "type": "pdf",
"state": { "state": {
"file": "Concurrent Systems/slides/class 5.pdf", "file": "Concurrent Systems/slides/class 5.pdf"
"page": 8,
"left": -23,
"top": 450,
"zoom": 0.652019002375297
}, },
"icon": "lucide-file-text", "icon": "lucide-file-text",
"title": "class 5" "title": "class 5"

View file

@ -147,7 +147,8 @@ X.read_T(i) :=
t_depend_T[Y] <- max{t_depend_T[Y], lc(XX).depend[Y]} t_depend_T[Y] <- max{t_depend_T[Y], lc(XX).depend[Y]}
# aggiorno la dipendenza da Y della transazione # aggiorno la dipendenza da Y della transazione
# perché solo per quelli NON nel read_set? # perché solo per quelli NON nel read_set?
# perch´ # perché se dovessi farlo con un Y nel read_set dovrei abortire
# per i motivi di sopra! (e quindi in caso avrei già abortito)
return lc(XX).val return lc(XX).val
@ -163,7 +164,7 @@ try_to_commit_T(i) :=
if ∃ Y ∈ read_set(T) s.t. t_dependT[Y] < YY.depend[Y] then if ∃ Y ∈ read_set(T) s.t. t_dependT[Y] < YY.depend[Y] then
release all locks release all locks
ABORT ABORT
# abortisco se ho letto un Y che è stato modificato dopo che io l'ho letto, giusto? # abortisco se ho letto un Y che è stato modificato dopo che io l'ho letto
∀ X ∈ write_set(T) do ∀ X ∈ write_set(T) do
t_dependT[X] <- XX.depend[X]+1 t_dependT[X] <- XX.depend[X]+1