Can't login to Ignite server after updating Smack in Spark

I have updated Smack version to 4.3.2 (just released https://download.igniterealtime.org/smack/docs/4.3.2/changelog.html - though not yet on Downloads page) in pom.xml file, downloaded from Bamboo. I can login to my local Openfire 4.3.2 server, but not to Ignite’s.

Corresponding JIRA ticket for the update https://issues.igniterealtime.org/browse/SPARK-2087

Feb 23, 2019 9:53:26 PM org.jivesoftware.spark.util.log.Log error
SEVERE: Exception in Login:
org.jivesoftware.smack.SmackException$ConnectionException: The following addresses failed: ‘igniterealtime.org:5222’ failed because: igniterealtime.org/52.58.216.59 exception: java.net.ConnectException: Connection timed out: connect
at org.jivesoftware.smack.SmackException$ConnectionException.from(SmackException.java:278)
at org.jivesoftware.smack.tcp.XMPPTCPConnection.connectUsingConfiguration(XMPPTCPConnection.java:628)
at org.jivesoftware.smack.tcp.XMPPTCPConnection.connectInternal(XMPPTCPConnection.java:908)
at org.jivesoftware.smack.AbstractXMPPConnection.connect(AbstractXMPPConnection.java:409)
at org.jivesoftware.LoginDialog$LoginPanel.login(LoginDialog.java:1152)
at org.jivesoftware.LoginDialog$LoginPanel.access$900(LoginDialog.java:386)
at org.jivesoftware.LoginDialog$LoginPanel$3.construct(LoginDialog.java:942)
at org.jivesoftware.spark.util.SwingWorker.lambda$new$1(SwingWorker.java:138)
at java.lang.Thread.run(Unknown Source)

If i go back to previous build with Smack 4.3.1, i can login again. Ideas? @Flow @guus

I was just able to login. Maybe the port and the IP was in fact simply not available for a brief period?

I don’t think so. Every time i switch to new build, i can’t login. If i switch to previous build, i can login. I have tried going back and forth ~5 times.

Works https://bamboo.igniterealtime.org/browse/SPARK-NIGHTLY-850/artifact/shared/Install4j-generated-media/
Can’t login https://bamboo.igniterealtime.org/browse/SPARK-NIGHTLY-851/artifact/shared/Install4j-generated-media/

I am not sure if it is related, but there is another (bigger) issue. Smack 4.3.2 declares the following dependencies

  • jxmpp - [0.6, 0.7)
  • minidns - [0.3, 0.4)

However maven in Spark resolves those to

  • jxmpp-0.7.0-alpha5
  • minidns-0.4.0-alpha3

that is, alpha versions which should not be used, since they are outside of the specified version range. Using those erroneous versions causes dynamic linking issues when running Spark.

Is it Spark’s problem or Smack 4.3.2? Should i roll back to 4.3.1 and wait for next version?

I don’t think that this is an Smack issue, as for example Gradle pulls in the correct versions of those transitive dependencies. I am currently investigating if it is a Spark or Maven issue. Feel free to revert if you like (after all it is just a one line change :slight_smile:).

I have posted the issue we are seeing to the Maven users mailing list:

https://lists.apache.org/thread.html/888730bd2479a9ae247e12b1f7ae6a85285feb395bdfe99c2e435a46@<users.maven.apache.org>

1 Like

We are hitting https://issues.apache.org/jira/browse/MNG-6232

Created SMACK-858.

1 Like

Could you try https://github.com/Flowdalic/Spark/tree/smack-4.3.3-SNAPSHOT ?

Same error.

Good news, I am very confident to have identified the issue causing Spark using Smack 4.3.2+ being unable to login to igniterealtime.org. I have pushed a new Smack 4.3.3-SNAPSHOT version which when used with my Spark branch, allowed me to login on igniterealtime.org.

Now my plan is to release Smack 4.3.3 in the next few days/weeks.

1 Like