PerconaFT icon indicating copy to clipboard operation
PerconaFT copied to clipboard

TDB-184 : Broken fsync error handling

Open george-lorch opened this issue 6 years ago • 2 comments

  • Factored out i/o error reporting to be common and try to obtain actual filename from descriptor.
  • Fixed ENOSPC reporting to use common i/o reporting.
  • Fixed fsync retry logic to retry EINTR, EIO, and ENOLCK based on InnoDB code and upstream mysql issues 34823 and 90296. Retry will print message every 100 attempts in a loop.
  • Touched up 'slow fsync' tracking and reporting to use new i/o error reporting.
  • Fixed close retry logic to be same as fsync.

george-lorch avatar Apr 11 '18 16:04 george-lorch

https://jenkins.percona.com/view/TokuDB/job/PerconaFT-param/122/ https://jenkins.percona.com/view/PS%205.6/job/percona-server-5.6-param/2147/ https://jenkins.percona.com/view/5.7/job/mysql-5.7-param/1766/ https://jenkins.percona.com/view/5.7/job/mysql-5.7-param/1771/

The second 5.7 jenkins is a matrix reload on 4 failures due to some odd git state weirdness, they failed to clone/checkout my branch.

george-lorch avatar Apr 11 '18 16:04 george-lorch

OK, I reworked it a bit more and factored out the write error handing as well as it wasn't really doing what the function names might indicate. Here is a new set of jenkins runs. Please take another look and approach it as if it were a new review and not just the items commented.

https://jenkins.percona.com/view/TokuDB/job/PerconaFT-param/123/ https://jenkins.percona.com/view/PS%205.6/job/percona-server-5.6-param/2151/ https://jenkins.percona.com/view/5.7/job/mysql-5.7-param/1772/

george-lorch avatar Apr 11 '18 21:04 george-lorch