You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@ignite.apache.org by Ilya Kazakov <ka...@gmail.com> on 2021/09/01 03:46:04 UTC

Re: Ignite-code 2.10.0 Failed to find empty constructor for class: org.apache.ignite.internal.processors.platform.websession.PlatformDotNetSessionLockResult

Hello Pankaj. Could you please clarify, what JDK do you use?

In such cases (when a class does not have a default constructor), Ignite
creates a default constructor via sun.reflect.ReflectionFactory. But this
feature is available/tested only in SUN JDK's [1].

Thus I have a question, what JDK do you use?

[2]
https://github.com/apache/ignite/blob/ignite-2.10/modules/core/src/main/java/org/apache/ignite/internal/util/IgniteUtils.java#L1628

---------------------
Ilya

вт, 31 авг. 2021 г. в 15:05, Pankaj Kumar Bhadani <
pankaj.kumar.bhadani@ericsson.com>:

> Hi Team,
>
> I am facing some issue with setting up apache ignite-core 2.10.0 in java
> 11 environment.
>
> I am getting the below exception, when I am trying to start ignite Using
> Ignition start method.
>
> {"version": "0.2.0", "timestamp": "2021-08-18T08:08:51.363Z", "severity":
> "error", "service_id": "eric-bss-cpm-app", "metadata" : {"category":
> "CPM"}, "message": "Exception during start processors, node will be
> stopped and close connections"}
> org.apache.ignite.binary.BinaryObjectException*: Failed to find empty
> constructor for class:
> org.apache.ignite.internal.processors.platform.websession.PlatformDotNetSessionLockResult*
> at
> org.apache.ignite.internal.binary.BinaryClassDescriptor.constructor(BinaryClassDescriptor.java:1088)
> at
> org.apache.ignite.internal.binary.BinaryClassDescriptor.<init>(BinaryClassDescriptor.java:309)
>
>
>
> As a work around temporarily I created the default constructer in the
> org.apache.ignite.internal.processors.platform.websession.PlatformDotNetSessionLockResult.java
> class and build the jar from source code. This solved my problem and I was
> able to proceed with my POC. I now need a solution to this problem, so that
> when I integrate Ignite io build the solution I don’t have to make this
> change.
>
>
>
> Also wanted to appraise you that this is being used in the containerized
> product which uses java11 and ignite cluster would be started in the same
> JVM
>
>
>
> Thanks,
>
> Pankaj Bhadani
>

Re: Ignite-code 2.10.0 Failed to find empty constructor for class: org.apache.ignite.internal.processors.platform.websession.PlatformDotNetSessionLockResult

Posted by Ilya Kazakov <ka...@gmail.com>.
Pankaj, it turns out this is a known issue:
https://issues.apache.org/jira/browse/IGNITE-13963. And now it is in
progress.

But anyway if you can build your own Ignite, please use it like your
workaround.

---------------------
Ilya

чт, 2 сент. 2021 г. в 15:14, Pankaj Kumar Bhadani <
pankaj.kumar.bhadani@ericsson.com>:

> Hi Ilya,
>
>
>
> Can you please share your opinion on the below mail.
>
>
>
> Thanks,
>
> Pankaj Bhadani
>
>
>
> *From:* Pankaj Kumar Bhadani
> *Sent:* Wednesday, September 1, 2021 11:07 AM
> *To:* user@ignite.apache.org
> *Cc:* Prashant Kumar I <pr...@ericsson.com>
> *Subject:* RE: Ignite-code 2.10.0 Failed to find empty constructor for
> class:
> org.apache.ignite.internal.processors.platform.websession.PlatformDotNetSessionLockResult
>
>
>
> Hi Ilya,
>
>
>
> First of all thank you for replying to my mail promptly.
>
>
>
> Now, let me give some of information that you requested and our
> investigation
>
>
>
>
>
>    1. The JDK being used in the environment:
>
>
>
> bash-4.4$ java -version
>
> openjdk version "11.0.11" 2021-04-20
>
> OpenJDK Runtime Environment (build 11.0.11+9-suse-3.56.1-x8664)
>
> OpenJDK 64-Bit Server VM (build 11.0.11+9-suse-3.56.1-x8664, mixed mode)
>
>
>
>    1. The class in the ignite that is injecting the default constructor
>    at runtime using reflection
>
>
>
>
>
>
>
>    1. I passed several JVM Parameters to include  the reflection and
>    other modules
>
>
>
>
>
> The code seems not to be working in our containerized environment. Can you
> please suggest a way forward. As I have already mention I built ignite-core
> locally creating the default constructor and the implementation works fine.
>
>
>
>
>
> Thanks,
>
> Pankaj Bhadani
>
>
>
> *From:* Ilya Kazakov <ka...@gmail.com>
> *Sent:* Wednesday, September 1, 2021 9:16 AM
> *To:* user@ignite.apache.org
> *Cc:* Prashant Kumar I <pr...@ericsson.com>
> *Subject:* Re: Ignite-code 2.10.0 Failed to find empty constructor for
> class:
> org.apache.ignite.internal.processors.platform.websession.PlatformDotNetSessionLockResult
>
>
>
> Hello Pankaj. Could you please clarify, what JDK do you use?
>
> In such cases (when a class does not have a default constructor), Ignite
> creates a default constructor via sun.reflect.ReflectionFactory. But this
> feature is available/tested only in SUN JDK's [1].
>
> Thus I have a question, what JDK do you use?
>
> [2]
> https://github.com/apache/ignite/blob/ignite-2.10/modules/core/src/main/java/org/apache/ignite/internal/util/IgniteUtils.java#L1628
> <https://protect2.fireeye.com/v1/url?k=fdd86e68-a243568a-fdd82ef3-86073b36ea28-0394c0e1a58a6c15&q=1&e=4cee4fb1-31f3-421d-9ed3-259944d440b2&u=https%3A%2F%2Fgithub.com%2Fapache%2Fignite%2Fblob%2Fignite-2.10%2Fmodules%2Fcore%2Fsrc%2Fmain%2Fjava%2Forg%2Fapache%2Fignite%2Finternal%2Futil%2FIgniteUtils.java%23L1628>
>
> ---------------------
> Ilya
>
>
>
> вт, 31 авг. 2021 г. в 15:05, Pankaj Kumar Bhadani <
> pankaj.kumar.bhadani@ericsson.com>:
>
> Hi Team,
>
> I am facing some issue with setting up apache ignite-core 2.10.0 in java
> 11 environment.
>
> I am getting the below exception, when I am trying to start ignite Using
> Ignition start method.
>
> {"version": "0.2.0", "timestamp": "2021-08-18T08:08:51.363Z", "severity":
> "error", "service_id": "eric-bss-cpm-app", "metadata" : {"category":
> "CPM"}, "message": "Exception during start processors, node will be
> stopped and close connections"}
> org.apache.ignite.binary.BinaryObjectException*: Failed to find empty
> constructor for class:
> org.apache.ignite.internal.processors.platform.websession.PlatformDotNetSessionLockResult*
> at
> org.apache.ignite.internal.binary.BinaryClassDescriptor.constructor(BinaryClassDescriptor.java:1088)
> at
> org.apache.ignite.internal.binary.BinaryClassDescriptor.<init>(BinaryClassDescriptor.java:309)
>
>
>
> As a work around temporarily I created the default constructer in the
> org.apache.ignite.internal.processors.platform.websession.PlatformDotNetSessionLockResult.java
> class and build the jar from source code. This solved my problem and I was
> able to proceed with my POC. I now need a solution to this problem, so that
> when I integrate Ignite io build the solution I don’t have to make this
> change.
>
>
>
> Also wanted to appraise you that this is being used in the containerized
> product which uses java11 and ignite cluster would be started in the same
> JVM
>
>
>
> Thanks,
>
> Pankaj Bhadani
>
>

RE: Ignite-code 2.10.0 Failed to find empty constructor for class: org.apache.ignite.internal.processors.platform.websession.PlatformDotNetSessionLockResult

Posted by Pankaj Kumar Bhadani <pa...@ericsson.com>.
Hi Ilya,

Can you please share your opinion on the below mail.

Thanks,
Pankaj Bhadani

From: Pankaj Kumar Bhadani
Sent: Wednesday, September 1, 2021 11:07 AM
To: user@ignite.apache.org
Cc: Prashant Kumar I <pr...@ericsson.com>
Subject: RE: Ignite-code 2.10.0 Failed to find empty constructor for class: org.apache.ignite.internal.processors.platform.websession.PlatformDotNetSessionLockResult

Hi Ilya,

First of all thank you for replying to my mail promptly.

Now, let me give some of information that you requested and our investigation



  1.  The JDK being used in the environment:



bash-4.4$ java -version

openjdk version "11.0.11" 2021-04-20

OpenJDK Runtime Environment (build 11.0.11+9-suse-3.56.1-x8664)

OpenJDK 64-Bit Server VM (build 11.0.11+9-suse-3.56.1-x8664, mixed mode)


  1.  The class in the ignite that is injecting the default constructor at runtime using reflection



[cid:image001.png@01D79FF8.3910B120]



[cid:image002.png@01D79FF8.3910B120]


  1.  I passed several JVM Parameters to include  the reflection and other modules



[cid:image003.png@01D79FF8.3910B120]

The code seems not to be working in our containerized environment. Can you please suggest a way forward. As I have already mention I built ignite-core locally creating the default constructor and the implementation works fine.


Thanks,
Pankaj Bhadani

From: Ilya Kazakov <ka...@gmail.com>>
Sent: Wednesday, September 1, 2021 9:16 AM
To: user@ignite.apache.org<ma...@ignite.apache.org>
Cc: Prashant Kumar I <pr...@ericsson.com>>
Subject: Re: Ignite-code 2.10.0 Failed to find empty constructor for class: org.apache.ignite.internal.processors.platform.websession.PlatformDotNetSessionLockResult

Hello Pankaj. Could you please clarify, what JDK do you use?

In such cases (when a class does not have a default constructor), Ignite creates a default constructor via sun.reflect.ReflectionFactory. But this feature is available/tested only in SUN JDK's [1].

Thus I have a question, what JDK do you use?

[2] https://github.com/apache/ignite/blob/ignite-2.10/modules/core/src/main/java/org/apache/ignite/internal/util/IgniteUtils.java#L1628<https://protect2.fireeye.com/v1/url?k=fdd86e68-a243568a-fdd82ef3-86073b36ea28-0394c0e1a58a6c15&q=1&e=4cee4fb1-31f3-421d-9ed3-259944d440b2&u=https%3A%2F%2Fgithub.com%2Fapache%2Fignite%2Fblob%2Fignite-2.10%2Fmodules%2Fcore%2Fsrc%2Fmain%2Fjava%2Forg%2Fapache%2Fignite%2Finternal%2Futil%2FIgniteUtils.java%23L1628>

---------------------
Ilya

вт, 31 авг. 2021 г. в 15:05, Pankaj Kumar Bhadani <pa...@ericsson.com>>:

Hi Team,

I am facing some issue with setting up apache ignite-core 2.10.0 in java 11 environment.

I am getting the below exception, when I am trying to start ignite Using Ignition start method.
{"version": "0.2.0", "timestamp": "2021-08-18T08:08:51.363Z", "severity": "error", "service_id": "eric-bss-cpm-app", "metadata" : {"category": "CPM"}, "message": "Exception during start processors, node will be stopped and close connections"}
org.apache.ignite.binary.BinaryObjectException: Failed to find empty constructor for class: org.apache.ignite.internal.processors.platform.websession.PlatformDotNetSessionLockResult
at org.apache.ignite.internal.binary.BinaryClassDescriptor.constructor(BinaryClassDescriptor.java:1088)
at org.apache.ignite.internal.binary.BinaryClassDescriptor.<init>(BinaryClassDescriptor.java:309)

As a work around temporarily I created the default constructer in the org.apache.ignite.internal.processors.platform.websession.PlatformDotNetSessionLockResult.java class and build the jar from source code. This solved my problem and I was able to proceed with my POC. I now need a solution to this problem, so that when I integrate Ignite io build the solution I don’t have to make this change.

Also wanted to appraise you that this is being used in the containerized product which uses java11 and ignite cluster would be started in the same JVM

Thanks,
Pankaj Bhadani

RE: Ignite-code 2.10.0 Failed to find empty constructor for class: org.apache.ignite.internal.processors.platform.websession.PlatformDotNetSessionLockResult

Posted by Pankaj Kumar Bhadani <pa...@ericsson.com>.
Hi Ilya,

First of all thank you for replying to my mail promptly.

Now, let me give some of information that you requested and our investigation



  1.  The JDK being used in the environment:



bash-4.4$ java -version

openjdk version "11.0.11" 2021-04-20

OpenJDK Runtime Environment (build 11.0.11+9-suse-3.56.1-x8664)

OpenJDK 64-Bit Server VM (build 11.0.11+9-suse-3.56.1-x8664, mixed mode)


  1.  The class in the ignite that is injecting the default constructor at runtime using reflection



[cid:image001.png@01D79F1E.9EDABE90]



[cid:image002.png@01D79F1E.9EDABE90]


  1.  I passed several JVM Parameters to include  the reflection and other modules



[cid:image004.png@01D79F21.7D0D26B0]

The code seems not to be working in our containerized environment. Can you please suggest a way forward. As I have already mention I built ignite-core locally creating the default constructor and the implementation works fine.


Thanks,
Pankaj Bhadani

From: Ilya Kazakov <ka...@gmail.com>
Sent: Wednesday, September 1, 2021 9:16 AM
To: user@ignite.apache.org
Cc: Prashant Kumar I <pr...@ericsson.com>
Subject: Re: Ignite-code 2.10.0 Failed to find empty constructor for class: org.apache.ignite.internal.processors.platform.websession.PlatformDotNetSessionLockResult

Hello Pankaj. Could you please clarify, what JDK do you use?

In such cases (when a class does not have a default constructor), Ignite creates a default constructor via sun.reflect.ReflectionFactory. But this feature is available/tested only in SUN JDK's [1].

Thus I have a question, what JDK do you use?

[2] https://github.com/apache/ignite/blob/ignite-2.10/modules/core/src/main/java/org/apache/ignite/internal/util/IgniteUtils.java#L1628<https://protect2.fireeye.com/v1/url?k=fdd86e68-a243568a-fdd82ef3-86073b36ea28-0394c0e1a58a6c15&q=1&e=4cee4fb1-31f3-421d-9ed3-259944d440b2&u=https%3A%2F%2Fgithub.com%2Fapache%2Fignite%2Fblob%2Fignite-2.10%2Fmodules%2Fcore%2Fsrc%2Fmain%2Fjava%2Forg%2Fapache%2Fignite%2Finternal%2Futil%2FIgniteUtils.java%23L1628>

---------------------
Ilya

вт, 31 авг. 2021 г. в 15:05, Pankaj Kumar Bhadani <pa...@ericsson.com>>:

Hi Team,

I am facing some issue with setting up apache ignite-core 2.10.0 in java 11 environment.

I am getting the below exception, when I am trying to start ignite Using Ignition start method.
{"version": "0.2.0", "timestamp": "2021-08-18T08:08:51.363Z", "severity": "error", "service_id": "eric-bss-cpm-app", "metadata" : {"category": "CPM"}, "message": "Exception during start processors, node will be stopped and close connections"}
org.apache.ignite.binary.BinaryObjectException: Failed to find empty constructor for class: org.apache.ignite.internal.processors.platform.websession.PlatformDotNetSessionLockResult
at org.apache.ignite.internal.binary.BinaryClassDescriptor.constructor(BinaryClassDescriptor.java:1088)
at org.apache.ignite.internal.binary.BinaryClassDescriptor.<init>(BinaryClassDescriptor.java:309)

As a work around temporarily I created the default constructer in the org.apache.ignite.internal.processors.platform.websession.PlatformDotNetSessionLockResult.java class and build the jar from source code. This solved my problem and I was able to proceed with my POC. I now need a solution to this problem, so that when I integrate Ignite io build the solution I don’t have to make this change.

Also wanted to appraise you that this is being used in the containerized product which uses java11 and ignite cluster would be started in the same JVM

Thanks,
Pankaj Bhadani