From 24f887f4baaf70df251cd8f0d1db514adccf6ac3 Mon Sep 17 00:00:00 2001 From: Sebastian Stehle Date: Thu, 4 Jan 2018 12:52:47 +0100 Subject: [PATCH] Position fix --- .../EventSourcing/GetEventStore.cs | 2 +- .../EventSourcing/GetEventStoreSubscription.cs | 2 +- .../EventSourcing/ProjectionHelper.cs | 7 ++++++- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src/Squidex.Infrastructure.GetEventStore/EventSourcing/GetEventStore.cs b/src/Squidex.Infrastructure.GetEventStore/EventSourcing/GetEventStore.cs index f224dfe3f..70036d8ee 100644 --- a/src/Squidex.Infrastructure.GetEventStore/EventSourcing/GetEventStore.cs +++ b/src/Squidex.Infrastructure.GetEventStore/EventSourcing/GetEventStore.cs @@ -58,7 +58,7 @@ namespace Squidex.Infrastructure.EventSourcing { var streamName = await connection.CreateProjectionAsync(projectionHost, prefix, streamFilter); - var sliceStart = ProjectionHelper.ParsePosition(position) ?? -1; + var sliceStart = ProjectionHelper.ParsePosition(position); StreamEventsSlice currentSlice; do diff --git a/src/Squidex.Infrastructure.GetEventStore/EventSourcing/GetEventStoreSubscription.cs b/src/Squidex.Infrastructure.GetEventStore/EventSourcing/GetEventStoreSubscription.cs index b2fc0c24f..607089bb1 100644 --- a/src/Squidex.Infrastructure.GetEventStore/EventSourcing/GetEventStoreSubscription.cs +++ b/src/Squidex.Infrastructure.GetEventStore/EventSourcing/GetEventStoreSubscription.cs @@ -33,7 +33,7 @@ namespace Squidex.Infrastructure.EventSourcing this.eventStoreConnection = eventStoreConnection; this.eventSubscriber = eventSubscriber; - this.position = ProjectionHelper.ParsePosition(position); + this.position = ProjectionHelper.ParsePositionOrNull(position); var streamName = eventStoreConnection.CreateProjectionAsync(projectionHost, prefix, streamFilter).Result; diff --git a/src/Squidex.Infrastructure.GetEventStore/EventSourcing/ProjectionHelper.cs b/src/Squidex.Infrastructure.GetEventStore/EventSourcing/ProjectionHelper.cs index 3c35b5aac..ee9905dd5 100644 --- a/src/Squidex.Infrastructure.GetEventStore/EventSourcing/ProjectionHelper.cs +++ b/src/Squidex.Infrastructure.GetEventStore/EventSourcing/ProjectionHelper.cs @@ -85,9 +85,14 @@ namespace Squidex.Infrastructure.EventSourcing return projectionsManager; } - public static long? ParsePosition(string position) + public static long? ParsePositionOrNull(string position) { return long.TryParse(position, out var parsedPosition) ? (long?)parsedPosition : null; } + + public static long ParsePosition(string position) + { + return long.TryParse(position, out var parsedPosition) ? parsedPosition : 0; + } } }