title: Cassandra java driver protocol version and connection limits don't match
body: <p>I am using java driver version: 2.1.4
  <br>Cassandra version: dsc-cassandra-2.1.10
  <br>Output from cql gives the following</p>
  
  <pre><code>cqlsh 5.0.1 | Cassandra 2.1.10 | CQL spec 3.2.1 | Native protocol v3
  </code></pre>
  
  <p>I am protocol V3. But it throws an exception when I try to set it to more than 128 requests per connection. This seems to be a restriction in V2. Explained below:</p>
  
  <p>The following code block:</p>
  
  <pre><code>PoolingOptions poolingOptions = new PoolingOptions();
  poolingOptions.setCoreConnectionsPerHost(HostDistance.LOCAL, 8);
  
  Cluster cluster = Cluster.builder()
                           .addContactPoints(x.x.x.x)
                           .withPoolingOptions(poolingOptions)
                           .withProtocolVersion(ProtocolVersion.V3)
                           .build();
  
  System.out.println("Protocol version = "+myCurrentVersion);
  System.out.println("LOCAL CORE = "+poolingOptions.getCoreConnectionsPerHost(HostDistance.LOCAL));
  System.out.println("LOCAL MAX = "+poolingOptions.getMaxConnectionsPerHost(HostDistance.LOCAL));
  System.out.println("Max sim requests = "+poolingOptions.getMaxSimultaneousRequestsPerConnectionThreshold(HostDistance.LOCAL));
  System.out.println("Max sim requests per host = "+poolingOptions.getMaxSimultaneousRequestsPerHostThreshold(HostDistance.LOCAL));
  
   poolingOptions
  .setMaxSimultaneousRequestsPerHostThreshold(HostDistance.LOCAL, 3000);
  
   poolingOptions
  .setMaxSimultaneousRequestsPerConnectionThreshold(HostDistance.LOCAL, 128);         
  
  System.out.println("LOCAL CORE = "+poolingOptions.getCoreConnectionsPerHost(HostDistance.LOCAL));
  System.out.println("LOCAL MAX = "+poolingOptions.getMaxConnectionsPerHost(HostDistance.LOCAL));
  System.out.println("Max sim requests = "+poolingOptions.getMaxSimultaneousRequestsPerConnectionThreshold(HostDistance.LOCAL));
  System.out.println("Max sim requests per host = "+poolingOptions.getMaxSimultaneousRequestsPerHostThreshold(HostDistance.LOCAL));
  </code></pre>
  
  <p>The output is:</p>
  
  <pre><code>Protocol version = V3
  LOCAL CORE = 1
  LOCAL MAX = 8
  Max sim requests = 100
  Max sim requests per host = 1024
  Exception in thread "main" java.lang.IllegalArgumentException: Max simultaneous requests per connection for LOCAL hosts must be in the range (0, 128)
      at com.datastax.driver.core.PoolingOptions.checkRequestsPerConnectionRange(PoolingOptions.java:370)
      at com.datastax.driver.core.PoolingOptions.setMaxSimultaneousRequestsPerConnectionThreshold(PoolingOptions.java:175)
      at ca.txio.pricehistoryservice.main.ConnectionOptionTest.main(ConnectionOptionTest.java:38)
  </code></pre>
  
  <p>According to the Cassandra documentation 
  <a href="https://docs.datastax.com/en/developer/java-driver/2.1/manual/native_protocol/" rel="nofollow noreferrer">https://docs.datastax.com/en/developer/java-driver/2.1/manual/native_protocol/</a>
  and
  <a href="http://docs.datastax.com/en/developer/java-driver/2.1/manual/pooling/" rel="nofollow noreferrer">http://docs.datastax.com/en/developer/java-driver/2.1/manual/pooling/</a></p>
  
  <p>I am protocol V3. But why am I restricted to 128 requests per connection. This seems to be a restriction in V2. Could someone please explain how to find what version I actually am, and if indeed V3, why can't I have more than 128 simultaneous connections?</p>