Streambase LiveStream appplications Recovering Data to the Server using Peer-based Recovery

Hello Tibco community, hope you are doing good and save. 

I am trying to inplement the LiveView Data Recovery, Peer-based Recovery based on the documentation available at:

I am using two projects based on the sample Hello LiveView, that generate and stream data to a Live View server ( localhost:10080 and localhost:10081 )

My goal is that if one of the nodes goes down the othey keeps the data syncronized, such as:

LV 1: 123456.......... (...)

LV 2: ............78910 (...)

However what I am gettin something like this:

LV 1: 123456.......... (...)

LV 2 .............12345 (...)

My configuration is the same on both projects, at the engine.conf I added:


    ldm = {

            metadataStore = {

                storeType = "TRANSACTIONAL_MEMORY"


            tableGroup = "myTableGroup"



And I also created the file ExternalServerConnection: 



      <parameter key="uri">lv://localhost:10080</parameter>

      <parameter key="uri">lv://localhost:10081</parameter>



And at TableSpace.lvconf:


  <table-space id="TableSpace" table-group="mytablegroup">


    <persistence persist-data="true" peer-uri-list="*" folder="temp_lv" restore-data-on-start="true"/>



I believe I am missing some point or concept and would like to have your feedback to sort this out.

Best regards and thanks in advance, 




OK, I think I understand what you mean there.

Another question: why do you have an ExternalServerConnection lvconf file in this architecture? I only see the two peer nodes in your screenshot, and I think having an external server connection from one LiveView engine to another is about tiering rather than peer-based recovery (though I might be mistaken).

For example, in the TIBCO Streaming product sample called HA Tables (sample_lv_sample_ha_tables), there are 3 nodes: a front end node (services layer only) and two back end nodes (peered services+data layer nodes). The two back end nodes actually contain the replicas of the table, and the front end node routes queries to the back end nodes. In that pattern, the front end node has the external server connection.

But I don't see a front end node in your screen shot, so I'm not sure why you are showing us the external server connection configuration.

sbarber - Feb 02, 2021 - 12:36pm

Hello, my goal is that the second project continues with the current status of the first. 

The diagram represents a data flow from 1 to 10.

On the first example the data continues from process LV1 to LV2, however on the second there's a break and the data flow restarts. 

I would like for both projects to be syncronized. 


joao.d.saraiva - Feb 02, 2021 - 11:06am


I'm not sure what issue you are having -- it's not clear to me what your stream diagrams (copied below) are supposed to mean -- could you please explain further what you mean by them?


LV 1: 123456.......... (...)

LV 2: ............78910 (...)


LV 1: 123456.......... (...)

LV 2 .............12345 (...)


sbarber - Feb 02, 2021 - 9:30am
View More Comments + Add a Comment

(2) Answers