When flush is called on PeriodicMetricReader, it exports to the delegate exporter, but never calls flush. This is fine on any synchronous exporter, but there's no reason exporters have to be synchronous.
It really should invoke flush on the exporters before returning.