Commit Graph

1473 Commits

Author SHA1 Message Date
Pekka Enberg
8fda9fd97d cql3: Convert constant parser rule to C++
Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
2015-01-22 13:48:40 +02:00
Pekka Enberg
7bcc5d7397 cql3: Convert STRING_LITERAL lexer rule to C++
Note! I did not convert "pg-style string literals" (whatever those are)
because it's using Java-specific regex.

Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
2015-01-22 13:48:40 +02:00
Pekka Enberg
1646361b88 cql3: Convert QUOTED_NAME lexer rule to C++
Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
2015-01-22 13:48:40 +02:00
Pekka Enberg
3b73f90a08 cql3: Convert Constants to C++, take 2
Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
2015-01-22 13:48:40 +02:00
Avi Kivity
dfc06e9386 Merge branch 'penberg/cql3' of github.com:cloudius-systems/seastar-dev into db
More cql.g conversions, from Pekka:

   "In preparaion for converting insert statement grammar rules, convert
    native types and column identifiers."

ase enter a commit message to explain why this merge is necessary,
2015-01-21 17:28:14 +02:00
Pekka Enberg
111f541536 cql3: Cql.g column identifiers
Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
2015-01-21 17:26:21 +02:00
Pekka Enberg
a88c49ede8 cql3: Make column_identifier instantiable
The class inherits from abstract base class selectable so there's methods that
we need to define.

Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
2015-01-21 15:38:09 +02:00
Pekka Enberg
ead2e3cff3 cql3: Cql.g native types
Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
2015-01-21 15:30:30 +02:00
Avi Kivity
0f14fdab68 Merge branch 'master' of github.com:cloudius-systems/seastar into db 2015-01-20 13:03:58 +02:00
Avi Kivity
b02f4b15d5 Merge branch 'penberg/cql3' of github.com:cloudius-systems/seastar-dev into db
Convert CQL UpdateStatement.ParsedInsert class to C++, from Pekka.
2015-01-20 13:03:21 +02:00
Avi Kivity
fff2920c55 tests: disable address sanitizer alloc/dealloc mismatch test
Generates false positive with new (with_alignment(...)) ...
2015-01-20 12:21:41 +02:00
Avi Kivity
88067922a0 Merge branch 'semaphore'
Add semaphore::broken()
2015-01-20 12:06:53 +02:00
Pekka Enberg
129c27d1c4 cql3: Convert UpdateStatement to C++
Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
2015-01-20 11:49:42 +02:00
Pekka Enberg
e4a8d7cf71 cql3: Convert ModificationStatement to C++
Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
2015-01-20 11:48:26 +02:00
Pekka Enberg
63a2ec49b3 cql3: Convert ColumnIdentifier.Raw to C++
Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
2015-01-20 11:47:38 +02:00
Pekka Enberg
b9b6242186 cql3: Convert Selectable.Raw to C++
Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
2015-01-20 11:47:38 +02:00
Pekka Enberg
a9930ac12c cql3: Convert UpdateParameters to C++
Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
2015-01-20 11:47:38 +02:00
Pekka Enberg
b705b227ef cql3: Convert ColumnCondition to C++
Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
2015-01-20 11:47:38 +02:00
Pekka Enberg
853c1e10b4 cql3: Convert Operation to C++
Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
2015-01-20 11:47:38 +02:00
Pekka Enberg
8362afda2d config: Convert ColumnDefinition to C++
Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
2015-01-20 11:47:38 +02:00
Pekka Enberg
ed0bc97823 config: Import config/ColumnDefinition.java
Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
2015-01-20 11:47:38 +02:00
Pekka Enberg
728f67eba1 config: Convert CFMetaData to C++
Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
2015-01-20 11:47:38 +02:00
Pekka Enberg
3e2d215342 config: Import config/CFMetaData.java
Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
2015-01-20 11:47:38 +02:00
Pekka Enberg
74f8799324 cql3: Make cql::statement::uses_function const
Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
2015-01-20 11:47:38 +02:00
Pekka Enberg
34642a41b4 cql3: Make column_specification non-final
It's inherited by the config.ColumnDefinition class.

Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
2015-01-20 11:45:26 +02:00
Pekka Enberg
6211dd68df cql3: Fix parsed_statement type
Parsed statements are not CQL statements so we shouldn't inherit from the
latter although commit 485620a ("cql3: Fix cql_statement and parsed_statement
confusion") claims otherwise.

This is needed to convert classes such as UpdateStatement.ParsedInsert.

Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
2015-01-20 11:41:08 +02:00
Avi Kivity
2e4122ddd7 futures_test: add broken semaphore test 2015-01-20 11:30:56 +02:00
Avi Kivity
90e77cc3a0 semaphore: support for breaking a semaphore
Tell all waiters that something bad happened and they should all go away.

Can be used only once; waiters should clean up and there must not be any
new waiters.
2015-01-20 11:29:48 +02:00
Avi Kivity
a6dea57f5b semaphore: add missing include 2015-01-20 11:29:26 +02:00
Avi Kivity
4c86eab910 Merge branch 'docker'
Improve docker builds.
2015-01-19 20:16:15 +02:00
Avi Kivity
811fba9bc1 Merge branch 'align'
Aligned allocation facility.
2015-01-19 20:15:51 +02:00
Avi Kivity
b452e33bd1 README: simplify docker build instructions
Run the build command directly in docker, using a shell function, instead
of opening a shell.  Forward the user/group IDs so the build artifacts belong
to the user, not root.
2015-01-19 20:13:32 +02:00
Avi Kivity
1a29177d78 build: add cryptopp, libpciaccess, zlib, and libxml2 to docker installation 2015-01-19 20:13:15 +02:00
Avi Kivity
6e9d4f367d build: move Dockerfile to docker/dev
'docker build' transfers the directory containing Dockerfile to the
container, which can take quite a while with a pre-built environment.
2015-01-19 19:50:15 +02:00
Avi Kivity
93ae11cf63 resource: fix off-by-type getting number of processing units
Effect was to lose hyperthreads on NUMA machines.
2015-01-19 16:11:11 +02:00
Avi Kivity
e0d5bd2fb8 collectd: improve default hostname 2015-01-19 15:58:24 +02:00
Asias He
56f8ba3303 tcp: Clear more when tear down a connection 2015-01-19 13:32:53 +02:00
Avi Kivity
555be6f4bc tests: test aligned allocator 2015-01-19 09:49:32 +02:00
Avi Kivity
45f9c86943 memory: provide C++ facilities for aligned allocation
new (with_alignment(64)) foo(...)   // cache aligned foo
  std::vector<foo, aligned_allocator<foo, 64>> // cached aligned foo vector
2015-01-19 09:49:32 +02:00
Avi Kivity
b22186e623 memory: fix small aligned allocations
When size > align, we simply call the small allocator with the provided size,
but that does not guarantee any alignment above the default.

Round the allocation size to the nearest power of two in that case, to
guarantee alignment.
2015-01-19 09:49:32 +02:00
Gleb Natapov
23b9605fc4 net: fix virtio bulk sending
Zero net_hdr_mrg for each packet, otherwise wrong flags may be used.
2015-01-18 16:23:01 +02:00
Gleb Natapov
4920f309e8 net: fix dpdk bulk sending
_tx_burst_idx may be zero, but _tx_burst still holds packets from the top
of circular_buffer, so avoid refilling in this case.
2015-01-18 16:23:00 +02:00
Vlad Zolotarov
b8185d5afe DPDK: Set rss_bits to correct value if reta_size is not available
rss_bits should be equal to the number of bits HW used in its RSS calculation.
Use dev_info.max_rx_queues if dev_info.reta_size is not available.

Signed-off-by: Vlad Zolotarov <vladz@cloudius-systems.com>
2015-01-18 12:37:19 +02:00
Gleb Natapov
e3915cfcf8 reactor: call pause instruction in idle loop 2015-01-18 12:37:05 +02:00
Gleb Natapov
2ff006da4a core: calculate system load and report it via collectd 2015-01-18 12:37:05 +02:00
Gleb Natapov
1ef2808750 reactor: return proper value from pollers
Currently most of them return true no matter if any work was actually
done. Fix it to return true only if poll did any work.
2015-01-18 12:37:05 +02:00
Avi Kivity
201a9617bf Merge branch 'v2p'
Virtual-to-physical translation, for DMA.  Requires hugetlbfs backed memory.
2015-01-18 10:43:22 +02:00
Pekka Enberg
0b0a751370 cql3: Clean up optional<> use in boolean return expressions
Suggested by Avi.

Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
2015-01-18 10:27:58 +02:00
Don Marti
69a39dbb6c build: Install all RPMs in one command in Dockerfile
Save one intermediate container and a little time.

Signed-off-by: Don Marti <dmarti@cloudius-systems.com>
2015-01-18 10:03:16 +02:00
Gleb Natapov
57bcec15c7 memcached: flush cache during destruction.
Also add assert to item's cancel() function. It cannot be called after
cache is flushed.

Reviewed-by: Tomasz Grabiec <tgrabiec@gmail.com>
2015-01-15 18:25:30 +02:00