To save memory and optimize memory it is default using parameter low_memory=True
by reading the file in chunks to figure out the data type (dtype) for each column. The warning occurs when Pandas makes a decision based on an early chunk, but then finds conflicting data in a later chunk its either read it as string or whatsoever is it. Refer to this documentation for the parameter default.
From your experiment, i can see if pandas is processing your file as two chunk when processing 34926 lines while removing 1 is giving you warning. Which pandas for example, read your first chunk as integer, but in second chunk it seems wrongly take it as string or whatever it is which make giving you warning to declare what type of data should be that column is, that is why you should either supress it by declare dtype for each column or use low_memory=false.