mrkeyoor.com_
Tue 01 Sept 17:43 UTC
Dataevaluationupdated 26 Aug 2026

influxdb review

InfluxDB 3 Core is a database for ingesting, storing, and querying time-stamped events such as metrics, sensor readings, and market data. The main branch stores Parquet on local disk or object storage and exposes SQL, InfluxQL, FlightSQL, line protocol, and HTTP interfaces.

+13stars / 7d
Verdict

Our InfluxDB 3 Core build spent 567 seconds compiling before libpython3.11 stopped both build and tests, so source adopters should provision the documented Python and protobuf dependencies first. Prefer official packages for an evaluation unless contributing to the Rust codebase. The database is a serious choice for SQL or InfluxQL time-series work, provided v3.10 backups, query regression checks, and plugin controls are part of the rollout.

We ran it

Lab card: what happened when we ran influxdbScreenshot of influxdb (influxdata.com)
Install✓ · 153s803 packages
Build✗ · 567s
Tests✗ · 45sran, no count parsed
Repo1794 files~395,555 lines of source · 23.3 MB · 1 CI workflows · Dockerfile

Answers from our run

Does influxdb build from source?

Dependencies installed in 153 seconds (803 packages), and the build failed. We cloned commit 693b1fd into a clean Debian container with 3 CPUs and no project-specific setup.

Do influxdb's tests pass?

The test command failed in our container, and its output did not report a pass or fail count.

Who should not use influxdb?

Flux-dependent InfluxDB 2.x users: the README assigns Flux to the main-2.x branch, while v3 Core lists SQL and InfluxQL.

What are the alternatives to influxdb?

Prometheus, TimescaleDB, VictoriaMetrics. Our InfluxDB 3 Core build spent 567 seconds compiling before `libpython3.

Setup2/5803 packages installed; build failed on the Python linker dependency
Docs4/5Version branches, binary installs, and source dependencies are clear
Community5/531,717 stars with active v3 and legacy branch work
Maturity4/5GA since 2025, but v3.10 migration and query issues need care

Discussed on

  1. hnInfluxDB is betting on Rust and Apache Arrow for next-gen data store205 points
  2. hnIOx: InfluxData’s New Storage Engine167 points
  3. hnInfluxDB v0.10 GA with hundreds of thousands writes/sec, 98% better compression152 points
  4. hnInfluxDB 1.0 GA Released: A Retrospective and What’s Next136 points
  5. hnInfluxDB is now InfluxData, a platform for time series data124 points

Who it’s for

Teams building operational dashboards or event analytics around time-series writes and recent-data queries.
Existing InfluxDB 1.x or 2.x writers that want a v3 server compatible with those write APIs.
Rust and data-platform teams comfortable operating object storage, Parquet, tokens, backups, and schema migrations.
Developers who want embedded Python plugins and triggers inside the database and can restrict their permissions.

Who it’s NOT for

Flux-dependent InfluxDB 2.x users: the README assigns Flux to the main-2.x branch, while v3 Core lists SQL and InfluxQL.
Source builders expecting Cargo alone to be enough: our linker could not find libpython3.11, and the contributor guide requires Python development files plus protoc.
Operators who need a painless rollback from v3.10.0: its catalog migration is one-way, and 3.9.x binaries cannot read the new catalog.
Workloads depending on correct InfluxQL SPREAD over negative-only values without verification: open v3 Core issue 27384 reports wrong results.
Rust client users who require a configurable request timeout today: issue 27591 says the v3 client can wait forever after a server accepts a connection.
Rocky Linux 9 or 10 operators unwilling to adjust systemd isolation: issue 27329 reports the packaged service failing at namespace setup.

Setup reality

Our sandbox installed 803 Rust packages in 153 seconds. The build ran 567 seconds, then failed with exit code 101 because the linker could not find -lpython3.11. Tests failed after 45 seconds with the same missing-library error before a test result was produced.

The source guide requires a recent Rust toolchain, Python 3 plus development headers, and protoc. The processing engine uses PyO3 and dynamically links the Python library found at build time. Official packages bundle a matching Python environment.

Running Core also means choosing local disk or S3, Azure, or GCP object storage, configuring tokens, and planning catalog backups. Python plugins can create virtual environments and install packages unless package management is disabled, so production needs an explicit plugin and network policy.

InfluxDB 3 Core stores Parquet and speaks SQL or InfluxQL

The main branch is InfluxDB 3 Core, a Rust database for time-series and event data. It accepts line protocol, stores Parquet on local disk or S3, Azure, or GCP object storage, and serves SQL, InfluxQL, FlightSQL, and HTTP queries. Existing InfluxDB 1.x and 2.x writers can use compatible write APIs. Users migrating from 2.x should notice that Flux remains on the main-2.x branch rather than the v3 query surface.

An embedded Python VM powers plugins and triggers for processing data inside the server. That can reduce the distance between ingestion and automation, yet it also makes Python part of the database runtime. Plugins may receive write-ahead-log events, scheduled calls, or HTTP requests. Version v3.10.0 added flags that restrict which trigger types may run and can confine plugin files to one directory. Production deployments should use those restrictions rather than treating plugin code as ordinary SQL.

The source build stopped after 567 seconds on libpython3.11

Our Rust install phase succeeded in 153 seconds and pulled 803 packages. The checkout had 1,794 files, about 395,555 source lines, and occupied 23.3 MB before Cargo dependencies. It included a Dockerfile and 1 CI workflow file, with no top-level tests directory. Rust commonly keeps unit tests beside source files, so directory layout alone says little about coverage. The long compilation made the final linker failure costly to discover.

After 567 seconds, the build exited with code 101. The linker reported rust-lld: error: unable to find library -lpython3.11, followed by failure to compile the influxdb3 binary. The log does not show another compiler error. InfluxDB's processing-engine guide explains that PyO3 finds a Python runtime during the build and dynamically links its libpython; the documented Debian packages include python3-dev, along with compiler, SSL, and protobuf dependencies.

What happened when we ran it

The test command failed with exit code 101 after 45 seconds and reached the same missing -lpython3.11 linker error. No completed test count appeared, so there is no passing or failing assertion total to report. Our result covers commit 693b1fd in an unprivileged container with 3 CPUs and 12 GB of RAM. It shows that the general Rust image did not satisfy this repository's native Python link requirement.

We did not start a database, write line protocol, query Parquet, attach object storage, run a Python trigger, or measure latency and throughput. The README contains performance examples, but our lab did not reproduce them, so they are not evidence in this review. Packaged downloads bundle a controlled Python distribution and are the fairer path for an operator trial. Source contributors need Python development files, protoc, and a build environment that keeps the matching Python library available at runtime.

Version 3.10.0 migrates the catalog in one direction

InfluxDB 3 Core has been generally available since April 2025. Release v3.10.0, published June 17, 2026, moves the on-disk catalog to a new binary format during first startup. The release notes call the migration automatic and crash-safe, while also warning that it is one-way and that 3.9.x cannot read the result. They instruct operators to back up the catalog directory and checkpoint before upgrading. That backup is the rollback plan.

The same release added a readiness endpoint that checks object-store reachability, cross-database reads for plugins, offline catalog inspection, and trigger restrictions. Startup flags and some HTTP status behavior changed too. A database upgrade deserves a staging restore in addition to a successful process restart. Copy production-shaped metadata, perform the migration, check writer and query clients, stop the service, and prove that the documented backup can restore into the intended recovery version.

Open v3 issues affect query truth and client availability

Issue 27384 is labeled for v3 Core and reports incorrect InfluxQL SPREAD output when values are negative. A related fix pull request was active in August. Any alert, dashboard, or billing job using that function should have a regression query with known negative data. Database correctness bugs are dangerous because a successful HTTP response can carry the wrong answer without alerting the caller.

Issue 27591 concerns influxdb3_client, the Rust v3 client. The report says its HTTP client has no request timeout or configuration option, allowing a connection that never responds to wait indefinitely. Applications can wrap calls with their own deadline, but that behavior belongs in an integration test before the client reaches a request path. Issue 27329 separately reports the v3 RPM service failing on Rocky Linux 9 and 10 due to systemd namespace setup.

Active maintenance spans 3 major version lines

GitHub showed 31,717 stars, 2,151 combined open issues and pull requests, and a last push on August 25, 2026. That open count covers work across v1, v2, and v3 branches, so it is not a v3 bug total. The recent list included current fixes for v3 query ordering and legacy import or replication work. Version labels and branch names matter whenever an issue is used to judge this product.

InfluxDB 3 Core is worth evaluating when line protocol, Parquet storage, and SQL or InfluxQL fit an existing telemetry pipeline. Our failed source build is a setup finding, not a database benchmark. Begin with the official package, pin v3-specific clients, test negative-value queries, and isolate Python plugins. Before v3.10 touches real metadata, make the catalog backup and rehearse a restore that does not depend on downgrading the migrated files.

Alternatives

ProjectWhat it isPick it when
Prometheus gh↗A monitoring system and time-series database centered on scraped metrics and PromQL.pick this instead when infrastructure metrics, pull-based collection, and PromQL are the established operating model.
TimescaleDBA PostgreSQL extension for time-series storage and SQL analytics.pick this instead when PostgreSQL compatibility, joins, and its tooling matter more than Influx line protocol.
VictoriaMetricsA metrics-focused time-series database with Prometheus-compatible ingestion and querying.pick this instead when Prometheus-style metrics retention is the main workload rather than SQL over general event data.

What people are saying

  1. [github-trending] influxdata/influxdb

Sources

  1. InfluxDB 3 Core repository and README
  2. InfluxDB 3 Core processing engine build guide
  3. InfluxDB v3.10.0 release
  4. InfluxQL SPREAD issue for v3 Core
  5. InfluxDB 3 Rust client timeout issue
  6. Rocky Linux v3 service issue

More data reviews

turso · TrackersListCollection · dash · getcontact-cli · awesome-zhuiju-free · iggy · the whole board →