History log of /5.5.2/kv_engine/engines/ep/src/collections/filter.cc (Results 1 - 7 of 7)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: v7.0.2, v6.6.3, v7.0.1, v7.0.0, v6.6.2, v6.5.2, v6.6.1, v6.0.5, v6.6.0, v6.5.1, v6.0.4, v6.5.0, v6.0.3, v5.5.4, v5.5.5, v5.5.6, v6.0.1, v5.5.3, v6.0.0, v5.1.3, v5.5.2, v5.5.1, v5.1.2, v5.1.1
# 1f8437cf 06-Feb-2018 Jim Walker <jim@couchbase.com>

MB-26972: JSON DCP Filter must also accept name and uid format

If a client wants to re-connect a DCP stream (non-zero) they must
be specific about the collection so they don't miss a int

MB-26972: JSON DCP Filter must also accept name and uid format

If a client wants to re-connect a DCP stream (non-zero) they must
be specific about the collection so they don't miss a intermediate
collection delete during their downtime.

This commit updates Collections::Filter so two formats of JSON are
valid and updates Collections::VB::Filter to use the strict name/uid
checks when the client uses the name:uid format.

A subsequent patch will ensure that the client does a name:uid request
when the start-seqno is non-zero.

Change-Id: I3cae53bf855d4b8001bcc65b6f036a9053b88307
Reviewed-on: http://review.couchbase.org/85981
Tested-by: Build Bot <build@couchbase.com>
Reviewed-by: Trond Norbye <trond.norbye@gmail.com>

show more ...


Revision tags: v5.0.1
# 9628a0d6 07-Dec-2017 Jim Walker <jim@couchbase.com>

MB-27122: [2/2] Do not initialise the current manifest

As described in the MB, it is risky to initialise the current manifest
to a 'default' state. It is safer to run without a manifest

MB-27122: [2/2] Do not initialise the current manifest

As described in the MB, it is risky to initialise the current manifest
to a 'default' state. It is safer to run without a manifest as we
really should only operate on what the cluster_manager tells us.

This leads to one situation in DcpOpen where we must fail the open
if the manifest hasn't yet been set, this situation is now flagged
by a new error code "no_collections_manifest" allowing what should
be a temporary failure (cluster manager should always push a manifest)
to be observed.

Change-Id: I79804bbc97da6ba00182355815abe53ad1125da1
Reviewed-on: http://review.couchbase.org/86514
Reviewed-by: Dave Rigby <daver@couchbase.com>
Tested-by: Build Bot <build@couchbase.com>

show more ...


# d0d71f8a 07-Dec-2017 Jim Walker <jim@couchbase.com>

MB-27122: [1/2] Change DcpProducer filter from pointer to object

1. A DcpProducer can never not have a filter so make it an owned
object.

2. In-order to get better error return

MB-27122: [1/2] Change DcpProducer filter from pointer to object

1. A DcpProducer can never not have a filter so make it an owned
object.

2. In-order to get better error returns for incorrect filters on
DcpOpen hoist the construction of the filter to be part of the
producer creation. We now create the filter and if success create
the producer passing the filter as an argument, this is done using
std::move so that we don't create temporaries.

3. The error checking is now geared around catching cb::engine_error
allowing the creation to return errors to the client. Note at this
patch level the Filter's throw points are unchanged, it still throws
std::invalid_argument and triggers a disconnect.

Change-Id: Ife88598830dcaf27573783228c989dcc6a31a9bc
Reviewed-on: http://review.couchbase.org/86513
Reviewed-by: Dave Rigby <daver@couchbase.com>
Tested-by: Build Bot <build@couchbase.com>

show more ...


# d698f45e 20-Nov-2017 Jim Walker <jim@couchbase.com>

MB-16181: Remove separator from Filter

Member was added in an earlier patch and never utilised.

Change-Id: I31a17f1b7c53cfdc5c8c91fd82a58f12fe7dd41f
Reviewed-on: http://review.c

MB-16181: Remove separator from Filter

Member was added in an earlier patch and never utilised.

Change-Id: I31a17f1b7c53cfdc5c8c91fd82a58f12fe7dd41f
Reviewed-on: http://review.couchbase.org/85768
Tested-by: Build Bot <build@couchbase.com>
Reviewed-by: Daniel Owen <owend@couchbase.com>

show more ...


Revision tags: v5.1.0, v5.0.0
# 30aab6b7 22-Aug-2017 Jim Walker <jim@couchbase.com>

MB-25342: Collection UID in the Manifest

Primarily update the JSON specification so that the 'set_collections'
command requires that collections are given a UID.

The purpose of

MB-25342: Collection UID in the Manifest

Primarily update the JSON specification so that the 'set_collections'
command requires that collections are given a UID.

The purpose of the UID is to allow KV-engine to see that a collection
was deleted and recreated without ever seeing the intermediate delete.
The collections management code will identify that it knows about a
collection, but because of the UID it can determine if the collection
it knows about is now defunct.

A secondary purpose is that DCP may allow clients to use UIDs when
filtering collections.

The UID must be a JSON string that stores a 64-bit unsigned integer
encoded in hex.

Note it is the cluster managements responsibility to ensure that a UID
is unique enough that it doesn't collide with a previous generation
before that generation has been fully deleted (note once a generation
has been fully deleted, a UID could be re-used).

Change-Id: I6f9bbde00783a7a93511bb5ee426b8c43d8c019f
Reviewed-on: http://review.couchbase.org/83227
Reviewed-by: Dave Rigby <daver@couchbase.com>
Tested-by: Build Bot <build@couchbase.com>

show more ...


# ef22f9b0 25-May-2017 Dave Rigby <daver@couchbase.com>

Move ep-engine to engines/ep


Revision tags: v4.6.2_ep
# 042bf504 14-Mar-2017 Jim Walker <jim@couchbase.com>

MB-16181: Add Collections Filter classes and test

Two classes exist for filtering.

Collections::Filter
Collections::VB::Filter

The idea is that a DCP producer will esta

MB-16181: Add Collections Filter classes and test

Two classes exist for filtering.

Collections::Filter
Collections::VB::Filter

The idea is that a DCP producer will establish a Collections::Filter
that lives for the lifetime of the DCP producer.

As the DCP producer creates streams, a Collections::VB::Filter is
assigned to the stream which contains the real set of collections to
filter (and also the actual "filter" function).

Change-Id: I2f35b1698ce977116486a2e6940437eee25faef1
Reviewed-on: http://review.couchbase.org/78137
Reviewed-by: Dave Rigby <daver@couchbase.com>
Tested-by: Build Bot <build@couchbase.com>

show more ...