A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://github.com/umbraco/Umbraco.Deploy.Issues/issues/99 below:

Content Transfer fails when parent and child nodes has role based protection · Issue #99 · umbraco/Umbraco.Deploy.Issues · GitHub

It's possible to select a child node as Login and Error pages under a role based protected parent node when doing so a transfer or restore is not possible and the environment will throw a Umbraco.Deploy.Exceptions.GraphException with message: Encountered a cyclic dependency. Error message

Reproduction Bug summary

You can select a child node as Login and Error pages under a role based protected parent node.

an example of this is:

Specifics

Tested on the latest version of Umbraco and deploy:

Umbraco 8.6.3
Deploy 3.4.5

Full error message:

EXCEPTION:
Umbraco.Deploy.Exceptions.GraphException: Encountered a cyclic dependency.
   at Umbraco.Deploy.Core.TopoGraph`2.Visit(TItem item, ISet`1 visited, TItem[] sorted, Int32& index, Int32 incr, Boolean throwOnCycle, Boolean throwOnMissing)
   at Umbraco.Deploy.Core.TopoGraph`2.Visit(TItem item, ISet`1 visited, TItem[] sorted, Int32& index, Int32 incr, Boolean throwOnCycle, Boolean throwOnMissing)
   at Umbraco.Deploy.Core.TopoGraph`2.Visit(TItem item, ISet`1 visited, TItem[] sorted, Int32& index, Int32 incr, Boolean throwOnCycle, Boolean throwOnMissing)
   at Umbraco.Deploy.Core.TopoGraph`2.GetSortedItems(Boolean throwOnCycle, Boolean throwOnMissing, Boolean reverse)
   at Umbraco.Deploy.Environments.CurrentEnvironment.CreatePackage(Guid sessionId, Manifest manifest)
   at Umbraco.Deploy.Environments.CurrentEnvironment.CreatePackageAsync(Guid sessionId, Manifest manifest, CancellationToken token)
   at Umbraco.Deploy.Work.WorkItems.DeployRestoreWorkItemBase.<CreatePackageOnSource>d__20.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)
   at Umbraco.Deploy.Work.WorkItems.SourceDeployWorkItem.<ProceedToPackage>d__17.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Umbraco.Deploy.Work.WorkItems.SourceDeployWorkItem.<ExecuteAsyncSub>d__16.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at Umbraco.Deploy.Work.WorkItems.SourceDeployWorkItem.<ExecuteAsyncSub>d__16.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Umbraco.Deploy.Work.WorkItems.SourceDeployWorkItem.<ExecuteAsync>d__15.MoveNext()
Steps to reproduce
  1. Create a content node + 2-3 child nodes
  2. Set role based protection on parent node - Choose child node as Login page and child node as Error page under public access for the parent node.

Then the Child nodes will now also show as having role based protection:

  1. Try and transfer the content to the next environment

You will then get the error:
Umbraco.Deploy.Exceptions.GraphException with message: Encountered a cyclic dependency.

Expected result

Expected the content to be transfered to the next environment

Actual result

The transfer fails with an error message and the content will not be transfered.


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4