feat: remove buntdb dep
This commit is contained in:
@@ -1,70 +1,77 @@
|
||||
package managed_job
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
"time"
|
||||
// import (
|
||||
// "encoding/json"
|
||||
// "flink-kube-operator/internal/crd/v1alpha1"
|
||||
// "time"
|
||||
|
||||
"github.com/tidwall/buntdb"
|
||||
)
|
||||
// "github.com/tidwall/buntdb"
|
||||
// )
|
||||
|
||||
// get state of job from local db
|
||||
func (job *ManagedJob) loadState() {
|
||||
job.db.View(
|
||||
func(tx *buntdb.Tx) error {
|
||||
if val, err := tx.Get(string(job.def.GetUID())); err != nil {
|
||||
return err
|
||||
} else {
|
||||
return json.Unmarshal([]byte(val), job.state)
|
||||
}
|
||||
})
|
||||
}
|
||||
// // get state of job from local db
|
||||
// func (job *ManagedJob) loadState() {
|
||||
// job.db.View(
|
||||
// func(tx *buntdb.Tx) error {
|
||||
// if val, err := tx.Get(string(job.def.GetUID())); err != nil {
|
||||
// return err
|
||||
// } else {
|
||||
// return json.Unmarshal([]byte(val), job.state)
|
||||
// }
|
||||
// })
|
||||
// }
|
||||
|
||||
// save state of job to local db
|
||||
func (job *ManagedJob) updateState(state jobState) {
|
||||
job.state = &state
|
||||
// // save state of job to local db
|
||||
// func (job *ManagedJob) updateState(state jobState) {
|
||||
// job.state = &state
|
||||
|
||||
value, _ := json.Marshal(job.state)
|
||||
job.db.Update(func(tx *buntdb.Tx) error {
|
||||
_, _, err := tx.Set(string(job.def.GetUID()), string(value), nil)
|
||||
return err
|
||||
})
|
||||
}
|
||||
// value, _ := json.Marshal(job.state)
|
||||
// job.db.Update(func(tx *buntdb.Tx) error {
|
||||
// _, _, err := tx.Set(string(job.def.GetUID()), string(value), nil)
|
||||
// return err
|
||||
// })
|
||||
// }
|
||||
|
||||
func (job *ManagedJob) setError(errMsg string) {
|
||||
if job.state == nil {
|
||||
job.state = &jobState{}
|
||||
}
|
||||
job.state.Error = &errMsg
|
||||
job.state.Status = JobStatusError
|
||||
job.updateState(*job.state)
|
||||
}
|
||||
// func (job *ManagedJob) setError(errMsg string) {
|
||||
// if job.state == nil {
|
||||
// job.state = &jobState{}
|
||||
// }
|
||||
// job.state.Error = &errMsg
|
||||
// job.state.Status = v1alpha1.JobStatusError
|
||||
// job.updateState(*job.state)
|
||||
// job.crd.SetJobStatus(job.def.UID, v1alpha1.FlinkJobStatus{
|
||||
// JobStatus: job.state.Status,
|
||||
// })
|
||||
// }
|
||||
|
||||
func (job *ManagedJob) setSavepointLocation(savepointId string) {
|
||||
job.state.LastSavepointPath = &savepointId
|
||||
job.state.SavepointTriggerId = nil
|
||||
n := time.Now()
|
||||
job.state.LastSavepointDate = &n
|
||||
job.updateState(*job.state)
|
||||
}
|
||||
// func (job *ManagedJob) setSavepointLocation(savepointId string) {
|
||||
// job.state.LastSavepointPath = &savepointId
|
||||
// job.state.SavepointTriggerId = nil
|
||||
// n := time.Now()
|
||||
// job.state.LastSavepointDate = &n
|
||||
// job.updateState(*job.state)
|
||||
// job.crd.SetJobStatus(job.def.UID, v1alpha1.FlinkJobStatus{
|
||||
// LastSavepointPath: job.state.LastSavepointPath,
|
||||
// })
|
||||
// }
|
||||
|
||||
func (job *ManagedJob) setSavepointTriggerId(savepointReqId string) {
|
||||
job.state.SavepointTriggerId = &savepointReqId
|
||||
job.updateState(*job.state)
|
||||
}
|
||||
// func (job *ManagedJob) setSavepointTriggerId(savepointReqId string) {
|
||||
// job.state.SavepointTriggerId = &savepointReqId
|
||||
// job.updateState(*job.state)
|
||||
// }
|
||||
|
||||
func (job *ManagedJob) removeSavepointTriggerId() {
|
||||
job.state.SavepointTriggerId = nil
|
||||
job.updateState(*job.state)
|
||||
}
|
||||
// func (job *ManagedJob) removeSavepointTriggerId() {
|
||||
// job.state.SavepointTriggerId = nil
|
||||
// job.updateState(*job.state)
|
||||
// }
|
||||
|
||||
func (job *ManagedJob) SetStatus(status JobStatus) {
|
||||
job.state.Status = status
|
||||
job.updateState(*job.state)
|
||||
}
|
||||
// func (job *ManagedJob) SetStatus(status JobStatus) {
|
||||
// job.state.Status = status
|
||||
// job.updateState(*job.state)
|
||||
// }
|
||||
|
||||
func (job *ManagedJob) GetJobId() *string {
|
||||
if job.state != nil && job.state.JobId != nil {
|
||||
return job.state.JobId
|
||||
if job.def.Status.JobId != nil {
|
||||
return job.def.Status.JobId
|
||||
} else {
|
||||
return nil
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user