airlift / discovery

Discovery Server
54 stars 47 forks source link

Dynamic announcements never expire #24

Open johngmyers opened 10 years ago

johngmyers commented 10 years ago

If there are two or more discovery servers in a cluster, then dynamic announcements never expire.

Fix in @proofpoint/discovery

lzeiming commented 2 years ago

I encounter same issue. I watched the param of io.airlift.discovery.store.StoreResource#setMultipleEntries and found maxAgeInMs is always null. The deserialization of jackson-smile might be problemtic

[arthas@28453]$ watch io.airlift.discovery.store.StoreResource setMultipleEntries "{params[1]}" -x 3
Press Q or Ctrl+C to abort.
Affect(class count: 1 , method count: 1) cost in 1099 ms, listenerId: 24
method=io.airlift.discovery.store.StoreResource.setMultipleEntries location=AtExit
ts=2022-04-18 19:01:12; [cost=0.062466ms] result=@ArrayList[
    @ArrayList[
        @Entry[
            key=@byte[][isEmpty=false;size=7],
            value=@byte[][isEmpty=false;size=709],
            version=@Version[io.airlift.discovery.store.Version@3c556ae9],
            timestamp=@Long[1650279672681],
            maxAgeInMs=null,
        ],
    ],
]