Skip to content

Schedulable

== [[Schedulable]] Schedulable Contract -- Schedulable Entities

Schedulable is the <> of <> that manages the <> and can <>.

[[contract]] .Schedulable Contract [cols="1m,3",options="header",width="100%"] |=== | Method | Description

| addSchedulable a| [[addSchedulable]]

[source, scala]

addSchedulable(schedulable: Schedulable): Unit

Registers a <>

Used when:

  • FIFOSchedulableBuilder is requested to <>

  • FairSchedulableBuilder is requested to <>, <>, and <>

| checkSpeculatableTasks a| [[checkSpeculatableTasks]]

[source, scala]

checkSpeculatableTasks(minTimeToSpeculation: Int): Boolean

Used when...FIXME

| executorLost a| [[executorLost]]

[source, scala]

executorLost( executorId: String, host: String, reason: ExecutorLossReason): Unit


Handles an executor lost event

Used when:

  • Pool is requested to <>

  • TaskSchedulerImpl is requested to scheduler:TaskSchedulerImpl.md#removeExecutor[removeExecutor]

| getSchedulableByName a| [[getSchedulableByName]]

[source, scala]

getSchedulableByName(name: String): Schedulable

Finds a <> by name

Used when...FIXME

| getSortedTaskSetQueue a| [[getSortedTaskSetQueue]]

[source, scala]

getSortedTaskSetQueue: ArrayBuffer[TaskSetManager]

Builds a collection of scheduler:TaskSetManager.md[TaskSetManagers] sorted by <>

Used when:

  • Pool is requested to <> (recursively)

  • TaskSchedulerImpl is requested to scheduler:TaskSchedulerImpl.md#resourceOffers[resourceOffers]

| minShare a| [[minShare]]

[source, scala]

minShare: Int

Used when...FIXME

| name a| [[name]]

[source, scala]

name: String

Used when...FIXME

| parent a| [[parent]]

[source, scala]

parent: Pool

Used when...FIXME

| priority a| [[priority]]

[source, scala]

priority: Int

Used when...FIXME

| removeSchedulable a| [[removeSchedulable]]

[source, scala]

removeSchedulable(schedulable: Schedulable): Unit

Used when...FIXME

| runningTasks a| [[runningTasks]]

[source, scala]

runningTasks: Int

Used when...FIXME

| schedulableQueue a| [[schedulableQueue]]

[source, scala]

schedulableQueue: ConcurrentLinkedQueue[Schedulable]

Queue of <> (as https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ConcurrentLinkedQueue.html[ConcurrentLinkedQueue])

Used when:

  • SparkContext is requested to SparkContext.md#getAllPools[getAllPools]

  • Pool is requested to <>, <>, <>, <>, <>, and <>

| schedulingMode a| [[schedulingMode]]

[source, scala]

schedulingMode: SchedulingMode

<>

Used when:

  • Pool is <>

  • web UI's PoolTable is requested to render a page with pools (poolRow)

| stageId a| [[stageId]]

[source, scala]

stageId: Int

Used when...FIXME

| weight a| [[weight]]

[source, scala]

weight: Int

Used when...FIXME

|===

[[implementations]] .Schedulables [cols="1,3",options="header",width="100%"] |=== | Schedulable | Description

| <> | [[Pool]] Pool of <> (i.e. a recursive data structure for prioritizing task sets)

| scheduler:TaskSetManager.md[TaskSetManager] | [[TaskSetManager]] Manages scheduling of tasks of a scheduler:TaskSet.md[TaskSet]

|===