Timestamp Returned In Scientific Notation By API Crashes Field Cast

Abierto Apto para principiantes
#17,277 1 comentario 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
2/5
Tiempo estimado
1-3 horas
Aptitud para principiantes
68/100
Tipo de issue
Error
Claridad
Bien especificado
Estado de actividad
Tranquilo
Stack tecnológico
python
Área
database

Línea de trabajo

Comienza en google/cloud/bigquery/_helpers.py alrededor de la línea 264 y reproduce la carga de una marca de tiempo devuelta en notación científica. Confirma que el cliente de BigQuery puede cargar el valor sin generar un TypeError, conservando el comportamiento esperado de la marca de tiempo.

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

Descripción

api: bigquery priority: p2 type: bug
Determine this is the right repository
  • I determined this is the correct repository in which to report this bug.
Summary of the issue

Context
Write a timestamp field to the BigQuery API that was written using UnixTime stamp from python.
Then try to load it as an object.

Expected Behavior:
Timestamp comes back without errors.

Actual Behavior:
Getting a TypeError when int tries to parse "1.67899e8".

API client name and version

google-cloud-bigquery

Reproduction steps: code

See: google-cloud-bigquery/google/cloud/bigquery/_helpers.py#L264

Line 264 is: return _datetime_from_microseconds(int(value))

The int cast causes the error when the API returns '1.345345e8', which it does.

Reproduction steps: supporting files

Write a timestamp to bigqurry using time.time()... its accepted.
Load the value back.... causes error.

Reproduction steps: actual results
Reproduction steps: expected results


### OS & version + platform

_No response_

### Python environment

_No response_

### Python dependencies

_No response_

### Additional context

_No response_
Lenguaje dominante
Python
Estrellas
5.4k
Forks
1.8k
Merge medio
1 d 17 h
PR fusionados (30 d)
93

Guía de contribución

Abrir la guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de googleapis/google-cloud-python

Todos los issues de googleapis/google-cloud-python

Issues similares

Más issues de Python

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.