Top Menu

Jump to content
Home
    Modules
      • Projects
      • Activity
      • Work packages
      • Gantt charts
      • Calendars
      • Team planners
      • Boards
      • News
    • Getting started
    • Introduction video
      Welcome to OpenProject Community
      Get a quick overview of project management and team collaboration with OpenProject. You can restart this video from the help menu.

    • Help and support
    • Upgrade to Enterprise edition
    • User guides
    • Videos
    • Shortcuts
    • Community forum
    • Enterprise support

    • Additional resources
    • Data privacy and security policy
    • Digital accessibility (DE)
    • OpenProject website
    • Security alerts / Newsletter
    • OpenProject blog
    • Release notes
    • Report a bug
    • Development roadmap
    • Add and edit translations
    • API documentation
  • Sign in
      Forgot your password?

      or sign in with your existing account

      OpenProject ID Google

Side Menu

  • Overview
  • Activity
    Activity
  • Roadmap
  • Work packages
    Work packages
  • Gantt charts
    Gantt charts
  • Boards
    Boards
  • Wiki

Content

Updated by Christophe Bliard 3 days ago

Originally detected on AppSignal ### Before filing a report

_Before you file a report, please ensure you are running the latest version of OpenProject and_ 
_have searched for similar bug reports._

### Steps to reproduce

_Please write down the steps to reproduce. Try to write down all necessary preconditions (what permissions do you have, are other users involved?). Example:_

1. Create three work packages:

1.
Login as a predecessor and a successor following each other

user with permissions to manage members in project A

2. a predecessor child

Go to the members page

3. predecessor is in automatic scheduling mode, because it's a parent

Click on "Add new member"

4. successor is in automatic scheduling mode, because it's a successor

2. From
Type the work packages list set successor as the parent of predecessor

1. Do it by reordering work packages to have successor listed first and predecessor listed second, right-clicking predecessor and selecting "Indent hierarchy"


See attached screen recording for reproduction steps.

following string: "foo@example.org"


### What is the buggy behavior?

_Please describe the bug in as much detail as possible. Example:_

* It fails with The button to invite a 500 error member did not work

* Internally, it produced a SystemStackError because of There was an endless recursive call. error notification shown with the message "XYZ"


Note: it fails only because the predecessor has a child. Without the child, it does not produce a 500 but displays "Parent A work package cannot be linked to one of its subtasks"

### What is the expected behavior?

_Describe how the application should behave like. Example:_

1. It The application should display invite the same error as when new user with the predecessor has no children: "Parent A work package cannot be linked selected role

2. An email should have been sent
to one of its subtasks"

1. (The error message is not clear at all, but that's another topic)


that user


### Details from AppSignal Important note

* **SystemStackError**: `stack level too deep` at `app/services/work_packages/schedule_dependency/dependency_graph.rb:66`

* PATCH::API::V3::WorkPackages::WorkPackagesAPI#/work\_packages/:id/

* Core version 71579a79fc1d0344cbd3807df3ec7213f95b289f (16.1.0 tag)

* parameters: 
{
 "\_links": {
   "parent": {
     "href": "/api/v3/work\_packages/565"
   }
 },
 "lockVersion": 17
}


_Please note that unless you are a contributor to OpenProject, you can no longer edit this bug report after saving. You can still add new comments, new images and upload attachments though, but updating description or modifying fields will not be possible after saving. Please make sure that all necessary information and attachments are added, and the following attributes are set:_

### **Logs**

[https://appsignal.com/openproject-gmbh/sites/681379ae55b0b20ed3735994/exceptions/incidents/708](https://appsignal.com/openproject-gmbh/sites/681379ae55b0b20ed3735994/exceptions/incidents/708)

[https://appsignal.com/openproject-gmbh/sites/681379ae55b0b20ed3735994/exceptions/incidents/709](https://appsignal.com/openproject-gmbh/sites/681379ae55b0b20ed3735994/exceptions/incidents/709)

```text
app/services/work_packages/schedule_dependency/dependency_graph.rb:66 Enumerable#flat_map
app/services/work_packages/schedule_dependency/dependency_graph.rb:66 WorkPackages::ScheduleDependency::DependencyGraph#full_dependencies_of
app/services/work_packages/schedule_dependency/dependency_graph.rb:66 block in WorkPackages::ScheduleDependency::DependencyGraph#full_dependencies_of
app/services/work_packages/schedule_dependency/dependency_graph.rb:66 Array#each
… 464 times more ^^
app/services/work_packages/schedule_dependency/dependency_graph.rb:66 Enumerable#flat_map
app/services/work_packages/schedule_dependency/dependency_graph.rb:66 WorkPackages::ScheduleDependency::DependencyGraph#full_dependencies_of
app/services/work_packages/schedule_dependency/dependency_graph.rb:57 WorkPackages::ScheduleDependency::DependencyGraph#depends_on?
app/services/work_packages/schedule_dependency/dependency_graph.rb:41 block (2 levels) in WorkPackages::ScheduleDependency::DependencyGraph#schedule_order
app/services/work_packages/schedule_dependency/dependency_graph.rb:40 Array#rindex
app/services/work_packages/schedule_dependency/dependency_graph.rb:40 block in WorkPackages::ScheduleDependency::DependencyGraph#schedule_order
app/services/work_packages/schedule_dependency/dependency_graph.rb:38 Array#each
app/services/work_packages/schedule_dependency/dependency_graph.rb:38 WorkPackages::ScheduleDependency::DependencyGraph#schedule_order
app/services/work_packages/schedule_dependency.rb:61 WorkPackages::ScheduleDependency#in_schedule_order
app/services/work_packages/set_schedule_service.rb:85 WorkPackages::SetScheduleService#schedule_following
app/services/work_packages/set_schedule_service.rb:43 WorkPackages::SetScheduleService#call
app/services/work_packages/set_attributes_service.rb:292 WorkPackages::SetAttributesService#update_dates_from_rescheduled_children
app/services/work_packages/set_attributes_service.rb:275 WorkPackages::SetAttributesService#update_dates
app/services/work_packages/set_attributes_service.rb:70 WorkPackages::SetAttributesService#set_calculated_attributes
app/services/work_packages/set_attributes_service.rb:44 block in WorkPackages::SetAttributesService#set_attributes
lib/open_project/changed_by_system.rb:87 OpenProject::ChangedBySystem#change_by_system
app/services/work_packages/set_attributes_service.rb:43 WorkPackages::SetAttributesService#set_attributes
modules/backlogs/lib/open_project/backlogs/patches/set_attributes_service_patch.rb:36 OpenProject::Backlogs::Patches::SetAttributesServicePatch::InstanceMethods#set_attributes
app/services/base_services/set_attributes.rb:44 BaseServices::SetAttributes#perform
app/services/base_services/base_callable.rb:42 block in BaseServices::BaseCallable#call
app/services/base_services/base_callable.rb:70 BaseServices::BaseCallable#assign_state
app/services/base_services/base_callable.rb:41 BaseServices::BaseCallable#call
app/services/base_services/write.rb:60 BaseServices::Write#set_attributes
app/services/attachments/replace_attachments.rb:37 WorkPackages::UpdateService#set_attributes
app/services/base_services/write.rb:51 BaseServices::Write#before_perform
app/services/base_services/base_contracted.rb:61 block in BaseServices::BaseContracted#perform
app/models/journal/notification_configuration.rb:62 Journal::NotificationConfiguration.with_first
app/models/journal/notification_configuration.rb:45 Journal::NotificationConfiguration.with
app/services/shared/service_context.rb:67 block in Shared::ServiceContext#without_context_transaction
lib/open_project/locale_helper.rb:36 OpenProject::LocaleHelper.with_locale_for
app/models/user.rb:538 User.execute_as
app/services/shared/service_context.rb:66 Shared::ServiceContext#without_context_transaction
app/services/shared/service_context.rb:45 block in Shared::ServiceContext#in_mutex_context
lib/open_project/mutex.rb:71 block in OpenProject::Mutex.with_advisory_lock
lib/open_project/mutex.rb:69 OpenProject::Mutex.with_advisory_lock
vendor/plugins/openproject-multitenancy/app/extenders/lib/open_project/namespaced_advisory_lock_names.rb:4 Multitenancy::NamespacedAdvisoryLockNames#with_advisory_lock
lib/open_project/mutex.rb:63 block in OpenProject::Mutex.with_advisory_lock_transaction
lib/open_project/mutex.rb:62 OpenProject::Mutex.with_advisory_lock_transaction
app/services/shared/service_context.rb:44 Shared::ServiceContext#in_mutex_context
app/services/shared/service_context.rb:35 Shared::ServiceContext#in_context
app/services/base_services/base_contracted.rb:54 BaseServices::BaseContracted#service_context
app/services/base_services/base_contracted.rb:59 BaseServices::BaseContracted#perform
app/services/base_services/base_callable.rb:42 block in BaseServices::BaseCallable#call
app/services/base_services/base_callable.rb:70 BaseServices::BaseCallable#assign_state
app/services/base_services/base_callable.rb:41 BaseServices::BaseCallable#call
lib/api/utilities/endpoints/bodied.rb:117 API::Utilities::Endpoints::Bodied#process
lib/api/utilities/endpoints/bodied.rb:90 block in mount
vendor/plugins/openproject-multitenancy/lib/multitenancy/elevators/mapped_domain_elevator.rb:106 block in Multitenancy::Elevators::MappedDomainElevator#call_tenant
vendor/plugins/openproject-multitenancy/lib/multitenancy/elevators/mapped_domain_elevator.rb:103 Multitenancy::Elevators::MappedDomainElevator#call_tenant
vendor/plugins/openproject-multitenancy/lib/multitenancy/elevators/mapped_domain_elevator.rb:69 Multitenancy::Elevators::MappedDomainElevator#try_tenant
vendor/plugins/openproject-multitenancy/lib/multitenancy/elevators/mapped_domain_elevator.rb:39 Multitenancy::Elevators::MappedDomainElevator#call
```

### Screenshots and other files

Screen recording reproducing _If you have screenshots of the issue attached to application's bug behavior or other relevant files, please drag them into this bug. place or attach them using the "Files" section._

### Environment information

_Please check and fill out the following details to help us identify in what versions and distributions of OpenProject the error occurs_

**OpenProject installation type**

* Hosted cloud edition

* Packaged installation

* What distribution?

* Docker All-in-one container

* Docker-compose installation

* Other (please specify)


**OpenProject
version**

16.1.0 _If you're not running on the cloud edition, please specify the version on of OpenProject Cloud you're running. Example: v12.1.5_

**Browser**

* [ ] Chrome
* [ ] Firefox
* [ ] Safari
* [ ] Mobile Safari
* [ ] Other (please specify)

**Operating System**

* [ ] Windows
* [ ] Mac OS X
* [ ] Mobile iOS
* [ ] Mobile Android
* [ ] Linux (please specify distro)
* [ ] Chrome OS
* [ ] Other (please specify)

**Language**

_Please specify the browser language and the language of the OpenProject user for which the bug occurred._

Back

Loading...