Skip to content

benchmarks: served ArcadeDB reads go through POST, which wraps them in a transaction (sequential scans); move them to a transaction-free path at the re-pin #36

Description

@tae898

ArcadeData#8775 was decided 2026-10-01: inside a transaction a scan stays sequential, and POST /api/v1/query and POST /api/v1/command wrap even a plain SELECT in an auto-commit transaction. Every served ArcadeDB arm in the harness reads through one of them (/query in l1_tabular, l2_graph, l3_sparse, l3d_dense, l4_tsbs; /command for l1_tpc's olap), while the embedded arms read with no transaction. Measured on a server, 1M vertices, filtered count: SQL 321-326 ms through POST against 45-47 ms through GET /query or Postgres; Cypher 333-339 ms against 44-55 ms through Bolt or GET /query.

October is unaffected: at the pin a type scan needed two bucket sub-steps to run in parallel, every type has one, and no lane changes that, so neither arm scanned in parallel. At the re-pin (26.10.1, with parallel filtered scans and single-bucket page splitting) it would make served scans sequential and embedded ones parallel. This adds the re-pin item to CAMPAIGN section 7 (row 25); the code change is for the re-pin, not now.

No activity

Activity on this issue will appear here.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions