You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
sync logging에서 log buffer flush 재검토: 직접 수행 vs. 요청 방식#512
위 이슈 처리 결과로 worker thread 가 flush thread 에게 flush 요청하는 방식으로 처리되었다.
구현 방식을 보면 flush_lsn_lock 을 통해 worker thread 는 waiter_lsn 을 등록하고, flush thread 는 waiter_lsn 을 확인함에 따라서 flush_lsn_lock 잡는 횟수가 증가하게 되었다.
이를 최적화한다면 flush thread 는 flush_lsn_lock 을 잡지 않고도 waiter_lsn 까지 flush 해야하는지 확인할 수 있는 방안이 있다.
flush thread 가 nxt_flush_lsn 변경 시점에 upt_flush_lsn 과 비교한 정보를 기록해 두고, next flush 작업에서 이용.
다만, 현재 flush 작업 이후에 그리고 sleep 하기 이전에 upt_flush_lsn이 등록된다면, sync_logging 에서는 가능한 빨리 flush 를 해주기 위해 그 사실 확인이 필요.
최적화 구현과 현재 구현과의 성능 비교 후 최적화할 지 검토한다.
The text was updated successfully, but these errors were encountered:
sync logging에서 log buffer flush 재검토: 직접 수행 vs. 요청 방식 #512
위 이슈 처리 결과로 worker thread 가 flush thread 에게 flush 요청하는 방식으로 처리되었다.
구현 방식을 보면 flush_lsn_lock 을 통해 worker thread 는 waiter_lsn 을 등록하고, flush thread 는 waiter_lsn 을 확인함에 따라서 flush_lsn_lock 잡는 횟수가 증가하게 되었다.
이를 최적화한다면 flush thread 는 flush_lsn_lock 을 잡지 않고도 waiter_lsn 까지 flush 해야하는지 확인할 수 있는 방안이 있다.
최적화 구현과 현재 구현과의 성능 비교 후 최적화할 지 검토한다.
The text was updated successfully, but these errors were encountered: