Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Docs: clarify cursor behavior

Abierto
#44 4 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
3/5
Tiempo estimado
1-2 días
Aptitud para principiantes
35/100
Tipo de issue
Documentación
Claridad
Bastante claro
Estado de actividad
Estancado
Stack tecnológico
clojure, postgresql

Línea de trabajo

Comienza con la documentación de cursores y los puntos de entrada jdbc/fetch-lazy y jdbc/cursor->lazyseq mostrados en el informe. Reproduce el caso de PostgreSQL 11 con Hikari CP, comprobando el comportamiento con y sin las configuraciones de fetch size y auto-commit. El trabajo estará terminado cuando la documentación indique claramente las configuraciones necesarias o el comportamiento esperado de la biblioteca.

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

Descripción

Using clojure.jdbc w/ Hikari CP and Postgresql 11.

When attempting to create a cursor as described in the docs the process still ends up trying to load the whole result set into memory.

(def conn (jdbc/connection pool))
(def cursor (jdbc/fetch-lazy conn "SELECT \"uuid\", data_bytes FROM visitor_data;"))
(def cursor-seq (jdbc/cursor->lazyseq cursor)) ;; hangs here

If I explicitly set auto-commit and the fetch size I don't have that problem:

(def conn (jdbc/connection pool))
(def cursor (jdbc/fetch-lazy conn "SELECT \"uuid\", data_bytes FROM visitor_data;"))
(.setFetchSize (.-stmt cursor) 50)
(.setAutoCommit (.getConnection (.-stmt cursor)) false)
(def cursor-seq (jdbc/cursor->lazyseq cursor))

is this a documentation problem or is the library expected to modify those settings for us?

Lenguaje dominante
Clojure
Estrellas
106
Forks
23
Métricas de merge de PR
Sin PR fusionados en 30 d

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

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 funcool/clojure.jdbc

Todos los issues de funcool/clojure.jdbc

Issues similares

Más issues de Clojure

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.