# Treasure ワークフロー FAQ

## ループが何度も実行されると、不明なエラーが発生するのはなぜですか？

ワークフローキューに登録されるタスクの数は1,000に制限されています。ループでは、タスクはサブタスクごとにキューに登録されます。このエラーを回避するには、タスクをより小さなループに分割してください。

## 集計されたワークフロー結果をメールで送信できますか？

メールでファイルを添付することはできませんが、部分的な結果をメール本文にエクスポートすることができます。

## ワークフローの名前を変更できますか？

いいえ。代替手段として、ワークフローを削除し、別の名前で再作成することができます。

## 親ワークフローにおける依存ワークフローの数に制限はありますか？

Treasure コンソールは親ワークフローに関連するすべての依存ワークフローの可視性を提供するため、依存ワークフローを40未満に制限するようにしてください。

## ワークフローのスケジュールを自動的に停止できますか？

はい。開始日と終了日を持つワークフローは、柔軟なスケジュール機能を提供し、不要なダミーワークフロー実行によるコンピュータリソースの無駄を排除します。

## 今日スケジュールした日次ワークフローが実行されないのはなぜですか？

Treasure Dataがワークフローを実行するリクエストを受け取ると、自動的にセッション（ワークフローを実行するための事前計画）を作成します。これは、スケジュールされた時間にワークフローを実行する実際の試行であるアテンプトとは対照的です。

![](/assets/image2022-5-27_8-54-37.e56ab98fb32c7f2ac59328c8aed69138bc9ee4a6496201e10432859cc68eb576.2e4f387b.png)

### シナリオ

以下のシナリオでは、今日実行されると予想されるワークフローが翌日に実行される理由を説明します。

今日新しいワークフローを作成し、テストとして実行しました。結果に満足した後、今日から始まる日次スケジュールでワークフローを実行するように設定したいと考えています。

現在の時刻は2022年4月27日14:20:10です。

今日から開始する**日次**スケジュールワークフローを作成します。


```yaml
_export:
  td:
    database: jean_wf_temp

timezone: America/Los_Angeles

schedule:

   start: 2022-04-27
   daily>: 22:35:00

   end: 2022-05-30

+setup:

  echo>: ${session_time}
```

ワークフローを保存した後、Next Attempt時間を確認します。このシナリオでは、以下が表示されます：

実際：**2022年4月28日 午後10:35**

予想：「2022年4月27日 午後10:35」

ワークフローセッションは、今日のテストで早い時間に実行されたため、すでに存在しています。したがって、ワークフローの次の許容セッション時間は2022:04:28 00:00:00であり、スケジュールされた実行時間は2022:04:28 22:35:00、つまり**2022年4月28日**の午後10:35です。

#### 注意事項

* セッション時間はワークフローを実行する計画であり、スケジュール時間はワークフローを実行する試行が行われる時間です。
* 日次スケジュールワークフローの場合、セッション時間は実行日の0時、つまりYYYY:MM:DD 00:00:00です。
* 時間単位のスケジュールワークフローの場合、セッション時間はその時間の0分、つまりHH:00:00です。


#### 例

この時点でのシステムクロックが2022-04-27 14:20:10 +0900の場合。

| **スケジュール** | **最初のセッション時間** | **最初のスケジュール実行時間** |
|  --- | --- | --- |
| hourly>: "32:32" | 2022-04-27 14:00:00 +0900 | 2022-04-27 14:32:32 +0900 |
| daily>: "10:32:32" | 2022-04-28 00:00:00 +0900 | 2022-04-28 10:32:32 +0900 |
| weekly>: "2,10:32:32" | 2022-04-29 00:00:00 +0900 | 2022-04-29 10:32:32 +090 |
| monthly>: "2,10:32:32" | 2022-05-02 00:00:00 +0900 | 2022-05-02 10:32:32 +0900 |


## なぜ終了日の正午前にワークフローが終了したのですか？

ワークフローを作成する際、デフォルトのタイムゾーン値UTCを別のタイムゾーンに変更できます。タイムゾーンを変更せずに、ワークフロースケジュールを時間単位で実行するように設定した場合、スケジュール実行はシステムタイムゾーン、つまりUTCに基づきます。

例えば、Asia/Tokyoタイムゾーンにいて、終了日が2022-05-30の時間単位ワークフローをスケジュールしたとします。残念ながら、ワークフローのタイムゾーンを変更しなかったため、デフォルトでUTCになっています。つまり、ワークフローの最後のスケジュール実行は2022年5月30日の午後4:20頃になる可能性があり、これは予想される最後の実行である2022年5月30日午後11:20より9時間早い（UTCとの時差）ことになります。


```yaml
schedule:
  start: 2022-05-27
  hourly>: 20:00
  end: 2022-05-30

+setup:
  echo>: start ${session_time}
```