← Back to all sparks
P

pool

INFRA · APIS
Velocity0.0

Object Pooling in R. Contribute to rstudio/pool development by creating an account on GitHub.

Hit 1.0, relicensed to MIT, and has shipped almost nothing but dbplyr compatibility since.

databaseconnection-poolingdbplyr-compatr-packagemaintenance
Current state
pool manages database connection pools for R, and its 1.0.0 release in early 2023 was the last time it changed meaningfully: MIT relicensing, an onCreate hook for every new connection, localCheckout(), the dbplyr 2.0 interface, and a validation interval cut from 600s to 60s. The five releases since are almost entirely about staying compatible with DBI and dbplyr as those packages evolve — the most recent, 1.0.5, is a single line of forward-compatibility for dbplyr's upcoming dialect-based dispatch.
Where it's heading
This is a component that has reached its useful shape and now moves only when the packages around it move. Every post-1.0 entry is either a dependency floor being raised, a generic being wrapped, or an example being rewritten. The one thing worth watching is that pool has to implement each new dbplyr and DBI generic by hand, so its release cadence is set by that upstream surface rather than by its own roadmap.
Prediction
The next release will almost certainly be another dbplyr or DBI compatibility pass, most likely completing the dialect-based dispatch work that 1.0.5 prepared for. Nothing in these entries suggests new pooling capability is planned.

Recent moves

  1. 2mo ago

    Prepares for dbplyr's dialect-based dispatch

    A one-line forward-compatibility change for a dbplyr refactor that has not shipped yet. Nothing visible to users today, but it is the clearest illustration of the pattern: pool releases when dbplyr changes, not when pool has something to add.

    View source ↗
  2. 1y ago

    Examples switched from hosted MySQL to local SQLite

    Documentation-only work: examples no longer depend on a hosted MySQL instance, removing a network dependency from checks. No change to the package itself.

    View source ↗
  3. 2y ago

    Requires DBI 1.2.0; warns on outdated dbplyr

    Raises the DBI dependency floor and adds a message for users on old dbplyr versions. Housekeeping in service of the compatibility surface the package spends all its releases maintaining.

    View source ↗
  4. 2y ago

    Adds Arrow-returning DBI generics; drops withr dependency

    The most substantive post-1.0 release: support for the DBI generics that return Arrow objects, wrappers for two more dbplyr generics, and an end to the spurious in_schema() and ident_q() messages. Arrow support matters because it lets pooled connections participate in the columnar path rather than forcing a data frame round-trip.

    View source ↗
  5. 3y ago

    copy_to() returns a pool-backed table

    Fixes a real gap in the dplyr integration — copy_to() now returns a table that uses the pool rather than a bare connection — and fills in two missing SQL generics. Small, but it closes a case where the pooling abstraction leaked.

    View source ↗
  6. 3y ago

    1.0: MIT relicense, onCreate hook, dbplyr 2.0 interface

    ⚡ SPARK

    The release that set the package's current shape and the last one to change it. Everything since has been compatibility work layered on the surface defined here — the hooks, the dbplyr 2.0 interface, and the tighter validation cadence are all still the operative behaviour.

    View source ↗