diff --git a/CHANGELOG.markdown b/CHANGELOG.markdown
--- a/CHANGELOG.markdown
+++ b/CHANGELOG.markdown
@@ -1,3 +1,8 @@
+1.1.1
+-----
+* Fix connection-manager connection reference. The issue was the client was starting
+  to send requests to server even if the confirmation hasn't been confirmed yet.
+
 1.1.0
 -----
 * Supports GetEventStore >= 4.0.0 protocol changes.
diff --git a/Database/EventStore/Internal/ConnectionManager.hs b/Database/EventStore/Internal/ConnectionManager.hs
--- a/Database/EventStore/Internal/ConnectionManager.hs
+++ b/Database/EventStore/Internal/ConnectionManager.hs
@@ -166,7 +166,7 @@
 connectionManager builder disc mainBus = do
   stageRef <- newIORef Init
   let mkInternal = Internal disc builder stageRef
-      connRef    = ConnectionRef $ lookingUpConnection stageRef
+      connRef    = ConnectionRef $ lookingUpConnectionWhenConnected stageRef
 
   stopwatch    <- newStopwatch
   timeoutCheck <- stopwatchElapsed stopwatch
@@ -584,6 +584,13 @@
     go (Connected conn)                             = Just conn
     go (Connecting _ (ConnectionEstablishing conn)) = Just conn
     go _                                            = Nothing
+
+--------------------------------------------------------------------------------
+lookingUpConnectionWhenConnected :: IORef Stage -> EventStore (Maybe Connection)
+lookingUpConnectionWhenConnected = fmap go . readIORef
+  where
+    go (Connected conn) = Just conn
+    go _                = Nothing
 
 --------------------------------------------------------------------------------
 onSendPackage :: Internal -> SendPackage -> EventStore ()
diff --git a/Database/EventStore/Internal/Operation.hs b/Database/EventStore/Internal/Operation.hs
--- a/Database/EventStore/Internal/Operation.hs
+++ b/Database/EventStore/Internal/Operation.hs
@@ -173,7 +173,7 @@
 --------------------------------------------------------------------------------
 -- | Runs the first expection that matches.
 runFirstMatch :: Package -> [Expect o] -> Code o ()
-runFirstMatch _ [] = invalidOperation "No expection was fulfilled"
+runFirstMatch _ [] = invalidOperation "No expectation was fulfilled"
 runFirstMatch pkg (Expect cmd k:rest)
   | packageCmd pkg /= cmd = runFirstMatch pkg rest
   | otherwise =
diff --git a/eventstore.cabal b/eventstore.cabal
--- a/eventstore.cabal
+++ b/eventstore.cabal
@@ -2,10 +2,10 @@
 --
 -- see: https://github.com/sol/hpack
 --
--- hash: 2eff24825c09f9fa9aef22bf2cef45c593f960ff02cdda29cc313cbcb5e4cbd9
+-- hash: 7f014bd643150258c2c5068435379d027a0ed2682dcbff8583bc645363cfd674
 
 name:           eventstore
-version:        1.1.0
+version:        1.1.1
 synopsis:       EventStore TCP Client
 description:    EventStore TCP Client <https://eventstore.org>
 category:       Database
@@ -16,7 +16,7 @@
 copyright:      Yorick Laupa
 license:        BSD3
 license-file:   LICENSE
-tested-with:    GHC >= 7.8.3 && < 8.4
+tested-with:    GHC >= 7.8 && < 8.4
 build-type:     Simple
 cabal-version:  >= 1.10
 
