curran / curran/google-diff-match-patch

Replacing String with StringBuffer instances in patch_apply

Abierto
#55 0 comentarios 0 reacciones 0 asignados Ver en GitHub
auto-migrated Performance Type-Patch
Lenguaje dominante
Python
Estrellas
17
Forks
2
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

```
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)

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Línea de trabajo

Revisa el diff_match_patch.java.patch adjunto comparándolo con la implementación de Java e inspecciona primero el punto de entrada patch_apply. Confirma que los cambios propuestos en StringBuffer y INSERT/DELETE mantienen el comportamiento de la aplicación de parches y, al mismo tiempo, abordan los problemas de memoria y rendimiento con entradas grandes descritos en el issue.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
java
Área
performance
Tipo de issue
Refactorización
Dificultad
3/5
Tiempo estimado
1-2 días
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
35/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.