wangyong86 commented on issue #1545:
URL: https://github.com/apache/cloudberry/issues/1545#issuecomment-3798470302

   pg(17)并不存在该问题,能造成数据重新写入并和copy/select互斥的是vacuum 
full。它产生的数据都是datafrozen的,在mvcc检查的时候,针对每个tuple,会判断该记录已经提交且(xmin 
frozen并且没有被删除),因此会判断是可见的。
   
   cb使用 
heap,也会copy为空。当segment在CopyTo里取到一个pge(heapgetpage)后,使用HeapTupleSatisfiesMVCC进行判断。首先tuple里没有设置
 
HeapTupleHeaderXminCommitted这一hint,因此走到使用分布式快照来判断是否提交。在XidInMVCCSnapshot里,判断事务确已提交,但它是在MVCC里,即xid>=snapshot->max(实际上是相等),所以被判断是不可见的。
   
   虽然更新snapshot也可以解决,但似乎和pg align会更合理。


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to