We have a global blacklist of post IDs that should be excluded from queries. This list includes IDs from any/all languages. We pass this blacklist into WP_Query using the 'post__not_in' query arg.
In this case a translated version of a post (JP) is on this blacklist. However the KR version of the post is not on the blacklist. When the query is performed on the KR site, the JP post ID gets changed to the KR post ID, causing the KR version of the post to be excluded from the query even though it does not appear on our blacklist.
Looking through the code from the WPML plugin, I see that on line #432 of /sitepress-multilingual-cms/classes/query-filtering/class-wpml-query-parser.php, it calls the adjust_q_var_pids function which is responsible for this issue. I assume that this must be desired functionality in other areas, but is not desired in this case.
I do not see any hooks/filters in the WPML code to allow me to skip this functionality. How can I prevent these post__not_in post IDs from being adjusted?
Yes this is a custom query. I will try out the auto-adjust IDs option you suggested and see if that works for us. I've already tried supress_filters => true which didn't seem to have an effect.
Unfortunately I believe disabling the auto-adjust IDs option you mentioned would fix this issue, but we have other areas of the site that rely on it which would then break.
I ended up having to redesign how our post ID blacklists work so that we now maintain a separate blacklist for each language of the site to avoid this quirk.