Specific users are not able to create/remove Calendars or add/remove Events in Team Calendars due to a value not being in the inclusive range of 0 to 10000

XMLWordPrintable

    • 2
    • Severity 3 - Minor
    • 9

      Issue Summary

      In Confluence 9.4+ and later versions, users subscribed to many Team Calendars may receive errors when creating, subscribing to, or removing calendars or adding/removing events.  

      Do note that this limit was introduced in Confluence 9.4+, so there are two potential scenarios that can affect your users:

      • If a user reaches more than 10K characters when creating/subscribing to Calendars in Confluence 9.4+, they will not be able to create/subscribe to additional calendars. However, they will still be able to delete/unsubscribe from the existing ones or add/remove events.
      • If a user reached more than 10K in a version prior to Confluence 9.4+ and the environment was later upgraded, this user will be considerably restricted from working with Team Calendars. They will not be able to add/remove events or delete/unsubscribe from the existing calendars either. 

      Steps to Reproduce

      1. Browse to Calendars and create 200 Team Calendars.
        You can use the following simple script to automate this activity: 
        USRNAME=XXXXX
        USRPWD=XXXXX
        CONFBASEURL=https://HOSTNAME:PORT/confluence
        SPACE_KEY=XXXXX
        
        for i in {1..200}
        do 
                echo 'Created CALENDAR'$i
                curl -u $USRNAME:$USRPWD $CONFBASEURL'/rest/calendar-services/1.0/calendar/subcalendars.json' -X PUT -H 'Accept: text/plain, */*; q=0.01' -H 'Content-Type: application/x-www-form-urlencoded; charset=UTF-8' --data-raw 'type=parent&subCalendarId=&name=CALENDAR'$i'&description=&color=subcalendar-gray&spaceKey='$SPACE_KEY'&timeZoneId=Etc%2FUTC&calendarContext=myCalendars&viewingSpaceKey=' >/dev/null 2>&1
        done

      Expected Results

      All Team Calendars are created successfully. 

      Actual Results

      The below exception is thrown in the atlassian-confluence.log file at some point in time during the creation of the calendars. When this error occurs, the user cannot create/subscribe to new calendars: 

      2025-07-23 09:08:49,482 ERROR [http-nio-8090-exec-7 url: /confluence/rest/calendar-services/1.0/calendar/subcalendars.json; user: admin] [extra.calendar3.rest.AbstractResource] getResponseError Unable to save/update sub-calendar FINAL_CALENDAR -- url: /confluence/rest/calendar-services/1.0/calendar/subcalendars.json | userName: admin | referer: https://CONFLUENCE_BASE_URL/confluence/calendar/mycalendar.action | traceId: 48aeb0d74b651440java.lang.IllegalArgumentException: The value 10022 is not in the specified inclusive range of 0 to 10000        
      at org.apache.commons.lang3.Validate.inclusiveBetween(Validate.java:316)        
      at com.atlassian.confluence.impl.user.preferences.dao.UserPreferencesDaoImpl.setUserPreference(UserPreferencesDaoImpl.java:72)        
      at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)        
      at java.base/java.lang.reflect.Method.invoke(Method.java:580)        
      at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:359)        
      at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:196)        
      at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)        
      at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:380)        
      at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:119)        
      at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:184)        
      at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:223)        
      at jdk.proxy4/jdk.proxy4.$Proxy239.setUserPreference(Unknown Source)        
      at com.atlassian.confluence.impl.user.preferences.dao.CachingUserPreferencesDao.setUserPreference(CachingUserPreferencesDao.java:76)        
      at com.atlassian.confluence.impl.user.preferences.UserPreferencesImpl.setString(UserPreferencesImpl.java:52)         
      at com.atlassian.confluence.extra.calendar3.DefaultCalendarUserPreferenceStore.setUserPrefsString(DefaultCalendarUserPreferenceStore.java:54)
      ...
      ...
      

      The following error message also appears in the Confluence UI, preventing the user from completing the task:

      Workaround

      Currently there is no known workaround for this behavior. A workaround will be added here when available

      The users affected by this issue will be those who have more than 10K characters in column TEXT_VAL_LENGHT when executing the following SQL statement: 

      SELECT um.lower_username AS USERNAME, CHAR_LENGTH(op.text_val) AS TEXT_VAL_LENGHT, op.*  FROM OS_PROPERTYENTRY op
      JOIN user_mapping um ON SUBSTRING(op.entity_name FROM 11) = um.user_key
      WHERE entity_key='calendar'
      ORDER BY 2 DESC 

      Versions Tested

      Please confirm all versions that have been tested for this issue, and indicate whether the tested version is affected or not affected, below: 

      Testing Requirements Version Affected Version
      Customers Reported Version 9.4.1 Yes
      Most Recent Bug-Fix Release 9.5.2 Yes
      Previous Major Release    
      Most Recent LTS 9.2.6 No
      Previous Supported LTS 8.5.24 No
      Other Versions..    
      (Add rows as needed)    

            Assignee:
            Saba Taseer
            Reporter:
            Iker Alonso (Inactive)
            Votes:
            1 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: