[ 
https://issues.apache.org/jira/browse/CASSANDRA-16362?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17271368#comment-17271368
 ] 

Jon Meredith commented on CASSANDRA-16362:
------------------------------------------

Thanks for rechecking. Glad it's better locally.  Here's the patch I used on 
the integration tests to pick up my branch, but it's probably functionally the 
same as yours.

{code}
diff --git a/medusa/restore_node.py b/medusa/restore_node.py
index f867ef1..90133d6 100644
--- a/medusa/restore_node.py
+++ b/medusa/restore_node.py
@@ -190,8 +190,7 @@ def invoke_sstableloader(config, download_dir, keep_auth, 
fqtns_to_restore, stor
                     logging.debug('Restoring table {} with 
sstableloader...'.format(table))
                     cql_username = 'foo' if config.cassandra.cql_username is 
None else config.cassandra.cql_username
                     cql_password = 'foo' if config.cassandra.cql_password is 
None else config.cassandra.cql_password
-                    sstableloader_args = 
[config.cassandra.sstableloader_bin.replace(
-                                          "github:apache/", 
"githubCOLONapacheSLASH"),
+                    sstableloader_args = [config.cassandra.sstableloader_bin,
                                           '-d', 
hostname_resolver.resolve_fqdn() if cassandra_is_ccm == 0
                                           else '127.0.0.1',
                                           '--conf-path', 
config.cassandra.config_file,
diff --git a/tests/integration/features/steps/integration_steps.py 
b/tests/integration/features/steps/integration_steps.py
index 8daf11f..c09628f 100644
--- a/tests/integration/features/steps/integration_steps.py
+++ b/tests/integration/features/steps/integration_steps.py
@@ -316,6 +316,7 @@ def i_am_using_storage_provider(context, storage_provider, 
client_encryption):
             "transfer_max_bandwidth": "1MB/s"
         }
 
+    repository_version_path = 
context.cassandra_version.replace(":","COLON").replace("/","SLASH")
     config["cassandra"] = {
         "is_ccm": 1,
         "stop_cmd": "ccm stop",
@@ -331,7 +332,7 @@ def i_am_using_storage_provider(context, storage_provider, 
client_encryption):
             os.path.join(
                 "~/.ccm",
                 "repository",
-                context.cassandra_version,
+                repository_version_path,
                 "bin",
                 "sstableloader",
             )
{code}

> SSLFactory should initialize SSLContext before setting protocols
> ----------------------------------------------------------------
>
>                 Key: CASSANDRA-16362
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-16362
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Tool/bulk load
>            Reporter: Erik Merkle
>            Assignee: Jon Meredith
>            Priority: Normal
>             Fix For: 4.0-beta5
>
>          Time Spent: 1h 10m
>  Remaining Estimate: 0h
>
> Trying to use sstableloader from the latest trunk produced the following 
> Exception:
> {quote}
> Exception in thread "main" java.lang.RuntimeException: Could not create SSL 
> Context.
>       at 
> org.apache.cassandra.tools.BulkLoader.buildSSLOptions(BulkLoader.java:261)
>       at org.apache.cassandra.tools.BulkLoader.load(BulkLoader.java:64)
>       at org.apache.cassandra.tools.BulkLoader.main(BulkLoader.java:49)
> Caused by: java.io.IOException: Error creating/initializing the SSL Context
>       at 
> org.apache.cassandra.security.SSLFactory.createSSLContext(SSLFactory.java:184)
>       at 
> org.apache.cassandra.tools.BulkLoader.buildSSLOptions(BulkLoader.java:257)
>       ... 2 more
> Caused by: java.lang.IllegalStateException: SSLContext is not initialized
>       at 
> sun.security.ssl.SSLContextImpl.engineGetSocketFactory(SSLContextImpl.java:208)
>       at javax.net.ssl.SSLContextSpi.getDefaultSocket(SSLContextSpi.java:158)
>       at 
> javax.net.ssl.SSLContextSpi.engineGetDefaultSSLParameters(SSLContextSpi.java:184)
>       at javax.net.ssl.SSLContext.getDefaultSSLParameters(SSLContext.java:435)
>       at 
> org.apache.cassandra.security.SSLFactory.createSSLContext(SSLFactory.java:178)
>       ... 3 more
> {quote}
> I believe this is because of a change to SSLFactory for CASSANDRA-13325 here:
> [https://github.com/apache/cassandra/commit/919a8964a83511d96766c3e53ba603e77bca626c#diff-0d569398cfd58566fc56bfb80c971a72afe3f392addc2df731a0b44baf29019eR177-R178]
>  
> I think the solution is to call {{ctx.init()}} before trying to call 
> {{ctx.getDefaultSSLParameters()}}, essentialy swapping the two lines in the 
> link above.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to