diff --git a/Database/AthenaPOOL/OutputStreamAthenaPool/python/MultipleStreamManager.py b/Database/AthenaPOOL/OutputStreamAthenaPool/python/MultipleStreamManager.py
index ff3e14638cab80370cce40604f354910b403e5e6..822bf33fc0ac0611ed36a7ce226de32606eff383 100644
--- a/Database/AthenaPOOL/OutputStreamAthenaPool/python/MultipleStreamManager.py
+++ b/Database/AthenaPOOL/OutputStreamAthenaPool/python/MultipleStreamManager.py
@@ -564,14 +564,10 @@ class MultipleStreamManager:
         theApp.CreateSvc += [ "xAODMaker::EventFormatSvc" ]
         theStream.AddMetaDataItem("xAOD::EventFormat#EventFormat")
         theStream.Stream.WritingTool.SubLevelBranchName = "<key>"
-        svcMgr.AthenaPoolCnvSvc.PoolAttributes += [ "DatabaseName = '" + FileName + "';"
-                                                    "COMPRESSION_LEVEL = '5'" ]
-        svcMgr.AthenaPoolCnvSvc.PoolAttributes += [ "DatabaseName = '" + FileName + "';"
-                                                    "ContainerName = 'TTree=CollectionTree';"
-                                                    "TREE_AUTO_FLUSH = '-10000000'" ]
-        svcMgr.AthenaPoolCnvSvc.PoolAttributes += [ "DatabaseName = '" + FileName + "';"
-                                                    "ContainerName = 'TTree=CollectionTree';"
-                                                    "CONTAINER_SPLITLEVEL = '1'" ]
+        svcMgr.AthenaPoolCnvSvc.PoolAttributes += [ "DatabaseName = '" + FileName + "'; COMPRESSION_LEVEL = '5'" ]
+        svcMgr.AthenaPoolCnvSvc.PoolAttributes += [ "DatabaseName = '" + FileName + "'; ContainerName = 'TTree=CollectionTree'; TREE_AUTO_FLUSH = '-10000000'" ]
+        svcMgr.AthenaPoolCnvSvc.PoolAttributes += [ "DatabaseName = '" + FileName + "'; ContainerName = 'TTree=CollectionTree'; CONTAINER_SPLITLEVEL = '1'" ]
+        svcMgr.AthenaPoolCnvSvc.PoolAttributes += [ "DatabaseName = '" + FileName + "'; ContainerName = 'TTree=Aux.'; CONTAINER_SPLITLEVEL = '1'"]
         return theStream
 
 
diff --git a/Database/AthenaPOOL/OutputStreamAthenaPool/src/AthenaPoolOutputStreamTool.cxx b/Database/AthenaPOOL/OutputStreamAthenaPool/src/AthenaPoolOutputStreamTool.cxx
index e3758c58279cc1d662f694e9cdeeaa84c6e55fa2..03c71286a57a25fe25f135d4748b0a6070634d5e 100644
--- a/Database/AthenaPOOL/OutputStreamAthenaPool/src/AthenaPoolOutputStreamTool.cxx
+++ b/Database/AthenaPOOL/OutputStreamAthenaPool/src/AthenaPoolOutputStreamTool.cxx
@@ -486,8 +486,16 @@ StatusCode AthenaPoolOutputStreamTool::getInputItemList(SG::IFolder* m_p2BWritte
 	            it != itLast; ++it) {
                // Only insert the primary clid, not the ones for the symlinks!
                CLID clid = it->getPrimaryClassID();
+                  std::string typeName;
                   if (clid != ClassID_traits<DataHeader>::ID()) {
-                  ATH_MSG_DEBUG("Adding " << clid << "#" << it->getKey() << " to itemlist");
+                  //check the typename is known ... we make an exception if the key contains 'Aux.' ... aux containers may not have their keys known yet in some cases
+		  //see https://its.cern.ch/jira/browse/ATLASG-59 for the solution
+                  std::string typeName;
+                  if( m_clidSvc->getTypeNameOfID(clid,typeName).isFailure() && it->getKey().find("Aux.") == std::string::npos) {
+                     ATH_MSG_WARNING("Skipping " << it->getKey() << " with unknown clid " << clid );
+                     continue;
+                  }
+                  ATH_MSG_DEBUG("Adding " << typeName << "#" << it->getKey() << " (clid " << clid << ") to itemlist");
                   const std::string keyName = it->getKey();
                   if (keyName.size() > 10 && keyName.substr(0, 10) == hltKey) {
                      m_p2BWrittenFromTool->add(clid, hltKey + "*").ignore();