If the third party is the principal maintainer of the DB, I guess I wouldn't mess with it. But if it was merely imported and afterwards it was up to me what to do with it, I probably would, and I actually have.
Of course it also matters whether the DB is meant to be updated heavily by applications under my control. So far I've only done this on a DB that's used as a reference only.
I would certainly look into the possibility of creating helpful indexes. As in, I would ask around to see if I'm allowed to do that or if I can contact a person who can with my suggestions.
Although I suspect in the latter case it would help if I could prove the index(es) would be beneficial.
@McNets I guess that's one way, although if you can temporarily create an index without any issues (and then drop it), then the proof might be stronger if you could take actual measurements with and without the index.
Also, just as a side note, an index suggested in an execution plan might not always be the best. It's just what the engine thinks would help in that specific plan. (And even then you might need to take into account other queries and modify the create index statement to accommodate them as well, if possible.)
You could add the index before running your integration and remove it again afterwards, depending if your database edition supports online or if there is any risk of causing blocking when adding the index, but it could be an option
@McNets Yeah MES is expensive if you are only doing basic shop floor control and you often only need one or two screens with a bunch of buttons
And the MES vendors all tout their "machine integration" but they use a matrikon or kepware middleware to connect the machines and connect to that using simple OPC so you can write that yourself pretty easily too
@McNets Depends on the terms of the support agreement. If the vendor has a 'no changes' policy then it might void their SLA. Otherwise it's probably not going to hurt but for CYA reasons test elsewhere before you deploy to prod.
Address space layout randomisation is used on several operating systems for precisely this reason. Your variation in stack pointer addresses may well be caused by this - very likely to be the case on recent versions of Linux and or *BSD. IIRC recent versions of Windows do this as well.