History log of /3.0.3-GA/ep-engine/src/tasks.h (Results 1 - 25 of 35)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: v4.6.5, v4.6.3, v4.6.4, v4.6.2, v4.6.1, v4.6.0, v4.6.0-DP, v4.5.1, v4.1.2, v3.1.6, v4.5.0, v4.1.1, v3.1.5, v3.1.4, v3.1.3, v4.1.0, v3.1.2, v3.1.1, v4.0.0, v3.1.0, v3.0.2
# 7d037a78 31-Oct-2014 Mike Wiederhold <mike@couchbase.com>

MB-12483: Don't allow recreation during vbucket deletion

When we delete a vbucket we have an option to recreate the file
immediately. Doing this is incorrect because we will not know

MB-12483: Don't allow recreation during vbucket deletion

When we delete a vbucket we have an option to recreate the file
immediately. Doing this is incorrect because we will not know
what the failover log of the new vbucket looks like until we
actually create it in memory. This can lead to a situation where
there is no failover log and as a result the local doc json will
be invalid. If the server is shutdown right after this happens and
then is restarted the vbuckets might be created with garbage values
in some of their fields.

Change-Id: I70e6335af68746aeac49a336da5e33b70dfcfe0e
Reviewed-on: http://review.couchbase.org/42677
Reviewed-by: Sundararaman Sridharan <sundar@couchbase.com>
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Michael Wiederhold <mike@couchbase.com>

show more ...


Revision tags: v3.0.0
# 6dbd231f 12-Aug-2014 Chiyoung Seo <chiyoung.seo@gmail.com>

MB-11912 Monitor workload pattern for dynamic compaction scheduling.

This change allows us to monitor workload pattern (i.e.,
read_heavy, write_heavy, mixed) at runtime and use the monit

MB-11912 Monitor workload pattern for dynamic compaction scheduling.

This change allows us to monitor workload pattern (i.e.,
read_heavy, write_heavy, mixed) at runtime and use the monitored
workload pattern to adjust the number of concurrent compaction
tasks dynamically at runtime. If the workload pattern is read-heavy,
then only one compaction task is executed at a time.

Note that we plan to keep improving this area for better I/O
scheduling.

Change-Id: Ibbb27da0a7e9f3951571ad8068570ebbf9abb318
Reviewed-on: http://review.couchbase.org/40520
Reviewed-by: Sundararaman Sridharan <sundar@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...


# c02a2388 01-Aug-2014 Sundar Sridharan <sundar.sridharan@gmail.com>

MB-11863 DaemonVBSnapshot task must complete before shutdown

Change-Id: Iacb7852525a5055bac16a61d02e4ed65daf17319
Reviewed-on: http://review.couchbase.org/40155
Reviewed-by: abhinav

MB-11863 DaemonVBSnapshot task must complete before shutdown

Change-Id: Iacb7852525a5055bac16a61d02e4ed65daf17319
Reviewed-on: http://review.couchbase.org/40155
Reviewed-by: abhinav dangeti <abhinav@couchbase.com>
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...


# 80784acc 30-Jul-2014 Sundar Sridharan <sundar.sridharan@gmail.com>

prevent task state change from overriding task cancel

task states of snooze and running must not override task cancel
otherwise it can cause a hang while shutting down bucket
use ato

prevent task state change from overriding task cancel

task states of snooze and running must not override task cancel
otherwise it can cause a hang while shutting down bucket
use atomic compare and swap for safe lockless operation.

Change-Id: Ibfc3c7745d0c40893c577d3d94775f523ecc2861
Reviewed-on: http://review.couchbase.org/40060
Tested-by: Sundararaman Sridharan <sundar@couchbase.com>
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...


# 4d9d8f03 30-Jul-2014 Chiyoung Seo <chiyoung.seo@gmail.com>

MB-11799 Throttle vbucket compaction with the disk write queue size.

If a disk write queue size is above the threshold, it is better to
throttle vbucket compaction tasks, so that the min

MB-11799 Throttle vbucket compaction with the disk write queue size.

If a disk write queue size is above the threshold, it is better to
throttle vbucket compaction tasks, so that the minimum number of
compaction tasks can be running at the same time.

As another commit, we will make both the write queue size threshold and
the minimum number of compaction tasks configurable at runtime.

Change-Id: I70d6c3f02507895ed767060870e9e16265cd60ac
Reviewed-on: http://review.couchbase.org/40043
Reviewed-by: Michael Wiederhold <mike@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...


# 716c674b 29-Jul-2014 Chiyoung Seo <chiyoung.seo@gmail.com>

Remove unnecessary lock from Task class.

Task::snooze is always invoked by only one thread at any time.

Change-Id: If0921eadafb562cd124d8ce29b154f47f77861c5
Reviewed-on: http://

Remove unnecessary lock from Task class.

Task::snooze is always invoked by only one thread at any time.

Change-Id: If0921eadafb562cd124d8ce29b154f47f77861c5
Reviewed-on: http://review.couchbase.org/40042
Reviewed-by: Michael Wiederhold <mike@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...


# a6bae185 29-Jul-2014 abhinavdangeti <abhinav@couchbase.com>

unit test fix (95)

Change-Id: I1f1d0e944f982410081ca4a78e389be586bec5d3
Reviewed-on: http://review.couchbase.org/40018
Reviewed-by: Sundararaman Sridharan <sundar@couchbase.com>

unit test fix (95)

Change-Id: I1f1d0e944f982410081ca4a78e389be586bec5d3
Reviewed-on: http://review.couchbase.org/40018
Reviewed-by: Sundararaman Sridharan <sundar@couchbase.com>
Tested-by: abhinav dangeti <abhinav@couchbase.com>

show more ...


# 14ca80fb 26-Jul-2014 Chiyoung Seo <chiyoung.seo@gmail.com>

MB-11731 Add the daemon vbucket state snapshot task.

This new daemon task will be scheduled periodically and persist
any vbucket state changes with a lower priority.

Change-Id:

MB-11731 Add the daemon vbucket state snapshot task.

This new daemon task will be scheduled periodically and persist
any vbucket state changes with a lower priority.

Change-Id: I2aa7dc5dda0153aac74314e239a85ad3f444c4d8
Reviewed-on: http://review.couchbase.org/39907
Reviewed-by: David Liao <david.liao@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...


# e9459939 25-Jul-2014 Chiyoung Seo <chiyoung.seo@gmail.com>

MB-11731 Replace the shard-level vbstate snapshot with individual tasks.

As we replace a shard-level lock with a vbucket-level lock to synchronize
the flusher, vbucket deletion, vbucket

MB-11731 Replace the shard-level vbstate snapshot with individual tasks.

As we replace a shard-level lock with a vbucket-level lock to synchronize
the flusher, vbucket deletion, vbucket compaction, vbucket state
persistence tasks, this changes also replaces the shard-level vbstate
snapshot task with individual vbstate persistence tasks.

Change-Id: Ief7138a4b63d388cd786b966f68fcd8ab6ce2722
Reviewed-on: http://review.couchbase.org/39906
Reviewed-by: David Liao <david.liao@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...


# 29815e6a 25-Jul-2014 abhinavdangeti <abhinav@couchbase.com>

No need to pass the vbucket object to vb_delete_task

Change-Id: I0ca93f00f5d11fac435e63b6ad7f95549f170c17
Reviewed-on: http://review.couchbase.org/39862
Reviewed-by: Chiyoung Seo <ch

No need to pass the vbucket object to vb_delete_task

Change-Id: I0ca93f00f5d11fac435e63b6ad7f95549f170c17
Reviewed-on: http://review.couchbase.org/39862
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: abhinav dangeti <abhinav@couchbase.com>

show more ...


# fc21d573 25-Jul-2014 Sundar Sridharan <sundar.sridharan@gmail.com>

Add stats for measuring ExecutorPool scheduling delay & runtimes

Usage: cbstats ip:port -b <bucketname> scheduler

It returns the timing histograms of the scheduling overhead incurre

Add stats for measuring ExecutorPool scheduling delay & runtimes

Usage: cbstats ip:port -b <bucketname> scheduler

It returns the timing histograms of the scheduling overhead incurred by
all tasks in ep-engine. Scheduling overhead is computed as the difference
between the scheduled runtime of a task and the actual runtime.
This will give us definitive answers to how much delay is introduced by
the scheduling overhead of the global thread pool and how it affects
each task in ep-engine.

Usage: cbstats ip:port -b <bucketname> runtimes

It returns the timing histograms of various task runtimes measured from
the ExecutorPool.

Change-Id: Icb34d4a87c8659fb22b7d2c1ba6bef0836045c3e
Reviewed-on: http://review.couchbase.org/39705
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...


# e616ac04 17-Jul-2014 Sundar Sridharan <sundar.sridharan@gmail.com>

MB-11731 remove shard level locking from ExecutorPool

we no longer need to block threads at shard level since
locks are acquired at the vbucket level

Change-Id: Iebc368d243499b7

MB-11731 remove shard level locking from ExecutorPool

we no longer need to block threads at shard level since
locks are acquired at the vbucket level

Change-Id: Iebc368d243499b76b5cf1f4f0d50c487866960dc
Reviewed-on: http://review.couchbase.org/39502
Reviewed-by: abhinav dangeti <abhinav@couchbase.com>
Tested-by: Sundararaman Sridharan <sundar@couchbase.com>

show more ...


# dca5ef32 18-Jul-2014 abhinavdangeti <abhinav@couchbase.com>

MB-11731: Vbucket-level locking as opposed to shard-level

For flusher tasks:
- flushVBucket
- compactVBucket
- snapshot task
- vbDelete

Change-Id: I0f17ed7dacdc23556

MB-11731: Vbucket-level locking as opposed to shard-level

For flusher tasks:
- flushVBucket
- compactVBucket
- snapshot task
- vbDelete

Change-Id: I0f17ed7dacdc23556f110e271048836ed6701685
Reviewed-on: http://review.couchbase.org/34501
Reviewed-by: Sundararaman Sridharan <sundar@couchbase.com>
Tested-by: abhinav dangeti <abhinav@couchbase.com>

show more ...


# c3827af2 08-Jul-2014 abhinavdangeti <abhinav@couchbase.com>

MB-11629: In CompactVBTask, set completeBeforeShutdown to true

Possible race condition between handleDisconnect and notify from
CompactVBTask, causing the session counter to be
decre

MB-11629: In CompactVBTask, set completeBeforeShutdown to true

Possible race condition between handleDisconnect and notify from
CompactVBTask, causing the session counter to be
decremented for a compactVB task before it completes execution,
and when it does run later, results in an underflow of the
session counter.

Change-Id: Ie3681f84925df7bf4cf71672b6625aa43b1c6a4d
Reviewed-on: http://review.couchbase.org/39212
Reviewed-by: Sundararaman Sridharan <sundar@couchbase.com>
Tested-by: abhinav dangeti <abhinav@couchbase.com>

show more ...


# bdcdcabc 16-Jun-2014 abhinavdangeti <abhinav@couchbase.com>

Fix indentation in tasks.h

Change-Id: I5cba82df5d3e04a13022d6fab3849e677dbe7a2c
Reviewed-on: http://review.couchbase.org/38340
Reviewed-by: Sundararaman Sridharan <sundar@couchbase.c

Fix indentation in tasks.h

Change-Id: I5cba82df5d3e04a13022d6fab3849e677dbe7a2c
Reviewed-on: http://review.couchbase.org/38340
Reviewed-by: Sundararaman Sridharan <sundar@couchbase.com>
Tested-by: abhinav dangeti <abhinav@couchbase.com>

show more ...


# 62d32292 16-Jun-2014 Sundar Sridharan <sundar.sridharan@gmail.com>

MB-11405 optimize by avoiding string constructions

getDescription() overhead in performance is seen in profile
reports when large number of active buckets come into picture
Avoid con

MB-11405 optimize by avoiding string constructions

getDescription() overhead in performance is seen in profile
reports when large number of active buckets come into picture
Avoid constructing strings in it to optimize CPU

Change-Id: Ic2d1e875eba51a9dff3a2530ca4d3b0ffe5d1e0d
Reviewed-on: http://review.couchbase.org/38337
Tested-by: Sundararaman Sridharan <sundar@couchbase.com>
Reviewed-by: abhinav dangeti <abhinav@couchbase.com>

show more ...


# e9a94d19 28-Apr-2014 Sundar Sridharan <sundar.sridharan@gmail.com>

Use the shard serial feature of ExecutorPool on writer tasks

This results in better thread usage since threads will never
get stuck trying to acquire the shard lock

The shard lo

Use the shard serial feature of ExecutorPool on writer tasks

This results in better thread usage since threads will never
get stuck trying to acquire the shard lock

The shard lock is still needed for the flushAllDelete operation
which should be rare

Change-Id: I4e1ee2c28bd15c4066e40b1feb34c1eff9ea6cfb
Reviewed-on: http://review.couchbase.org/36420
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...


# 527009f4 25-Apr-2014 Sundar Sridharan <sundar.sridharan@gmail.com>

Serialize Shard Level Operations from ExecutorPool

Add a flag in every shard to indicate that a thread is
currently working on it.
In TaskQueue, threads check this flag first to ensu

Serialize Shard Level Operations from ExecutorPool

Add a flag in every shard to indicate that a thread is
currently working on it.
In TaskQueue, threads check this flag first to ensure that
only one thread picks up task from this shard
Mark certain tasks like VBDeleteTask and VBSnapshotTask
as needing serialization

Change-Id: Ib4f0ae14d90a3d95ea0a59531197da4f87f388d3
Reviewed-on: http://review.couchbase.org/36286
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: abhinav dangeti <abhinav@couchbase.com>

show more ...


# cee09357 10-Apr-2014 Sundar Sridharan <sundar.sridharan@gmail.com>

simplify snooze: remove first run and GMT stuff

Change-Id: I21cd48b33cf565bc19e2545b2ced2eb6f8627a5f
Reviewed-on: http://review.couchbase.org/35580
Reviewed-by: abhinav dangeti <abhi

simplify snooze: remove first run and GMT stuff

Change-Id: I21cd48b33cf565bc19e2545b2ced2eb6f8627a5f
Reviewed-on: http://review.couchbase.org/35580
Reviewed-by: abhinav dangeti <abhinav@couchbase.com>
Reviewed-by: Sundararaman Sridharan <sundar@couchbase.com>
Tested-by: Sundararaman Sridharan <sundar@couchbase.com>

show more ...


Revision tags: v2.5.1
# 8d9f830a 30-Jan-2014 Sundar Sridharan <sundar.sridharan@gmail.com>

CBD-485: Make CMD_COMPACT_DB call synchronous

NS-Server needs the CMD_COMPACT_DB command to block in ep-engine
until the compaction actually completes.
So this change blocks the conn

CBD-485: Make CMD_COMPACT_DB call synchronous

NS-Server needs the CMD_COMPACT_DB command to block in ep-engine
until the compaction actually completes.
So this change blocks the connection in EWOULDBLOCK state and
the connection, on compaction completion, gets notified to return SUCCESS
This is in anticipation of the removal of the MCCouch notification
Change-Id: I462d4a591bf1480ac2733468ec0981ed3a4c81a7
Reviewed-on: http://review.couchbase.org/33008
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...


# 60f0d1f1 29-Jan-2014 Sundar Sridharan <sundar.sridharan@gmail.com>

MB-10027 - remove task mutex from GlobalTask

Replace with AtomicValue
This is meant to be the first of multiple changes to reduce
the locking overhead of the Global Thread Pool modul

MB-10027 - remove task mutex from GlobalTask

Replace with AtomicValue
This is meant to be the first of multiple changes to reduce
the locking overhead of the Global Thread Pool modules

Change-Id: I4f8cd42a786a389b36580d05adfbf327537ff9a5
Reviewed-on: http://review.couchbase.org/32976
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Sundararaman Sridharan <sundar.sridharan@gmail.com>

show more ...


# 9d8a9725 23-Dec-2013 Trond Norbye <trond.norbye@gmail.com>

Move towards using C++11 atomics

Start by renamimg all use of Atomics that doesn't "break" by
switching to std::atomic to AtomicValue (when the transition
is done we'll rename everyt

Move towards using C++11 atomics

Start by renamimg all use of Atomics that doesn't "break" by
switching to std::atomic to AtomicValue (when the transition
is done we'll rename everything back).

Change-Id: I3f694856dab498c565806c9ac1ee5baf3bc07b17
Reviewed-on: http://review.couchbase.org/31333
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...


# ac3ea552 06-Dec-2013 Sundar Sridharan <sundar.sridharan@gmail.com>

CBD-1148: Migrate all NonIO tasks into Common Pool

This removes per-bucket threads from the NonIO dispatcher
into the global thread pool shared by all buckets
Following tasks handled

CBD-1148: Migrate all NonIO tasks into Common Pool

This removes per-bucket threads from the NonIO dispatcher
into the global thread pool shared by all buckets
Following tasks handled by the non-io thread are now migrated
into the common shared thread pool...
1) Backfill task
2) Hash Table Resizer
3) Checkpoint remover
4) ExpiredItemPager
5) Item Pager
6) VBCBAdaptor (async task spawned by daemon tasks 1-4)
7) Tap Connection Notification (daemon task)
8) Tap Resume
9) Tap Connection Reaper
10) VBucket Memory Deletion
11) FlushAll task
12) Checkpoint Stats
Also removed isDaemon and makes GlobalTask's starttime internal
Allow new api in ExecutorPool to stop a task group entirely
Change-Id: Ic5cbbfb6d1a140335b0ff1a7c7dc31e20ca47186
Reviewed-on: http://review.couchbase.org/30775
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...


# 7c6809d2 07-Nov-2013 Trond Norbye <trond.norbye@gmail.com>

Start migrate the API for our Atomics to look like std::atomic

This patch change the Atomic class CouchbaseAtomic, and change
the API so that:
get() => load()
set() => store(

Start migrate the API for our Atomics to look like std::atomic

This patch change the Atomic class CouchbaseAtomic, and change
the API so that:
get() => load()
set() => store()
cas() => compare_exchange_strong()

and move some of methods that used to be members as
template functions.

Change-Id: I48d873fbf04f40d446444232db44f565ee4fed54
Reviewed-on: http://review.couchbase.org/30135
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...


# b50f3546 05-Nov-2013 Sundar Sridharan <sundar.sridharan@gmail.com>

CBD-1039:Purge Expired Items in disk via compactor

With the compactor moved into ep-engine, this commit
adds a new way of purging expired items from disk
When compacting items, we ex

CBD-1039:Purge Expired Items in disk via compactor

With the compactor moved into ep-engine, this commit
adds a new way of purging expired items from disk
When compacting items, we examine if they have expired, if
so, place these items into the appropriate queues to handle
their deletions

Improved unit test for better code coverage

Change-Id: I3b611597a5f0e69ab44237346c2214d67b7fff1c
Reviewed-on: http://review.couchbase.org/29781
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...


12