Sen Grassley told Trump that if he fires Sessions the Senate will not confirm whoever Trump nominates to be AG. So Trump can not fire Sessions, to do so put Rosestein in charge of DOJ. Grassley’s got Trump by the short hairs.
Grassley made that statement over six months ago, when the President gave the impression that the Trump Administration had not bothered to vet Sessions in regard to recusal.
The situation now is much different, and turnover in any president’s cabinet after a year is not too unusual. Grassley specified “this year (2017)” at the time.
Grassley said that long ago. We have some new information that may show potential movement in his thinking on the matter:
Grassley tells Attorney General Sessions his memo doesn’t comply with law
https://www.freerepublic.com/focus/f-news/3630270/posts
Senate Judiciary Committee Chairman Chuck Grassley says a recent memo written by the attorney general to Justice Department heads that instructs them not to communicate with Congress without pre-approval from the Justice Department Office of Legal Affairs (OLA) is almost certainly illegal.
The Iowa Republican told Jeff Sessions in a letter Tuesday that his recent memo “does not appear to comply with existing law,” and he asked Sessions to revise the memo accordingly.
Bears repeating, for the "Trump can fire him anytime!" crowd.
If President Trump wants Sessions gone he can wait until the senate is in recess, fire Sessions, and recess-appoint anyone he wants as a replacement. That appointment is good for a year, which should be well enough time for some swamp draining to get underway.