cockroach: github.com/cockroachdb/cockroach

Directories

PathSynopsis
pkg/acceptance
pkg/acceptance/cluster
pkg/acceptance/localcluster
pkg/acceptance/localcluster/tcPackage tc contains utility methods for using the Linux tc (traffic control) command to mess with the network links between cockroach nodes running on the local machine.
pkg/base
pkg/bench
pkg/blobsPackage blobs contains a gRPC service to be used for remote file access.
pkg/blobs/blobspb
pkg/build
pkg/ccl
pkg/ccl/backupccl
pkg/ccl/baseccl
pkg/ccl/buildccl
pkg/ccl/changefeedccl
pkg/ccl/changefeedccl/cdctest
pkg/ccl/changefeedccl/changefeedbase
pkg/ccl/changefeedccl/kvfeedPackage kvfeed provides an abstraction to stream kvs to a buffer.
pkg/ccl/changefeedccl/schemafeed
pkg/ccl/changefeedccl/schemafeed/schematestutilsPackage schematestutils is a utility package for constructing schema objects in the context of cdc.
pkg/ccl/cliccl
pkg/ccl/cliccl/cliflagsccl
pkg/ccl/cmdccl/enc_utils
pkg/ccl/followerreadscclPackage followerreadsccl implements and injects the functionality needed to expose follower reads to clients.
pkg/ccl/gssapiccl
pkg/ccl/importccl
pkg/ccl/logictestcclPackage logictestccl houses the SQL logic tests that test CCL features.
pkg/ccl/partitionccl
pkg/ccl/servercclPackage serverccl houses tests that verify CCL behavior of a running CockroachDB server.
pkg/ccl/storageccl
pkg/ccl/storageccl/engineccl
pkg/ccl/storageccl/engineccl/enginepbccl
pkg/ccl/utilccl
pkg/ccl/utilccl/licenseccl
pkg/ccl/utilccl/sampledataccl
pkg/ccl/workloadccl
pkg/ccl/workloadccl/allccl
pkg/ccl/workloadccl/cliccl
pkg/ccl/workloadccl/format
pkg/ccl/workloadccl/roachmartccl
pkg/cli
pkg/cli/cliflags
pkg/cli/syncbench
pkg/cli/systembench
pkg/cli/systembench/systembenchpb
pkg/clusterversionPackage clusterversion defines the interfaces to interact with cluster/binary versions in order accommodate backward incompatible behaviors.
pkg/cmd/allocsim
pkg/cmd/cmdutil
pkg/cmd/cmpconnPackage cmpconn assists in comparing results from DB connections.
pkg/cmd/cmp-protocolcmp-protocol connects to postgres and cockroach servers and compares the binary and text pgwire encodings of SQL statements.
pkg/cmd/cmp-protocol/pgconnectPackage pgconnect provides a way to get byte encodings from a simple query.
pkg/cmd/cmp-sqlcmp-sql connects to postgres and cockroach servers and compares the results of SQL statements.
pkg/cmd/cockroachThis is the default entry point for a CockroachDB binary.
pkg/cmd/cockroach-osscockroach-oss is an entry point for a CockroachDB binary that excludes all CCL-licensed code.
pkg/cmd/cockroach-shortcockroach-short is an entry point for a CockroachDB binary that excludes certain components that are slow to build or have heavyweight dependencies.
pkg/cmd/cr2pgcr2pg is a program that reads CockroachDB-formatted SQL files on stdin, modifies them to be Postgres compatible, and outputs them to stdout.
pkg/cmd/cr2pg/sqlstreamPackage sqlstream streams an io.Reader into SQL statements.
pkg/cmd/docgen
pkg/cmd/docgen/extract
pkg/cmd/fuzzfuzz builds and executes fuzz tests.
pkg/cmd/generate-binaryThis connects to a postgres server and crafts postgres-protocol message to encode its arguments into postgres' text and binary encodings.
pkg/cmd/geoviz
pkg/cmd/github-postCommand github-post parses the JSON-formatted output from a Go test session, as generated by either 'go test -json' or './pkg.test | go tool test2json -t', and posts issues for any failed tests to GitHub.
pkg/cmd/github-pull-request-makeThis utility detects new tests added in a given pull request, and runs them under stress in our CI infrastructure.
pkg/cmd/gossipsimPackage simulation provides tools meant to visualize or test aspects of a Cockroach cluster on a single host.
pkg/cmd/internal/issues
pkg/cmd/prereqsprereqs generates Make prerequisites for Go binaries.
pkg/cmd/protoc-gen-gogoroach
pkg/cmd/publish-artifacts
pkg/cmd/publish-provisional-artifacts
pkg/cmd/reducereduce reduces SQL passed over stdin using cockroach demo.
pkg/cmd/returncheck
pkg/cmd/roachprod
pkg/cmd/roachprod/cloud
pkg/cmd/roachprod/config
pkg/cmd/roachprod/errors
pkg/cmd/roachprod/install
pkg/cmd/roachprod/ssh
pkg/cmd/roachprod-stress
pkg/cmd/roachprod/ui
pkg/cmd/roachprod/vm
pkg/cmd/roachprod/vm/aws
pkg/cmd/roachprod/vm/aws/terraformgenCommand terraformgen generate the terraform file used to configure AWS for multiregion support.
pkg/cmd/roachprod/vm/azurePackage azure allows roachprod to create instances within the Microsoft Azure cloud.
pkg/cmd/roachprod/vm/flagstub
pkg/cmd/roachprod/vm/gce
pkg/cmd/roachprod/vm/local
pkg/cmd/roachtest
pkg/cmd/roachvetCommand roachvet is a vettool which includes all of the standard analysis passes included in go vet as well as the `shadow` pass and some first-party passes.
pkg/cmd/skiperrsskiperrs connects to a postgres-compatible server with its URL specified as the first argument.
pkg/cmd/smithcmpsmithcmp is a tool to execute random queries on a database.
pkg/cmd/smithtestsmithtest is a tool to execute sqlsmith tests on cockroach demo instances.
pkg/cmd/teamcity-triggerteamcity-trigger launches a variety of nightly build jobs on TeamCity using its REST API.
pkg/cmd/testfiltertestfilter is a utility to manipulate JSON streams in [test2json] format.
pkg/cmd/uptodateuptodate efficiently computes whether an output file is up-to-date with regard to its input files.
pkg/cmd/urlcheck
pkg/cmd/urlcheck/lib/urlcheck
pkg/cmd/workload
pkg/cmd/wraprules
pkg/cmd/zerosum
pkg/col/coldata
pkg/col/coldataext
pkg/col/coldatatestutils
pkg/col/colserde
pkg/col/colserde/arrowserdePackage arrowserde contains the flatbuffer generated code used for Apache Arrow serialization (and some small helpers associated with the generated code).
pkg/col/typeconv
pkg/compose
pkg/config
pkg/config/zonepb
pkg/geoPackage geo contains the base types for spatial data type operations.
pkg/geo/geodistPackage geodist finds distances between two geospatial shapes.
pkg/geo/geogfn
pkg/geo/geographiclibPackage geographiclib is a wrapper around the GeographicLib library.
pkg/geo/geoindex
pkg/geo/geomfnPackage geomfn contains functions that are used for geometry-based builtins.
pkg/geo/geopb
pkg/geo/geosPackage geos is a wrapper around the spatial data types between the geo package and the GEOS C library.
pkg/gossipPackage gossip implements a protocol for sharing information between Cockroach nodes using an ad-hoc, peer-to-peer network.
pkg/gossip/resolver
pkg/gossip/simulation
pkg/internal/client/requestbatcherPackage requestbatcher is a library to enable easy batching of roachpb requests.
pkg/internal/rsg
pkg/internal/rsg/yaccPackage yacc parses .y files.
pkg/internal/sqlsmith
pkg/jobs
pkg/jobs/jobspb
pkg/jobs/jobsprotectedts
pkg/keysPackage keys manages the construction of keys for CockroachDB's key-value layer.
pkg/kvPackage kv and its KV API have been deprecated for external usage.
pkg/kv/bulk
pkg/kv/kvbasePackage kvbase exports kv level interfaces to avoid dependency cycles.
pkg/kv/kvclientPackage kvclient houses the implementation of the KV client.
pkg/kv/kvclient/kvcoordPackage kvcoord provides a key-value API to an underlying cockroach datastore.
pkg/kv/kvnemesisPackage kvnemesis exercises the KV api with random traffic and then validates that the observed behaviors are consistent with our guarantees.
pkg/kv/kvserverPackage kvserver provides access to the Store and Range abstractions.
pkg/kv/kvserver/abortspan
pkg/kv/kvserver/applyPackage apply provides abstractions and routines associated with the application of committed raft entries to a replicated state machine.
pkg/kv/kvserver/batcheval
pkg/kv/kvserver/batcheval/result
pkg/kv/kvserver/closedtsPackage closedts houses the interfaces and basic definitions used by the various components of the closed timestamp subsystems.
pkg/kv/kvserver/closedts/container
pkg/kv/kvserver/closedts/ctpb
pkg/kv/kvserver/closedts/minpropPackage minprop exports a main data structure, Tracker, which checkpoints closed timestamps and associated Raft Lease Applied indexes positions for which (under additional conditions) it is legal to serve follower reads.
pkg/kv/kvserver/closedts/provider
pkg/kv/kvserver/closedts/provider/testutils
pkg/kv/kvserver/closedts/storage
pkg/kv/kvserver/closedts/transport
pkg/kv/kvserver/closedts/transport/testutils
pkg/kv/kvserver/compactor
pkg/kv/kvserver/concurrencyPackage concurrency provides a concurrency manager structure that encapsulates the details of concurrency control and contention handling for serializable key-value transactions.
pkg/kv/kvserver/concurrency/lockPackage lock provides type definitions for locking-related concepts used by concurrency control in the key-value layer.
pkg/kv/kvserver/constraint
pkg/kv/kvserver/diskmap
pkg/kv/kvserver/gcPackage gc contains the logic to run scan a range for garbage and issue GC requests to remove that garbage.
pkg/kv/kvserver/idalloc
pkg/kv/kvserver/intentresolver
pkg/kv/kvserver/kvserverbase
pkg/kv/kvserver/kvserverpb
pkg/kv/kvserver/protectedtsPackage protectedts exports the interface to the protected timestamp subsystem which allows clients to prevent GC of expired data.
pkg/kv/kvserver/protectedts/ptcache
pkg/kv/kvserver/protectedts/ptpb
pkg/kv/kvserver/protectedts/ptproviderPackage ptprovider encapsulates the concrete implementation of the protectedts.Provider.
pkg/kv/kvserver/protectedts/ptreconcilePackage ptreconcile provides logic to reconcile protected timestamp records with state associated with their metadata.
pkg/kv/kvserver/protectedts/ptstoragePackage ptstorage implements protectedts.Storage.
pkg/kv/kvserver/protectedts/ptverifier
pkg/kv/kvserver/raftentryPackage raftentry provides a cache for entries to avoid extra deserializations.
pkg/kv/kvserver/rangefeed
pkg/kv/kvserver/rditer
pkg/kv/kvserver/reports
pkg/kv/kvserver/spanlatchPackage spanlatch provides a latch management structure for serializing access to keys and key ranges.
pkg/kv/kvserver/spanset
pkg/kv/kvserver/split
pkg/kv/kvserver/stateloader
pkg/kv/kvserver/tscachePackage tscache provides a timestamp cache structure that records the maximum timestamp that key ranges were read from and written to.
pkg/kv/kvserver/txnrecovery
pkg/kv/kvserver/txnwait
pkg/releasePackage release contains utilities for assisting with the release process.
pkg/roachpb
pkg/rpc
pkg/rpc/nodedialer
pkg/security
pkg/security/securitytestPackage securitytest embeds the TLS test certificates.
pkg/serverPackage server implements the Cockroach storage node.
pkg/server/debug
pkg/server/debug/goroutineui
pkg/server/debug/pprofui
pkg/server/diagnosticspb
pkg/server/goroutinedumper
pkg/server/heapprofiler
pkg/server/serverpbPackage serverpb is a reverse proxy.
pkg/server/status
pkg/server/status/statuspb
pkg/server/telemetryPackage telemetry contains helpers for capturing diagnostics information.
pkg/settingsPackage settings provides a central registry of runtime editable settings and accompanying helper functions for retrieving their current values.
pkg/settings/cluster
pkg/sqlPackage sql provides the user-facing API for access to a Cockroach datastore.
pkg/sql/backfill
pkg/sql/catalog
pkg/sql/catalog/accessors
pkg/sql/catalog/catalogkvPackage catalogkv provides functions for interacting with the system catalog tables using the kv client.
pkg/sql/catalog/databasePackage database primarily provides the incoherent database cache and related interfaces.
pkg/sql/catalog/descsPackage descs provides abstractions for dealing with sets of descriptors.
pkg/sql/colcontainer
pkg/sql/colencoding
pkg/sql/colexec
pkg/sql/colexecbase
pkg/sql/colexecbase/colexecerror
pkg/sql/colexec/execgen
pkg/sql/colexec/execpb
pkg/sql/colflow
pkg/sql/colflow/colrpc
pkg/sql/colmem
pkg/sql/covering
pkg/sql/delegate
pkg/sql/distsql
pkg/sql/enum
pkg/sql/execinfra
pkg/sql/execinfrapb
pkg/sql/flowinfra
pkg/sql/gcjob
pkg/sql/lex
pkg/sql/logictest
pkg/sqlmigrations
pkg/sqlmigrations/leasemanagerPackage leasemanager provides functionality for acquiring and managing leases via the kv api for use during sqlmigrations.
pkg/sql/mutations
pkg/sql/oidextPackage oidext contains oids that are not in `github.com/lib/pq/oid` as they are not shipped by default with postgres.
pkg/sql/optPackage opt contains the Cockroach SQL optimizer.
pkg/sql/opt/benchPackage bench houses benchmarks for the SQL optimizer.
pkg/sql/opt/catPackage cat contains interfaces that are used by the query optimizer to avoid including specifics of sqlbase structures in the opt code.
pkg/sql/opt/constraint
pkg/sql/opt/exec
pkg/sql/opt/exec/execbuilder
pkg/sql/opt/idxconstraint
pkg/sql/opt/invertedexpr
pkg/sql/opt/memo
pkg/sql/opt/norm
pkg/sql/opt/opbench
pkg/sql/opt/optbuilder
pkg/sql/opt/optgen/exprgen
pkg/sql/opt/optgen/langPackage lang implements a language called Optgen, short for "optimizer generator".
pkg/sql/opt/orderingPackage ordering contains operator-specific logic related to orderings - whether ops can provide Required orderings, what orderings do they need to require from their children, etc.
pkg/sql/opt/partialidx
pkg/sql/opt/props
pkg/sql/opt/props/physical
pkg/sql/opt/testutils
pkg/sql/opt/testutils/opttester
pkg/sql/opt/testutils/testcat
pkg/sql/opt/testutils/testexpr
pkg/sql/opt/xform
pkg/sql/parser
pkg/sql/parser/fuzz
pkg/sql/pgwire
pkg/sql/pgwire/hbaPackage hba implements an hba.conf parser.
pkg/sql/pgwire/pgcodePackage pgcode defines the PostgreSQL 5-character support codes used throughout the CockroachDB source tree.
pkg/sql/pgwire/pgerror
pkg/sql/pgwire/pgnotice
pkg/sql/pgwire/pgwirebasePackage pgwirebase contains type definitions and very basic protocol structures to be used by both the pgwire package and by others (particularly by the sql package).
pkg/sql/physicalplan
pkg/sql/physicalplan/replicaoraclePackage replicaoracle provides functionality for physicalplan to choose a replica for a range.
pkg/sql/privilege
pkg/sql/querycache
pkg/sql/roleoption
pkg/sql/row
pkg/sql/rowcontainer
pkg/sql/rowexec
pkg/sql/rowflow
pkg/sql/schemachange
pkg/sql/scrub
pkg/sql/sem/builtins
pkg/sql/sem/transform
pkg/sql/sem/tree
pkg/sql/sessiondata
pkg/sql/span
pkg/sql/sqlbase
pkg/sql/sqltelemetryPackage sqltelemetry contains telemetry counter definitions for various SQL features.
pkg/sql/sqlutil
pkg/sql/stats
pkg/sql/stmtdiagnostics
pkg/sql/tests
pkg/sql/types
pkg/sql/vtable
pkg/storagePackage storage provides low-level storage.
pkg/storage/closedts/ctpb
pkg/storage/cloud
pkg/storage/cloudimpl
pkg/storage/enginepb
pkg/storage/fs
pkg/storage/metamorphic
pkg/testutils
pkg/testutils/buildutil
pkg/testutils/colcontainerutils
pkg/testutils/diagutils
pkg/testutils/distsqlutils
pkg/testutils/gossiputil
pkg/testutils/jobutils
pkg/testutils/keysutils
pkg/testutils/kvclientutils
pkg/testutils/lintPackage lint tests Go code for policy and style violations, as well as detecting suspicious constructs that are typically bugs.
pkg/testutils/lint/passes/descriptormarshalPackage descriptormarshal defines an suite of Analyzers that detects correct setting of timestamps when unmarshaling table descriptors.
pkg/testutils/lint/passes/errcmpPackage errcmp defines an Analyzer which checks for usage of errors.Is instead of direct ==/!= comparisons.
pkg/testutils/lint/passes/fmtsafe
pkg/testutils/lint/passes/hashPackage hash defines an Analyzer that detects correct use of hash.Hash.
pkg/testutils/lint/passes/nocopyPackage nocopy defines an Analyzer that detects invalid uses of util.NoCopy.
pkg/testutils/lint/passes/returnerrcheckPackage returnerrcheck defines an suite of Analyzers that detects conditionals which check for a non-nil error and then proceed to return a nil error.
pkg/testutils/lint/passes/timerPackage timer defines an Analyzer that detects correct use of timeutil.Timer.
pkg/testutils/lint/passes/unconvertPackage unconvert defines an Analyzer that detects unnecessary type conversions.
pkg/testutils/localtestcluster
pkg/testutils/pgtest
pkg/testutils/physicalplanutils
pkg/testutils/reducePackage reduce implements a reducer core for reducing the size of test failure cases.
pkg/testutils/reduce/reducesql
pkg/testutils/serverutils
pkg/testutils/sqlutils
pkg/testutils/storageutils
pkg/testutils/testcluster
pkg/testutils/zerofields
pkg/tsPackage ts provides a basic time series database on top of the underlying CockroachDB key/value datastore.
pkg/ts/catalog
pkg/ts/testmodel
pkg/ts/tspbPackage tspb is a reverse proxy.
pkg/uiPackage ui embeds the assets for the web UI into the Cockroach binary.
pkg/ui/distcclPackage distccl embeds the assets for the CCL version of the web UI into the Cockroach binary.
pkg/ui/distossPackage distoss embeds the assets for the OSS version of the web UI into the Cockroach binary.
pkg/util
pkg/util/arith
pkg/util/binfetcher
pkg/util/bitarray
pkg/util/bufalloc
pkg/util/cache
pkg/util/caller
pkg/util/cgroups
pkg/util/cloudinfo
pkg/util/contextutil
pkg/util/ctxgroupPackage ctxgroup wraps golang.org/x/sync/errgroup with a context func.
pkg/util/duration
pkg/util/encoding
pkg/util/encoding/csvPackage csv reads and writes comma-separated values (CSV) files.
pkg/util/envutil
pkg/util/errorutil
pkg/util/errorutil/unimplemented
pkg/util/fileutil
pkg/util/flagutilPackage flagutil facilitates creation of rich flag types.
pkg/util/fsmPackage fsm provides an interface for defining and working with finite-state machines.
pkg/util/growstack
pkg/util/grpcutil
pkg/util/hlcPackage hlc implements the Hybrid Logical Clock outlined in "Logical Physical Clocks and Consistent Snapshots in Globally Distributed Databases", available online at http://www.cse.buffalo.edu/tech-reports/2014-04.pdf.
pkg/util/httputil
pkg/util/humanizeutil
pkg/util/intervalPackage interval provides two implementations for an interval tree.
pkg/util/interval/genericPackage generic provides an implementation of a generic immutable interval B-Tree.
pkg/util/interval/generic/internal
pkg/util/ipaddr
pkg/util/json
pkg/util/keysutil
pkg/util/leaktestPackage leaktest provides tools to detect leaked goroutines in tests.
pkg/util/limit
pkg/util/logPackage log implements logging.
pkg/util/log/logflags
pkg/util/metricPackage metric provides server metrics (a.k.a.
pkg/util/mon
pkg/util/netutil
pkg/util/prettyPackage pretty prints documents based on a target line width.
pkg/util/protoutil
pkg/util/quotapoolPackage quotapool provides an abstract implementation of a pool of resources to be distributed among concurrent clients.
pkg/util/randutil
pkg/util/retry
pkg/util/ring
pkg/util/sdnotifyPackage sdnotify implements both sides of the systemd readiness protocol.
pkg/util/search
pkg/util/sequence
pkg/util/shuffle
pkg/util/span
pkg/util/stop
pkg/util/stringarena
pkg/util/stringencoding
pkg/util/syncutil
pkg/util/syncutil/singleflightPackage singleflight provides a duplicate function call suppression mechanism.
pkg/util/sysutilPackage sysutil is a cross-platform compatibility layer on top of package syscall.
pkg/util/timeofday
pkg/util/timetz
pkg/util/timeutil
pkg/util/timeutil/pgdatePackage pgdate contains parsing functions and types for dates and times in a manner that is compatible with PostgreSQL.
pkg/util/tracing
pkg/util/treeprinter
pkg/util/uint128
pkg/util/unique
pkg/util/uuid
pkg/util/version
pkg/workloadPackage workload provides an abstraction for generators of sql query loads (and requisite initial data) as well as tools for working with these generators.
pkg/workload/bank
pkg/workload/bulkingestPackage bulkingest defines a workload that is intended to stress some edge cases in our bulk-ingestion infrastructure.
pkg/workload/cli
pkg/workload/debugPackage debug provides a workload subcommand under which useful workload utilities live.
pkg/workload/examples
pkg/workload/faker
pkg/workload/histogram
pkg/workload/indexes
pkg/workload/interleavedpartitioned
pkg/workload/jsonload
pkg/workload/kv
pkg/workload/ledger
pkg/workload/movr
pkg/workload/querybench
pkg/workload/querylog
pkg/workload/queue
pkg/workload/rand
pkg/workload/schemachange
pkg/workload/sqlsmith
pkg/workload/tpcc
pkg/workload/tpccchecks
pkg/workload/tpcds
pkg/workload/tpch
pkg/workload/workloadimplPackage workloadimpl provides dependency-light helpers for implementing workload.Generators.
pkg/workload/workloadsql
pkg/workload/ycsbPackage ycsb is the workload specified by the Yahoo! Cloud Serving Benchmark.

Updated 2020-07-09. Refresh now. Tools for package owners.