curran / curran/google-diff-match-patch
Replacing String with StringBuffer instances in patch_apply
- Langage dominant
- Python
- Étoiles
- 17
- Forks
- 2
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Description
```
We used this DiffMatchPatch code extensively for tracking differences between
versions of database objects. Some of our calls can generate more than 25k
patch strings that need to be applied to large chunks of text. In this instance
we where seeing severe performance issues and inefficient memory management
(even on Java 6).
This patch replaces Strings with StringBuffer and implements more efficient
INSERT & DELETE operations which drastically reduces memory usage for large
text strings.
```
Original issue reported on code.google.com by `chris.p....@gmail.com` on 4 Oct 2011 at 4:37
Attachments:
- [diff_match_patch.java.patch](https://storage.googleapis.com/google-code-attachments/google-diff-match-patch/issue-55/comment-0/diff_match_patch.java.patch)
Guide de contribution
Aucun guide de contribution indexé pour ce dépôt
Piste de recherche
Examinez le diff_match_patch.java.patch joint en le comparant à l’implémentation Java et inspectez d’abord le point d’entrée patch_apply. Confirmez que les modifications proposées pour StringBuffer et INSERT/DELETE préservent le comportement d’application des patchs tout en corrigeant les problèmes de mémoire et de performances avec les grandes entrées décrits dans l’issue.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- java
- Domaine
- performance
- Type d'issue
- Refactorisation
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 35/100