Re: [platform-dev] Issue with 'Invalid registry object' on Eclipse RCP based app since 4.21

2021-12-02 Thread Martin D'Aloia
Thanks Mickael for the suggestion... really the UIExtensionTracker was a
very late consequence of the generated p2 installer plan. It was multiple
layers, events and threads away.

We were able to track it down to a custom touchpoint that depends on
some org.eclipse.equinox.p2 bundles.
We were also able to replicate it with a minimal example touchpoint using
Eclipse Java IDE 4.19.
In 4.19 the p2 bundles are transitively using org.bouncycastle.bcpg_1.65.0
and org.bouncycastle.bcprov_1.65.1.
In 4.21 they were upgraded to org.bouncycastle.bcpg_1.69.0 and
org.bouncycastle.bcprov_1.69.0.

During the first phase of the update where the touchpoints are updated, p2
computes an installer plan which basically says that the 1.65 version is
not used anymore (which in fact WILL be true after restart) and resolves
that it needs to be replaced by the 1.69. The problem is that based on this
plan it is transitioned to UNRESOLVED (dispatching an event that triggers
other events (like RegistryChangeEvent) and ultimately listened by
UIExtensionTracker) producing the errors. After a restart all works ok.

What is more odd is that after the installation finishes the jars of the
1.65 version are deleted (which if I'm not wrong it would prevent a
rollback to the previous state after the installation)

For now, as a workaround we are making our touchpoint to explicitly
depend on the version 1.65, but that leaves us shipping both versions and
don't prevent that in a future upgrade it will happen again with another
version.

Do you think it is a bug (I could report it) or something that we are doing
wrong?

Thanks in advance
Martin


On Wed, Nov 24, 2021 at 5:36 AM Mickael Istria  wrote:

> Hi,
>
> I suggest you enable your application for remote debugging, adding the
> `-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=1044` VM arg
> to config.ini; then with your development IDE, connect to this remote Java
> application and put breakpoints in UIExtensionTracker.
>
> HTH
> ___
> platform-dev mailing list
> platform-dev@eclipse.org
> To unsubscribe from this list, visit
> https://www.eclipse.org/mailman/listinfo/platform-dev
>
___
platform-dev mailing list
platform-dev@eclipse.org
To unsubscribe from this list, visit 
https://www.eclipse.org/mailman/listinfo/platform-dev


Re: [platform-dev] Issue with 'Invalid registry object' on Eclipse RCP based app since 4.21

2021-11-24 Thread Mickael Istria
Hi,

I suggest you enable your application for remote debugging, adding the
`-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=1044` VM arg
to config.ini; then with your development IDE, connect to this remote Java
application and put breakpoints in UIExtensionTracker.

HTH
___
platform-dev mailing list
platform-dev@eclipse.org
To unsubscribe from this list, visit 
https://www.eclipse.org/mailman/listinfo/platform-dev


Re: [platform-dev] Issue with 'Invalid registry object' on Eclipse RCP based app since 4.21

2021-11-23 Thread Martin D'Aloia
I forgot to add the error log with the full stacktraces

On Tue, Nov 23, 2021 at 3:51 PM Martin D'Aloia 
wrote:

> Hi all!
>
> We have an Eclipse RCP that we are upgrading to 4.21 (from 4.19) and we
> encountered a problem (that we are not able to find the origin) during the
> Update of our app via Update Site.
> Same code base but upgrading to 4.20 instead of 4.21 works fine.
>
> During the update process, after the dialog warning that there are
> unsigned bundles is shown and you select 'Install anyway' several errors
> are produced. We are getting ~20 errors like this one:
>
> !MESSAGE Exception in
>> org.eclipse.ui.internal.registry.UIExtensionTracker.doRemove:
>> org.eclipse.core.runtime.InvalidRegistryObjectException: Invalid registry
>> object
>
>
> (~half of them instead of 'doRemove' it is 'doAdd')
>
> After that, every action triggers more diverse errors and also the app
> can't be closed (a kill -9 is needed).
>
> Once it is reopened all works ok again and the app is updated.
>
> As we determined that this starts to be problematic for us since 4.21 we
> looked at the Equinox and Platform sections of
> https://projects.eclipse.org/projects/eclipse/releases/4.21.0/bugs and
> found some (maybe) related with this issue:
>
>- https://bugs.eclipse.org/bugs/show_bug.cgi?id=573026 (a continuation
>of a 4.20 change)
>- https://bugs.eclipse.org/bugs/show_bug.cgi?id=575576 (related to the
>former one)
>
> We enabled tracing for some events of the following bundles but with the
> amount of information we couldn't see if there is useful information:
>
>- org.eclipse.osgi
>- org.eclipse.equinox.registry
>- org.eclipse.equinox.p2.core
>- org.eclipse.equinox.p2.engine
>
> While debugging I don't see useful information (just an internal number
> assigned to the extension/extension-point I think).
>
> Does someone know what could be happening?
> Any tips / information that could help us to tackle it?
>
> Many thanks in advance!
>
> Martin
>


error.log
Description: Binary data
___
platform-dev mailing list
platform-dev@eclipse.org
To unsubscribe from this list, visit 
https://www.eclipse.org/mailman/listinfo/platform-dev


[platform-dev] Issue with 'Invalid registry object' on Eclipse RCP based app since 4.21

2021-11-23 Thread Martin D'Aloia
Hi all!

We have an Eclipse RCP that we are upgrading to 4.21 (from 4.19) and we
encountered a problem (that we are not able to find the origin) during the
Update of our app via Update Site.
Same code base but upgrading to 4.20 instead of 4.21 works fine.

During the update process, after the dialog warning that there are unsigned
bundles is shown and you select 'Install anyway' several errors are
produced. We are getting ~20 errors like this one:

!MESSAGE Exception in
> org.eclipse.ui.internal.registry.UIExtensionTracker.doRemove:
> org.eclipse.core.runtime.InvalidRegistryObjectException: Invalid registry
> object


(~half of them instead of 'doRemove' it is 'doAdd')

After that, every action triggers more diverse errors and also the app
can't be closed (a kill -9 is needed).

Once it is reopened all works ok again and the app is updated.

As we determined that this starts to be problematic for us since 4.21 we
looked at the Equinox and Platform sections of
https://projects.eclipse.org/projects/eclipse/releases/4.21.0/bugs and
found some (maybe) related with this issue:

   - https://bugs.eclipse.org/bugs/show_bug.cgi?id=573026 (a continuation
   of a 4.20 change)
   - https://bugs.eclipse.org/bugs/show_bug.cgi?id=575576 (related to the
   former one)

We enabled tracing for some events of the following bundles but with the
amount of information we couldn't see if there is useful information:

   - org.eclipse.osgi
   - org.eclipse.equinox.registry
   - org.eclipse.equinox.p2.core
   - org.eclipse.equinox.p2.engine

While debugging I don't see useful information (just an internal number
assigned to the extension/extension-point I think).

Does someone know what could be happening?
Any tips / information that could help us to tackle it?

Many thanks in advance!

Martin
___
platform-dev mailing list
platform-dev@eclipse.org
To unsubscribe from this list, visit 
https://www.eclipse.org/mailman/listinfo/platform-dev