These are chat archives for atomix/atomix

8th
Jan 2018
Tej
@vvstej
Jan 08 2018 20:52
trying to use <dependency>
<groupId>io.atomix</groupId>
<artifactId>atomix</artifactId>
<version>2.0.13</version>
</dependency>
but get missing artifact error
the only version I was able to fetch is 1.0.0.-rc9
Jordan Halterman
@kuujo
Jan 08 2018 20:54
hmm
Tej
@vvstej
Jan 08 2018 20:56
has anyone successfully obtained atomix 2+ as pom dependency
Tej
@vvstej
Jan 08 2018 20:57
hmm ok
Jordan Halterman
@kuujo
Jan 08 2018 20:58
@johnou thoughts?
also can you +1 #384?
;-)
@vvstej can you pull in the snapshot?
2.1.0-SNAPSHOT
Tej
@vvstej
Jan 08 2018 21:00
Sure I can try
I cannot :worried:
Jordan Halterman
@kuujo
Jan 08 2018 21:02
haven’t had problems with other artifacts I’m assuming?
Tej
@vvstej
Jan 08 2018 21:02
that right, no issues with other artifacts and no issues with <dependency>
<groupId>io.atomix</groupId>
<artifactId>atomix-all</artifactId>
<version>1.0.0-rc9</version>
</dependency>
Tej
@vvstej
Jan 08 2018 22:02
I think there is my company proxy blocking downloading certain artifacts, in any case was able to get 2.0.10 version. However the API seems to have changed drastically . Whats the best documentation to follow, I am a newbie to Atomix @kuujo
Jordan Halterman
@kuujo
Jan 08 2018 23:03
@vvstej the documentation has indeed changed drastically… Atomix 2.1.0 is the first version that has the full new API. The README documentation is the only accurate documentation until the website is updated and the new version is released
Tej
@vvstej
Jan 08 2018 23:19
ok.. per the ReadME I should be able to do this Atomix.Builder builder = Atomix.builder();, But I cannot do this
Atomix is just an interface
it’s a class in 2.1, and interfaces support static methods in Java 8 :-)
I think in Atomix 1 it was an interface, in which case there was two implementations: AtomixClient and AtomixReplica
the website documentation is accurate for Atomix 1, and README for Atomix 2.1
Tej
@vvstej
Jan 08 2018 23:21
oh, well I cannot obtain 2.1.0 due to some proxy restrictions, so I am working with 2.0.9
Jordan Halterman
@kuujo
Jan 08 2018 23:22
true story...
Tej
@vvstej
Jan 08 2018 23:24
I feel I am stuck in intermediary state, cannot find AtomixClient since I am not on 1.0.0-rc9, and cannot do Atomix.Builder since I cannot use 2.1.0. The closest I see in 2.0.9 is RaftClient.java
Jordan Halterman
@kuujo
Jan 08 2018 23:26
Correct, the versioning got weird in Atomix 2.0 because of the release schedule for ONOS (which is the project I’m paid to maintain Atomix for) and because of the refactoring that took several releases. So, Atomix 1 has primitives, Atomix 2.0.x has the new Raft implementation, and Atomix 2.1 has the completed refactoring. Sowwy :-(
Atomix 2.1 should really be Atomix 2.0
In terms of completeness anyways, not necessarily stability (the Raft implementation was stable in 2.0)
Tej
@vvstej
Jan 08 2018 23:28
I see, so now that I am stuck with atomix 2.0.x , how can I create atomix replica, join a cluster etc
is it using RaftClient
Jordan Halterman
@kuujo
Jan 08 2018 23:28
So the usefulness of 2.0.x I suppose depends on what you want to use it for
Tej
@vvstej
Jan 08 2018 23:28
I would like to use WorkQueues
DistributedWorkQueue
I am actually trying to make one of our services scale horizontally, and atomix seems a very good fit based on my understanding. The 1.x distributed collections are great but not just sufficient enough since I am looking for message bus/work queue sort of data structure
which is available in 2+
Jordan Halterman
@kuujo
Jan 08 2018 23:31
2.1
Maybe just clone and install?
Atomix 2.1 essentially has the new Raft implementation, cluster, and communication APIs. All the new primitives and high level APIs (i.e. Atomix) were added in 2.1. This is really the product of combing work from Copycat 1, Atomix 1, and ONOS over a few releases
Tej
@vvstej
Jan 08 2018 23:36
I see, Is it stable for production use, yet(the reason I ask is I dont see 2.1.0 here https://github.com/atomix/atomix/releases and is it available via maven central
if its stable and available via maven central I can work with my company's security folks to see if it can considered a blessed artifact for me to use
btw thanks a lot for helping me answer my questions @kuujo
Tej
@vvstej
Jan 08 2018 23:43
reading your comment again, the fact that you said clone and install means its not ready yet. Sorry for asking again!
Jordan Halterman
@kuujo
Jan 08 2018 23:48
Actually, I just said clone and install it because you can’t reach some artifacts in Maven Central. But the fact there have been no releases is what means it’s not ready. The majority of the code in Atomix 2.1 has been in use in some form for years, but I’m still not comfortable enough with some of the newer code (cluster management mostly) to release it quite yet. Atomix 2.1 will likely be released towards the end of the month.
If I were to release it today, I’d call it beta
Jordan Halterman
@kuujo
Jan 08 2018 23:54
The new API that is