skip to main content
research-article
Free Access

Crash consistency

Published:28 September 2015Publication History
Skip Abstract Section

Abstract

Rethinking the fundamental abstractions of the file system.

References

  1. Alagappan, R., Chidambaram, V., Sankaranarayana Pillai, T., Arpaci-Dusseau, A.C., Arpaci-Dusseau, R.H. Beyond storage APIs: Provable semantics for storage stacks. In Proceedings of the 15th Workshop on Hot Topics in Operating Systems (Kartause Ittingen, Switzerland, May 2015). Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Al-Kiswany, S. Namenode fails to boot if the file system reorders <code>rename</code> operations, 2014; http://issues.apache.org/jira/browse/HDFS-6820.Google ScholarGoogle Scholar
  3. Aurora, V. POSIX v. reality: A position on O PONIES, 2009; http://lwn.net/Articles/351422/.Google ScholarGoogle Scholar
  4. Austin Group Defect Tracker. 0000672: Necessary step(s) to synchronize filename operations on disk, 2013; http://austingroupbugs.net/view.php?id=672.Google ScholarGoogle Scholar
  5. Chen, H., Ziegler, D., Chlipala, A., Kaashoek, M. F., Kohler, E., Zeldovich, N. Specifying crash safety for storage systems. In Proceedings of the 15th Workshop on Hot Topics in Operating Systems (Kartause Ittingen, Switzerland, May 2015). Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Corbet, J. Ext4 and data loss, 2009; https://lwn.net/Articles/322823/.Google ScholarGoogle Scholar
  7. Corbet, J. That massive filesystem thread, 2009; http://lwn.net/Articles/326471/.Google ScholarGoogle Scholar
  8. Davies, C. Fake hard drive has short-term memory not 500GB. SlashGear, 2011; http://www.slashgear.com/fake-hard-drive-has-short-term-memory-not-500gb-08145144/.Google ScholarGoogle Scholar
  9. Edge, J. Testing power failures, 2015; https://lwn.net/Articles/637079/.Google ScholarGoogle Scholar
  10. Ganger, G.R., Patt, Y.N. 1994. Metadata update performance in file systems. In Proceedings of the 1st Symposium on Operating Systems Design and Implementation. (Monterey, CA, Nov. 1994), 49--60. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Garcia-Molina, H., Ullman, J.D., Widom, J. Database Systems: The Complete Book. Prentice Hall Press, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Hagmann, R. Reimplementing the Cedar file system using logging and group commit. In Proceedings of the 11th ACM Symposium on Operating Systems Principles, (Austin, TX, Nov. 1987). Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Kim, H., Agrawal, N., Ungureanu, C. Revisiting storage for smartphones. In Proceedings of the 10th Usenix Symposium on File and Storage Technologies (San Jose, CA, Feb. 2012). Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Lamport, L. How to make a multiprocessor computer that correctly executes multiprocess programs. IEEE Trans. Computers 28, 9 (1979), 690--691. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Mercurial. Dealing with repository and dirstate corruption, 2014; http://mercurial.selenic.com/wiki/RepositoryCorruption.Google ScholarGoogle Scholar
  16. Microsoft. Alternatives to using transactional NTFS; https://msdn.microsoft.com/en-us/library/windows/desktop/hh802690(v=vs.85).aspx.Google ScholarGoogle Scholar
  17. Open Group Base Specifications. POSIX.1-2008 IEEE Std 1003.1, 2013; http://pubs.opengroup.org/onlinepubs/9699919799/.Google ScholarGoogle Scholar
  18. Sankaranarayana Pillai, T. Possible bug: <code>fsync()</code> required after calling <code>rename()</code>, 2013; https://code.google.com/p/leveldb/issues/detail?id=189.Google ScholarGoogle Scholar
  19. Sankaranarayana Pillai, T. Possible bug: Missing a <code>fsync()</code> on the log file before compaction, 2013; https://code.google.com/p/leveldb/issues/detail?id=187.Google ScholarGoogle Scholar
  20. Sankaranarayana Pillai, T., Chidambaram, V. Alagappan, R., Al-Kiswany, S., Arpaci-Dusseau, A.C. and Arpaci-Dusseau, R.H. ALICE: Application-Level Intelligent Crash Explorer; http://research.cs.wisc.edu/adsl/Software/alice/.Google ScholarGoogle Scholar
  21. Sankaranarayana Pillai, T., Chidambaram, V., Alagappan, R., Al-Kiswany, S., Arpaci-Dusseau, A.C. and Arpaci-Dusseau, R.H. 2014. All file systems are not created equal: on the complexity of crafting crash-consistent applications. In Proceedings of the 11th Symposium on Operating Systems Design and Implementation (Broomfield, CO, Oct. 2014). Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Sewell, P., Sarkar, S., Owens, S., Nardelli, F.Z. and Myreen, M.O. x86-TSO: A rigorous and usable programmer's model for x86 multiprocessors. Commun. ACM 53, 7 (July 2010): 89--97. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Shvachko, K., Kuang, H., Radia, S. and Chansler, R. The Hadoop Distributed File System. In Proceedings of the 26th IEEE Symposium on Mass Storage Systems and Technologies (Incline Village, NV, May 2010). Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Sorin, D.J., Hill, M.D., Wood, D.A. A Primer on Memory Consistency and Cache Coherence. Morgan & Claypool Publishers, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Terry, D. Replicated data consistency explained through baseball. MSR Technical Report (Oct. 2011).Google ScholarGoogle Scholar
  26. Verma, R., Mendez, A.A., Park, S., Mannarswamy, S.S., Kelly, T.P., and Morrey III, C.B. Failure-atomic updates of application data in a Linux file system. In Proceedings of the 13th Usenix Symposium on File and Storage Technologies (Santa Clara, CA, Feb. 2015). Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. VMWare. Software-defined storage (SDS) and storage virtualization; http://www.vmware.com/software-defined-datacenter/storage.Google ScholarGoogle Scholar
  28. VMWare. The VMware perspective on software-defined storage; http://www.vmware.com/files/pdf/solutions/VMware-Perspective-on-software-defined-storage-white-paper.pdf.Google ScholarGoogle Scholar
  29. Zheng, M., Tucek, J., Huang, D., Qin, F., Lillibridge, M., Yang, E. S., Zhao, B. W., Singh, S. Torturing databases for fun and profit. In Proceedings of the 11th Symposium on Operating Systems Design and Implementation (Broomfield, CA, Oct. 2014). Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Crash consistency

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in

        Full Access

        • Published in

          cover image Communications of the ACM
          Communications of the ACM  Volume 58, Issue 10
          October 2015
          87 pages
          ISSN:0001-0782
          EISSN:1557-7317
          DOI:10.1145/2830674
          • Editor:
          • Moshe Y. Vardi
          Issue’s Table of Contents

          Copyright © 2015 ACM

          Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

          Publisher

          Association for Computing Machinery

          New York, NY, United States

          Publication History

          • Published: 28 September 2015

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • research-article
          • Popular
          • Refereed

        PDF Format

        View or Download as a PDF file.

        PDFChinese translation

        eReader

        View online with eReader.

        eReader

        HTML Format

        View this article in HTML Format .

        View HTML Format