Commit 5ee7e541 authored by Paal Kvamme's avatar Paal Kvamme
Browse files

Add explanation for the readonly flag in Seismic Store.

parent db5d1fca
......@@ -12,7 +12,7 @@
</head>
<body bgcolor="#ffffff">
<p class="version">This is version 0.4 of the document, last updated 2020-05-26.</p>
<p class="version">This is version 0.4 of the document, last updated 2021-07-23.</p>
<!-- <h1 style="color: red">DRAFT DOCUMENT</h1> -->
......@@ -824,5 +824,102 @@ limitations under the License.
</p>
</li>
</ul>
<h2>Read only ZGY files</h2>
<p>
Seismic Store has the ability to set a file to read-only mode.
This may help performance because less locking is needed
and more caching is possible.
</p>
<p>
The initial plan was to treat all ZGY files on the cloud as
immutable. But requirements have changed. OpenZGY now allows
updating an existing file in some situations. The requirements /
use cases that need to be supported are still not clearly
defined. So I will try to define them here and see if anybody
protests.
</p>
<ul>
<li>
<p>
Petrel needs update capability but only for files that
nave no data blocks yet.
</p>
</li>
<li>
<p>
The Ocean stability guarantee requires update to be
supported via the Ocean API.
</p>
<ul>
<li>
It may be possible to limit this to on-prem files only.
</li>
</ul>
</li>
<li>
<p>
Petrel needs read/write ZGY files for classification.
</p>
<ul>
<li>
It may be possible to limit this to on-prem files only.
</li>
<li>
As long as the file is opened for write, low resolution
data will not be available.
</li>
</ul>
</li>
<li>
<p>
Long running batch jobs need to write part of a file as a
checkpoint.
</p>
<ul>
<li>
The application needs to do a controlled close of the
file. A crash when a file is opened for write will in most
cases corrupt the file.
</li>
</ul>
</li>
<li>
<p>
Additional restrictions.
</p>
<ul>
<li>
A file that is opened both for read and write at the same
time, or open more than once for write, triggers undefined
behavior. It is the application's responsibility to
prevent this from happening.
</li>
</ul>
</li>
</ul>
<h4>Current implementation</h4>
<p>
All files created by or updated by OpenZGY will be marked
read-only on close.
</p>
<p>
Opening a file for update in OpenZGY will cause the read-only
mode to be removed, then put back when the file is again closed.
This is not how it is meant to work. But it is the best I can do
in the short term.
</p>
<p>
OpenZGY might later leave it to the application that writes the
file using OpenZGY will decide whether to mark the file
read-only or not. And then don't reset the flag. It is not clear
whether all applications can handle this.
</p>
<p>
Files created by the old ZGY-Cloud library will still be left
writable. This means that altUrl will not work for those.
Hopefully applications will move away from the deprecated
ZGY-Cloud fast enough that this will not become a problem.
</p>
</body>
</html>
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment