So after almost a whole day of banging my head on my desk, I’ve come to realize the error I was getting:
org.apache.solr.handler.dataimport.DataImportHandlerException: com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception:
** BEGIN NESTED EXCEPTION **
was related to the old version of the MySQL JDBC connector I was using, 5.0.8. It turns out it doesn’t recognize the netTimeoutForStreamingResults parameter, causing my executions to die a horrible death after 600 seconds, the default setting. Upgrading to the latest connector, 5.1.14, solved the problem and I’m happily importing my million records of data into Solr. Yay.