Say I open a terminal
$ echo $LINES 25 $ vi :set lines? 25 :set lines=50 :!echo $LINES 50
-as I'd expect (and the terminal window resizes and everything works). But if I start tmux from a fresh (non-resized) terminal
$ tmux new -s resize_for_crying_out_loud $ echo $LINES 25 $ vi :set lines? 25 :set lines=50 :!echo $LINES 25
and vi is unusable because it gets confused and won't render right. I can adjust the window size with the mouse, and that gets both the :set lines? and :!echo $LINES commands to agree. Also TERM=screen-256color-it in tmux, TERM=rxvt-unicode-256color in normal terminal.
$ tmux new -s this_is_how_the_manual_says_to_resize -y 50
also doesn't work.