Skip to content

System Tests

Neil Moore edited this page Dec 8, 2015 · 3 revisions

This where the testing plan for this project is detailed.

Module Testing

Work Manager

  • Microbenchmarks of hotspots [ NOT IMPLEMENTED ]
  • Heuristic accuracy analysis [ NOT IMPLEMENTED ]
  • Ability to handle large amounts of network traffic [ NOT IMPLEMENTED ]
    • Many connections (both short-lived and long-lived)
    • Many packets
    • Both

SQL Engine

  • Tokenizer / parser accuracy test (regression tests) [ NOT IMPLEMENTED ]
  • Parser speed benchmark [ NOT IMPLEMENTED ]
  • Query plan accuracy test (regression tests) [ NOT IMPLEMENTED ]
  • Query execution speed benchmark [ NOT IMPLEMENTED ]

Data Store

  • Access speed benchmark (regression tests) [ NOT IMPLEMENTED ]
  • Query evaluation speed benchmark [ NOT IMPLEMENTED ]
  • Throughput on contested tables [ NOT IMPLEMENTED ]
    • Many readers and writers on a single table
    • This tests Tervel's ability to manage many threads
  • Cache coherency/efficiency benchmark [ NOT IMPLEMENTED ]
    • This can be measured using cachegrind
  • Data consistency (regression tests) [ NOT IMPLEMENTED ]

Holistic

  • Overall system load [ NOT IMPLEMENTED ]
    • Many connections, many queries, large tables, many tables
  • Accuracy tests [ NOT IMPLEMENTED ]
    • Similar to SQLLogicTest
  • Contested resources [ NOT IMPLEMENTED ]
    • Pegged threads in background doing I/O, lower than usual memory capacity
  • Continuous operation [ NOT IMPLEMENTED ]
    • How does the system handle running at load for a long time?
  • End-to-End latency benchmark [ NOT IMPLEMENTED ]
    • Varying system loads, how does latency change with the load on the system?

Clone this wiki locally