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

Confusion between 1-based and 0-based stream positions in different DB implementations of Event/Checkpoint Store

Abierto
#163 8 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 7 días

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
3/5
Tiempo estimado
1-2 días
Aptitud para principiantes
38/100
Tipo de issue
Error
Claridad
Bastante claro
Estado de actividad
Estancado
Stack tecnológico
csharp, postgresql

Línea de trabajo

Read the Postgres event store schema and the SQL Server checkpoint store implementation that maintain global positions, then trace how subscriptions read and persist the position. Confirm whether the differing starting indices are intentional or cause an offset in event processing. Done means documenting the intended behavior or correcting it so the positions are consistent, with coverage for both stores.

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

Descripción

I am working on a Proof-Of-Concept using Eventuous with PostgresDB as the Event Store, and Microsoft SQL Server as the Checkpoint Store / read model store.
I noticed the following confusing issue:

the global_position in the Postgres Schema is maintained as a 1-leading array:

image

However the Subscription in the receiving SQL Server store tracks the same global stream as a 0-leading array:

image

I have double-checked and the Subscription tracks in real-time, is in sync, no event was lost or skipped etc., my 'receiving' application is not stalling. Triggered one more event after above screenshots to demonstrate this:

[Postgres Event Store]
image
[SQL Server Checkpoint Store]
image

I find this confusing and not very intuitive. Am I missing some part of the implementation / intention here, or is this really just a little bug?

Kind regards,
Reinder

Lenguaje dominante
C#
Estrellas
512
Forks
99
Merge medio
5 d 6 h
PR fusionados (30 d)
5

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 Eventuous/eventuous

Todos los issues de Eventuous/eventuous

Issues similares

Más issues de C#

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.