Gian Merlino
de4fc98128
TaskMasterLifecycle: Stop leaderLifecycle if it dies while starting
2013-02-14 13:36:43 -08:00
Gian Merlino
18daa19fc9
Merge branch 'master' into task-stuff
...
Conflicts:
merger/src/main/java/com/metamx/druid/merger/common/TaskHolder.java
merger/src/main/java/com/metamx/druid/merger/common/TaskStatus.java
merger/src/main/java/com/metamx/druid/merger/common/task/AbstractTask.java
merger/src/main/java/com/metamx/druid/merger/common/task/DeleteTask.java
merger/src/main/java/com/metamx/druid/merger/common/task/IndexDeterminePartitionsTask.java
merger/src/main/java/com/metamx/druid/merger/common/task/IndexGeneratorTask.java
merger/src/main/java/com/metamx/druid/merger/common/task/Task.java
merger/src/main/java/com/metamx/druid/merger/coordinator/MergerDBCoordinator.java
merger/src/main/java/com/metamx/druid/merger/coordinator/TaskContext.java
merger/src/main/java/com/metamx/druid/merger/worker/TaskMonitor.java
merger/src/test/java/com/metamx/druid/merger/coordinator/RemoteTaskRunnerTest.java
merger/src/test/java/com/metamx/druid/merger/coordinator/TaskQueueTest.java
server/src/main/java/com/metamx/druid/master/DruidMaster.java
2013-02-14 13:10:29 -08:00
Gian Merlino
ff325b1f65
Merger: Changes to support rolling locks and a task-action API
...
Generally, TaskStatus is no longer used as the sole way for tasks to
communicate status and metadata update requests back to the
coordinator. It is still used to communicate success or failure, but a
TaskActionClient is used for all other communication. In remote mode
this uses an http api.
TaskContext no longer exists, as its purpose is now served by
the TaskActionClient.
The TaskQueue and TaskConsumer are no longer in charge of committing
stuff for a task. Instead, it happens when an action is sent in. Tasks
are expected to ensure that this is OK by making their behavior
idempotent (since they may be retried after partially completing).
One new kind of request afforded to tasks is the ability to release
and acquire arbitrary locks. This will be useful for long-running tasks.
Short-lived tasks can still be given a lock automatically upon startup
by providing a "fixed interval".
New tables when using db storage:
- tasklocks, to support persistence of arbitrary locks.
- tasklogs, to log actions taken by tasks
2013-02-14 12:46:40 -08:00
Eric Tschetter
a0b159fed7
1) Move up to Jackson 2.1
...
2) Some bugs were fixed, but they ended up getting mixed in with the Jackson upgrade :(
2013-02-12 20:58:17 -06:00
Fangjin Yang
e519f82e87
[maven-release-plugin] prepare for next development iteration
2013-02-11 10:58:51 -08:00
Fangjin Yang
73f7468a23
[maven-release-plugin] prepare release druid-0.2.7
2013-02-11 10:58:43 -08:00
Fangjin Yang
ec2b906fad
[maven-release-plugin] prepare for next development iteration
2013-02-06 18:43:42 -08:00
Fangjin Yang
22d9607169
[maven-release-plugin] prepare release druid-0.2.6
2013-02-06 18:43:34 -08:00
Fangjin Yang
e09c658352
[maven-release-plugin] prepare for next development iteration
2013-02-06 17:42:39 -08:00
Fangjin Yang
668353e895
[maven-release-plugin] prepare release druid-0.2.5
2013-02-06 17:42:33 -08:00
Fangjin Yang
d023d219ae
[maven-release-plugin] prepare for next development iteration
2013-02-06 16:54:21 -08:00
Fangjin Yang
d0fdf4ccf0
[maven-release-plugin] prepare release druid-0.2.4
2013-02-06 16:54:16 -08:00
Fangjin Yang
ea64eaabce
Merge branch 'task-stuff' of github.com:metamx/druid into task-stuff
2013-02-01 17:16:39 -08:00
Fangjin Yang
d9f2e68f7f
better logs
2013-02-01 17:16:24 -08:00
Eric Tschetter
34b4383934
1) Adjust DataSegment to have a binaryVersion field that indicates the expected binary version of the segment files
...
2) Eliminate race condition from RemoteTaskRunnerTest.testAlreadyExecutedTask()
2013-02-01 18:59:33 -06:00
Gian Merlino
4ec67f612e
Merger: Emit indexer/segment/bytes once per segment. No longer emit indexer/segment/count.
2013-02-01 16:29:58 -08:00
xvrl
7ec3563e7b
[maven-release-plugin] prepare for next development iteration
2013-02-01 16:25:42 -08:00
xvrl
a239f62158
[maven-release-plugin] prepare release druid-0.2.3
2013-02-01 16:25:35 -08:00
Fangjin Yang
d252059e4a
Merge branch 'task-stuff' of github.com:metamx/druid into task-stuff
2013-02-01 12:59:04 -08:00
Fangjin Yang
58bc305e26
changes to remote task runner to kill nodes better
2013-02-01 12:58:38 -08:00
Gian Merlino
393bec0539
TaskQueue: Behavior tweaks, simplification
...
- Lock tasks on add if possible
- Detect "already added" using exception test instead of bookkeeping map
- Update task status after commitRunnable instead of before commitRunnable
2013-02-01 12:16:06 -08:00
Gian Merlino
455bae2c76
Merge branch 'master' into task-stuff
2013-01-31 11:28:23 -08:00
Fangjin Yang
f50c214514
Merge branch 'master' into task-stuff
2013-01-31 09:59:52 -08:00
Gian Merlino
f946fc3ee6
TaskConsumer: Commit to segment db in one transaction
2013-01-31 08:22:10 -08:00
Gian Merlino
1e35e6ad46
TaskQueue: Tweak to implementation of findTaskGroupForTask
2013-01-31 08:22:10 -08:00
Gian Merlino
34e76f868f
TaskQueue: Clarify "Naptime!" log message
2013-01-31 08:22:10 -08:00
Gian Merlino
86ec3a372e
TaskGroup: Add javadocs
2013-01-31 08:22:10 -08:00
Gian Merlino
65576cbade
TaskStorageQueryAdapter: Rename some methods and tweak javadocs for clarity
2013-01-31 08:22:10 -08:00
Gian Merlino
779c54d8f2
TaskToolbox: Replace IndexerCoordinatorConfig with TaskConfig
2013-01-31 08:22:09 -08:00
Gian Merlino
fe38ed2547
Introduce TaskExistsException, thrown by TaskStorage.insert when appropriate
2013-01-31 08:22:09 -08:00
Gian Merlino
0e469c6f4c
TaskStatus: Fix javadocs
2013-01-31 08:09:22 -08:00
Fangjin Yang
00e6ac1e10
[maven-release-plugin] prepare for next development iteration
2013-01-30 17:09:23 -08:00
Fangjin Yang
ef19de8270
[maven-release-plugin] prepare release druid-0.2.2
2013-01-30 17:09:18 -08:00
Fangjin Yang
26ed96f05d
bug fix for autoscaling termination
2013-01-30 17:06:02 -08:00
Fangjin Yang
fa733565e8
[maven-release-plugin] prepare for next development iteration
2013-01-30 16:28:28 -08:00
Fangjin Yang
0b116a8fe4
[maven-release-plugin] prepare release druid-0.2.1
2013-01-30 16:28:22 -08:00
Fangjin Yang
2a0de2090b
[maven-release-plugin] prepare for next development iteration
2013-01-30 13:47:15 -08:00
Fangjin Yang
049ca2bad4
[maven-release-plugin] prepare release druid-0.2.0
2013-01-30 13:47:08 -08:00
Fangjin Yang
74057600f9
fix worker node still using db connection
2013-01-27 09:57:37 -08:00
Gian Merlino
1cff766e2a
RemoteTaskRunner: Only cleanup paths during bootstrapping if task is complete
2013-01-25 16:01:17 -08:00
Fangjin Yang
efdff7b9f1
fix unit test bug
2013-01-25 14:33:05 -08:00
Gian Merlino
0f4746450b
RemoteTaskRunner: null check on workerData
2013-01-25 13:40:20 -08:00
Gian Merlino
bb68091cef
Index service: TaskConsumer tests
2013-01-25 13:15:55 -08:00
Gian Merlino
82d77a8b72
Index service: Fix kill task
2013-01-25 13:15:49 -08:00
Gian Merlino
e6a618ca76
Merge branch 'killsegments' into task-stuff
...
Conflicts:
merger/src/main/java/com/metamx/druid/merger/common/TaskStatus.java
merger/src/main/java/com/metamx/druid/merger/common/task/DeleteTask.java
merger/src/main/java/com/metamx/druid/merger/common/task/IndexGeneratorTask.java
merger/src/main/java/com/metamx/druid/merger/common/task/IndexTask.java
merger/src/main/java/com/metamx/druid/merger/common/task/MergeTask.java
merger/src/main/java/com/metamx/druid/merger/coordinator/LocalTaskRunner.java
merger/src/main/java/com/metamx/druid/merger/coordinator/TaskQueue.java
merger/src/main/java/com/metamx/druid/merger/coordinator/exec/TaskConsumer.java
merger/src/main/java/com/metamx/druid/merger/worker/TaskMonitor.java
merger/src/test/java/com/metamx/druid/merger/coordinator/RemoteTaskRunnerTest.java
merger/src/test/java/com/metamx/druid/merger/coordinator/TaskQueueTest.java
2013-01-25 11:30:10 -08:00
Gian Merlino
a14200d779
Index service support for early returns and choice of commit semantics.
...
Task:
- Add TaskCallback to run method (for early returns)
TaskStatus:
- Remove CONTINUED status
- Add segmentsNuked (placeholder for future deletion support)
- Add more builder methods
- Add validations to constructor
TaskStorage:
- Add TaskStorageQueryAdapter, a concrete class that wraps TaskStorages and
provides various read-only convenience methods
- Add getTask method for benefit of TaskStorageQueryAdapter
TaskQueue:
- Rename "done" to "notify"
- notify is responsible for deciding if we should commit
- Add optional commitRunnable to "notify", which gets called when it's time to commit
- Allow nextTasks and commits to run early (statusCode RUNNING)
- Move getStatus, collapseStatus functionality to TaskStorageQueryAdapter
2013-01-25 11:05:34 -08:00
Fangjin Yang
272d737517
cleaning up some interactions with RTR and workers
2013-01-22 16:21:38 -08:00
Fangjin Yang
bab9ee8827
Merge branch 'master' into killsegments
...
Conflicts:
merger/src/main/java/com/metamx/druid/merger/coordinator/http/IndexerCoordinatorNode.java
2013-01-21 14:47:49 -08:00
cheddar
07131c51ed
Merge pull request #53 from metamx/autoscaling
...
Use a database to store configurations for indexer workers
2013-01-18 17:08:52 -08:00
Gian Merlino
7166534666
YeOldePlumberSchool: Tweak for IndexIO changes
2013-01-17 16:03:18 -08:00