Skip to content

add capability to disable warehouse_affinity #348

Open
@ardentperf

Description

@ardentperf

From what I can tell, right now every terminal requires its own DB connection. It seems that HikariCP support was added for a little while by @timveil but then removed later; no commit message but from other commits my guess is there were problems around connection leaking?

Anyway - from my read of the code and experience with benchbase so far, I suspect that running with fewer terminals than warehouses means benchbase simply won't have any terminals running against lots of warehouses. For example: at scale 10,000 warehouses (1TB) and with 1,000 terminals/connections, only a tenth of the data set would actually be operated on.

This makes benchbase far less useful for testing with TPCC-like workloads on large datasets, as tens/hundreds of thousands of connections isn't going to work.

It would be useful for testing to have a capability to run in a mode where the full data set is operated on. HammerDB has the option to "use all warehouses" and @apavlo's old H-Store implementation of tpcc had the warehouse_affinity option which could be disabled (if I'm reading it correctly).

https://github.com/apavlo/h-store/blob/master/src/benchmarks/org/voltdb/benchmark/tpcc/TPCCConfig.java#L18-L56

Adding this issue as a placeholder and for discussion; would love to work on this if I can find the bandwidth.

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