diff --git a/src/finam/tools/connect_helper.py b/src/finam/tools/connect_helper.py
index 477192ab88d759e8c4a73423c133c9949ecef106..9a6906800d100307ebaebd443ac9d9ffbdc5f385 100644
--- a/src/finam/tools/connect_helper.py
+++ b/src/finam/tools/connect_helper.py
@@ -529,7 +529,7 @@ class ConnectHelper(Loggable):
                 data_1 = assign_time(data, time)
                 out.push_data(data_1, time)
                 data_2 = assign_time(data, info_time)
-                out.push_data(copy.copy(data_2), info_time)
+                out.push_data(data_2.copy(), info_time)
             else:
                 out.push_data(data, time)
                 out.push_data(copy.copy(data), info_time)
diff --git a/tests/core/test_schedule.py b/tests/core/test_schedule.py
index d81dab5db6d0e04f952fdc9f612e91891e127566..b71a8fdaae5fdb642d138e1a373ce84bc43ac465 100644
--- a/tests/core/test_schedule.py
+++ b/tests/core/test_schedule.py
@@ -897,6 +897,118 @@ class TestComposition(unittest.TestCase):
         self.assertEqual([1, 8, 13], updates["A"])
         self.assertEqual([1, 4, 7, 10], updates["B"])
 
+    def test_starting_time_numpy(self):
+        start_1 = datetime(2000, 1, 2)
+        start_2 = datetime(2000, 1, 8)
+
+        updates = {"A": [], "B": []}
+
+        def lambda_generator(t):
+            return t.day
+
+        def lambda_component(inp, t):
+            return {"Out": np.asarray(1) * fm.UNITS("")}
+
+        def lambda_debugger(name, data, t):
+            updates[name].append(t.day)
+
+        module1 = CallbackGenerator(
+            callbacks={"Out": (lambda_generator, fm.Info(time=None, grid=fm.NoGrid()))},
+            start=start_2,
+            step=timedelta(days=5),
+        )
+        module2 = CallbackComponent(
+            inputs={
+                "In": fm.Info(time=None, grid=fm.NoGrid()),
+            },
+            outputs={
+                "Out": fm.Info(time=None, grid=fm.NoGrid()),
+            },
+            callback=lambda_component,
+            start=start_1,
+            step=timedelta(days=3),
+        )
+        module3 = DebugPushConsumer(
+            inputs={
+                "A": fm.Info(time=None, grid=None),
+                "B": fm.Info(time=None, grid=None),
+            },
+            callbacks={
+                "A": lambda_debugger,
+                "B": lambda_debugger,
+            },
+        )
+
+        composition = Composition([module1, module2, module3])
+        composition.initialize()
+
+        module1.outputs["Out"] >> Scale(1.0) >> module2.inputs["In"]
+        module1.outputs["Out"] >> Scale(1.0) >> module3.inputs["A"]
+        module2.outputs["Out"] >> Scale(1.0) >> module3.inputs["B"]
+
+        composition.connect(datetime(2000, 1, 1))
+
+        composition.run(end_time=datetime(2000, 1, 10))
+
+        self.assertEqual([1, 8, 13], updates["A"])
+        self.assertEqual([1, 2, 5, 8, 11], updates["B"])
+
+    def test_starting_time_xarray(self):
+        start_1 = datetime(2000, 1, 2)
+        start_2 = datetime(2000, 1, 8)
+
+        updates = {"A": [], "B": []}
+
+        def lambda_generator(t):
+            return t.day
+
+        def lambda_component(inp, t):
+            return {"Out": fm.data.assign_time(inp["In"], t)}
+
+        def lambda_debugger(name, data, t):
+            updates[name].append(t.day)
+
+        module1 = CallbackGenerator(
+            callbacks={"Out": (lambda_generator, fm.Info(time=None, grid=fm.NoGrid()))},
+            start=start_2,
+            step=timedelta(days=5),
+        )
+        module2 = CallbackComponent(
+            inputs={
+                "In": fm.Info(time=None, grid=fm.NoGrid()),
+            },
+            outputs={
+                "Out": fm.Info(time=None, grid=fm.NoGrid()),
+            },
+            callback=lambda_component,
+            start=start_1,
+            step=timedelta(days=3),
+        )
+        module3 = DebugPushConsumer(
+            inputs={
+                "A": fm.Info(time=None, grid=None),
+                "B": fm.Info(time=None, grid=None),
+            },
+            callbacks={
+                "A": lambda_debugger,
+                "B": lambda_debugger,
+            },
+        )
+
+        composition = Composition([module1, module2, module3])
+        composition.initialize()
+
+        module1.outputs["Out"] >> Scale(1.0) >> module2.inputs["In"]
+        module1.outputs["Out"] >> Scale(1.0) >> module3.inputs["A"]
+        module2.outputs["Out"] >> Scale(1.0) >> module3.inputs["B"]
+
+        composition.connect(datetime(2000, 1, 1))
+
+        composition.run(end_time=datetime(2000, 1, 10))
+
+        self.assertEqual([1, 8, 13], updates["A"])
+        self.assertEqual([1, 2, 5, 8, 11], updates["B"])
+
 
 if __name__ == "__main__":
     unittest.main()