Проекция, которая объединяет два потока в хранилище событий - PullRequest
0 голосов
/ 25 мая 2018

Я пытаюсь создать простейшую проекцию, используя fromStreams, код сохраняется нормально, но поток mergeStream0 не существует

var create = function () {
    fromStreams(['storeIdStream7', 'storeIdStream'])
         .when(function(state,event) { 
             emit('mergeStream0', 'mergeType', '123')
     return null; 
  });
};
create() 

1 Ответ

0 голосов
/ 11 июля 2018

Необходимо убедиться, что в вашем хранилище событий был вызван запуск проекций ALL

При использовании встроенного клиента параметры выглядят следующим образом

var nodeBuilder = EmbeddedVNodeBuilder.AsSingleNode()
    .OnDefaultEndpoints()
    .RunInMemory()
    .RunProjections(EventStore.Common.Options.ProjectionType.All, 1);

При запуске на сервереВы должны включить это в ваш eventstore.conf

RunProjections: All
ClusterSize: 1
ExtIp: 0.0.0.0

. Также ваша проекция будет отображать только ссылки на исходные потоки, вы также можете использовать linkTo(state, event); для ссылки на фактические данные, чтобы они возвращались в пределахпроекция.Но если вы пропустите это, вы можете использовать клиент и установить resolveLinkTos на true

...