probably you are not interested in this problem anymore, but I am replying since I just had the same issue and did not find any solution in the forums.
I solved the error by setting the CommandTimeout property (default = 30s) to a higher value.
If you launch the stored procedure by a simple OdbcCommand, setting the CommandTimeout is straightforward.
If you are using a TableAdapter (for example, if you designed a DataSet with the Visual Studio wizard and set a TableAdapter to launch the stored), you won't access the CommandCollection in your code (it is a protected property of the TableAdapter); so I solved implementing a class which derives from the TableAdapter that the Visual Studio wizard created for me, then in my class constructor I set the CommandTimeout for each Command in the CommandCollection. Finally in my code I don't use the TableAdapter, but my derived class.
Hope this can help anybody incurring in the same issue.