using ctx mgr for pool