Bug reading Exodus file?

I’ve got an Exodus file that I produced using Sculpt. Note that I’ve used EPU to recombine into a single file. The “stats” output from Sculpt reports 2,073,038 elements:

================ MESH SUMMARY ===================
Base Filename   sculpt_boundary_layers_bad
Num Procs       8
Num Nodes       2120643
Num Elements    2073038
Num BL Hexes    40296
Num Blocks      5
Num Nodesets    0
Num Sidesets    0
Num Bad Qual    0
Num Poor Qual   485
Min Quality     0.100082
Avg Quality     0.971754
Min Edge Len    0.015231
Min Qual Rank   2

Which is backed up by the output from EPU:

**** BEGIN WRITING OUTPUT FILE *****
Output:   './.\sculpt_boundary_layers_bad.e'
IO Word sizes: 4 bytes floating point and 4 bytes integer.
 Title:

 Number of coordinates per node       =           3
 Number of nodes                      =     2120643
 Number of elements                   =     2073038
 Number of element blocks             =           5

As well as exodus.py:

Python 3.13.3 (tags/v3.13.3:6280bb5, Apr  8 2025, 14:47:33) [MSC v.1943 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> sys.path.append( r"C:\Program Files\Coreform Cubit 2025.3\bin" )
>>> import exodus
>>> E = exodus.exodus( "sculpt_boundary_layers_bad.e" )

You are using exodus.py v 1.21.2 (seacas-py3), a python wrapper of some of the exodus library.

Copyright (c) 2013-2023 National Technology &
Engineering Solutions of Sandia, LLC (NTESS).  Under the terms of
Contract DE-NA0003525 with NTESS, the U.S. Government retains certain
rights in this software.

Opening exodus file: sculpt_boundary_layers_bad.e
>>> print( E.num_elems() )
2073038

However, when I open the partitioned exodus file (i.e., sculpt_boundary_layers_bad.e.8.0) in ParaView 5.13.1, the information panel states only 2,060,311 “cells”, even though the ids for cells range is [1, 2073038]:

And there’s a chunk of elements clearly missing (image produced by using a Clip filter with Crinkle Clip setting on):

And even more curiously, after epu-ing the partitioned files into a single Exodus file (i.e., sculpt_boundary_layers_bad.e) there are different numbers reported and an even bigger chunk is missing:

And, for the record, here’s what I would expect to see, this was produced with slightly different parameters in Sculpt (the *_good.e files):

Here are links (active for 7 days) to download the Exodus files:

As there does seem to be some dependence on Sculpt and EPU, I wonder @wascott if I should also send this, with full reproduction information, to the SNL Cubit team? We’re looking at it too, but we’re a bit resource limited currently.

ParaView specs:

Client Information:
Version: 5.13.1
VTK Version: 9.3.20240617
Qt Version: 5.15.2
vtkIdType size: 64bits
Embedded Python: On
Python Library Path: C:\Program Files\ParaView 5.13.1\bin\lib
Python Library Version: 3.10.11 (tags/v3.10.11:7d4cc5a, Apr  5 2023, 00:38:17) [MSC v.1929 64 bit (AMD64)]
Python Numpy Support: On
Python Numpy Path: C:\Program Files\ParaView 5.13.1\bin\Lib\site-packages\numpy
Python Numpy Version: 1.25.2
Python Matplotlib Support: On
Python Matplotlib Path: C:\Program Files\ParaView 5.13.1\bin\Lib\site-packages\matplotlib
Python Matplotlib Version: 3.7.2
Python Testing: Off
MPI Enabled: Off
ParaView Build ID: superbuild abdf9aa5f109ffa3558a63d86365a0203aaab773 (!1224)
Disable Registry: Off
Test Directory: 
Data Directory: 
SMP Backend: TBB
SMP Max Number of Threads: 32
OpenGL Vendor: NVIDIA Corporation
OpenGL Version: 3.2.0 NVIDIA 561.17
OpenGL Renderer: NVIDIA RTX A2000 12GB/PCIe/SSE2
Accelerated filters overrides available: No

Connection Information:
Remote Connection: No