cancel
Showing results for 
Search instead for 
Did you mean: 

Removing print extensions and cleaning up the model leads to an unremovable orphan

former_member996930
Discoverer
0 Kudos

Following the deprecation notice and realizing that we weren't really using them anyway, we removed the print extensions from our setup following the hybris 6.2 release, but attempting to clean the now orphaned types fails to remove the PrintPageGridAndMode

 java.lang.ClassNotFoundException: de.hybris.platform.printcockpit.constraints.PrintPageGridAndMode

Which in turn leads to all sorts of issues that breaks even seemingly unrelated processes and webservices, attempting to update the system leads to

 [JDBCValueMappings] could not read serialized value [fieldName=p_defaultvalue] : java.lang.ClassNotFoundException: de.hybris.platform.printcockpit.constraints.PrintPageGridAndMode
 [PropertyJDBC] error reading property field 'defaultValue'/'p_defaultvalue' of item '8796396224599'/'8796396224599'  (info was [defaultValue,p_defaultvalue,class java.lang.Object] )

being spammed in an endless loop.

Furthermore the lucene index seems to be broken and will now print out

 ERROR [Cluster 0: Lucenesearch-UpdateIndex-Job::de.hybris.platform.lucenesearch.jalo.UpdateIndexJob] (Cluster 0: Lucenesearch-UpdateIndex-Job) [Job] Caught throwable null
 INFO   | jvm 1    | main    | 2017/05/26 13:24:17.654 | java.lang.NullPointerException
 INFO   | jvm 1    | main    | 2017/05/26 13:24:17.654 |         at de.hybris.platform.lucenesearch.jalo.UpdateIndexJob.getAndMarkPendingUpdates(UpdateIndexJob.java:374)
 INFO   | jvm 1    | main    | 2017/05/26 13:24:17.654 |         at de.hybris.platform.lucenesearch.jalo.UpdateIndexJob.performCronJob(UpdateIndexJob.java:248)
 INFO   | jvm 1    | main    | 2017/05/26 13:24:17.654 |         at de.hybris.platform.cronjob.jalo.Job.execute(Job.java:1278)
 INFO   | jvm 1    | main    | 2017/05/26 13:24:17.654 |         at de.hybris.platform.cronjob.jalo.Job.performImpl(Job.java:803)
 INFO   | jvm 1    | main    | 2017/05/26 13:24:17.654 |         at de.hybris.platform.cronjob.jalo.Job.access$1(Job.java:756)
 INFO   | jvm 1    | main    | 2017/05/26 13:24:17.654 |         at de.hybris.platform.cronjob.jalo.Job$JobRunable.run(Job.java:676)
 INFO   | jvm 1    | main    | 2017/05/26 13:24:17.654 |         at de.hybris.platform.util.threadpool.PoolableThread.run(PoolableThread.java:196)
 INFO   | jvm 1    | main    | 2017/05/26 13:24:17.654 |
 INFO   | jvm 1    | main    | 2017/05/26 13:24:18.155 |

Any time it intends to do an update.

Has anyone seen this before and has advice on how to deal with this without completely reinitializing the hybris DB?

Accepted Solutions (1)

Accepted Solutions (1)

former_member996930
Discoverer
0 Kudos

Fixed by temporarily reenabling print extensions and then manually removing the components created by it that aren't directly related to the typesystem, these include, but are likely not limited to:

  • Validation constraints

  • workflow items

  • lucene search index

and following http://answers.sap.com/answers/12789389/view.html to fix the broken lucene index update.

Hopefully Hybris will include a proper migration plan once the print extensions are officially axed for good

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi David,

thanks for your information.

I found another possibility.

  1. Create the required annotation in one of your extensions de.hybris.platform.printcockpit.constraints.PrintPageGridAndMode

  2. Remove the print extensions

  3. Create an impex script that removes the PlacementPageConstraint or any other object

  4. Remove orphaned types

I am currently not sure, if this fixes all issues. But the first results looks quite promising.

Wolfgang