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

REST: Send empty first-page pageToken when rest-page-size is set

Aperta Adatta ai principianti
#4,096 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

@ehddnr301 ci sta già lavorando.

Dal 12/10/2026.

  • #4097 di @ehddnr301 — aperta

Valutazione

Difficoltà
2/5
Tempo stimato
1-3 ore
Idoneità per principianti
82/100
Tipo di issue
Bug
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
python
Ambito
api, backend

Direzione di ricerca

Inizia dal codice di paginazione del catalogo REST per list_tables, list_views e list_namespaces, quindi esamina il parsing della query dell’adattatore SigV4. Invia un pageToken vuoto nella prima richiesta quando è impostato rest-page-size e conserva nell’adattatore i valori di query vuoti. Verifica che la richiesta includa pageToken= e che la paginazione funzioni con una dimensione di pagina pari a 1.

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

Descrizione

kind:bug
Apache Iceberg version

0.12.0 (latest release)

Please describe the bug 🐞

When rest-page-size is set, list_tables, list_views and list_namespaces send pageSize without pageToken on the first request:

GET /v1/namespaces/ns/tables?pageSize=100

The REST spec says servers must return all results in one response when pageToken is not set, and that clients start pagination by sending an empty pageToken (PageToken). So compliant servers ignore rest-page-size, and some servers fail on the request. With tabulario/iceberg-rest:1.6.0 and namespaces a, b, c:

RestCatalog("t", uri=uri).list_namespaces()
# [('a',), ('b',), ('c',)]

RestCatalog("t", uri=uri, **{"rest-page-size": "1"}).list_namespaces()
# ServerError: NumberFormatException: Cannot parse null string
GET /v1/namespaces?pageSize=1             -> 500 NumberFormatException
GET /v1/namespaces?pageSize=1&pageToken=  -> {"namespaces": [["a"]], "next-page-token": "1"}

The first request should include pageToken= when rest-page-size is set. The Java client always sends pageToken, starting with an empty value. The SigV4 adapter also needs to keep blank query values, since parse_qsl drops them by default.

rest-page-size was added in #3377. The same error in apache/iceberg-rest-fixture was reported in apache/iceberg#13119.

Willingness to contribute
  • I can contribute a fix for this bug independently
  • I would be willing to contribute a fix for this bug with guidance from the Iceberg community
  • I cannot contribute a fix for this bug at this time
Lingua principale
Python
Stelle
1.2k
Fork
618
Merge medio
1g 3h
PR unite (30g)
45

Preparare l'ambiente

  • Nessun Dockerfile né file Docker Compose
  • Ha un modello di pull request
  • Nessuna guida per i contributori

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 apache/iceberg-python

Tutte le issue di apache/iceberg-python

Issue simili

Altre issue su Python

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.