Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Race Condition in Access Code Generation for Quiz

Abierto
#140 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
48/100
Tipo de issue
Error
Claridad
Bastante claro
Estado de actividad
Tranquilo
Stack tecnológico
express, postgresql, typescript

Línea de trabajo

Start at the endpoint named in the issue, /apps/http-server/routes/api/v1/quizzes/:quizId/generate-access-code, and trace how it generates and stores access codes. Check the database schema and existing tests for uniqueness constraints or collision handling. Done means concurrent requests cannot assign duplicate codes and collisions are handled safely; the payload does not name a test file.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

Backend first issue good first issue help wanted

📍 Location
/apps/http-server/routes/api/v1/quizzes/:quizId/generate-access-code

Problem Description

The current implementation of the access code generation endpoint is vulnerable to a race condition when multiple users request a code simultaneously.

Scenario:
User A and User B send a request at the same time
Both requests execute generateCode()
Both receive the same generated code (e.g., AC123A)
The system assigns duplicate access codes

This leads to non-unique access codes, which breaks the assumption that each quiz session should have a unique join code.

Expected Behavior
  • Each generated access code must be globally unique
  • Concurrent requests should never result in duplicate codes
  • The system should handle collisions gracefully (e.g., retry mechanism)
Lenguaje dominante
TypeScript
Estrellas
21
Forks
7
Merge medio
4 h 31 min
PR fusionados (30 d)
22

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de TheCodeHeist-Coder/Rexial

Todos los issues de TheCodeHeist-Coder/Rexial

Issues similares

Más issues de TypeScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.