article thumbnail

SQL Server Linux: fsync and Buffered I/O

SQL Server According to Bob

This means data can be stored in file system cache, non-stable media. ) The issue, as described in the link, is that the sync returns the error but may clear the state of the cached pages. The next sync returns ESUCCESS, meaning the the write(s), which were in cache, do not flush to stable media but applications were told they did.

Servers 40
article thumbnail

Architectural Myopia

ACM Sigarch

Richard Thaler won the 2017 Nobel prize in Economics for his work on Behavioral Economics. In industry, engineers (me included) sometimes attack a problem with the tools they have readily available rather than taking a step back and examining the issue at large.

Insiders

Sign Up for our Newsletter

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Trending Sources

article thumbnail

SQL Server On Linux: Forced Unit Access (Fua) Internals

SQL Server According to Bob

Durability is a cornerstone of any database system and starting with SQL Server 2017 on Linux Cumulative Update 6 (CU6), SQL Server on Linux enables “Forced Flush” behavior as described in this article , improving durability on non-Fua optimized systems. “Be Microsoft SQL Server Database Engine Input/Output Requirements. SQL Server.

Servers 90
article thumbnail

SQL Server on IoT Edge and Developer Machines – Smaller Footprint

SQL Server According to Bob

The reduction effort started when we shipped SQL Server 2017 ( [link].) The lock manager has partitions, lock block cache and other structures. Reduce the number of partitions and size of the cache. IO Request Caches. SQLPAL may cache I/O request structures with each thread. SQL Server 2017. Lock Manager.

IoT 61
article thumbnail

Viewing and Sorting XEvents Efficiently (Code Samples) – XEProfiler

SQL Server According to Bob

. // Do we need to start the read-ahead to suck data into file system cache if (iCookie > -1) { tReadAhead.Start(iCookie); } }. iBytesRead = s.Read(bData, 0, c_iMaxReadSize); } }. . // Do we need to start the read-ahead to suck data into file system cache if (iCookie > -1) { tReadAhead.Start(iCookie); } }.