Skip to content
Go to file

Latest commit

55792: opt: rework tests involving scalar expressions r=RaduBerinde a=RaduBerinde

#### opt: simplify execbuilder.BuildScalar

In all uses of BuildScalar, we map variables directly to columns in
the metadata. This change simplifies the interface and makes an
indexed var container internally.

Release note: None

#### opt: rework scalar optbuilder tests

This change reworks the infrastructure for tests involving scalars.
Instead of passing a list of types and using thing like `@1` to refer
to variables, we define variables with names. This makes the tests a
lot cleaner and doesn't rely on an obscure syntax. It will also allow
extending the variable definitions (e.g. computed column expressions).

The new infrastructure will be used for other scalar tests (most
importantly, index constraints and partial predicate implication).

Release note: None

#### opt: update memo/expr_test to use ScalarVars

Release note: None

#### opt: update composite_sensitive test to use ScalarVars

Release note: None

#### opt: update implicator tests to use ScalarVars

Release note: None

#### opt: update idxconstraint tests to use ScalarVars

Release note: None

Co-authored-by: Radu Berinde <>


Failed to load latest commit information.
Latest commit message
Commit time
Oct 22, 2020
Oct 22, 2020
Sep 29, 2020
Oct 20, 2020

CockroachDB is a cloud-native SQL database for building global, scalable cloud services that survive disasters.

What is CockroachDB?

CockroachDB is a distributed SQL database built on a transactional and strongly-consistent key-value store. It scales horizontally; survives disk, machine, rack, and even datacenter failures with minimal latency disruption and no manual intervention; supports strongly-consistent ACID transactions; and provides a familiar SQL API for structuring, manipulating, and querying data.

For more details, see our FAQ or architecture document.


For guidance on installation, development, deployment, and administration, see our User Documentation.


  1. Install CockroachDB.
  2. Start a local cluster and talk to it via the built-in SQL client.
  3. Learn more about CockroachDB SQL.
  4. Use a PostgreSQL-compatible driver or ORM to build an app with CockroachDB.
  5. Explore core features, such as data replication, automatic rebalancing, and fault tolerance and recovery.

Client Drivers

CockroachDB supports the PostgreSQL wire protocol, so you can use any available PostgreSQL client drivers to connect from various languages.


  • Test Deployments - Easiest way to test an insecure, multi-node CockroachDB cluster.
  • Production Deployments
    • Manual - Steps to deploy a CockroachDB cluster manually on multiple machines.
    • Cloud - Guides for deploying CockroachDB on various cloud platforms.
    • Orchestration - Guides for running CockroachDB with popular open-source orchestration systems.

Need Help?

Building from source

See our wiki for more details.


We welcome your contributions! If you're looking for issues to work on, try looking at the good first issue list. We do our best to tag issues suitable for new external contributors with that label, so it's a great way to find something you can help with!

See our wiki for more details.

Engineering discussion takes place on our public mailing list,, and feel free to join our Community Slack (there's a dedicated #contributors channel!) to ask questions, discuss your ideas, or connect with other contributors.


For an in-depth discussion of the CockroachDB architecture, see our Architecture Guide. For the original design motivation, see our design doc.

Comparison with Other Databases

To see how key features of CockroachDB stack up against other databases, check out CockroachDB in Comparison.

See Also

You can’t perform that action at this time.