From a1663cf8c13428a543e117f8229b86d57b78ec89 Mon Sep 17 00:00:00 2001
From: David Sikter <david.sikter@physik.hu-berlin.de>
Date: Thu, 23 Sep 2021 15:25:23 +0200
Subject: [PATCH] Remove redundancy of the domain and processed fields

---
 nomad/datamodel/datamodel.py | 3 +--
 nomad/processing/data.py     | 3 ++-
 tests/utils.py               | 4 +++-
 3 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/nomad/datamodel/datamodel.py b/nomad/datamodel/datamodel.py
index 22ab1df89a..31072f92dc 100644
--- a/nomad/datamodel/datamodel.py
+++ b/nomad/datamodel/datamodel.py
@@ -471,7 +471,7 @@ class EntryMetadata(metainfo.MSection):
     domain = metainfo.Quantity(
         type=metainfo.MEnum('dft', 'ems', 'qcms'),
         description='The material science domain',
-        categories=[MongoMetadata, UserProvidableMetadata],
+        categories=[UserProvidableMetadata],
         a_search=Search(),
         a_elasticsearch=Elasticsearch(material_entry_type))
 
@@ -484,7 +484,6 @@ class EntryMetadata(metainfo.MSection):
     processed = metainfo.Quantity(
         type=bool, default=False,
         description='Indicates that the entry is successfully processed.',
-        categories=[MongoMetadata],
         a_search=Search(),
         a_elasticsearch=Elasticsearch())
 
diff --git a/nomad/processing/data.py b/nomad/processing/data.py
index d314df10b9..083e48502c 100644
--- a/nomad/processing/data.py
+++ b/nomad/processing/data.py
@@ -169,7 +169,7 @@ class Calc(Proc):
             ('upload_id', 'parser_name'),
             ('upload_id', 'process_status'),
             ('upload_id', 'metadata.nomad_version'),
-            'metadata.processed',
+            'process_status',
             'metadata.last_processing',
             'metadata.datasets',
             'metadata.pid'
@@ -306,6 +306,7 @@ class Calc(Proc):
                 entry_metadata.domain = parser.domain
         entry_metadata.calc_id = self.calc_id
         entry_metadata.mainfile = self.mainfile
+        entry_metadata.processed = self.process_status == ProcessStatus.SUCCESS
 
     def _apply_metadata_to_mongo_entry(self, entry_metadata: datamodel.EntryMetadata):
         '''
diff --git a/tests/utils.py b/tests/utils.py
index 8013d6f395..d111615e0f 100644
--- a/tests/utils.py
+++ b/tests/utils.py
@@ -184,13 +184,15 @@ class ExampleData:
                 mongo_upload.save()
 
             for entry_metadata in self.entries.values():
+                process_status = (
+                    proc.ProcessStatus.SUCCESS if entry_metadata.processed else proc.ProcessStatus.FAILURE)
                 mongo_entry = proc.Calc(
                     create_time=self._next_time_stamp(),
                     calc_id=entry_metadata.calc_id,
                     upload_id=entry_metadata.upload_id,
                     mainfile=entry_metadata.mainfile,
                     parser_name='parsers/vasp',
-                    process_status=proc.ProcessStatus.SUCCESS)
+                    process_status=process_status)
                 upload_dict = self.uploads.get(entry_metadata.upload_id)
                 if upload_dict:
                     # Mirror fields from upload
-- 
GitLab