178 views

Description

When on a system with domain separation, if a user in a sub-domain modifies an application file created in the global domain and then attempts to commit that change to source control, an error occurs and the logs have a stack trace similar to:


worker.5 worker.5 SEVERE *** ERROR *** Error occurred while exporting application
com.glide.sourcecontrol.SourceControlException: java.lang.NullPointerException
at com.glide.sourcecontrol.worker.git.GitSourceControlHelper$ScopedAppPackager.writeMetadataRecords(GitSourceControlHelper.java:273)
at com.glide.sourcecontrol.worker.git.GitSourceControlHelper.writeAppFilesToLocalGitRepo(GitSourceControlHelper.java:118)
at com.glide.sourcecontrol.worker.git.GitExportApplicationWorker.exportApp(GitExportApplicationWorker.java:120)
at com.glide.sourcecontrol.worker.ExportApplicationWorker.execute(ExportApplicationWorker.java:42)
at com.glide.sourcecontrol.SourceControlWorker.startWork(SourceControlWorker.java:37)
at com.glide.worker.AbstractProgressWorker.startAndWait(AbstractProgressWorker.java:116)
at com.glide.worker.HierarchicalProgressWorker.startAndWait(HierarchicalProgressWorker.java:34)
at com.glide.worker.BackgroundProgressJob.execute(BackgroundProgressJob.java:54)
at com.glide.schedule.JobExecutor.executeJob(JobExecutor.java:103)
at com.glide.schedule.JobExecutor.execute(JobExecutor.java:89)
at com.glide.schedule.GlideScheduleWorker.executeJob(GlideScheduleWorker.java:213)
at com.glide.schedule.GlideScheduleWorker.lambda$process$49(GlideScheduleWorker.java:155)
at com.glide.worker.TransactionalWorkerThread.executeInTransaction(TransactionalWorkerThread.java:35)
at com.glide.schedule.GlideScheduleWorker.process(GlideScheduleWorker.java:155)
at com.glide.schedule.GlideScheduleWorker.run(GlideScheduleWorker.java:65)
Caused by: java.lang.NullPointerException
at java.io.Writer.write(Writer.java:157)
at com.glide.sourcecontrol.worker.git.GitSourceControlHelper.writeToFile(GitSourceControlHelper.java:104)
at com.glide.sourcecontrol.worker.git.GitSourceControlHelper.addFile(GitSourceControlHelper.java:88)
at com.glide.sourcecontrol.worker.git.GitSourceControlHelper$ScopedAppPackager.writeMetadataRecords(GitSourceControlHelper.java:270)
... 14 more

Steps to Reproduce

 

  1. On a domain-separated instance, in the global domain, create an application w/ tables and application modules
  2. Export the application to source control
  3. Impersonate a user in a sub-domain, like TOP
  4. Modify one of the application modules (notice that it gives you an info message and creates a new file)
  5. Attempt to commit the change to source control

Expected result: Changes are pushed
Actual: Error occurs

Workaround

  • If you have not received the error described in this PRB, then you can make all the required changes as any user in any domain. When it comes time to commit those changes, do so as a user in the global domain.
  • If you have already received this error, all your source control operations will be blocked due to a related issue documented in PRB916398, please see KB0622533 for workaround.

 


Related Problem: PRB916363

Seen In

There is no data to report.

Fixed In

Kingston

Associated Community Threads

There is no data to report.

Article Information

Last Updated:2018-04-23 09:12:30
Published:2017-05-03