Overview

Line Ref

  • L309-L326: Relation 의 전체 block 수를 저장한다.
    • 이것을 initscan 에서 해도 되는 이유는 MVCC 를 이용할 때는 INSERT tuple 들은 어차피 안보이기 때문이다.
  • L328-L347: Shared Buffer 를 사용하고 relation 의 크기가 shared buffer 의 크기의 보다 크다면, syncscan 과 bulkread 를 사용하게 된다. 따라서 이것을 판단하여 local variable flag allow_stratallow_sync 를 설정한다.
  • L349-L360: allow_strattrue 일 경우, scan flag (scan->rs_base.rs_flags) 의 access strategy 를 bulkread (BAS_BULKREAD) 로 설정한다.
  • L362-L391: allow_sync 와 (추가적인 몇가지 정보…#draft ) 들을 이용하여 scan flag (scan->rs_base.rs_flags) 의 syncscan 을 설정한다.
  • L393-L405: TableScanDesc 의 몇가지 field 들을 default 값들로 설정한다.
  • L409-L413: Scan key 가 valid 하다면, 복사한다.
  • L415-L421: Statistics 를 설정한다.