You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@zeppelin.apache.org by "Ruslan Dautkhanov (JIRA)" <ji...@apache.org> on 2018/05/16 17:36:00 UTC

[jira] [Created] (ZEPPELIN-3467) two-step, atomic configuration file writes

Ruslan Dautkhanov created ZEPPELIN-3467:
-------------------------------------------

             Summary: two-step, atomic configuration file writes
                 Key: ZEPPELIN-3467
                 URL: https://issues.apache.org/jira/browse/ZEPPELIN-3467
             Project: Zeppelin
          Issue Type: Improvement
    Affects Versions: 0.7.3, 0.9.0, 0.8.1
            Reporter: Ruslan Dautkhanov


We have seen when a file system runs full, Zeppelin nullifies its configuration files.
It open file for write, tries to write a file and that latter operation fails.
We end up with losing configuration completely. 

It should be done this two-step approach instead:
- write configuration files (like `interpreter.json` and other such files) to a temp file in the same directory
- rename file from temp to target name. 

This would guarantee no partial writes are done, leaving corrupted configuration files.
Also POSIX filesystems guarantee that file `rename`  is done atomically, having no room for any side effects. 




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)