4paradigm / 4paradigm/OpenMLDB
base and pre-aggr table may not be consistent if the leader changes
- Langage dominant
- C++
- Étoiles
- 1.7k
- Forks
- 331
- Merge moyen
- 12 j 12 h
- PR mergées (30 j)
- 1
Description
**Bug Description**
- leaders of base and pre-aggr tables: is always consistent
- followers of base and pre-aggr tables: not consistent. they are synced from leaders separately.
If there is a change in the leadership, it may cause in-consistency:
- the offset of base is not consistent with the offset of pre-aggr
- the leaders of base and pre-aggr will not be in the same tablet. The leader of pre-aggr table will never be updated.
**Expected Behavior**
Potential solutions:
- leaders of base and pre-aggr tables are not necessary to be in the same tablet
- offset checking before updating the pre-aggr table:
- if base > pre-aggr + 1, there may be some data lost in pre-aggr. have to manually update the pre-aggr until the base latest
- if base <= pre-aggr + 1, there may be some data lost in base. have to remove the new data from pre-aggr
In order not to affect the online service, the pre-aggr update should be done asynchronously in the background.
**Relation Case**
**Steps to Reproduce**
1.
2.
3.
4.
Guide de contribution
Ouvrir le guide de contribution
Piste de recherche
L'issue décrit un problème de cohérence entre les tables de base et de pré-agrégation lors des changements de leader dans une base de données distribuée. Étudiez les mécanismes d'élection du leader et de synchronisation des données dans le code source d'OpenMLDB, en vous concentrant sur la manière dont les offsets sont suivis et mis à jour. Recherchez les modules qui gèrent la réplication des tables, les transitions de leadership et les tâches d'agrégation en arrière-plan afin de comprendre le flux actuel et où l'incohérence apparaît.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- databases, machine-learning
- Domaine
- databases, distributed-systems
- Type d'issue
- Bug
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- À l'abandon
- Clarté
- À clarifier
- Accessibilité débutants
- 35/100