diff --git a/dist/flatland_rl-3.0.2-py2.py3-none-any.whl b/dist/flatland_rl-3.0.4-py2.py3-none-any.whl
similarity index 98%
rename from dist/flatland_rl-3.0.2-py2.py3-none-any.whl
rename to dist/flatland_rl-3.0.4-py2.py3-none-any.whl
index eb7c110acb49062c113de021d2762dfef3e351a7..3ec2981807b61b3c4071219acd0a65bd32062129 100644
Binary files a/dist/flatland_rl-3.0.2-py2.py3-none-any.whl and b/dist/flatland_rl-3.0.4-py2.py3-none-any.whl differ
diff --git a/flatland/__init__.py b/flatland/__init__.py
index e6fc5e9d3c5f84bcd56acb65f1441b29b1c120c6..5b9795329f535e285a26b3c6aa7e3d0781913ae3 100644
--- a/flatland/__init__.py
+++ b/flatland/__init__.py
@@ -4,4 +4,4 @@
 
 __author__ = """S.P. Mohanty"""
 __email__ = 'mohanty@aicrowd.com'
-__version__ = '3.0.2'
+__version__ = '3.0.4'
diff --git a/flatland/envs/rail_env.py b/flatland/envs/rail_env.py
index e2e29476ef75562e8d3659d6d9d13b937a3e5061..0d5c0309262c2c87831600f64707cf49c7d33586 100644
--- a/flatland/envs/rail_env.py
+++ b/flatland/envs/rail_env.py
@@ -492,7 +492,7 @@ class RailEnv(Environment):
 
     def handle_done_state(self, agent):
         """ Any updates to agent to be made in Done state """
-        if agent.state == TrainState.DONE:
+        if agent.state == TrainState.DONE and agent.arrival_time is None:
             agent.arrival_time = self._elapsed_steps
             if self.remove_agents_at_target:
                 agent.position = None
@@ -768,4 +768,4 @@ class RailEnv(Environment):
                     self.renderer.close_window()
             except Exception as e:
                 print("Could Not close window due to:",e)
-            self.renderer = None
\ No newline at end of file
+            self.renderer = None
diff --git a/flatland/evaluators/service.py b/flatland/evaluators/service.py
index 97dce409039a800bfc1d3f38898b6d8de207f4f5..67605d4334f60f2a534df1dbf639c781d5978389 100644
--- a/flatland/evaluators/service.py
+++ b/flatland/evaluators/service.py
@@ -499,6 +499,7 @@ class FlatlandRemoteEvaluationService:
             password=self.remote_password
         )
         self.redis_conn = redis.Redis(connection_pool=self.redis_pool)
+        self.redis_conn.flushall()
 
     def get_redis_connection(self):
         """
diff --git a/setup.cfg b/setup.cfg
index 9f61d38406c47ede3eb819924f02750e798fff44..1d6fe300baff03b9f014d9a5892f852909143fbb 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -1,5 +1,5 @@
 [bumpversion]
-current_version = 3.0.2
+current_version = 3.0.4
 commit = True
 tag = True
 
diff --git a/setup.py b/setup.py
index 17d45aae0c209550e7c05fb4c5ec3839dc6f8941..c525d8d0fecf2915237817b736d6e5bb039e3b68 100644
--- a/setup.py
+++ b/setup.py
@@ -80,6 +80,6 @@ setup(
     test_suite='tests',
     tests_require=test_requirements,
     url='https://gitlab.aicrowd.com/flatland/flatland',
-    version='3.0.2',
+    version='3.0.4',
     zip_safe=False,
 )