Excepciones

Nota: Se recomienda enfáticamente a los desarrolladores que compilan aplicaciones nuevas que usen la biblioteca cliente de NDB, ya que tiene muchas ventajas en comparación con esta biblioteca cliente, como el almacenamiento en caché automático de entidades mediante la API de Memcache. Si por el momento usas la biblioteca cliente de DB anterior, lee la Guía de migración de DB a NDB.

El paquete google.appengine.ext.db proporciona las siguientes clases de excepción:

exception Error()

Esta es la clase básica para todas las excepciones en este paquete.

exception BadArgumentError()
Se proporcionó un argumento incorrecto a un método de consulta.
exception BadFilterError()
Una string de filtro en la consulta no es válida.
exception BadKeyError()
La string de clave proporcionada no es una clave válida.
exception BadPropertyError()
La propiedad quizá no se creó porque su nombre no es una string.
exception BadQueryError()
La string de consulta no es una consulta válida.
exception BadRequestError()
La solicitud al servicio de almacén de datos tiene una o más propiedades no válidas. Esto es posible si una subclase de Model anula algunos métodos (como kind()) con una implementación incorrecta.
exception BadValueError()
No se le pudo asignar un valor a la propiedad porque no es válido para el tipo de propiedad.
exception ConfigurationError()
Una propiedad no se configuró correctamente.
exception DuplicatePropertyError()
Una definición de modelo tiene más de una propiedad con el mismo nombre.
exception InternalError()
Hubo un error interno en el servicio de almacén de datos. Esta excepción no necesariamente significa que la operación falló.
exception KindError()
La aplicación intentó usar una entidad de datos con una clase de modelo con la que no coincide.
exception NeedIndexError()
Se arroja cuando el SDK no encuentra un índice que coincida con una consulta que lo necesita. Verifica la Consola del administrador para administrar los índices y el archivo index.yaml.
exception NotSavedError()
Se realizó una acción que requiere que el objeto se guarde (coloque) en el almacén de datos, pero no se guardó.
exception PropertyError()
La propiedad de modelo referida no existe en el objeto de datos.
exception ReferencePropertyResolveError()
No existe el modelo al que hace referencia una ReferenceProperty. Consulta Referencias.
exception ReservedWordError()
Un modelo define una propiedad cuyo nombre no está permitido. Consulta Nombres de propiedad no permitidos.
exception Rollback()
Indica que una función en una transacción quiere revertir la transacción en vez de confirmarla. Cualquier excepción no detectada en una transacción provocará que esta se revierta. Esta clase de excepción es por conveniencia, cuando una función quiere revertir y no se aplica otra excepción.
exception Timeout()
Se arroja cuando la operación del almacén de datos excede la cantidad máxima de tiempo permitido para estas operaciones. Esta excepción no necesariamente significa que la operación falló.
exception TransactionFailedError()
La transacción o la operación del almacén de datos no se confirmó, aun después de reintentar. Usualmente, una tasa de contención alta provoca esto: Muchas otras instancias de aplicaciones actualizan los datos simultáneamente y esta instancia no pudo confirmar la transacción en un número fijo de reintentos. Consulta Transacciones.

El paquete google.appengine.runtime.apiproxy_errors proporciona las siguientes clases de excepción:

exception CapabilityDisabledError()

Indica que no se realizó una llamada a la API por parte del almacén de datos, ya que esta funcionalidad en particular no está disponible.