This page documents best practices for unit testing applications built on CockroachDB in a local environment.
If you are deploying a self-hosted cluster, see the Production Checklist for information about preparing your cluster for production.
Use a local, single-node cluster with in-memory storage
The cockroach start-single-node
command starts a single-node, insecure cluster with in-memory storage:
cockroach start-single-node --insecure --store=type=mem,size=0.25 --advertise-addr=localhost
Using in-memory storage improves the speed of the cluster for local testing purposes.
Log test output to a file
By default, cockroach start-single-node
logs cluster activity to a file with the default logging configuration. When you specify the --store=type=mem
flag, the command prints cluster activity directly to the console instead.
To customize logging behavior for local clusters, use the --log
flag:
cockroach start-single-node --insecure --store=type=mem,size=0.25 --advertise-addr=localhost --log="{file-defaults: {dir: /path/to/logs}, sinks: {stderr: {filter: NONE}}}"
The log
flag has two suboptions:
file-defaults
, which specifies the path of the file in which to log events (/path/to/logs
).sinks
, which provides a secondary destination to which to log events (stderr
).
For more information about logging, see Configure logs.
Use a local file server for bulk operations
To test bulk operations like IMPORT
, BACKUP
, or RESTORE
, we recommend using a local file server.
For more details, see Use a Local File Server for Bulk Operations.