FHIR Chat · HAPI partitioning? · cql

Stream: cql

Topic: HAPI partitioning?


view this post on Zulip Sean McIlvenna (Jun 14 2021 at 19:56):

Can anyone tell me how $evaluate-measure is treated when HAPI's partitioning is turned on?

view this post on Zulip Sean McIlvenna (Jun 14 2021 at 19:56):

Can I load the Measure, Library and ValueSet resources onto the DEFAULT partition, and then $evaluate-measure against data in a different partition?

view this post on Zulip Sean McIlvenna (Jun 14 2021 at 19:57):

i.e.
/fhir/DEFAULT/Measure/SomeMeasure
and then execute
/fhir/SOME-OTHER-PARTITION/Measure/SomeMeasure/$evaluate-measure?periodStart=XXX&periodEnd=YYY

view this post on Zulip JP (Jun 14 2021 at 20:38):

I don't think cross-partition execution would be supported currently but I've never actually tried it.

view this post on Zulip Sean McIlvenna (Jun 14 2021 at 20:50):

@JP any thoughts on what it would take to make that work?

view this post on Zulip Sean McIlvenna (Jun 14 2021 at 20:50):

Anything I can do to help that along?

view this post on Zulip Sean McIlvenna (Jun 14 2021 at 20:50):

(point me in the right direction?)

view this post on Zulip JP (Jun 14 2021 at 20:55):

This is the class that does the data-access from the perspective of the cql evaluation:

https://github.com/hapifhir/hapi-fhir/blob/376a84d2134588eb8b62685c93166318a76bf5a7/hapi-fhir-jpaserver-cql/src/main/java/ca/uhn/fhir/cql/common/retrieve/JpaFhirRetrieveProvider.java#L46

It takes a DaoRegistry as a parameter which it is how it accesses the underlying HAPI database. If there were a way to configure the registry to point to a different partition or to inject a different registry you could in principle access different data. I don't have any experience with HAPI's partitioning scheme so I'm not sure if that's possible but that's where I'd start looking.

view this post on Zulip JP (Jun 14 2021 at 20:55):

Is that helpful?

view this post on Zulip Sean McIlvenna (Jun 14 2021 at 21:00):

very

view this post on Zulip Sean McIlvenna (Jun 14 2021 at 21:00):

thanks

view this post on Zulip Sean McIlvenna (Jun 14 2021 at 21:27):

Ok. I setup a scenario where the Measure was loaded on DEFAULT partition, and data loaded on "somePartition" partition

view this post on Zulip Sean McIlvenna (Jun 14 2021 at 21:27):

Getting the following right now:

view this post on Zulip Sean McIlvenna (Jun 14 2021 at 21:27):

No interceptor provided a value for pointcut: STORAGE_PARTITION_IDENTIFY_READ

view this post on Zulip Sean McIlvenna (Jun 14 2021 at 21:28):

Trying to figure out what causes that...


Last updated: Apr 12 2022 at 19:14 UTC