Algorithmes Scnariss avec terminologie
officielle
Algorithme 1 : Read Access Intentions concurrentes
Entr é e : Actor A1 et Actor A2 d é clarent
chacun une Read Access Intention sur
l ’ objet O
- Ins é rer les intentions dans l ’
Intention Dependency Graph
- v a l u e r la compatibilit é s é mantique
- Si intentions Semantically Compatible
alors
- Commit Access Intention pour A1 et A2
Sinon
- Delay Execution ( placer en attente )
- Fin
Algorithme 2 : Read + Write Access Intention
Entr é e : Actor A1 d é clare une Read
Access Intention sur O
Actor A2 d é clare une Write Access
Intention sur O
- Ins é rer les intentions dans l ’
Intention Dependency Graph
- v a l u e r les conflits s é mantiques
- Si intentions Semantically
Incompatible alors
- Delay Execution pour l ’ intention
conflictuelle ( ex : A2 )
- Notifier l ’ Actor du conflit potentiel
Sinon
- Commit both intentions
1
- Rebalancer le graphe si n é cessaire
Algorithme 3 : Write Access Intentions concurrentes
Entr é e : A1 et A2 d é clarent une Write
Access Intention sur le m ^ e me objet O
- Ajouter les intentions dans l ’
Intention Dependency Graph
- D é tecter les Semantic Conflicts
- Si conflit critique alors
- Suspendre l ’ une des intentions via
Wait Queue
- Informer les Actors concern é s
Sinon
- Appliquer une strat é gie de Versioning
ou de Merge
- Rebalancer le graphe
Algorithme 4 : Modification dynamique d’une Access Intention
Entr é e : Actor A1 modifie son intention
de Read à Write Access
- Mettre à jour le n u d correspondant
dans l ’ Intention Dependency Graph
- R é é valuer les d é pendances et
compatibilit é s
- Si nouveau Semantic Conflict alors
- Appliquer strat é gie de d é lai , rollback
ou merge selon politique
- Rebalancer le graphe
Algorithme 5 : Annulation d’une Access Intention
Entr é e : Actor A1 retire son Access
Intention
- Supprimer le n u d A1 du Intention
Dependency Graph
- R é é valuer les acc è s en attente
- Commit les intentions pr é c é demment
bloqu é es si d é pendances lev é e