Optaplanner를 버전 6.0.1에서 6.1.0으로 업데이트 한 후 동기 종료를 사용할 때 해결자가 중단되지 않는 것으로 나타났습니다.업데이트 후 해 찾기 동기 종료가 작동하지 않음
예를 들어, 다음과 같은 구성의 모두가 더 이상 작동하지 않습니다
<termination>
<secondsSpentLimit>5</secondsSpentLimit>
</termination>
및
<termination>
<bestScoreLimit>-1000/0/0</bestScoreLimit>
</termination>
무엇보다도 이상한의 follwing을 같은 동기 종료에 대한 잘못된 값을 사용하는 경우 :
아무런 오류가 발생하지 않습니다! 그래서 솔버가 동기 종료에 대해 더 이상 신경 쓰지 않는 것처럼 보입니다.
실시간 계획을 사용하고 있지 않기 때문에 daemonMode가 지정되지 않았습니다. 종료는 물론 안에 있습니다. 반대로 마지막 단계의 종료는 단계를 멈추지 만 solve()에서 돌아 오지 않으므로 terminateEarly()를 호출 할 때까지는 아무 것도 기다리지 않는 것처럼 보입니다. Jira에 관해서는 불행히도 프로젝트의 전체 코드를 제출할 수 없습니다. –
수정 프로그램을 찾을 수있는 다른 단서가 있습니까? –
난 단지 고립 된 재생기 (전체 프로젝트가 아님)가 필요합니다. 내가 그것을 재현 할 수 없다면, 나는 그것을 고칠 수 없다 ... 어쨌든,'TimeMillisSpentTermination.isTerminated()'에 중단 점을 넣으십시오. 또한'LocalSearchDecider.decideNextStep()'과'DefaultLocalSearchPhase.solve()'에 종료 점을 사용하는 것에 중단 점을 넣으십시오 ('TimePackingTermination'은'TimeMillisSpentTermination'을 감싸고 있습니다). (원인에 관계없이) 여기에보고하십시오. –