cancel
Showing results for 
Search instead for 
Did you mean: 

Can XMII OLEDB and PI OLEDB really support Multi-Threading mode?

Former Member
0 Kudos

Hi,

I have a question regarding to the Threading Model of XMII OLEDB and PI OLEDB.

In the XMII UDS Help document, it says that when we create a new instance in XMII UDS Admin Console, we need to set Threading Model as STA, which means single threading mode. The fact is that, if there are many users login to a XMII application, both PI query (via PIOLEDB.1) and Excel Spreadsheet based SQL query (via Microsoft.Jet.OLEDB.4.0) become very slow. If we set the Threading mode as MTA, will XMII OLEDB and PI OLEDB really support Multi-Threading mode?

Thanks

Hongfang

Accepted Solutions (0)

Answers (1)

Answers (1)

jcgood25
Active Contributor
0 Kudos

Hongfang,

This is actually an open dialog between Amgen / OSISoft / SAP concerning the PI OleDB provider. OSISoft has implemented a single threaded provider that is multi-threaded when connected multiple times (like you would get from a fat-client app that every user connects independently), whereas SAP has implemented the connector in a way that expects the OleDB provider to create the multiple connections from a single instance and this is why the directions say to keep it STA. In MTA mode the second query will go from the template down to the UDS, but will throw an error because the single thread OleDB request didn't finish yet.

The only short term solution would be to have multiple client connections through the PI OleDB provider, meaning multiple UDS connections setup in STA mode and corresponding named Data Servers in xMII, which could be a little messy to manage in your application.

Regards,

Jeremy

Former Member
0 Kudos

Hi, Jeremy,

Thank you so much for your suggestion. We will try this solution.

Regards

Hongfang