Sender has no dateColumn() setter for DATE columns
Les mainteneurs répondent en général sous 3 jours
@dhruv-creates69 y travaille déjà.
Depuis le 29/9/2026.
Évaluation
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Accessibilité débutants
- 72/100
Piste de recherche
Commencez par les implémentations existantes de byteColumn, charColumn, timestampColumn, ipv4Column, at et atNow de Sender afin de suivre les conventions de setter établies. Ajoutez la prise en charge de DATE en utilisant des millisecondes et la surcharge Instant proposée, confirmez le comportement prévu pour les valeurs inférieures à la milliseconde et vérifiez que l’ingestion Java peut écrire des valeurs DATE tout en préservant le comportement des valeurs nulles.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Summary
Sender has no dateColumn() setter, so a Java producer cannot write a DATE column — even though the server accepts DATE on QWP ingress and this client reads it back fine on egress.
Current status: documented as a limitation
The client documentation already concedes it — documentation/connect/clients/java.md:532:
DATE is accepted on ingress server-side but the Java client does not yet expose a
dateColumn()setter. All types are readable on the egress side.
Cross-client parity
DATE is the only type missing from Java's row-oriented ingestion API, and Java is the only QWP client missing DATE:
| Type | Rust Buffer |
C/C++ line_sender_buffer |
.NET | Java Sender |
Go QwpSender |
Python row() |
|---|---|---|---|---|---|---|
UUID |
✅ | ✅ | ✅ | ✅ | ✅ | ❌ |
GEOHASH |
✅ | ✅ | ✅ | ✅ | ✅ | ❌ |
LONG256 |
✅ | ✅ | ✅ | ✅ | ✅ | ❌ |
CHAR |
✅ | ✅ | ✅ | ✅ | ✅ | ❌ |
IPv4 |
✅ | ✅ | ✅ | ✅ | ❌ | ❌ |
BINARY |
✅ | ✅ | ✅ | ✅ | ❌ | ❌ |
DATE |
✅ | ✅ | ✅ | ❌ | ✅ | ❌ |
Sibling implementations, all taking milliseconds since epoch:
- Rust —
column_date(name, millis: i64)andcolumn_date_opt(questdb-rs/src/ingress/buffer.rs:1393,:1418) - C —
line_sender_buffer_column_date(include/questdb/ingress/line_sender.h:1086) - Go —
DateColumn(name string, val time.Time) QwpSender(qwp_sender.go:61) - .NET —
ColumnDate(name, long millisSinceEpoch)
Suggested shape
Matching the existing setter conventions on Sender (byteColumn, charColumn, timestampColumn, ipv4Column, …):
Sender dateColumn(CharSequence name, long millisSinceEpoch);
Sender dateColumn(CharSequence name, Instant value);
The long overload mirrors the other clients' wire-level form; the Instant overload matches how timestampColumn(name, Instant) already reads at the call site. As with every other column, a null is written by omitting the setter before at() / atNow().
Worth confirming the intended truncation behaviour for the Instant overload, since DATE is millisecond-resolution and Instant is not — silently truncating sub-millisecond precision versus rejecting it is a deliberate choice, and the other clients sidestep it by only accepting millis (except Go, which takes a time.Time).
- Langage dominant
- Java
- Étoiles
- 10
- Forks
- 6
- Merge moyen
- 2 j 19 h
- PR mergées (30 j)
- 4
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Aucun modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de questdb/java-questdb-client
-
bug QWP
Difficulté 4/5 3-5 jours Accessibilité débutants 42/100
questdb/java-questdb-client#100 · 1 commentaire ·
Les mainteneurs répondent en général sous 3 jours
-
InternalError thrown from MmapSegmentRecoveryFaultTest.testScanFaultOnMapPastEofIsHandledAnyFilesystem()Peut-être à nouveau libre Une pull request pour cette issue a été fermée sans être fusionnée. Ouvertebug
Difficulté 4/5 3-5 jours Accessibilité débutants 48/100
questdb/java-questdb-client#69 ·
Les mainteneurs répondent en général sous 3 jours
-
bug
Difficulté 3/5 1-2 jours Accessibilité débutants 58/100
questdb/java-questdb-client#18 · 1 commentaire ·
Les mainteneurs répondent en général sous 3 jours
Toutes les issues de questdb/java-questdb-client
Issues similaires
-
[Bug] dubbo.protocol.triple.max-message-size is only read from OS environment variablesPeut-être pris @CCCLL l’a pris aujourd’hui. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 64/100
hierynomus/sshj#1070 ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 84/100
intellij-elixir/intellij-elixir#4492 ·
Les mainteneurs répondent en général sous 1 jour
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 77/100
-
[Server] OpenAPI 3.1 YAML specs generate Object fields: resolveToJSON drops every schema typeOuverte
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
quarkiverse/quarkus-openapi-generator#1796 · 1 commentaire ·