PERF: Fix performance regression for isin with mismatching dtypes
- [ ] closes #xxxx (Replace xxxx with the GitHub issue number)
- [ ] [Tests added and passed](https://pandas.pydata.org/pandas-docs/dev/development/contributing_codebase.html#writing-tests) if fixing a bug or adding a new feature
- [ ] All [code checks passed](https://pandas.pydata.org/pandas-docs/dev/development/contributing_codebase.html#pre-commit).
- [ ] Added [type annotations](https://pandas.pydata.org/pandas-docs/dev/development/contributing_codebase.html#type-hints) to new arguments/methods/functions.
- [x] Added an entry in the latest `doc/source/whatsnew/vX.X.X.rst` file if fixing a bug or adding a new feature.

From the asv run you did. This restores 1.4.0 performance. The cast to object avoided the fast path we hit before
cc @jbrockmendel 

Not a blocker for 1.5.1, will move whatsnew if it is released before
LGTM pending green @phofl - this may have induced a performance regression, please have a look and open an issue if necessary. This is a semi-automated message.

https://asv-runner.github.io/asv-collection/pandas/#algos.isin.IsIn.time_isin_empty?p-dtype='string%5Bpyarrow%5D'

[new link](https://asv-runner.github.io/asv-collection/pandas/#algos.isin.IsIn.time_isin_empty?p-dtype='string%5Bpyarrow%5D') @rhshadrach the diagram is empty, is this expected? Hmm, it seems GitHub does not like me ending a URL with a single quote. I've edited the comment above, and will be updating my script :smile: