Defining mapping QubitAip...
...and if one excludes AIP from the types to be reindexed, it will then try to index terms, get 500 entries through (that's batch_size in $ATOM_HOME/config/search.yml), and fail with a bunch of messages like this:
index: /atom/QubitTerm/703727 caused type[QubitTerm] missing [index: atom]
index: /atom/QubitTerm/703739 caused type[QubitTerm] missing [index: atom]
index: /atom/QubitTerm/703852 caused type[QubitTerm] missing [index: atom]
index: /atom/QubitTerm/704048 caused type[QubitTerm] missing [index: atom]
index: /atom/QubitTerm/704223 caused type[QubitTerm] missing [index: atom]
index: /atom/QubitTerm/693745 caused type[QubitTerm] missing [index: atom]
index: /atom/QubitTerm/708346 caused type[QubitTerm] missing [index: atom]
[2021-01-25T14:59:26,205][INFO ][o.e.c.m.MetaDataDeleteIndexService] [7p0NKF7] [atom/H32bdnvqRymYniTVjLwg4Q] deleting index
[2021-01-25T14:59:26,289][INFO ][o.e.c.m.MetaDataCreateIndexService] [7p0NKF7] [atom] creating index, cause [api], templates [], shards [4]/[1], mappings []
[2021-01-25T14:59:26,475][DEBUG][o.e.a.a.i.m.p.TransportPutMappingAction] [7p0NKF7] failed to put mappings on indices [[[atom/i_6nvJSuS3WqrMYBARXQFw]]], type [QubitAip]
java.lang.IllegalArgumentException: name cannot be empty string
at org.elasticsearch.index.mapper.ObjectMapper.<init>(ObjectMapper.java:326) ~[elasticsearch-5.6.16.jar:5.6.16]
at org.elasticsearch.index.mapper.ObjectMapper$Builder.createMapper(ObjectMapper.java:160) ~[elasticsearch-5.6.16.jar:5.6.16]
at org.elasticsearch.index.mapper.ObjectMapper$Builder.build(ObjectMapper.java:152) ~[elasticsearch-5.6.16.jar:5.6.16]
at org.elasticsearch.index.mapper.ObjectMapper$Builder.build(ObjectMapper.java:95) ~[elasticsearch-5.6.16.jar:5.6.16]
at org.elasticsearch.index.mapper.ObjectMapper$Builder.build(ObjectMapper.java:143) ~[elasticsearch-5.6.16.jar:5.6.16]
at org.elasticsearch.index.mapper.ObjectMapper$Builder.build(ObjectMapper.java:95) ~[elasticsearch-5.6.16.jar:5.6.16]
at org.elasticsearch.index.mapper.ObjectMapper$Builder.build(ObjectMapper.java:143) ~[elasticsearch-5.6.16.jar:5.6.16]
at org.elasticsearch.index.mapper.ObjectMapper$Builder.build(ObjectMapper.java:95) ~[elasticsearch-5.6.16.jar:5.6.16]
at org.elasticsearch.index.mapper.ObjectMapper$Builder.build(ObjectMapper.java:143) ~[elasticsearch-5.6.16.jar:5.6.16]
at org.elasticsearch.index.mapper.DocumentMapper$Builder.<init>(DocumentMapper.java:69) ~[elasticsearch-5.6.16.jar:5.6.16]
at org.elasticsearch.index.mapper.DocumentMapperParser.parse(DocumentMapperParser.java:111) ~[elasticsearch-5.6.16.jar:5.6.16]
at org.elasticsearch.index.mapper.DocumentMapperParser.parse(DocumentMapperParser.java:91) ~[elasticsearch-5.6.16.jar:5.6.16]
at org.elasticsearch.index.mapper.MapperService.parse(MapperService.java:644) ~[elasticsearch-5.6.16.jar:5.6.16]
at org.elasticsearch.cluster.metadata.MetaDataMappingService$PutMappingExecutor.applyRequest(MetaDataMappingService.java:264) ~[elasticsearch-5.6.16.jar:5.6.16]
at org.elasticsearch.cluster.metadata.MetaDataMappingService$PutMappingExecutor.execute(MetaDataMappingService.java:230) ~[elasticsearch-5.6.16.jar:5.6.16]
at org.elasticsearch.cluster.service.ClusterService.executeTasks(ClusterService.java:634) ~[elasticsearch-5.6.16.jar:5.6.16]
at org.elasticsearch.cluster.service.ClusterService.calculateTaskOutputs(ClusterService.java:612) ~[elasticsearch-5.6.16.jar:5.6.16]
at org.elasticsearch.cluster.service.ClusterService.runTasks(ClusterService.java:571) [elasticsearch-5.6.16.jar:5.6.16]
at org.elasticsearch.cluster.service.ClusterService$ClusterServiceTaskBatcher.run(ClusterService.java:263) [elasticsearch-5.6.16.jar:5.6.16]
at org.elasticsearch.cluster.service.TaskBatcher.runIfNotProcessed(TaskBatcher.java:150) [elasticsearch-5.6.16.jar:5.6.16]
at org.elasticsearch.cluster.service.TaskBatcher$BatchedTask.run(TaskBatcher.java:188) [elasticsearch-5.6.16.jar:5.6.16]
at org.elasticsearch.common.util.concurrent.ThreadContext$ContextPreservingRunnable.run(ThreadContext.java:576) [elasticsearch-5.6.16.jar:5.6.16]
at org.elasticsearch.common.util.concurrent.PrioritizedEsThreadPoolExecutor$TieBreakingPrioritizedRunnable.runAndClean(PrioritizedEsThreadPoolExecutor.java:247) [elasticsearch-5.6.16.jar:5.6.16]
at org.elasticsearch.common.util.concurrent.PrioritizedEsThreadPoolExecutor$TieBreakingPrioritizedRunnable.run(PrioritizedEsThreadPoolExecutor.java:210) [elasticsearch-5.6.16.jar:5.6.16]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?]
at java.lang.Thread.run(Thread.java:834) [?:?]
I've tried all the suggested troubleshooting steps in Joel's thread.