Ignite compilation fails in IntelliJ IDEA (IgniteLinkTaglet)

2020-08-09 Thread Pavel Tupitsyn
Igniters,

The project does not seem to compile in IDEA:
there are two IgniteLinkTaglet versions for Java 8 and Java 9+,
and both files get picked up by the IDE for some reason, resulting
in build errors.

I've done all the usual things (fresh clone, invalidate caches).
java-8 profile is enabled, java-9+ disabled, only JDK 8 is installed.
Maven build is fine, only IDEA gives me errors.

I've seen some people just delete one of the IgniteLinkTaglet files,
this works for me too but is quite inconvenient.
Is there any trick to this?


Re: Apache Ignite 3.0

2020-08-09 Thread Petr Ivanov
Hi, Val!
Thanks for your efforts on this endeavour!


I would like to suggest deliveries changes in Apache Ignite 3.0:
 — modularised  binary delivery — single minimal binary for starting Ignite and 
all other modules and parts of the project (benchmarks, examples, etc.) packed 
in their own binary which can be added via custom dependency management tool 
(i.e. modules.sh)
 — same distribution for RPM and DEB packages but with modules packed as 
separate ones (PHP for example)
 — separate thin client release cycle with custom versioning
Possibly, we can we add additional section to the document you introduced for 
this part.

Also, it seems that full JDK11 support (including building) would be a huge 
milestone and a sign of healthy modern project that tends to be on the verge of 
mainstream technologies and not the stockpile of legacy leftovers (fully 
support Iliya in removing all that was deprecated and/or marked as unused 
anymore).


> On 8 Aug 2020, at 02:00, Valentin Kulichenko  
> wrote:
> 
> Igniters,
> 
> I've created the page:
> https://cwiki.apache.org/confluence/display/IGNITE/Apache+Ignite+3.0
> 
> That's not everything I have in mind, but I believe there is already a lot
> to talk about :)
> 
> Please take a look let me know if you have any concerns, objections, or
> questions. Once we reach the consensus on the proposed changes, I will
> start creating tickets in Jira and a more detailed plan.
> 
> -Val
> 
> On Thu, Aug 6, 2020 at 6:28 PM Saikat Maitra 
> wrote:
> 
>> Hi Denis, Val
>> 
>> Thank you for your reply and really appreciate it. It will be very cool to
>> be able to connect and plan release together and learn more about Ignite in
>> the process :)
>> 
>> Regards
>> Saikat
>> 
>> 
>> 
>> On Thu, Aug 6, 2020 at 7:12 PM Valentin Kulichenko <
>> valentin.kuliche...@gmail.com> wrote:
>> 
>>> Hi Saikat,
>>> 
>>> That surely is a great idea. We will work together with Denis on setting
>>> this up in the nearest future.
>>> 
>>> -Val
>>> 
>>> On Thu, Aug 6, 2020 at 10:21 AM Denis Magda  wrote:
>>> 
 Saikat,
 
 Fully support your idea on a virtual meetup! Once Val collects and
>>> outlines
 the main changes with directions on wiki, we’ll go ahead and schedule
>> the
 meetup to talk things out in a bit more detail. We’ll use our new
>> Virtual
 Ignite Meetup group for that inviting both Ignite contributors and
 application developers.
 
 Denis
 
 On Thursday, August 6, 2020, Saikat Maitra 
 wrote:
 
> Hi Valentin
> 
> Thank you for sharing and starting the thread. I am thinking if it
>> will
 be
> a good idea to have a virtual meet setup to discuss on the release
> planning.
> 
> It will help to learn more individual features to be added and also
>> to
> understand about features that have been deprecated and scheduled for
> removal in Ignite 3.0 release. Also it will help community member to
> connect in real time and ask questions and share feedback.
> 
> Regards,
> Saikat
> 
> On Thu, Aug 6, 2020 at 3:51 AM Ilya Kasnacheev <
 ilya.kasnach...@gmail.com>
> wrote:
> 
>> Hello!
>> 
>> I hope to see Apache Ignite release 3.0 as API trimming release.
>> Let
>>> us
>> correct external and internal APIs for which we have better ideas
>>> now,
 as
>> well as remove old and deprecated code.
>> 
>> We may also introduce new configuration mechanisms and user-facing
>>> API
>> (such as cache-less native SQL queries), but this we could
>> prototype
> before
>> starting the 3.0 task.
>> 
>> I will advise against targeting large new features at 3.0. They can
>>> be
>> added in subsequent point releases, whereas we can't really remove
>> or
>> remodel stuff in point releases.
>> 
>> Regards,
>> --
>> Ilya Kasnacheev
>> 
>> 
>> чт, 6 авг. 2020 г. в 03:54, Valentin Kulichenko <
>> valentin.kuliche...@gmail.com>:
>> 
>>> Igniters,
>>> 
>>> I would like to kick off a discussion regarding Ignite 3.0.
>> Ignite
 2.0
>>> exists for more than 3 years now and we've already collected a
>> significant
>>> list [1] of changes that we would like to have, but cannot
>>> implement
>>> without breaking compatibility.
>>> 
>>> I think it's time to start planning for the next major release
>> and
>>> discussing what should be included. I've already gathered some
>> information
>>> and feedback, and have some thoughts on how to approach this. In
>>> the
> next
>>> few days, I will put everything into a Wiki page and will share
>> it
 once
>>> this is done. Stay tuned!
>>> 
>>> I'm willing to drive the 3.0 activities going forward as well.
>>> 
>>> In the meantime, if there are any immediate thoughts or ideas,
>>> please
>> feel
>>> free to join the thread and share them.
>>> 
>>> [1]
>>> 
>>> 
>>>

[jira] [Created] (IGNITE-13344) DummyVectorizer fails to extract label for coordinate with value "0.0" when backed by sparse vector

2020-08-09 Thread Thilo-Alexander Ginkel (Jira)
Thilo-Alexander Ginkel created IGNITE-13344:
---

 Summary: DummyVectorizer fails to extract label for coordinate 
with value "0.0" when backed by sparse vector
 Key: IGNITE-13344
 URL: https://issues.apache.org/jira/browse/IGNITE-13344
 Project: Ignite
  Issue Type: Bug
  Components: ml
Affects Versions: 2.8.1
Reporter: Thilo-Alexander Ginkel


Given: A labeled DummyVectorizer:

 
{code:java}
new DummyVectorizer()
 .exclude(excludeCoordinates.stream().map(coord -> vectorLength + 
coord).toArray(Integer[]::new))
 .labeled(labelCoord);
{code}
{{When extracting the label, the call hierarchy eventually ends up at 
org.apache.ignite.ml.dataset.feature.extractor.impl.DummyVectorizer#feature, 
which returns null for val.getRaw when val is a sparse vector with the element 
at the requested label coordinate being 0.0. This causes the training job to 
fail (which expects a non-null label):}}
{noformat}
org.apache.ignite.IgniteException: Remote job threw user exception (override or 
implement ComputeTask.result(..) method if you would like to have automatic 
failover for this exception): nullorg.apache.ignite.IgniteException: Remote job 
threw user exception (override or implement ComputeTask.result(..) method if 
you would like to have automatic failover for this exception): null at 
org.apache.ignite.compute.ComputeTaskAdapter.result(ComputeTaskAdapter.java:102)
 ~[ignite-core-2.8.1.jar:2.8.1] at 
org.apache.ignite.internal.processors.task.GridTaskWorker$5.apply(GridTaskWorker.java:1062)
 ~[ignite-core-2.8.1.jar:2.8.1] at 
org.apache.ignite.internal.processors.task.GridTaskWorker$5.apply(GridTaskWorker.java:1055)
 ~[ignite-core-2.8.1.jar:2.8.1] at 
org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:7037)
 ~[ignite-core-2.8.1.jar:2.8.1] at 
org.apache.ignite.internal.processors.task.GridTaskWorker.result(GridTaskWorker.java:1055)
 ~[ignite-core-2.8.1.jar:2.8.1] at 
org.apache.ignite.internal.processors.task.GridTaskWorker.onResponse(GridTaskWorker.java:862)
 ~[ignite-core-2.8.1.jar:2.8.1] at 
org.apache.ignite.internal.processors.task.GridTaskProcessor.processJobExecuteResponse(GridTaskProcessor.java:1146)
 ~[ignite-core-2.8.1.jar:2.8.1] at 
org.apache.ignite.internal.processors.job.GridJobWorker.finishJob(GridJobWorker.java:961)
 ~[ignite-core-2.8.1.jar:2.8.1] at 
org.apache.ignite.internal.processors.job.GridJobWorker.finishJob(GridJobWorker.java:809)
 ~[ignite-core-2.8.1.jar:2.8.1] at 
org.apache.ignite.internal.processors.job.GridJobWorker.execute0(GridJobWorker.java:659)
 ~[ignite-core-2.8.1.jar:2.8.1] at 
org.apache.ignite.internal.processors.job.GridJobWorker.body(GridJobWorker.java:519)
 ~[ignite-core-2.8.1.jar:2.8.1] at 
org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:120) 
~[ignite-core-2.8.1.jar:2.8.1] at 
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
 ~[na:na] at 
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
 ~[na:na] at java.base/java.lang.Thread.run(Thread.java:832) ~[na:na]Caused by: 
org.apache.ignite.IgniteException: null at 
org.apache.ignite.internal.processors.closure.GridClosureProcessor$C2.execute(GridClosureProcessor.java:1858)
 ~[ignite-core-2.8.1.jar:2.8.1] at 
org.apache.ignite.internal.processors.job.GridJobWorker$2.call(GridJobWorker.java:596)
 ~[ignite-core-2.8.1.jar:2.8.1] at 
org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:7005)
 ~[ignite-core-2.8.1.jar:2.8.1] at 
org.apache.ignite.internal.processors.job.GridJobWorker.execute0(GridJobWorker.java:590)
 ~[ignite-core-2.8.1.jar:2.8.1] ... 5 common frames omittedCaused by: 
java.lang.NullPointerException: null at 
org.apache.ignite.ml.dataset.impl.bootstrapping.BootstrappedDatasetBuilder.build(BootstrappedDatasetBuilder.java:91)
 ~[ignite-ml-2.8.1.jar:2.8.1] at 
org.apache.ignite.ml.dataset.impl.bootstrapping.BootstrappedDatasetBuilder.build(BootstrappedDatasetBuilder.java:41)
 ~[ignite-ml-2.8.1.jar:2.8.1] at 
org.apache.ignite.ml.dataset.impl.cache.util.ComputeUtils.lambda$getData$4(ComputeUtils.java:239)
 ~[ignite-ml-2.8.1.jar:2.8.1] at 
org.apache.ignite.ml.dataset.impl.cache.util.PartitionDataStorage.lambda$computeDataIfAbsent$1(PartitionDataStorage.java:56)
 ~[ignite-ml-2.8.1.jar:2.8.1] at 
java.base/java.util.concurrent.ConcurrentHashMap.computeIfAbsent(ConcurrentHashMap.java:1708)
 ~[na:na] at 
org.apache.ignite.ml.dataset.impl.cache.util.PartitionDataStorage.computeDataIfAbsent(PartitionDataStorage.java:56)
 ~[ignite-ml-2.8.1.jar:2.8.1] at 
org.apache.ignite.ml.dataset.impl.cache.util.ComputeUtils.getData(ComputeUtils.java:209)
 ~[ignite-ml-2.8.1.jar:2.8.1] at 
org.apache.ignite.ml.dataset.impl.cache.CacheBasedDataset.lambda$compute$c7cefc59$1(CacheBasedDataset.java:172)
 ~[ignite-ml-2.8.1.jar:2.8.1] at 
org.apache.ignite.ml.dataset.im