**Do you want to request a *feature* or report a *bug*?**
Bug

**What is the current behavior?**

React 16.10.0 has broken all Next.js applications (and potentially other SSR solutions).

It appears you cannot `hydrate` in conjunction with a client-side `<Suspense>` component.

> Expected to have a hydrated suspense instance. This error is likely caused by a bug in React. Please file an issue.

![image](https://user-images.githubusercontent.com/616428/65810696-7f087b00-e17b-11e9-9957-3481fb5853e3.png)


**CodeSandbox**: https://codesandbox.io/s/i66g1

**What is the expected behavior?**

Not entirely sure -- I'm opening this issue to discuss. The provided example worked in React 16.9.0 (and prior releases containing Suspense).

**Which versions of React, and which browser / OS are affected by this issue? Did this work in previous versions of React?**

`react@16.10.0`/`react-dom@16.10.0` is broken.
`react@16.9.0`/`react-dom@16.9.0` works.

</div>
        );
      }
    }
    const element = document.createElement('div');
    element.innerHTML = ReactDOMServer.renderToString(<HelloWorld />);
    expect(element.textContent).toBe('Hello ');
    ReactDOM.hydrate(<HelloWorld />, element);
    expect(element.textContent).toBe('Hello loading');
    jest.runAllTimers();
    await Promise.resolve();
    Scheduler.unstable_flushAll();
    expect(element.textContent).toBe('Hello world');
  });
  it('does not re-enter hydration after committing the first one', () => {
    let finalHTML = ReactDOMServer.renderToString(<div />);
    let container = document.createElement('div');
    container.innerHTML = finalHTML;
    let root = ReactDOM.unstable_createRoot(container, {hydrate: true});
    root.render(<div />);
    Scheduler.unstable_flushAll();
    root.render(null);
    Scheduler.unstable_flushAll();
    
    
    root.render(<div />);
    Scheduler.unstable_flushAll();
  });
  it('does not invoke an event on a concurrent hydrating node until it commits', () => {
    function Sibling({text}) {