cancelJob
语法
cancelJob(jobId)
参数
jobId 是批处理作业的 ID,是一个字符串标量或向量。若为向量,表示同时取消多个批处理作业。
详情
取消已经提交但尚未完成的批处理作业。2.00.7 版本后,若执行 cancelJob 时,发现某个 jobId 不存在,系统不再抛出异常,而是将包含 jobId 的报错信息输出到日志。
例子
$ def writeData(num){
$ n=10
$ month=take(2000.01M..2016.12M, n)
$ x=rand(1.0, n)
$ tt=table(month, x)
$ if(existsDatabase("dfs://test_db")){
$ dropDatabase("dfs://test_db")
$ }
$ db=database("dfs://test_db", VALUE, 2000.01M..2016.12M)
$ pt = db.createPartitionedTable(tt, `pt, `month)
$ for(x in 1..num){
$ pt.append!(tt)
$ sleep(1000)
$ }
$ }
$ myJobId="writeData"+temporalFormat(datetime(now()),"yyyyMMddHHmmss")
$ submitJob(myJobId,"write data to dfs table",writeData,120);
$ cancelJob(myJobId);
取消集群中所有未完成的 job。
$ def cancelAllBatchJob(){
$ jobids=exec jobid from getRecentJobs() where endTime=NULL
$ cancelJob(jobids)
$ }
$ pnodeRun(cancelAllBatchJob)