Refactor integration/data_test.go to use Test* names for the tests
and remove the TestAll test case, which uses reflection to iterate
over all test functions. Also, change the two SingleServerSuite
test functions in this file to DataTestSuite functions.
The DataTestSuite now conforms to standard Go / gocheck test
conventions. Individual tests can be run. Groups of tests can be
run by specifying patterns. E.g.,
make integraton_test only=DataTestSuite
...will run all tests in data_test.go. Or,
make integration_test only=DataTestSuite.Test.*Histogram
...will run all histogram related tests.
See the gocheck documentation for further details.
Fixes#867. Close#927. Updated lexer and parser to work, added code to
coordinator to insert spaces if requested. Now the user can request the
shard spaces. `list series include spaces`
Combine the three separate loops for DB creation, running setup
functions, and running tests into one loop. Add a DB delete at the
end of each test for cleanup.
This groups output for each test together in one place. It also has
the advantage of not running all DB creations and setup functions until
they're needed.
Close#768
This patch isn't backward compatible since older version allowed the use
of table names with '-' without enclosing them. With this change, '-'
characters are disallowed completely unless they were enclosed in double
quotes. The parser can be made more complicated and be more context
aware to distinguish the use of the '-' character depending on the query
being parser, but I think the approach in this patch is simpler and less
confusing from the user's point of view.
Fixes#853. Close#854. Previously, there was an unprotected endpoint in
raft to return the cluster config that would include user hashes. This
endpoint is useful for debugging purposes so I restructured it and moved
it to the API. It ensures the requesting user is a cluster admin.
Cluster config will now return all of the cluster state including
servers, CQs, shards, etc.
This will help users recover from #886. It's dangerous functionality because it only changes the metadata. Will document and tell people to use with caution.
Fixes#886. Shard spaces would not have compiled regexes when the server is restarted and the cluster config is pulled from a raft snapshot. A call to MatchSeries would then reset the regex for the shard space. BAAAAAD.
This will help users recover from #886. It's dangerous functionality because it only changes the metadata. Will document and tell people to use with caution.
Fixes#886. Shard spaces would not have compiled regexes when the server is restarted and the cluster config is pulled from a raft snapshot. A call to MatchSeries would then reset the regex for the shard space. BAAAAAD.