@@ -27,7 +27,8 @@ case class CassandraConnectorConf(
2727 connectTimeoutMillis : Int = CassandraConnectorConf .ConnectionTimeoutParam .default,
2828 readTimeoutMillis : Int = CassandraConnectorConf .ReadTimeoutParam .default,
2929 connectionFactory : CassandraConnectionFactory = DefaultConnectionFactory ,
30- cassandraSSLConf : CassandraConnectorConf .CassandraSSLConf = CassandraConnectorConf .DefaultCassandraSSLConf
30+ cassandraSSLConf : CassandraConnectorConf .CassandraSSLConf = CassandraConnectorConf .DefaultCassandraSSLConf ,
31+ jmxEnabled : Boolean = true
3132) {
3233
3334 @ transient
@@ -87,6 +88,12 @@ object CassandraConnectorConf extends Logging {
8788 default = 9042 ,
8889 description = """ Cassandra native connection port""" )
8990
91+ val JmxEnabledParam = ConfigParameter [Boolean ](
92+ name = " spark.cassandra.connection.jmxEnabled" ,
93+ section = ReferenceSection ,
94+ default = true ,
95+ description = """ Cassandra JMX Reporting""" )
96+
9097 val LocalDCParam = ConfigParameter [Option [String ]](
9198 name = " spark.cassandra.connection.local_dc" ,
9299 section = ReferenceSection ,
@@ -219,6 +226,7 @@ object CassandraConnectorConf extends Logging {
219226 ConnectionPortParam ,
220227 LocalDCParam ,
221228 ConnectionTimeoutParam ,
229+ JmxEnabledParam ,
222230 KeepAliveMillisParam ,
223231 MinReconnectionDelayParam ,
224232 MaxReconnectionDelayParam ,
@@ -254,10 +262,11 @@ object CassandraConnectorConf extends Logging {
254262 hostName <- hostsStr.split(" ," ).toSet[String ]
255263 hostAddress <- resolveHost(hostName.trim)
256264 } yield hostAddress
257-
265+
258266 val port = conf.getInt(ConnectionPortParam .name, ConnectionPortParam .default)
259267
260268 val authConf = AuthConf .fromSparkConf(conf)
269+ val jmxEnabled = conf.getOption(JmxEnabledParam .name).map(_.toBoolean).getOrElse(JmxEnabledParam .default)
261270 val keepAlive = conf.getInt(KeepAliveMillisParam .name, KeepAliveMillisParam .default)
262271
263272 val localDC = conf.getOption(LocalDCParam .name)
@@ -312,7 +321,8 @@ object CassandraConnectorConf extends Logging {
312321 connectTimeoutMillis = connectTimeout,
313322 readTimeoutMillis = readTimeout,
314323 connectionFactory = connectionFactory,
315- cassandraSSLConf = cassandraSSLConf
324+ cassandraSSLConf = cassandraSSLConf,
325+ jmxEnabled = jmxEnabled
316326 )
317327 }
318328}
0 commit comments