cal.com icon indicating copy to clipboard operation
cal.com copied to clipboard

[CAL-4864] Recurring events 'No available users found' error

Open CarinaWolli opened this issue 1 year ago • 5 comments

For recurring events, we want to check the availability for the first two slots only. If other slots are not available the booking should still go through.

Currently, it throws an error when the second slot is not available:

Screenshot 2024-12-09 at 10.10.47 AM.png

We need to make sure to only load slots when the first two are available. We never want to throw this error.

From SyncLinear.com | CAL-4864

CarinaWolli avatar Dec 09 '24 15:12 CarinaWolli

Hi @CarinaWolli,

Issue Replication Scenario for Recurring Events Booking

Scenario to Replicate the Bug in the Production Environment

  1. Availability Setup:

    • Set availability for the following dates:
      • December 11th: 10 AM - 11 AM
      • December 18th: 10 AM - 11 AM
      • December 25th: 10 AM - 11 AM
  2. Create Recurring Event:

    • Set up a recurring event that repeats every week for 6 occurrences, i.e., Dec 11, Dec 18, Dec 25, and so on.
  3. Booking Scenario:

    • User A books the slot on December 18th (1 occurrence).
    • User B books the slot on December 11th (2 occurrences).

Expected Behavior:

  • December 11th's slot should be successfully booked for User B.
  • December 18th's slot should be ignored in terms of checking availability, and the booking should still be processed for User A, as only the first two slots (December 11th and 18th) are being checked for availability.
  • The error should not be thrown when booking the second slot (December 18th) as long as the first slot is available.

Actual Behavior:

  • An error is thrown for User B when attempting to book for December 11th (first slot), since the second slot (December 18th) is unavailable.

Current Date in Example: December 10th


Clarification:

Is my interpretation correct?

Or should User B get both December 11th and December 25th instead of just December 11th?

sanchitttt avatar Dec 09 '24 20:12 sanchitttt

Expected Behavior: December 11th's slot should be successfully booked for User B. December 18th's slot should be ignored in terms of checking availability, and the booking should still be processed for User A, as only the first two slots (December 11th and 18th) are being checked for availability. The error should not be thrown when booking the second slot (December 18th) as long as the first slot is available.

No. After December 18th is booked, then Dec 11th should not even be shown as available anymore if we are trying to book more occurrences. Currently, we check on booking confirmation the availability of the first two slots. We need to do the same for when loading slots, so also check for first two slots when loading slots

Actual Behavior: An error is thrown for User B when attempting to book for December 11th (first slot), since the second slot (December 18th) is unavailable.

Correct

CarinaWolli avatar Dec 10 '24 20:12 CarinaWolli

Expected Behavior: December 11th's slot should be successfully booked for User B. December 18th's slot should be ignored in terms of checking availability, and the booking should still be processed for User A, as only the first two slots (December 11th and 18th) are being checked for availability. The error should not be thrown when booking the second slot (December 18th) as long as the first slot is available.

No. After December 18th is booked, then Dec 11th should not even be shown as available anymore if we are trying to book more occurrences. Currently, we check on booking confirmation the availability of the first two slots. We need to do the same for when loading slots, so also check for first two slots when loading slots

By that logic, the user shouldn't see any slots as available right? Since for my scenario if I only have Dec 11, 18 and 25 as availability. 18 is already booked. 11 cant be visible since it's next slot (ie 18) is already booked. And 25 cannot be booked since there is not availability after 25.

Can this statement be considered correct - "Every availability must have a consecutive availability for it to show for recurring events"

Also, if the user manually updates the occurences input box to 1, then will 11 and 25 be visible? [Edge case I think]

sanchitttt avatar Dec 11 '24 19:12 sanchitttt

We are also struggling a lot with this issue. Would be extremely grateful to see it fixed. Happy to contribute if needed.

rafarc21 avatar Dec 12 '24 11:12 rafarc21

Also, if the user manually updates the occurences input box to 1, then will 11 and 25 be visible? [Edge case I think]

If occurrence is 1 it should show all slots and not check the availability for the second slot

CarinaWolli avatar Dec 12 '24 14:12 CarinaWolli

Why has this not been made more of a priority, this has been causing many struggles for us as well, I really hope this gets resolved ASAP, because it is just ridiculous that the recurring event functionality was even advertised or placed in the app if it doesn't display the correct time slots

reubenleemiller avatar Jun 23 '25 20:06 reubenleemiller

We are aware that recurring events have some issues, which is why this feature is still marked as experimental. Due to performance concerns, this is quite a complex feature, so we are still looking into how to get it right without introducing long loading times.

Image

CarinaWolli avatar Jun 24 '25 07:06 CarinaWolli