Tomasz Grabiec
b34cdd76ae
db: Make the whole database printable
...
For debugging purposes.
2015-04-15 20:33:48 +02:00
Tomasz Grabiec
66924090c6
Merge tag 'avi/functions/v1'
...
From Avi:
This patchsets completes the conversion of scalar functions (TOKEN is still
missing, and maybe others, but the infrastructure is there).
Conflicts:
database.cc
2015-04-02 12:48:21 +02:00
Avi Kivity
bb4b303bba
db: add ostream operators for atomic_cell
2015-04-01 20:12:39 +03:00
Calle Wilund
6f6f924c9c
Serializer object(s) for internal use
...
For serializing to commit log, and potentially internal wire messaging.
Note: intentionally incompatible with stock C wire/serial format.
Note: intentionally separate from the CQL-centric serialization
for a few reasons.
1.) Need "bulk serializers" for internal objects (mutation etc)
which might not fit well into the "types.hh" serializer schemes.
2.) No need for polymorphism/virtual type parameters since we know
exactly what we serialize and to where.
2015-04-01 10:08:00 +02:00
Tomasz Grabiec
69b4dd76e8
atomic_cell: Add is_live() version which takes a tombstone
...
It determines if the cell is live given its cointainer has this
tombstone.
2015-03-30 09:07:00 +02:00
Avi Kivity
6f7187fa43
db: drop unused atomic_cell::is_dead() parameter
2015-03-23 21:54:22 +02:00
Tomasz Grabiec
90298af614
db: Cleanup atomic_cell naming
...
atomic_cell -> atomic_cell_type
atomic_cell::one -> atomic_cell
atomic_cell::view -> atomic_cell_view
2015-03-20 18:59:29 +01:00
Avi Kivity
56d4592e00
atomic_cell: add view::serialize() helper
2015-03-12 09:56:53 +02:00
Tomasz Grabiec
3db3207b85
Merge branch seastar-dev.git 'collections'
...
Collections support from Avi.
2015-03-05 20:25:48 +01:00
Avi Kivity
42a9c0f7d3
atomic_cell: export merge_column
2015-03-05 19:03:29 +02:00
Avi Kivity
df22293baf
atomic_cell: export compare_atomic_cell_for_merge
...
Will be used for merging maps.
2015-03-05 18:11:37 +02:00
Avi Kivity
57b6d4ada5
atomic_cell: add collection support
...
We leave interpretation to the backing type (map/set/list), so there is
not much code here.
2015-03-05 14:03:36 +02:00
Avi Kivity
2f8be37fca
atomic_cell_or_collection: allow construction from atomic_cell
...
Since an atomic_cell has an is-a relationship to atomic_cell_or_collection,
we can allow direct conversion. Type information is only lost, not added.
2015-03-05 14:03:36 +02:00
Avi Kivity
76d1256565
atomic_cell: add serialize() method
...
Since atomic_cell is already in serialized form, the implementation is
simple.
2015-03-05 14:03:36 +02:00
Avi Kivity
7eba98f18c
atomic_cell: add missing include
2015-03-05 11:17:43 +02:00
Tomasz Grabiec
55fae09bf9
db: Remove unused parameter from atomic_cell::view::is_dead()
2015-03-05 10:09:38 +01:00
Avi Kivity
6d18aa8f20
Decompose database.hh, types.hh into smaller headers
...
Avoid include hell for new code.
2015-03-04 16:18:48 +02:00