Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

[BUG] Decode nested Spanner numeric values consistently across result paths

Aperta
#109 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
52/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Stack tecnologico
gcp, java
Ambito
database

Direzione di ricerca

Traccia il percorso di lettura puntuale di Spanner, il percorso delle query portabili e la conversione del change-feed, usando l’audit numerico di #105 e il contratto numerico portabile condiviso come punti di partenza. Verifica come vengono decodificati gli oggetti annidati e gli array, quindi esegui o aggiungi test del provider e di conformità che confrontino tutti e tre i percorsi; il lavoro è completato quando i valori numerici sono equivalenti e le stringhe letterali simili a marker rimangono invariate.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

bug java

Bug description

Spanner's document representation uses typed string markers for values that cannot be represented directly by the selected Spanner schema. Nested numeric values are not decoded symmetrically on every result path: query results can conflict with the string-marker representation, and change-feed conversion does not recursively restore marker-backed values inside objects and arrays.

This is an existing Spanner read/query/change-feed concern discovered during the numeric audit for #105; it is not caused by partial update.

Provider

  • Azure Cosmos DB
  • Amazon DynamoDB
  • Google Cloud Spanner
  • Not provider-specific

Reproduction steps

  1. Store a document containing numeric values nested inside an object and an array.
  2. Read it through the normal point-read path, a portable query, and change feed.
  3. Compare both the values and Jackson node types returned by each path.

Expected behaviour

All Spanner result paths recursively decode the storage representation and return equivalent nested numeric values according to the portable numeric contract.

Actual behaviour

Nested values can remain marker strings or be exposed with a different representation depending on the result path.

Acceptance criteria

  • Point read, query, and change feed share one recursive marker decoder.
  • Nested objects and arrays preserve positive/negative integral and decimal values.
  • Literal user strings that resemble a marker cannot be mis-decoded.
  • Provider and conformance tests compare identical nested results across all three paths.
  • The behavior is documented consistently with the shared portable numeric contract.

Additional context

Related umbrella issues: #37 and #64.

Lingua principale
Java
Stelle
7
Fork
7
Merge medio
1g 19h
PR unite (30g)
3

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di microsoft/multiclouddb-sdk-for-java

Tutte le issue di microsoft/multiclouddb-sdk-for-java

Issue simili

Altre issue su Java

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.