merging two dataframes causing crash?

I'm having a weird problem where merging two dataframes(one is 400mb and other is 30mb) results in my 25GB server crashing.

MainDF =  pd.merge(masterTableExport, dfFundamentals, left_on='ticker', right_on='ticker', how='left', suffixes=('', '_y')) #.drop('id1', axis=1))
MainDF.drop(MainDF.filter(regex='_y$').columns.tolist(),axis=1, inplace=True)


MainDF =  pd.merge(MainDF, dfRatios, left_on='ticker', right_on='ticker', how='left', suffixes=('', '_y')) #.drop('id1', axis=1))
MainDF.drop(MainDF.filter(regex='_y$').columns.tolist(),axis=1, inplace=True)

the first merge works fine and doesn't take much memory, about 2 gb with a shape of (361865, 265) - but when I join the second DF with the first one I joined, I exceed memory.

What am I doing wrong?