Currently the client application is responsible of not preparing the same query twice.
When the user re-prepares an already prepared query, the user should get the existing prepared statement.
This might be a breaking change for existing users, so we should implement it in a major version (see internal debate for more info).