Skip to content
master
Go to file
Code

Latest commit

craig[bot] and dt Merge #52823
52823: importccl: make PGDUMP stricter r=dt a=dt

Previously PGDUMP was relatively liberal in reading its input: any statements that
it did not know how to handle would just cause it to move to the next one and
in most cases any unexpected values within statements would similarly just move
on to the next statement. This could easily lead to silently ignoring something
and thus incorrrectly reporting we 'successfully' imported the input even if
we ignored some of it. When we knew were only ever going to be reading exactly
the output of 'pg_dump' we were more okay with assuming there would not be any
inputs that we needed to handle other than the ones for which we had explicit
cases, but as we start throwing more pgdump-like files at this, from other tools
that are not actually pg_dump, the risk of incorrectly reporting success makes
that approach dangerous. Instead, this change extends the PGDUMP reading code
to explicitly parse out and ignore cases that it knows it does not care about
so that anything else is an error.

Release note: none.

Co-authored-by: David Taylor <[email protected]>
ebd5c73

Files

Permalink
Failed to load latest commit information.

README.md


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.

Docs

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

Quickstart

  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.

Deployment

  • 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.

Contributing

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, [email protected], 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.

Design

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.