Closed jjacquay712 closed 8 years ago
After some investigation, I've found that using a single GoRods connection within multiple Goroutines (from net/http server) causes low-level network library errors. This issue could be remedied with connection pooling, transparent to the implementer of GoRods:
I've found that data object and collection handles must be used only with the same connection they were created with, so that makes the idea of connection pools difficult to implement and not very worth while. The iRODS authors also state "The view I take is that iRODS has grown over time based on the 'icommand' model, where a command connects, does its job, and then disconnects. Especially if your client is widely distributed, my own best practice is to avoid holding on to idle connections. There can also be dangers of dropping connections that are idle if you are overly reliant on continuously held connections.".
Proposed syntax: