question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Signals are lost in some cases

See original GitHub issue

I’m not sure if this is a bug, but I found this strange behavior of signals getting lost on some cases.

const pool = kefir.pool();
const prop = pool.toProperty(() => 0);
const later = kefir.later(100, null);

const stream = later
 .flatMapLatest(() => kefir.merge([prop.take(1), pool]))
 .log('stream');

pool.plug(stream.take(1).map(() => 1));

I would expect stream to log with 0 and 1, but only 0 gets logged. Or I’m I misunderstanding this somehow?

To clarify issue a little bit, if I change .flatMapLatest(() => kefir.merge([prop.take(1), pool])) to .flatMapLatest(() => prop) it will log 0 and 1. So it seems pool won’t give signals in this case even though it should according to my understanding.

Issue Analytics

  • State:open
  • Created 6 years ago
  • Comments:10 (1 by maintainers)

github_iconTop GitHub Comments

1reaction
mehtonen-booxcommented, Mar 14, 2018

@tweinfeld Thank you! I didn’t know the order matters while merging streams. 🤔 Now when I know this I might be able to avoid issues like this. 👍

0reactions
ivan-kleshnincommented, Mar 14, 2018

Sorry for bad description. What I wanted to say is that sometimes:

x.skip(1).merge(y)

won’t work as you need and y.merge(x.skip(1)) is a different thing. So your only option then may be a switch to statics:

K.merge([
  y,
  x.skip(1),
])

But it also boils down to order dependecy, yes.

Read more comments on GitHub >

github_iconTop Results From Across the Web

9 Reasons Why Cell Phone Signals Suddenly Go Bad
Find out the top 9 reasons why cell phone signals suddenly go bad and one definitive solution to fix them. Talk to the...
Read more >
Why Do Cell Phone Signals Go Bad? What You Need To Know
Cell Phone signals often go bad when something is blocking its transmission from getting from the nearby tower to the phone itself. Sometimes ......
Read more >
Can Cases Mess Up the iPhone's Signal?
Any given case may cause signal loss if the case design blocks the internal cell antenna. Most case materials, however, including leather or...
Read more >
Interference with Radio, TV and Cordless Telephone Signals
Interference may prevent reception altogether, may cause only a temporary loss of a signal, or may affect the quality of the sound or...
Read more >
Loss of signal detection and configurable gap-filling strategies
Because New Relic evaluates incoming data in specific windows of time, in many cases, the telemetry signals you send to New Relic can...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found