Compartir a través de


SQLiteDatabase.SqliteMaxLikePatternLength Campo

Definición

Longitud máxima de un patrón LIKE o GLOB El algoritmo de coincidencia de patrones usado en la implementación predeterminada like y GLOB de SQLite puede mostrar el rendimiento de O(N^2) (donde N es el número de caracteres del patrón) para determinados casos patológicos.

[Android.Runtime.Register("SQLITE_MAX_LIKE_PATTERN_LENGTH")]
public const int SqliteMaxLikePatternLength = 50000;
[<Android.Runtime.Register("SQLITE_MAX_LIKE_PATTERN_LENGTH")>]
val mutable SqliteMaxLikePatternLength : int

Valor de campo

Value = 50000
Atributos

Comentarios

Longitud máxima de un patrón LIKE o GLOB El algoritmo de coincidencia de patrones usado en la implementación predeterminada like y GLOB de SQLite puede mostrar el rendimiento de O(N^2) (donde N es el número de caracteres del patrón) para determinados casos patológicos. Para evitar ataques por denegación de servicio, la longitud del patrón LIKE o GLOB se limita a SQLITE_MAX_LIKE_PATTERN_LENGTH bytes. El valor predeterminado de este límite es 50000. Una estación de trabajo moderna puede evaluar incluso un patrón LIKE o GLOB patológico de 50000 bytes relativamente rápidamente. El problema de denegación de servicio solo entra en juego cuando la longitud del patrón llega a millones de bytes. Sin embargo, dado que los patrones LIKE o GLOB más útiles son, como máximo, unas docenas de bytes de longitud, es posible que los desarrolladores de aplicaciones cautelosos quieran reducir este parámetro a algo en el intervalo de unos cientos si saben que los usuarios externos pueden generar patrones arbitrarios.

Documentación de Java para android.database.sqlite.SQLiteDatabase.SQLITE_MAX_LIKE_PATTERN_LENGTH.

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el proyecto de código abierto de Android y se usan según los términos descritos en la licencia de atribución de Creative Commons 2.5.

Se aplica a